Hello,
When solving Zig’s exercises, I think it will be best to use the latest master
version.
Since Zig is a new language, it advances at a rapid pace.
We get a better language to work with, and it is frustrating to be bound to the (now old) stable release.
As a user, it would be good if I could choose which version I want the site to test my solution. This way, someone who wants only to use the stable releases can still do so.
What do you think?
Multiple versions would mean multiple docker containers. They are rather expensive so that is likely not an option for most of the tracks. Perhaps the biggest ones like Python, Java and Go can do it but more or less no other track. And then there is the maintainability part, you will have to ensure multiple versions actually work, which likely will lead to more work for maintainers.
As for the version which is being used, using the latest version can be a bit tricky since say a breaking bug is introduced then all of a sudden the test runner could stop working. Thereby this update is done manually, and some tracks with more active maintainers may choose to do updates rather quickly and some may do it a bit slower or there might not be a maintainer for set track, then the track could be using a rather old version.
There is a bit of a process updating the tooling and some may choose to wait until bug fixes are released so they don’t have to update the tooling multiple times in a short interval.
I personally think having multiple versions would be so cool, but from an exercism perspective at the current state, I do not believe it makes sense. As for which version Zig uses so does the dockerfile say 0.10.1 and looking at the zig website it says the latest version is 0.10.1 but I am not a zig developer so that may be wrong.,
I see now that this issue was already brought up here bump Zig from `0.10.1` to `0.11.0-dev.2777+b95cdf0ae` (at least) · Issue #244 · exercism/zig · GitHub
He gives a good rule of keeping Zig’s version the same as Zig’s other learning tracks.