* [PATCH 0/2] mingw: fix perl related test failures
@ 2026-09-13 19:11 Johannes Schindelin via GitGitGadget
2026-09-13 19:11 ` [PATCH 1/2] t9700: accommodate for MSYS2 Perl reporting as `cygwin` Johannes Schindelin via GitGitGadget
2026-09-13 19:11 ` [PATCH 2/2] t9129: skip UTF-8 tests on Windows Johannes Schindelin via GitGitGadget
0 siblings, 2 replies; 3+ messages in thread
From: Johannes Schindelin via GitGitGadget @ 2026-09-13 19:11 UTC (permalink / raw)
To: git; +Cc: Johannes Schindelin
For performance reasons (and also because we retired support for git svn in
Git for Windows), Perl-related tests are skipped from the CI builds. As can
be expected, this caused some bit-rot.
While this is not exactly -rc1 material, in preparing for Git for Windows
v2.56.0-rc0 I did run the entire test suite on Windows/ARM64 and these were
the only two bugs that needed fixing.
Johannes Schindelin (2):
t9700: accommodate for MSYS2 Perl reporting as `cygwin`
t9129: skip UTF-8 tests on Windows
t/t9129-git-svn-i18n-commitencoding.sh | 4 ++--
t/t9700/test.pl | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
base-commit: b8242b093d9e941a34460d715e3ce616a34ac3fe
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2227%2Fdscho%2Ffix-perl-related-test-failures-on-windows-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2227/dscho/fix-perl-related-test-failures-on-windows-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/2227
--
gitgitgadget
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 1/2] t9700: accommodate for MSYS2 Perl reporting as `cygwin`
2026-09-13 19:11 [PATCH 0/2] mingw: fix perl related test failures Johannes Schindelin via GitGitGadget
@ 2026-09-13 19:11 ` Johannes Schindelin via GitGitGadget
2026-09-13 19:11 ` [PATCH 2/2] t9129: skip UTF-8 tests on Windows Johannes Schindelin via GitGitGadget
1 sibling, 0 replies; 3+ messages in thread
From: Johannes Schindelin via GitGitGadget @ 2026-09-13 19:11 UTC (permalink / raw)
To: git; +Cc: Johannes Schindelin, Johannes Schindelin
From: Johannes Schindelin <johannes.schindelin@gmx.de>
As of a year or two ago, there is this push to align MSYS2 more closely
with Cygwin, so as to benefit from a closer collaboration. Part of that
is that the triplet `x86_64-pc-cygwin` is used nowadays, whereas it had
been `x86_64-pc-msys` previously. Likewise, Perl now reports `$^O` as
`cygwin` instead of `msys`.
The Perl module test used `msys` as tell-tale when to accommodate for a
native Windows version of `git.exe` which would report absolute
_Windows_ paths rather than those pseudo-Unix paths. We cannot use that
tell-tale anymore, and we also cannot adjust it to `cygwin` because that
would break in Cygwin (where `git.exe` reports absolute pseudo-Unix
paths).
Let's use the environment variable `MSYSTEM` instead (being mindful that
the `MSYSTEM=MSYS` variant would _also_ reflect a setup where `git.exe`
won't report absolute _Windows_ paths).
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
t/t9700/test.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/t/t9700/test.pl b/t/t9700/test.pl
index f83e6169e2..43a6dc266e 100755
--- a/t/t9700/test.pl
+++ b/t/t9700/test.pl
@@ -118,7 +118,7 @@ unlink $tmpfile;
# paths
my $abs_git_dir = $abs_repo_dir . "/.git";
-if ($^O eq 'msys') {
+if (defined $ENV{MSYSTEM} && $ENV{MSYSTEM} ne 'MSYS') {
$abs_git_dir = `cygpath -am "$abs_repo_dir/.git"`;
$abs_git_dir =~ s/\r?\n?$//;
}
--
gitgitgadget
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 2/2] t9129: skip UTF-8 tests on Windows
2026-09-13 19:11 [PATCH 0/2] mingw: fix perl related test failures Johannes Schindelin via GitGitGadget
2026-09-13 19:11 ` [PATCH 1/2] t9700: accommodate for MSYS2 Perl reporting as `cygwin` Johannes Schindelin via GitGitGadget
@ 2026-09-13 19:11 ` Johannes Schindelin via GitGitGadget
1 sibling, 0 replies; 3+ messages in thread
From: Johannes Schindelin via GitGitGadget @ 2026-09-13 19:11 UTC (permalink / raw)
To: git; +Cc: Johannes Schindelin, Johannes Schindelin
From: Johannes Schindelin <johannes.schindelin@gmx.de>
The assumption of this test is that Perl and Git have the same idea how
to perform encoding conversions.
However, in Git for Windows, Git is a native Win32 program, and such
programs have a very different concept of encodings (called "Code
Pages", and they are not controlled via environment variables at all),
whereas the Perl interpreter used in Git for Windows is a pseudo-Unix
one that uses the MSYS2 runtime (which _does_ try very much to abide by
Unix' `LC_ALL` and friends, and totally ignores Windows' current or
active code pages).
As such, these test cases _cannot_ work with Git for Windows. So let's
just skip them on that platform.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
t/t9129-git-svn-i18n-commitencoding.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/t/t9129-git-svn-i18n-commitencoding.sh b/t/t9129-git-svn-i18n-commitencoding.sh
index 01e1e8a8f7..f72a425dc1 100755
--- a/t/t9129-git-svn-i18n-commitencoding.sh
+++ b/t/t9129-git-svn-i18n-commitencoding.sh
@@ -71,7 +71,7 @@ do
'
done
-test_expect_success UTF8 'ISO-8859-1 should match UTF-8 in svn' '
+test_expect_success UTF8,!MINGW 'ISO-8859-1 should match UTF-8 in svn' '
(
cd ISO8859-1 &&
compare_svn_head_with "$TEST_DIRECTORY"/t3900/1-UTF-8.txt
@@ -80,7 +80,7 @@ test_expect_success UTF8 'ISO-8859-1 should match UTF-8 in svn' '
for H in eucJP ISO-2022-JP
do
- test_expect_success UTF8 "$H should match UTF-8 in svn" '
+ test_expect_success UTF8,!MINGW "$H should match UTF-8 in svn" '
(
cd $H &&
compare_svn_head_with "$TEST_DIRECTORY"/t3900/2-UTF-8.txt
--
gitgitgadget
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-09-13 19:11 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-13 19:11 [PATCH 0/2] mingw: fix perl related test failures Johannes Schindelin via GitGitGadget
2026-09-13 19:11 ` [PATCH 1/2] t9700: accommodate for MSYS2 Perl reporting as `cygwin` Johannes Schindelin via GitGitGadget
2026-09-13 19:11 ` [PATCH 2/2] t9129: skip UTF-8 tests on Windows Johannes Schindelin via GitGitGadget
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox