[PATCH] t7610: use "file:///dev/null", not "/dev/null", fixes MinGW
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2022-11-15 23:40:43
Subsystem:
the rest · Maintainer:
Linus Torvalds
On MinGW the "/dev/null" is translated to "nul" on command-lines, even though as in this case it'll never end up referring to an actual file. So on Windows the fix for the previous "example.com" timeout issue in 8354cf752ec (t7610: fix flaky timeout issue, don't clone from example.com, 2022-11-05) would yield: fatal: repo URL: 'nul' must be absolute or begin with ./|../ Let's evade this yet again by prefixing this with "file://", which makes this pass in the Windows CI. Signed-off-by: Ævar Arnfjörð Bjarmason <redacted> --- On Tue, Nov 15 2022, Taylor Blau wrote:
On Wed, Nov 09, 2022 at 09:17:25PM -0500, Taylor Blau wrote:quoted
On Thu, Nov 10, 2022 at 12:55:30AM +0100, Ævar Arnfjörð Bjarmason wrote:quoted
But we generally just fail some or all of 3..9 pretty fast, and don't start taking 20 minutes to run the test, when it took 10s before (or whatever).OK. I still think that in principle this is indistinguishable from not running a setup test to completion. *But*: I'm willing to treat them differently since instead of manifesting in an immediate failure later on in the suite, we hang for a substantial period of time. So I'm content to merge this down, but I don't think it's worth searching out for more of these in the future.Having merged this down to 'next', it looks like there is some CI fallout on the Windows tests, see: https://github.com/ttaylorr/git/actions/runs/3473324797/jobs/5805324776 I am not sure how I might have caught this earlier not having a Windows machine myself. Regardless, let's make sure that it is fixed up before this graduates.
Sorry again :( I think my CI was quite queued up at the time, and I figured surely *this* won't have any porability issues, but forgot about MinGW's sneaky /dev/null string-replacement behavior. Windows CI passes with this: https://github.com/avar/git/actions/runs/3473817195 t/t7610-mergetool.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh
index b1ba0d9a088..7b957022f1a 100755
--- a/t/t7610-mergetool.sh
+++ b/t/t7610-mergetool.sh@@ -33,7 +33,7 @@ test_expect_success 'setup' ' git add foo && git commit -m "Add foo" ) && - git submodule add /dev/null submod && + git submodule add file:///dev/null submod && git add file1 "spaced name" file1[1-4] subdir/file3 .gitmodules submod && git commit -m "add initial versions" &&
@@ -614,7 +614,7 @@ test_expect_success 'submodule in subdirectory' ' ) ) && test_when_finished "rm -rf subdir/subdir_module" && - git submodule add /dev/null subdir/subdir_module && + git submodule add file:///dev/null subdir/subdir_module && git add subdir/subdir_module && git commit -m "add submodule in subdirectory" &&
--
2.38.0.1473.g172bcc0511c