From: Patrick Steinhardt <ps@pks.im>
To: git@vger.kernel.org
Cc: Taylor Blau <me@ttaylorr.com>, Eric Sunshine <sunshine@sunshineco.com>
Subject: [PATCH v2 00/10] Platform compatibility fixes
Date: Tue, 15 Oct 2024 13:45:04 +0200 [thread overview]
Message-ID: <cover.1728992306.git.ps@pks.im> (raw)
In-Reply-To: <cover.1728906490.git.ps@pks.im>
Hi,
this is the second version of my patch series that includes various
different platform compatibility fixes.
Changes compared to v1:
- Provide a more in-depth explanation of the gitweb fix.
- Fix up a stale comment in "lib-gitweb.sh".
- Add a missing signoff.
Thanks!
Patrick
Patrick Steinhardt (10):
t/test-lib: fix quoting of TEST_RESULTS_SAN_FILE
t/test-lib: wire up NO_ICONV prerequisite
t/lib-gitweb: test against the build version of gitweb
t/lib-gpg: fix setup of GNUPGHOME in MinGW
t1401: make invocation of tar(1) work with Win32-provided one
t3404: work around platform-specific behaviour on macOS 10.15
t5500, t5601: skip tests which exercise paths with '[::1]' on Cygwin
t7300: work around platform-specific behaviour with long paths on
MinGW
builtin/credential-cache: fix missing parameter for stub function
http: fix build error on FreeBSD
Makefile | 1 +
builtin/credential-cache.c | 3 +-
contrib/buildsystems/CMakeLists.txt | 6 ++
http.c | 10 +-
t/lib-gitweb.sh | 4 +-
t/lib-gpg.sh | 2 +-
t/t0028-working-tree-encoding.sh | 6 ++
t/t1401-symbolic-ref.sh | 2 +-
t/t2082-parallel-checkout-attributes.sh | 2 +-
t/t3404-rebase-interactive.sh | 26 +++--
t/t3434-rebase-i18n.sh | 6 ++
t/t3900-i18n-commit.sh | 6 ++
t/t3901-i18n-patch.sh | 6 ++
t/t4041-diff-submodule-option.sh | 16 ++-
t/t4059-diff-submodule-not-initialized.sh | 16 ++-
t/t4060-diff-submodule-option-diff-format.sh | 17 ++--
t/t4201-shortlog.sh | 8 +-
t/t4205-log-pretty-formats.sh | 102 +++++++++++--------
t/t4210-log-i18n.sh | 6 ++
t/t4254-am-corrupt.sh | 6 ++
t/t5100-mailinfo.sh | 14 ++-
t/t5500-fetch-pack.sh | 14 ++-
t/t5550-http-fetch-dumb.sh | 4 +-
t/t5601-clone.sh | 11 +-
t/t6006-rev-list-format.sh | 54 ++++++----
t/t7102-reset.sh | 40 +++++---
t/t7300-clean.sh | 2 +-
t/t8005-blame-i18n.sh | 6 ++
t/t9300-fast-import.sh | 2 +-
t/t9350-fast-export.sh | 10 +-
t/test-lib.sh | 3 +-
31 files changed, 274 insertions(+), 137 deletions(-)
Range-diff against v1:
1: 601670912ee = 1: a514f5d14a7 t/test-lib: fix quoting of TEST_RESULTS_SAN_FILE
2: f1d74c46aa2 = 2: f6a8582c34a t/test-lib: wire up NO_ICONV prerequisite
3: eda73d81139 ! 3: 2e2d208ef1b t/lib-gitweb: test against the build version of gitweb
@@ Commit message
t/lib-gitweb: test against the build version of gitweb
When testing gitweb we set up the CGI script as "gitweb.perl", which is
- the source file of the build target "gitweb.cgi". This works alright as
- long as we run in-tree tests. But we're about to make out-of-tree tests
- a reality, and there things will break because "gitweb.perl" will not be
- found in the build directory.
+ the source file of the build target "gitweb.cgi". This file doesn't have
+ a patched shebang and still contains `++REPLACEMENT++` markers, but
+ things generally work because we replace the configuration with our own
+ test configuration.
- Fix this by using "gitweb.cgi" instead.
+ But this only works as long as "$GIT_BUILD_DIR" actually points to the
+ source tree, because "gitweb.cgi" and "gitweb.perl" happen to sit next
+ to each other. This is not the case though once you have out-of-tree
+ builds like with CMake, where the source and built versions live in
+ different directories. Consequently, "$GIT_BUILD_DIR/gitweb/gitweb.perl"
+ won't exist there.
+
+ While we could ask build systems with out-of-tree builds to instead set
+ up GITWEB_TEST_INSTALLED, which allows us to override the location of
+ the script, it goes against the spirit of this environment variable. We
+ _don't_ want to test against an installed version, we want to use the
+ version we have just built.
+
+ Fix this by using "gitweb.cgi" instead. This means that you cannot run
+ test scripts without building that file, but in general we do expect
+ developers to build stuff before they test it anyway.
Signed-off-by: Patrick Steinhardt <ps@pks.im>
## t/lib-gitweb.sh ##
@@ t/lib-gitweb.sh: EOF
+ test -f "$SCRIPT_NAME" ||
error "Cannot find gitweb at $GITWEB_TEST_INSTALLED."
say "# Testing $SCRIPT_NAME"
- else # normal case, use source version of gitweb
+- else # normal case, use source version of gitweb
- SCRIPT_NAME="$GIT_BUILD_DIR/gitweb/gitweb.perl"
++ else # normal case, use built version of gitweb
+ SCRIPT_NAME="$GIT_BUILD_DIR/gitweb/gitweb.cgi"
fi
export SCRIPT_NAME
4: f5700647839 = 4: cc94f6fa648 t/lib-gpg: fix setup of GNUPGHOME in MinGW
5: d082cd92af3 ! 5: 58691dd652b t1401: make invocation of tar(1) work with Win32-provided one
@@ Commit message
Drop the trailing slash. Other tests that use tar(1) work alright, this
is the only instance where it has been failing.
+ Signed-off-by: Patrick Steinhardt <ps@pks.im>
+
## t/t1401-symbolic-ref.sh ##
@@ t/t1401-symbolic-ref.sh: reset_to_sane() {
test_expect_success 'setup' '
6: a82a6b3df70 = 6: 1daadd82766 t3404: work around platform-specific behaviour on macOS 10.15
7: e1b9617f943 = 7: 374f47bf3de t5500, t5601: skip tests which exercise paths with '[::1]' on Cygwin
8: b94fd876adb = 8: 13c06a8129b t7300: work around platform-specific behaviour with long paths on MinGW
9: 8cce69e5ba6 = 9: 5fd78b6d535 builtin/credential-cache: fix missing parameter for stub function
10: deb30e12a58 = 10: 9963dc73988 http: fix build error on FreeBSD
base-commit: ef8ce8f3d4344fd3af049c17eeba5cd20d98b69f
--
2.47.0.72.gef8ce8f3d4.dirty
next prev parent reply other threads:[~2024-10-15 11:45 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-14 12:21 [PATCH 00/10] Platform compatibility fixes Patrick Steinhardt
2024-10-14 12:21 ` [PATCH 01/10] t/test-lib: fix quoting of TEST_RESULTS_SAN_FILE Patrick Steinhardt
2024-10-14 22:00 ` Taylor Blau
2024-10-14 12:21 ` [PATCH 02/10] t/test-lib: wire up NO_ICONV prerequisite Patrick Steinhardt
2024-10-14 12:21 ` [PATCH 03/10] t/lib-gitweb: test against the build version of gitweb Patrick Steinhardt
2024-10-14 22:06 ` Taylor Blau
2024-10-15 11:36 ` Patrick Steinhardt
2024-10-14 12:21 ` [PATCH 04/10] t/lib-gpg: fix setup of GNUPGHOME in MinGW Patrick Steinhardt
2024-10-14 22:07 ` Taylor Blau
2024-10-14 12:21 ` [PATCH 05/10] t1401: make invocation of tar(1) work with Win32-provided one Patrick Steinhardt
2024-10-14 23:23 ` Eric Sunshine
2024-10-15 0:29 ` Taylor Blau
2024-10-14 12:21 ` [PATCH 06/10] t3404: work around platform-specific behaviour on macOS 10.15 Patrick Steinhardt
2024-10-14 12:21 ` [PATCH 07/10] t5500, t5601: skip tests which exercise paths with '[::1]' on Cygwin Patrick Steinhardt
2024-10-14 22:10 ` Taylor Blau
2024-10-14 12:21 ` [PATCH 08/10] t7300: work around platform-specific behaviour with long paths on MinGW Patrick Steinhardt
2024-10-14 12:21 ` [PATCH 09/10] builtin/credential-cache: fix missing parameter for stub function Patrick Steinhardt
2024-10-14 22:12 ` Taylor Blau
2024-10-14 12:21 ` [PATCH 10/10] http: fix build error on FreeBSD Patrick Steinhardt
2024-10-14 22:14 ` Taylor Blau
2024-10-15 11:44 ` Patrick Steinhardt
2024-10-15 11:45 ` Patrick Steinhardt [this message]
2024-10-15 11:45 ` [PATCH v2 01/10] t/test-lib: fix quoting of TEST_RESULTS_SAN_FILE Patrick Steinhardt
2024-10-15 11:45 ` [PATCH v2 02/10] t/test-lib: wire up NO_ICONV prerequisite Patrick Steinhardt
2024-10-15 23:53 ` Taylor Blau
2024-10-16 3:57 ` Patrick Steinhardt
2024-10-16 20:59 ` Taylor Blau
2024-10-16 21:02 ` Taylor Blau
2024-10-17 4:03 ` Patrick Steinhardt
2024-10-15 11:45 ` [PATCH v2 03/10] t/lib-gitweb: test against the build version of gitweb Patrick Steinhardt
2024-10-15 11:45 ` [PATCH v2 04/10] t/lib-gpg: fix setup of GNUPGHOME in MinGW Patrick Steinhardt
2024-10-16 5:59 ` James Liu
2024-10-15 11:45 ` [PATCH v2 05/10] t1401: make invocation of tar(1) work with Win32-provided one Patrick Steinhardt
2024-10-16 5:58 ` James Liu
2024-10-15 11:45 ` [PATCH v2 06/10] t3404: work around platform-specific behaviour on macOS 10.15 Patrick Steinhardt
2024-10-16 6:02 ` James Liu
2024-10-15 11:45 ` [PATCH v2 07/10] t5500, t5601: skip tests which exercise paths with '[::1]' on Cygwin Patrick Steinhardt
2024-10-15 11:45 ` [PATCH v2 08/10] t7300: work around platform-specific behaviour with long paths on MinGW Patrick Steinhardt
2024-10-16 6:35 ` James Liu
2024-10-16 8:27 ` James Liu
2024-10-15 11:45 ` [PATCH v2 09/10] builtin/credential-cache: fix missing parameter for stub function Patrick Steinhardt
2024-10-15 11:45 ` [PATCH v2 10/10] http: fix build error on FreeBSD Patrick Steinhardt
2024-10-16 8:12 ` [PATCH v3 00/10] Platform compatibility fixes Patrick Steinhardt
2024-10-16 8:12 ` [PATCH v3 01/10] t/test-lib: fix quoting of TEST_RESULTS_SAN_FILE Patrick Steinhardt
2024-10-16 8:12 ` [PATCH v3 02/10] t/test-lib: wire up NO_ICONV prerequisite Patrick Steinhardt
2024-10-17 1:10 ` brian m. carlson
2024-10-17 4:03 ` Patrick Steinhardt
2024-10-25 18:32 ` Josh Steadmon
2024-10-28 5:14 ` [PATCH] t6006: fix prereq handling with `test_format ()` Patrick Steinhardt
2024-10-28 17:48 ` Taylor Blau
2024-10-16 8:12 ` [PATCH v3 03/10] t/lib-gitweb: test against the build version of gitweb Patrick Steinhardt
2024-10-16 8:12 ` [PATCH v3 04/10] t/lib-gpg: fix setup of GNUPGHOME in MinGW Patrick Steinhardt
2024-10-16 8:13 ` [PATCH v3 05/10] t1401: make invocation of tar(1) work with Win32-provided one Patrick Steinhardt
2024-10-16 8:13 ` [PATCH v3 06/10] t3404: work around platform-specific behaviour on macOS 10.15 Patrick Steinhardt
2024-10-16 8:13 ` [PATCH v3 07/10] t5500, t5601: skip tests which exercise paths with '[::1]' on Cygwin Patrick Steinhardt
2024-10-16 8:13 ` [PATCH v3 08/10] t7300: work around platform-specific behaviour with long paths on MinGW Patrick Steinhardt
2024-10-16 8:13 ` [PATCH v3 09/10] builtin/credential-cache: fix missing parameter for stub function Patrick Steinhardt
2024-10-16 8:13 ` [PATCH v3 10/10] http: fix build error on FreeBSD Patrick Steinhardt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1728992306.git.ps@pks.im \
--to=ps@pks.im \
--cc=git@vger.kernel.org \
--cc=me@ttaylorr.com \
--cc=sunshine@sunshineco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).