-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Zig-2021 vs Zig-1.0: Using year based version numbering #5053
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
when
edit: I'll just add to summarize my thoughts: Zig has a stable number. Be it |
With improvements, I was thinking in terms of improved compilation speed and so on. Not any changes to language semantics or syntax. I agree that there's redundancy to it though. Zig versioning doesn't have to follow the |
As long as the future stable Zig release schedule guarantees there would never be 2 breaking releases in a year then I think it makes sense from the perspective "breaking" in `breaking:enhancement:bugfix" doesn't have to go up by 1 it just has to go up by some value. With that in mind year would seem perfectly acceptable and would help give extra context to how old a given version is. |
ah yes good point; the weakness of tying major to year is it precludes 2 major releases in a year. I'm strangely ok with that. |
It is a matter of preference, but I would like to see "year based" version numbering once zig is out of beta, with version numbers looking something like this:
Here are the associations I would get from different version numbers:
Zig-2021, the "standard" set by the first version of Zig, which is great for most use cases, keeps getting support, but was released ASAP to get something workable out there that people can depend upon (instead of C), while risking that the design decisions might not sufficiently cover all use cases.
Zig-2024, the refined standard that while making some breaking changes, could take real world usage into account and make final language adjustments that might be crucial for some (but not all) use cases.
Zig-1.0, The first version of Zig, but Zig-2.0 is gonna be twice as good! I will have to upgrade.
Zig-2.0. The second version of Zig, but Zig-3.0 is gonna be 50% better! I will have to upgrade.
TLDR: Incremental version numbering gives the impression of something bound to be replaced, while year based numbering gives the impression of something being a standard.
Final thoughts, if it would be very straight forward for an imagined Zig-2024 project to include (imagined) Zig-2021 packages as dependencies, then Zig could be a "stable" language, yet not have to stop evolving after the first release.
The text was updated successfully, but these errors were encountered: