Idea: Automatically validate sqlite versions
We manually maintain a list of known-bad SQlite versions in meson.build.
We could catch problems earlier if we automatically tested against multiple SQLite versions.
Here's a proposal.
-
Add files
sqlite3_versions_tested
andsqlite3_versions_known_bad
to Git. Proposed format:3.55.1: Slow queries due to X 3.34.0: Broken, see https://gitlab.gnome.org/...
-
Modify meson.build to read these file using files module and parse contents into a dict. Replace the existing hardcoded list. Meson should error if SQLite version is in known_bad list, and warn if it's not in tested list.
-
Add a new CI job that loads sqlite_versions_tested, downloads and builds each version from Gitlab in sequence and runs tracker.git test suite against it.
When a new SQLite version is released, Meson will warn about it until we add it to the sqlite3_versions_tested
file and make sure it works.