Zig 0.16 milestone appears to be completed

I occasionally check on the 0.16 milestone and noticed this morning that no open issues remain. Of course that is subject to change, but it seems likely that the 0.16 release is approaching.

For early adopters who have been using prerelease builds - what are your thoughts so far? I know async IO is the big thing, but I’m curious what other lesser-known things are part of 0.16 release.

8 Likes

I like the new juicy main.

4 Likes

Enjoying the improved fuzzer. It’s finding bugs.

3 Likes

I tried the fuzzer in 0.15.2 and it crashed on macOS, which is a known issue, but also crashed on linux. Based on what little research I did it just didn’t seem to be very mature/well supported as of 0.15.2. Hoping that changes with 0.16!

Loris Mentioned on stream last week that 0.16 is likely to be released this week. :smiley:

2 Likes

Funny timing, Andrew just posted on Mastodon too:

Zig 0.16.0 is tagged. Release notes are just about completed and will be published in about 20 hours when the tarballs finish building.

8 Likes

Huzzah!!! IO gate is over. Any big themes targeted for 0.17 or 0.18?

1 Like

From the current draft of the release notes:

The 0.17.0 release cycle will be short, aiming mainly to upgrade to LLVM 22 and finish separating the make process (build runner) from the configure process (build.zig).

7 Likes

Oh hell yeah! I’ve been anticipating this release more than any other. My project required a major overhaul to support 0.16 and I’m ready to merge everything once it comes out. LFG!!!

2 Likes

Congratulations and kudos to everyone from the team!

1 Like

Very good, 0.16 is an exceptional chunk of work. Congrats to all for this magnificent milestone. In many ways the new IO system has been a very brave leap of faith, and yet a success.

been using it for a while now, building a comprehensive http server framework, and it’s been good fun, albeit using threaded for parallelisms. Seeing very impressive performance numbers, and the ergonomics are sweet. Zig 1.0 is going to be a monster.

It’s not the end of the road though, there is still a way to go for getting the full async / green threads working for network servers using stdlib. If you check the sources on the completed 0.16 code, you will see that basic things like listening and accepting new connections are still @pannic(“TODO”) in the adapters.

Given that the 0.17 release cycle will be relatively quick, it’s probably 0.18 that brings home the bacon for async network programming using just the stdlib. Looking forward to that.

In the meantime, you CAN do green threads (always have been able to with zig), just means you still have to get your hands dirty and roll your own experiments .. or lean into 3rd party code.

Despite that little speed bump, fantastic progress.

10 Likes

I recently upgraded two of my projects from 0.14.1 to 0.15.2. I’ve been really excited for 0.16.0 and ready to upgrade.

1 Like

Yes, THANK YOU, zig team - your efforts are deeply, sincerely appreciated.

1 Like

I was really hoping the evented Io implementation will be finished in the released version. This way, it’s guaranteed the interface will still significantly change in the future.

3 Likes

Even Threaded still has vtable function with @panic("TODO ....")

It is very much a “good enough to get feedback on” release, not any where near the final iteration of the Io interface

3 Likes

Yeah, I see it as a preview release.

3 Likes

Definitely. Andrew/Loris mentioned that in the Zigtoberfest IO presentation that it’s possible they didn’t get everything right in the first shot so we should test it out and let them know how it works out for us in the real world. Based on that feedback there may or may not be additional changes. We aren’t 1.0 yet so we have time to adjust direction if needed.

Same. Networking is not yet there - am very interested in the io_uring implementation.

@wbrian If you are a member of the Zig core team please forgive me and ignore this text;
otherwise I wish we could just .await them to share us the details about any new release.

Release notes

Quite a read :smiley:

5 Likes