git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "SZEDER Gábor" <szeder.dev@gmail.com>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>,
	Denton Liu <liu.denton@gmail.com>, Jeff King <peff@peff.net>,
	Eric Sunshine <sunshine@sunshineco.com>
Subject: Re: [PATCH v2 11/11] tests: add a "set -o pipefail" for a patched bash
Date: Wed, 20 Jan 2021 14:04:47 +0100	[thread overview]
Message-ID: <20210120130447.GB8396@szeder.dev> (raw)
In-Reply-To: <20210116153554.12604-12-avarab@gmail.com>

On Sat, Jan 16, 2021 at 04:35:54PM +0100, Ævar Arnfjörð Bjarmason wrote:
> Add a "set -o pipefail" test mode to the test suite to detect failures
> in "git" its output is fed directly to a pipe. Doing so is a pattern
> we discourage[1] in the test suite, but we've got plenty of tests like
> that. Now we can reliably detect those failures.
> 
> There was a previous attempt in [2] to add such a test mode, but as
> noted by Jeff King in [3] adding it is a matter of peeing against the
> wind with current bash semantics of failing on SIGPIPE.
> 
> This series relies on a patch of mine to bash, which I'm submitting
> upstream, while not breaking anything for vanilla bash users. They
> won't have GIT_TEST_PIPEFAIL turned on for them, and will only get
> breakages if they turn it on explicitly with "GIT_TEST_PIPEFAIL=true".

I'm not sure about adding code to our test framework that only works
with a patched shell.

> Vanilla bash ignores SIGPIPE under "set -e" since version 3.1. It's
> only under "set -o pipefail" (added in 3.2) that it doesn't take
> account of SIGPIPE, in a seeming omission nobody bothered to fix yet.
> 
> Patching bash[4] with:
> 
>     diff --git a/jobs.c b/jobs.c
>     index a581f305..fa5de82a 100644
>     --- a/jobs.c
>     +++ b/jobs.c
>     @@ -2851,8 +2851,14 @@ raw_job_exit_status (job)
>            p = jobs[job]->pipe;
>            do
>      	{
>     -	  if (WSTATUS (p->status) != EXECUTION_SUCCESS)
>     -	    fail = WSTATUS(p->status);
>     +	  if (WSTATUS (p->status) != EXECUTION_SUCCESS
>     +#if defined (DONT_REPORT_SIGPIPE)
>     +              && WTERMSIG (p->status) != SIGPIPE
>     +#endif
>     +              )
>     +            {
>     +              fail = WSTATUS(p->status);
>     +            }
>      	  p = p->next;
>      	}
>            while (p != jobs[job]->pipe);
> 
> Makes it useful for something like the git test suite.
> 
> Under this test mode we only tests we need to skip those tests which
> are explicitly testing that a piped command returned SIGPIPE. Those
> tests will now return 0 instead of an exit code indicating SIGPIPE.
> 
> Forcing the mode to run under vanilla bash with
> "GIT_TEST_PIPEFAIL=true" doesn't fail any tests for me, except the
> test in t0000-basic.sh which explicitly checks for the desired
> pipefail semantics. However, as Jeff noted in [3] that absence of
> failure isn't reliable. I might not see some of the failures due to
> the racy nature of how vanilla "set -o pipefail" interacts with *nix
> pipe semantics.
> 
> 1. a378fee5b0 (Documentation: add shell guidelines, 2018-10-05)
> 2. https://lore.kernel.org/git/cover.1573779465.git.liu.denton@gmail.com/
> 3. https://lore.kernel.org/git/20191115040909.GA21654@sigill.intra.peff.net/
> 4. https://github.com/bminor/bash/compare/master...avar:avar/ignore-sigterm-and-sigpipe-on-pipe-fail
> 
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>


> diff --git a/t/test-lib.sh b/t/test-lib.sh
> index 9fa7c1d0f6..118dc80ffc 100644
> --- a/t/test-lib.sh
> +++ b/t/test-lib.sh
> @@ -36,6 +36,31 @@ then
>  fi
>  GIT_BUILD_DIR="$TEST_DIRECTORY"/..
>  
> +# Does "set -o pipefail" on this bash version handle SIGPIPE? Use it!
> +. "$TEST_DIRECTORY/lib-bash-detection.sh"
> +GIT_TEST_PIPEFAIL_TRUE=
> +GIT_TEST_PIPEFAIL_DEFAULT=false
> +if test -n "$TEST_SH_IS_BIN_BASH" &&
> +       $BASH -c 'set -eo pipefail; yes | head -n 1 >/dev/null'
> +then
> +	GIT_TEST_PIPEFAIL_DEFAULT=true
> +fi
> +# We're too early for test_bool_env
> +if git env--helper --type=bool --default="$GIT_TEST_PIPEFAIL_DEFAULT" \

We're too early to invoke 'git' like this, period.

At this point PATH has not yet been set up to include the 'git' binary
we are testing, and we can't rely on a recent enough 'git' supporting
'env--helper' to be present in the regular PATH, or that any 'git' is
present in PATH at all.  And indeed we have CI jobs whose output with
this patch now looks like this:

  *** prove ***
  t5401-update-hooks.sh: ./test-lib.sh: line 49: git: not found
  t9001-send-email.sh: ./test-lib.sh: line 49: git: not found
  t5608-clone-2gb.sh: ./test-lib.sh: line 49: git: not found
  [22:05:24] t9001-send-email.sh ................................ ok    58390 ms ( 0.06 usr  0.00 sys + 27.37 cusr  7.49 csys = 34.92 CPU)
  t2013-checkout-submodule.sh: ./test-lib.sh: line 49: git: not found
  [22:05:34] t2013-checkout-submodule.sh ........................ ok     9412 ms ( 0.03 usr  0.01 sys +  5.68 cusr  3.00 csys =  8.72 CPU)
  t0027-auto-crlf.sh: ./test-lib.sh: line 49: git: not found

> +       --exit-code GIT_TEST_PIPEFAIL
> +then
> +	set -o pipefail
> +
> +	# Only "set -o pipefail" in the main test scripts, not any
> +	# sub-programs we spawn.
> +	GIT_TEST_PIPEFAIL=
> +	export GIT_TEST_PIPEFAIL
> +
> +	# For the convenience of the prereq for it.
> +	GIT_TEST_PIPEFAIL_TRUE=true
> +	export GIT_TEST_PIPEFAIL_TRUE
> +fi
> +
>  # If we were built with ASAN, it may complain about leaks
>  # of program-lifetime variables. Disable it by default to lower
>  # the noise level. This needs to happen at the start of the script,
> @@ -1552,6 +1577,10 @@ test_lazy_prereq PIPE '
>  	rm -f testfifo && mkfifo testfifo
>  '
>  
> +test_lazy_prereq BASH_SET_O_PIPEFAIL '
> +	test -n "$GIT_TEST_PIPEFAIL_TRUE"
> +'
> +
>  test_lazy_prereq SYMLINKS '
>  	# test whether the filesystem supports symbolic links
>  	ln -s x y && test -h y
> -- 
> 2.29.2.222.g5d2a92d10f8
> 

  reply	other threads:[~2021-01-20 14:16 UTC|newest]

