Description
I would like us to test that code written against specific ICU4X versions continues working even after cargo update
.
We have broken this invariant multiple times in the last few weeks (#5200 and #5039). We've done a good job to make sure that people on the 1.x
release stream keep working, but anyone who has pinned to a specific 1.3.x
or 1.4.x
are or were broken for at least some amount of time.
I've heard criticism before that tutorial tests are not semver tests. While this is true, both of the mentioned incompatibilities would show up even without the specific tutorial code. They would show up by simply building a Cargo.toml with icu = "~1.3"
. The tutorial code just gives us something concrete to run, which I think is beneficial, but if we can't agree on that (I wouldn't be writing this if I didn't think that was a likely outcome), I would be happy even if the test just ran cargo check
on some Cargo.toml file without actually running any code.
How should we go about it?