Keep test-32bit CI on Debian 12 for the moment#2109
Merged
Eliah Kagan (EliahKagan) merged 1 commit intoGitoxideLabs:mainfrom Aug 10, 2025
Merged
Keep test-32bit CI on Debian 12 for the moment#2109Eliah Kagan (EliahKagan) merged 1 commit intoGitoxideLabs:mainfrom
test-32bit CI on Debian 12 for the moment#2109Eliah Kagan (EliahKagan) merged 1 commit intoGitoxideLabs:mainfrom
Conversation
Debian `stable` has moved from Debian 12 `bookworm` to Debian 13 `trixie`. The Debian 12 `git` package is 2.39.5 (with downstream patches), while the Debian 13 `git` package is 2.47.2 (with downstream patches). This brings back GitoxideLabs#1622 for the `test-32bit` jobs, where the `regex_matches` test fails again, as seen in: - https://github.com/EliahKagan/gitoxide/actions/runs/16855949428/job/47756506693#step:10:429 - https://github.com/EliahKagan/gitoxide/actions/runs/16843514197/job/47757429000#step:10:429 The `:/` baseline skip was removed in GitoxideLabs#1993 based on two assumptions. It turns out neither of these was altogether correct: - Although most CI jobs are expected to have a recent Git because GitHub Actions runner images are expected to have a recent Git, `container` jobs may have an older Git, as is the case here. - Debian 13 is a release of a prominent distribution that provides Git 2.47.*. Since Debian is very popular and the time between its stable releases is sometimes long, the the scenario of a system provided Git 2.47.* is now far from obscure. It may be that a `:/` baseline skip should be reintroduced to work around this. If so, it should possibly be opt-in by a `GIX_TEST_*` environment variable, because some of the reasons for removing it still apply fully. (Such as to avoid: the risk of accidentally committing incorrect regenerated fixture archives; misleading test results, where what it means for the test to pass varies by system in a non-obvious way; and the need to cover other tests that run under other feature combinations and are similarly affected.) It may (instead, or also) be that we should use a later build of `git` than 2.47.* in the `test-32bit` jobs, which would have the fix for the bug that underlies GitoxideLabs#1622 and thus avoid the CI failure, though it would currently involve using either an unofficial build or taking it from Debian `unstable`. This commit holds the Docker image back to Debian 12. This is meant as a temporary workaround. This only modifies the `test-32bit` jobs. The `pure-rust-build` job works on Debian 13 already, because it does not run the tests. (Running the tests without `GIX_TEST_IGNORE_ARCHIVES` would also pass, even with affected versions of Git, as GitoxideLabs#1622 is not surfaced when pre-generated baselines are used from committed archives.)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See #1622 (comment).
Debian
stablehas moved from Debian 12bookwormto Debian 13trixie. The Debian 12gitpackage is 2.39.5 (with downstream patches), while the Debian 13gitpackage is 2.47.2 (with downstream patches). This brings back #1622 for thetest-32bitjobs, where theregex_matchestest fails again, as seen in:The
:/baseline skip was removed in #1993 based on two assumptions. It turns out neither of these was altogether correct:containerjobs may have an older Git, as is the case here.It may be that a
:/baseline skip should be reintroduced to work around this. If so, it should possibly be opt-in by aGIX_TEST_*environment variable, because some of the reasons for removing it still apply fully. (Such as to avoid: the risk of accidentally committing incorrect regenerated fixture archives; misleading test results, where what it means for the test to pass varies by system in a non-obvious way; and the need to cover other tests that run under other feature combinations and are similarly affected.)It may (instead, or also) be that we should use a later build of
gitthan 2.47.* in thetest-32bitjobs, which would have the fix for the bug that underlies #1622 and thus avoid the CI failure, though it would currently involve using either an unofficial build or taking it from Debianunstable.This PR just holds the Docker image back to Debian 12. This is meant as a temporary workaround.
This only modifies the
test-32bitjobs. Thepure-rust-buildjob works on Debian 13 already, because it does not run the tests. (Running the tests withoutGIX_TEST_IGNORE_ARCHIVESwould also pass, even with affected versions of Git, as #1622 is not surfaced when pre-generated baselines are used from committed archives.)