Thread overview: 228+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-15  1:00 [PATCH 00/27] t: general test cleanup + `set -o pipefail` Denton Liu
2019-11-15  1:00 ` [PATCH 01/27] lib-bash.sh: move `then` onto its own line Denton Liu
2019-11-15 18:22   ` Eric Sunshine
2019-11-16  2:50     ` Junio C Hamano
2019-11-15  1:00 ` [PATCH 02/27] t0014: remove git command upstream of pipe Denton Liu
2019-11-15  1:00 ` [PATCH 03/27] t0090: stop losing return codes of git commands Denton Liu
2019-11-15  1:00 ` [PATCH 04/27] t3301: " Denton Liu
2019-11-15  1:00 ` [PATCH 05/27] t3600: use test_line_count() where possible Denton Liu
2019-11-15  1:00 ` [PATCH 06/27] t3600: stop losing return codes of git commands Denton Liu
2019-11-15  1:00 ` [PATCH 07/27] t3600: comment on inducing SIGPIPE in `git rm` Denton Liu
2019-11-15  1:00 ` [PATCH 08/27] t4015: stop losing return codes of git commands Denton Liu
2019-11-15  1:00 ` [PATCH 09/27] t4015: use test_write_lines() Denton Liu
2019-11-15  1:00 ` [PATCH 10/27] t4138: stop losing return codes of git commands Denton Liu
2019-11-16  9:00   ` Eric Sunshine
2019-11-15  1:00 ` [PATCH 11/27] t5317: " Denton Liu
2019-11-15  1:00 ` [PATCH 12/27] t5317: use ! grep to check for no matching lines Denton Liu
2019-11-16  9:27   ` Eric Sunshine
2019-11-15  1:01 ` [PATCH 13/27] t5703: stop losing return codes of git commands Denton Liu
2019-11-16 10:11   ` Eric Sunshine
2019-11-15  1:01 ` [PATCH 14/27] t7501: remove spaces after redirect operators Denton Liu
2019-11-15  1:01 ` [PATCH 15/27] t7501: stop losing return codes of git commands Denton Liu
2019-11-16 10:35   ` Eric Sunshine
2019-11-15  1:01 ` [PATCH 16/27] t7700: drop redirections to /dev/null Denton Liu
2019-11-15  1:01 ` [PATCH 17/27] t7700: remove spaces after redirect operators Denton Liu
2019-11-15  1:01 ` [PATCH 18/27] t7700: move keywords onto their own line Denton Liu
2019-11-15  1:01 ` [PATCH 19/27] t7700: s/test -f/test_path_is_file/ Denton Liu
2019-11-15  1:01 ` [PATCH 20/27] t7700: stop losing return codes of git commands Denton Liu
2019-11-15  1:01 ` [PATCH 21/27] t: define test_grep_return_success() Denton Liu
2019-11-15  5:26   ` Junio C Hamano
2019-11-15  1:01 ` [PATCH 22/27] t0090: mask failing grep status Denton Liu
2019-11-15  1:01 ` [PATCH 23/27] t3600: mark git command as failing Denton Liu
2019-11-15  5:35   ` Junio C Hamano
2019-11-15  1:01 ` [PATCH 24/27] t5004: ignore SIGPIPE in zipinfo Denton Liu
2019-11-15  5:36   ` Junio C Hamano
2019-11-15  1:01 ` [PATCH 25/27] t5703: mask failing grep status Denton Liu
2019-11-15  1:01 ` [PATCH 26/27] t9902: disable pipefail Denton Liu
2019-11-15  1:01 ` [PATCH 27/27] t: run tests with `set -o pipefail` on Bash Denton Liu
2019-11-15  4:09 ` [PATCH 00/27] t: general test cleanup + `set -o pipefail` Jeff King
2021-01-14 23:35   ` [PATCH 0/6] tests: add a bash "set -o pipefail" test mode Ævar Arnfjörð Bjarmason
2021-01-16 15:35     ` [PATCH v2 00/11] " Ævar Arnfjörð Bjarmason
2021-01-16 21:50       ` Junio C Hamano
2021-01-17 16:50       ` Jeff King
2021-01-16 15:35     ` [PATCH v2 01/11] cache-tree tests: remove unused $2 parameter Ævar Arnfjörð Bjarmason
2021-01-16 15:35     ` [PATCH v2 02/11] cache-tree tests: use a sub-shell with less indirection Ævar Arnfjörð Bjarmason
2021-01-17 16:55       ` Jeff King
2021-01-17 22:23         ` Eric Sunshine
2021-01-17 23:37         ` Junio C Hamano
2021-01-16 15:35     ` [PATCH v2 03/11] cache-tree tests: refactor overly complex function Ævar Arnfjörð Bjarmason
2021-01-16 21:51       ` Junio C Hamano
2021-01-16 15:35     ` [PATCH v2 04/11] git svn mergeinfo tests: modernize redirection & quoting style Ævar Arnfjörð Bjarmason
2021-01-16 21:51       ` Junio C Hamano
2021-01-16 15:35     ` [PATCH v2 05/11] git svn mergeinfo tests: refactor "test -z" to use test_must_be_empty Ævar Arnfjörð Bjarmason
2021-01-16 15:35     ` [PATCH v2 06/11] git-svn tests: rewrite brittle tests to use "--[no-]merges" Ævar Arnfjörð Bjarmason
2021-01-16 21:51       ` Junio C Hamano
2021-01-17 16:47       ` Jeff King
2021-01-16 15:35     ` [PATCH v2 07/11] rm tests: actually test for SIGPIPE in SIGPIPE test Ævar Arnfjörð Bjarmason
2021-01-16 15:35     ` [PATCH v2 08/11] upload-pack tests: avoid a non-zero "grep" exit status Ævar Arnfjörð Bjarmason
2021-01-16 21:48       ` Junio C Hamano
2021-01-16 15:35     ` [PATCH v2 09/11] archive tests: use a cheaper "zipinfo -h" invocation to get header Ævar Arnfjörð Bjarmason
2021-01-17 17:08       ` Jeff King
2021-01-16 15:35     ` [PATCH v2 10/11] tests: split up bash detection library Ævar Arnfjörð Bjarmason
2021-01-16 15:35     ` [PATCH v2 11/11] tests: add a "set -o pipefail" for a patched bash Ævar Arnfjörð Bjarmason
2021-01-20 13:04       ` SZEDER Gábor [this message]
2021-01-23  3:46       ` Junio C Hamano
2021-01-23  7:37         ` Junio C Hamano
2021-01-23  9:32           ` Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 00/10] Miscellaneous "set -o pipefail"-related test cleanups Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 01/10] cache-tree tests: refactor for modern test style Ævar Arnfjörð Bjarmason
2021-01-23 21:34               ` Junio C Hamano
2021-01-23 13:00             ` [PATCH v3 02/10] cache-tree tests: remove unused $2 parameter Ævar Arnfjörð Bjarmason
2021-01-23 21:35               ` Junio C Hamano
2021-01-23 13:00             ` [PATCH v3 03/10] cache-tree tests: use a sub-shell with less indirection Ævar Arnfjörð Bjarmason
2021-01-23 21:35               ` Junio C Hamano
2021-01-23 13:00             ` [PATCH v3 04/10] cache-tree tests: explicitly test HEAD and index differences Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 05/10] git svn mergeinfo tests: modernize redirection & quoting style Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 06/10] git svn mergeinfo tests: refactor "test -z" to use test_must_be_empty Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 07/10] git-svn tests: rewrite brittle tests to use "--[no-]merges" Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 08/10] upload-pack tests: avoid a non-zero "grep" exit status Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 09/10] archive tests: use a cheaper "zipinfo -h" invocation to get header Ævar Arnfjörð Bjarmason
2021-01-23 13:00             ` [PATCH v3 10/10] rm tests: actually test for SIGPIPE in SIGPIPE test Ævar Arnfjörð Bjarmason
2021-01-23  9:40         ` [PATCH v2 11/11] tests: add a "set -o pipefail" for a patched bash Ævar Arnfjörð Bjarmason
2021-01-14 23:35   ` [PATCH 1/6] test-lib: add tests for test_might_fail Ævar Arnfjörð Bjarmason
2021-01-15  9:36     ` Jeff King
2021-01-16 14:41       ` [PATCH] " Ævar Arnfjörð Bjarmason
2021-01-17 16:48         ` Jeff King
2021-01-14 23:35   ` [PATCH 2/6] test-lib: add ok=* support to test_might_fail Ævar Arnfjörð Bjarmason
2021-01-14 23:35   ` [PATCH 3/6] test_lib: allow test_{must,might}_fail to accept non-git on "sigpipe" Ævar Arnfjörð Bjarmason
2021-01-15  8:15     ` Denton Liu
2021-01-15  9:39       ` Ævar Arnfjörð Bjarmason
2021-01-15 10:00         ` Jeff King
2021-01-14 23:35   ` [PATCH 4/6] tests: use "test_might_fail ok=sigpipe grep" when appropriate Ævar Arnfjörð Bjarmason
2021-01-15  9:14     ` Ævar Arnfjörð Bjarmason
2021-01-15  9:48       ` Jeff King
2021-01-14 23:35   ` [PATCH 5/6] tests: split up bash detection library Ævar Arnfjörð Bjarmason
2021-01-15  9:42     ` Ævar Arnfjörð Bjarmason
2021-01-14 23:35   ` [PATCH 6/6] tests: add a "set -o pipefail" for a patched bash Ævar Arnfjörð Bjarmason
2021-01-15 10:04     ` Jeff King
2019-11-21  0:45 ` [PATCH v2 00/21] t: test cleanup stemming from experimentally enabling pipefail Denton Liu
2019-11-21  0:45   ` [PATCH v2 01/21] lib-bash.sh: move `then` onto its own line Denton Liu
2019-11-21  0:45   ` [PATCH v2 02/21] t0014: remove git command upstream of pipe Denton Liu
2019-11-21  0:45   ` [PATCH v2 03/21] t0090: stop losing return codes of git commands Denton Liu
2019-11-21  0:45   ` [PATCH v2 04/21] t3301: " Denton Liu
2019-11-21  0:45   ` [PATCH v2 05/21] t3600: use test_line_count() where possible Denton Liu
2019-11-21  0:46   ` [PATCH v2 06/21] t3600: stop losing return codes of git commands Denton Liu
2019-11-21  0:46   ` [PATCH v2 07/21] t3600: comment on inducing SIGPIPE in `git rm` Denton Liu
2019-11-21  0:46   ` [PATCH v2 08/21] t4015: stop losing return codes of git commands Denton Liu
2019-11-21  0:46   ` [PATCH v2 09/21] t4015: use test_write_lines() Denton Liu
2019-11-21  0:46   ` [PATCH v2 10/21] t4138: stop losing return codes of git commands Denton Liu
2019-11-21  0:46   ` [PATCH v2 11/21] t5317: " Denton Liu
2019-11-21  0:46   ` [PATCH v2 12/21] t5317: use ! grep to check for no matching lines Denton Liu
2019-11-21 12:59     ` Eric Sunshine
2019-11-21  0:46   ` [PATCH v2 13/21] t5703: simplify one-time-sed generation logic Denton Liu
2019-11-21 13:12     ` Eric Sunshine
2019-11-21 23:22       ` Denton Liu
2019-11-21  0:46   ` [PATCH v2 14/21] t5703: stop losing return codes of git commands Denton Liu
2019-11-21  0:46   ` [PATCH v2 15/21] t7501: remove spaces after redirect operators Denton Liu
2019-11-21  0:46   ` [PATCH v2 16/21] t7501: stop losing return codes of git commands Denton Liu
2019-11-21  0:46   ` [PATCH v2 17/21] t7700: drop redirections to /dev/null Denton Liu
2019-11-21  0:46   ` [PATCH v2 18/21] t7700: remove spaces after redirect operators Denton Liu
2019-11-21  0:46   ` [PATCH v2 19/21] t7700: move keywords onto their own line Denton Liu
2019-11-21  0:46   ` [PATCH v2 20/21] t7700: s/test -f/test_path_is_file/ Denton Liu
2019-11-21  0:46   ` [PATCH v2 21/21] t7700: stop losing return codes of git commands Denton Liu
2019-11-22 18:59   ` [PATCH v3 00/22] t: test cleanup stemming from experimentally enabling pipefail Denton Liu
2019-11-22 18:59     ` [PATCH v3 01/22] lib-bash.sh: move `then` onto its own line Denton Liu
2019-11-22 18:59     ` [PATCH v3 02/22] apply-one-time-sed.sh: modernize style Denton Liu
2019-11-23  1:32       ` Junio C Hamano
2019-11-22 18:59     ` [PATCH v3 03/22] t0014: remove git command upstream of pipe Denton Liu
2019-11-22 18:59     ` [PATCH v3 04/22] t0090: stop losing return codes of git commands Denton Liu
2019-11-22 18:59     ` [PATCH v3 05/22] t3301: " Denton Liu
2019-11-22 18:59     ` [PATCH v3 06/22] t3600: use test_line_count() where possible Denton Liu
2019-11-22 18:59     ` [PATCH v3 07/22] t3600: stop losing return codes of git commands Denton Liu
2019-11-22 19:00     ` [PATCH v3 08/22] t3600: comment on inducing SIGPIPE in `git rm` Denton Liu
2019-11-22 19:00     ` [PATCH v3 09/22] t4015: stop losing return codes of git commands Denton Liu
2019-11-22 19:00     ` [PATCH v3 10/22] t4015: use test_write_lines() Denton Liu
2019-11-22 19:00     ` [PATCH v3 11/22] t4138: stop losing return codes of git commands Denton Liu
2019-11-22 19:00     ` [PATCH v3 12/22] t5317: " Denton Liu
2019-11-22 19:00     ` [PATCH v3 13/22] t5317: use ! grep to check for no matching lines Denton Liu
2019-11-23  6:21       ` Eric Sunshine
2019-11-25 21:43         ` Denton Liu
2019-11-22 19:00     ` [PATCH v3 14/22] t5703: simplify one-time-sed generation logic Denton Liu
2019-11-22 19:00     ` [PATCH v3 15/22] t5703: stop losing return codes of git commands Denton Liu
2019-11-22 19:00     ` [PATCH v3 16/22] t7501: remove spaces after redirect operators Denton Liu
2019-11-22 19:00     ` [PATCH v3 17/22] t7501: stop losing return codes of git commands Denton Liu
2019-11-22 19:00     ` [PATCH v3 18/22] t7700: drop redirections to /dev/null Denton Liu
2019-11-22 19:00     ` [PATCH v3 19/22] t7700: remove spaces after redirect operators Denton Liu
2019-11-22 19:00     ` [PATCH v3 20/22] t7700: move keywords onto their own line Denton Liu
2019-11-22 19:00     ` [PATCH v3 21/22] t7700: s/test -f/test_path_is_file/ Denton Liu
2019-11-22 19:00     ` [PATCH v3 22/22] t7700: stop losing return codes of git commands Denton Liu
2019-11-23  1:49       ` Junio C Hamano
2019-11-25 23:57         ` Denton Liu
2019-11-26  0:58           ` Eric Sunshine
2019-11-26  1:34             ` Junio C Hamano
2019-11-26  4:47               ` Denton Liu
2019-11-26  1:17     ` [PATCH v4 00/27] t: test cleanup stemming from experimentally enabling pipefail Denton Liu
2019-11-26  1:17       ` [PATCH v4 01/27] lib-bash.sh: move `then` onto its own line Denton Liu
2019-11-26  1:17       ` [PATCH v4 02/27] apply-one-time-sed.sh: modernize style Denton Liu
2019-11-26  1:17       ` [PATCH v4 03/27] t0014: remove git command upstream of pipe Denton Liu
2019-11-26  1:17       ` [PATCH v4 04/27] t0090: stop losing return codes of git commands Denton Liu
2019-11-26  1:17       ` [PATCH v4 05/27] t3301: " Denton Liu
2019-11-26  1:17       ` [PATCH v4 06/27] t3600: use test_line_count() where possible Denton Liu
2019-11-26  1:18       ` [PATCH v4 07/27] t3600: stop losing return codes of git commands Denton Liu
2019-11-26  1:18       ` [PATCH v4 08/27] t3600: comment on inducing SIGPIPE in `git rm` Denton Liu
2019-11-26  1:18       ` [PATCH v4 09/27] t4015: stop losing return codes of git commands Denton Liu
2019-11-26  1:18       ` [PATCH v4 10/27] t4015: use test_write_lines() Denton Liu
2019-11-26  1:18       ` [PATCH v4 11/27] t4138: stop losing return codes of git commands Denton Liu
2019-11-26  1:18       ` [PATCH v4 12/27] t5317: " Denton Liu
2019-11-26  1:18       ` [PATCH v4 13/27] t5317: use ! grep to check for no matching lines Denton Liu
2019-11-26  1:18       ` [PATCH v4 14/27] t5703: simplify one-time-sed generation logic Denton Liu
2019-11-26  1:18       ` [PATCH v4 15/27] t5703: stop losing return codes of git commands Denton Liu
2019-11-26  1:18       ` [PATCH v4 16/27] t7501: remove spaces after redirect operators Denton Liu
2019-11-26  1:18       ` [PATCH v4 17/27] t7501: stop losing return codes of git commands Denton Liu
2019-11-26  1:18       ` [PATCH v4 18/27] t7700: drop redirections to /dev/null Denton Liu
2019-11-26  1:18       ` [PATCH v4 19/27] t7700: remove spaces after redirect operators Denton Liu
2019-11-26  1:18       ` [PATCH v4 20/27] t7700: move keywords onto their own line Denton Liu
2019-11-26  1:18       ` [PATCH v4 21/27] t7700: s/test -f/test_path_is_file/ Denton Liu
2019-11-26  1:18       ` [PATCH v4 22/27] t7700: consolidate code into test_no_missing_in_packs() Denton Liu
2019-11-26  2:35         ` Eric Sunshine
2019-11-26  1:18       ` [PATCH v4 23/27] squash! " Denton Liu
2019-11-26  1:18       ` [PATCH v4 24/27] t7700: consolidate code into test_has_duplicate_object() Denton Liu
2019-11-26  1:18       ` [PATCH v4 25/27] t7700: replace egrep with grep Denton Liu
2019-11-26  1:18       ` [PATCH v4 26/27] t7700: make references to SHA-1 generic Denton Liu
2019-11-26  3:15         ` Eric Sunshine
2019-11-26  1:18       ` [PATCH v4 27/27] t7700: stop losing return codes of git commands Denton Liu
2019-11-27 19:53       ` [PATCH v5 00/26] t: test cleanup stemming from experimentally enabling pipefail Denton Liu
2019-11-27 19:53         ` [PATCH v5 01/26] lib-bash.sh: move `then` onto its own line Denton Liu
2019-11-27 19:53         ` [PATCH v5 02/26] apply-one-time-sed.sh: modernize style Denton Liu
2019-11-27 19:53         ` [PATCH v5 03/26] t0014: remove git command upstream of pipe Denton Liu
2019-11-27 19:53         ` [PATCH v5 04/26] t0090: stop losing return codes of git commands Denton Liu
2019-11-27 19:53         ` [PATCH v5 05/26] t3301: " Denton Liu
2019-11-27 19:53         ` [PATCH v5 06/26] t3600: use test_line_count() where possible Denton Liu
2019-11-27 19:53         ` [PATCH v5 07/26] t3600: stop losing return codes of git commands Denton Liu
2019-11-27 19:53         ` [PATCH v5 08/26] t3600: comment on inducing SIGPIPE in `git rm` Denton Liu
2019-11-27 19:53         ` [PATCH v5 09/26] t4015: stop losing return codes of git commands Denton Liu
2019-11-27 19:53         ` [PATCH v5 10/26] t4015: use test_write_lines() Denton Liu
2019-11-27 19:53         ` [PATCH v5 11/26] t4138: stop losing return codes of git commands Denton Liu
2019-11-27 19:53         ` [PATCH v5 12/26] t5317: " Denton Liu
2019-11-27 19:53         ` [PATCH v5 13/26] t5317: use ! grep to check for no matching lines Denton Liu
2019-11-27 19:53         ` [PATCH v5 14/26] t5703: simplify one-time-sed generation logic Denton Liu
2019-11-27 19:53         ` [PATCH v5 15/26] t5703: stop losing return codes of git commands Denton Liu
2019-11-27 19:53         ` [PATCH v5 16/26] t7501: remove spaces after redirect operators Denton Liu
2019-11-27 19:53         ` [PATCH v5 17/26] t7501: stop losing return codes of git commands Denton Liu
2019-11-27 19:53         ` [PATCH v5 18/26] t7700: drop redirections to /dev/null Denton Liu
2019-11-27 19:53         ` [PATCH v5 19/26] t7700: remove spaces after redirect operators Denton Liu
2019-11-27 19:53         ` [PATCH v5 20/26] t7700: move keywords onto their own line Denton Liu
2019-11-27 19:53         ` [PATCH v5 21/26] t7700: s/test -f/test_path_is_file/ Denton Liu
2019-11-27 19:53         ` [PATCH v5 22/26] t7700: consolidate code into test_no_missing_in_packs() Denton Liu
2019-11-29 21:39           ` Junio C Hamano
2019-12-02 20:50             ` Denton Liu
2019-12-02 22:53               ` Junio C Hamano
2019-12-02 23:28                 ` Denton Liu
2019-12-03 15:41                   ` Junio C Hamano
2019-12-04  7:24                     ` Denton Liu
2019-12-04 18:13                       ` Junio C Hamano
2019-12-04 22:03                         ` [PATCH v6 0/5] t: test cleanup stemming from experimentally enabling pipefail Denton Liu
2019-12-04 22:03                           ` [PATCH v6 1/5] t7700: consolidate code into test_no_missing_in_packs() Denton Liu
2019-12-04 22:03                           ` [PATCH v6 2/5] t7700: consolidate code into test_has_duplicate_object() Denton Liu
2019-12-04 22:03                           ` [PATCH v6 3/5] t7700: replace egrep with grep Denton Liu
2019-12-04 22:03                           ` [PATCH v6 4/5] t7700: make references to SHA-1 generic Denton Liu
2019-12-04 22:03                           ` [PATCH v6 5/5] t7700: stop losing return codes of git commands Denton Liu
2019-12-04 22:07                           ` [PATCH v6 0/5] t: test cleanup stemming from experimentally enabling pipefail Junio C Hamano
2019-11-27 19:53         ` [PATCH v5 23/26] t7700: consolidate code into test_has_duplicate_object() Denton Liu
2019-11-27 19:53         ` [PATCH v5 24/26] t7700: replace egrep with grep Denton Liu
2019-11-27 19:54         ` [PATCH v5 25/26] t7700: make references to SHA-1 generic Denton Liu
2019-11-27 19:54         ` [PATCH v5 26/26] t7700: stop losing return codes of git commands Denton Liu
2019-11-30 10:48           ` Danh Doan
2019-11-30 11:31             ` Eric Sunshine
2019-11-30 17:00               ` Junio C Hamano
2019-12-04 12:59                 ` t: remove inappropriate uses of test_must_fail(), was " Denton Liu

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210120130447.GB8396@szeder.dev \
    --to=szeder.dev@gmail.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=liu.denton@gmail.com \
    --cc=peff@peff.net \
    --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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).