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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.