The install docs say the test runner uses 3.37 to track Ubuntu 22.04. That might be true if we uses the Ubuntu image, but the test runner Docker file uses alphine:3.18. Using that image, we get sqlite 3.41.2:
If we want to force 3.37, we may need to change the base image. Do we want to pin the binary to Ubuntu LTS and 3.37? Do we want to update the docs to reflect the actual version used?
I think our discussion was to not force anything beyond the current sqlite version from the latest LTS.
On the other hand alpine did not really align with the ubuntu version, so we picked a greater version for the test runner, which is still compatible with the min-version, but has some additional features.
We do have to review the min version (and thus the alpine and docs version), as LTS changed to 22.04 this month.
I think our discussion was to not force anything beyond the current sqlite version from the latest LTS.
What does it mean to “force” a version? We use version x in our test runner and the docs say we use version y.
On the other hand alpine did not really align with the ubuntu version, so we picked a greater version for the test runner, which is still compatible with the min-version, but has some additional features.
What is a “min-version”?
As far as I’m aware, SQLite doesn’t (generally?) introduce any changes which are no backwards compatible so all versions should be compatible with prior versions. Though I’m not sure what this has to do with our documented version.
We do have to review the min version (and thus the alpine and docs version), as LTS changed to 22.04 this month.
If we’re not using LTS for our test runner, why would we claim to be using the LTS version for our test runner? I feel like I’m missing something here.
There is some compatibility issue with IFF and format for some version jumps. Here is a part of our old discussion:
Using alpine instead of a full-blown ubuntu was a space-issue I think.
I am open to state the actual version of the test-runner in the docs. The idea was to keep expectations at the Ubuntu LTS version, so students do not have to upgrade their OS.
There is some compatibility issue with IFF and format for some version jumps. Here is a part of our old discussion:
Would that mean that maintainers need to double check that exercises can be passed using 3.37? Or that the example solution passes using 3.37? Or is this more about the testing framework and ensuring that the code we use to run tests can be run locally by students using 3.37?
I am open to state the actual version of the test-runner in the docs.
Cool. Glenn hasn’t opined yet but I can get a PR rolling to update those docs. Though knowing how the min-version applies would be useful for updating that doc and what we say about LTS.
There are a lot of fixes in later versions but I do not see where that would be necessary for the track on the student side or break things on the server side.