What to Expect from Release Month ⚡ Zig Programming Language
← Back to
NEwS
PAGE
January 17, 2025
Hey everyone,
We’ve been pretty quiet here at the Zig Software Foundation for a few months now and so it’s time to give you an update.
In fact, these quiet times are my personal favorite – when the release pressure is off, there are no upcoming conferences, and there is long non-stop coding on big projects – the ones that require full and undivided attention for days or weeks in a row. I used to find some beautiful trance music compilation albums as well as destruction infected mushroomIt’s the whole catalog, and it’s pure HAPPINESS.
Personally, I got Zig’s linker code since Jakub decided to move on to other things. Loris is working on a book, Jacob is rewriting the x86 backendand Veikka is already plugging an officer translate-c package which uses Aro rather than Clang. Matthew is doing more direct visual work, making language improvements, frontend bug fixes, as well as continuing to work towards incremental compilation. We have it too a new member of the Zig core teamwho deserves his own news announcement, which will follow shortly.
As satisfying as it is to work on larger subprojects, it’s time to cut the release.
Previously, I made an estimate of January 1 for the 0.14.0 tag. That estimate is based on waiting until all LLVM bug fix patches are finished, so we don’t have to cut our own bug fix releases in response to LLVM. That deadline passed mainly because I was caught relatively large branch I want to finish, however, LLVM ended up doing a January 14th 19.1.7 release, which hopefully will be their last in the series, so we’re right on schedule.
However, I am now setting a hard deadline on February 17 for the 0.14.0 tag. That gives us a month to do Quality Assurance for the release. This time I look forward to setting bigger goals, instead of focusing on the Pull Request queue, which admittedly has been a bit neglected recently, as well as trying all the open issues and putting the a realistic set of priorities to complete before the cutoff.
One of the major drivers of this release cycle is improving the x86 backend enough to be the default for debug builds. Whether this will be accomplished through release or not is yet to be determined. It’s not out of the question, but we can’t promise it either.
Another is incremental compilation, which is not enabled by default for release due to lack of robust testing, although it is well within beta-testing quality, so there is a compiler flag to choose and try it. More details on that are coming in the release notes.
Other than the big goals, this release is nothing. There is a steady stream of remarkable language enhancements, such as marked switch continues. Additionally, Alex poured a ton of effort into Zig’s support table, so you can expect almost every target to level up.
If you have a Zig project pinned to Zig 0.13.0, now is a good time to upgrade to the latest master branch release. Our goal during Release Month is to make sure everyone gets a smooth upgrade, so if that’s not the case for you, please say so!
I know people itching for a 1.0 tag, but there is still a lot to do before the project is ready for such a commitment. Instead, I want to offer progressively more and more stable releases, to the point where people feel comfortable using it, knowing that there may still be some migration required with successive releases. .
Happy hacking,
Andrew
2025-01-17 16:35:00