git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 4/6] bisect run: fix the error message

From
Đoàn Trần Công Danh <congdanhqx@gmail.com>
Date
Dec 15, 2022, 15:08 UTC
Message-ID
<Y5s4Zy14TbGalfIl@danh.dev>
In-Reply-To
<patch-4.6-59a8a3085b1-20221215T094038Z-avarab@gmail.com>
On 2022-12-15 10:47:47+0100, Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote:
Show 13 quoted lines
> From: Johannes Schindelin <johannes.schindelin@gmx.de>
> 
> In d1bbbe45df8 (bisect--helper: reimplement `bisect_run` shell function
> in C, 2021-09-13), we ported the `bisect run` subcommand to C, including
> the part that prints out an error message when the implicit `git bisect
> bad` or `git bisect good` failed.
> 
> However, the error message was supposed to print out whether the state
> was "good" or "bad", but used a bogus (because non-populated) `args`
> variable for it. This was fixed in 80c2e9657f2 (bisect--helper: report
> actual bisect_state() argument on error, 2022-01-18), but the error
> message still talks about `bisect--helper`, which is an implementation
> detail that should not concern end users.

I don't think the error still talks about `bisect--helper`. The error is talking about some "bisect-state" which is not it Git's glossary, though.

Show 46 quoted lines
> Fix that, and add a regression test to ensure that the intended form of
> the error message.
> 
> Helped-by: Elijah Newren <newren@gmail.com>
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---
>  builtin/bisect.c            |  2 +-
>  t/t6030-bisect-porcelain.sh | 10 ++++++++++
>  2 files changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/builtin/bisect.c b/builtin/bisect.c
> index 9fc8db06944..0786ebf4012 100644
> --- a/builtin/bisect.c
> +++ b/builtin/bisect.c
> @@ -1292,7 +1292,7 @@ static int bisect_run(struct bisect_terms *terms, int argc, const char **argv)
>  			puts(_("bisect found first bad commit"));
>  			res = BISECT_OK;
>  		} else if (res) {
> -			error(_("bisect run failed: 'bisect-state %s'"
> +			error(_("bisect run failed: 'git bisect %s'"
>  				" exited with error code %d"), new_state, res);
>  		} else {
>  			continue;
> diff --git a/t/t6030-bisect-porcelain.sh b/t/t6030-bisect-porcelain.sh
> index 9e56b42b5da..0a62ea2b3ce 100755
> --- a/t/t6030-bisect-porcelain.sh
> +++ b/t/t6030-bisect-porcelain.sh
> @@ -1221,4 +1221,14 @@ test_expect_success 'bisect state output with bad commit' '
>  	grep -F "waiting for good commit(s), bad commit known" output
>  '
>  
> +test_expect_success 'verify correct error message' '
> +	git bisect reset &&
> +	git bisect start $HASH4 $HASH1 &&
> +	write_script test_script.sh <<-\EOF &&
> +	rm .git/BISECT*
> +	EOF
> +	test_must_fail git bisect run ./test_script.sh 2>error &&
> +	grep "git bisect good.*exited with error code" error
> +'
> +
>  test_done
> -- 
> 2.39.0.rc2.1048.g0e5493b8d5b
> 
-- 
Danh
Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 6 of 16 in “bisect: follow-up fixes from js/bisect-in-c”
  1. 0/6 bisect: follow-up fixes from js/bisect-in-cÆvar Arnfjörð Bjarmason, Dec 15, 2022
  2. 1/6 bisect--helper: simplify exit code computationÆvar Arnfjörð Bjarmason, Dec 15, 2022
  3. 2/6 bisect--helper: make the order consistently `argc, argv`Ævar Arnfjörð Bjarmason, Dec 15, 2022
  4. 3/6 bisect: verify that a bogus option won't try to start a bisectionÆvar Arnfjörð Bjarmason, Dec 15, 2022
  5. 4/6 bisect run: fix the error messageÆvar Arnfjörð Bjarmason, Dec 15, 2022
  6. Đoàn Trần Công DanhDec 15, 2022
  7. 5/6 bisect: remove Cogito-related codeÆvar Arnfjörð Bjarmason, Dec 15, 2022
  8. 6/6 bisect: no longer try to clean up left-over `.git/head-name` filesÆvar Arnfjörð Bjarmason, Dec 15, 2022
  9. Christian CouderDec 15, 2022
  10. 0/6 bisect: follow-up fixes from js/bisect-in-cÆvar Arnfjörð Bjarmason, Jan 12, 2023
  11. 1/6 bisect--helper: simplify exit code computationÆvar Arnfjörð Bjarmason, Jan 12, 2023
  12. 2/6 bisect--helper: make the order consistently `argc, argv`Ævar Arnfjörð Bjarmason, Jan 12, 2023
  13. 3/6 bisect: verify that a bogus option won't try to start a bisectionÆvar Arnfjörð Bjarmason, Jan 12, 2023
  14. 5/6 bisect: remove Cogito-related codeÆvar Arnfjörð Bjarmason, Jan 12, 2023
  15. 6/6 bisect: no longer try to clean up left-over `.git/head-name` filesÆvar Arnfjörð Bjarmason, Jan 12, 2023
  16. 4/6 bisect run: fix the error messageÆvar Arnfjörð Bjarmason, Jan 12, 2023

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.