16 tests fail on Windows with GIX_TEST_IGNORE_ARCHIVES=1 #1358
Labels
acknowledged
an issue is accepted as shortcoming to be fixed
C-Windows
Windows-specific issues
help wanted
Extra attention is needed
Current behavior 馃槸
Running tests on Windows in a Git Bash environment (similar to the environment in which they run in Windows on CI, where
bash
is Git Bash), all tests are able to pass normally. However, this apparently relies on the use of generated archives.When the tests are run with the environment variable
GIX_TEST_IGNORE_ARCHIVES
set to1
rather than unset, 16 tests fail. The failing tests, as quoted from the end of the test run, are:The full output is available in this gist. It is similar, and affects the same tests, as in an older run shown in this other older gist, which was referenced in a discussion of these failures in the comments in #1345.
(As noted in comments there, the failure in
compare_baseline_with_ours
seems particularly interesting, since it involves an unexpected effect of.gitignore
pattern matching that is different on Windows.)Expected behavior 馃
All tests should pass, even when suppressing the use of generated archives by setting
GIX_TEST_IGNORE_ARCHIVES=1
. Differences between Windows and other platforms should be accounted for when intentional and desirable, or fixed otherwise.Git behavior
Not fully applicable, since this is about a failure of multiple gitoxide tests when run in a certain way.
However, some discrepancies--intended or unintended--between gitoxide and Git may turn out to be related to some of the failures. So this section may be expanded in the future, or perhaps new issues will be split out from this one.
Steps to reproduce 馃暪
Clone the
gitoxide
repository on Windows. I used the current tip of the main branch, which at this time is 048e43e.Run
rustup update
, and also ensure installed versions of crates that provide customcargo
commands are up to date (for example, by runningcargo install-update -a
). In particular, ensure thecargo-nextest
crate is installed and up to date.Optionally verify that the tests all pass when
GIX_TEST_IGNORE_ARCHIVES
is not set. This is beneficial because it checks that all needed dependencies are installed and working. To run the tests that way, run:Then, in Git Bash, run:
The reason the tests must be run in Git Bash is that there is a separate issue where many test failures occur when they are run from a typical PowerShell environment.
Observe the failures, comparing the output to this gist.
The text was updated successfully, but these errors were encountered: