Re: [PATCH v3 1/3] t0301: fixes for windows compatibility
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2021-11-02 00:45:03
Subsystem:
the rest · Maintainer:
Linus Torvalds
On Tue, Sep 14 2021, Carlo Marcelo Arenas Belón wrote:
[...] `mkdir -m` can't represent a valid ACL directly and fails with permission problems, so instead call mkdir followed by chmod, which has been enhanced to do so.
This looks like a good change:
quoted hunk ↗ jump to hunk
test_expect_success 'use user socket if user directory exists' '@@ -79,14 +94,15 @@ test_expect_success 'use user socket if user directory exists' ' git credential-cache exit && rmdir \"\$HOME/.git-credential-cache/\" " && - mkdir -p -m 700 "$HOME/.git-credential-cache/" && + mkdir -p "$HOME/.git-credential-cache/" && + chmod 700 "$HOME/.git-credential-cache/" && check approve cache <<-\EOF && protocol=https host=example.com username=store-user password=store-pass EOF - test -S "$HOME/.git-credential-cache/socket" + test_path_is_socket "$HOME/.git-credential-cache/socket" '
But this adjacent changes is also needed to make this pass on AIX. I.e. for the adjacent test, which I assume "works" on your Windows setup because it doesn't have SYMLINKS:
diff --git a/t/t0301-credential-cache.sh b/t/t0301-credential-cache.sh
index 698b7159f03..120b50e8c14 100755
--- a/t/t0301-credential-cache.sh
+++ b/t/t0301-credential-cache.sh@@ -111,7 +111,8 @@ test_expect_success SYMLINKS 'use user socket if user directory is a symlink to rmdir \"\$HOME/dir/\" && rm \"\$HOME/.git-credential-cache\" " && - mkdir -p -m 700 "$HOME/dir/" && + mkdir -p "$HOME/dir/" && + chmod 700 "$HOME/dir/" && ln -s "$HOME/dir" "$HOME/.git-credential-cache" && check approve cache <<-\EOF && protocol=https
FWIW on AIX this fails because apparently they got quoting wrong and end up trying to shell out to "chmod 700 [trash dir name up to the first space]", i.e. the "trash directory" part. Not an rc0 issue, this has been in "master" for a while...