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

Re: [PATCH] rebase: remove transitory rebase.useBuiltin setting & env

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Mar 23, 2021, 20:52 UTC
Message-ID
<nycvar.QRO.7.76.6.2103232152090.50@tvgsbejvaqbjf.bet>
In-Reply-To
<patch-1.1-df026b00b67-20210323T152302Z-avarab@gmail.com>
Hi Ævar,
On Tue, 23 Mar 2021, Ævar Arnfjörð Bjarmason wrote:
Show 18 quoted lines
> Remove the rebase.useBuiltin setting and the now-obsolete
> GIT_TEST_REBASE_USE_BUILTIN test flag.
>
> This was left in place after my d03ebd411c6 (rebase: remove the
> rebase.useBuiltin setting, 2019-03-18) to help anyone who'd used the
> experimental flag and wanted to know that it was the default, or that
> they should transition their test environment to use the builtin
> rebase unconditionally.
>
> It's been more than long enough for those users to get a headsup about
> this. So remove all the scaffolding that was left inplace after
> d03ebd411c6. I'm also removing the documentation entry, if anyone
> still has this left in their configuration they can do some source
> archaeology to figure out what it used to do, which makes more sense
> than exposing every git user reading the documentation to this legacy
> configuration switch.
>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>

ACK! Dscho

Show 88 quoted lines
> ---
>  Documentation/config/rebase.txt |  7 -------
>  builtin/rebase.c                | 11 -----------
>  t/t3400-rebase.sh               | 16 ----------------
>  3 files changed, 34 deletions(-)
>
> diff --git a/Documentation/config/rebase.txt b/Documentation/config/rebase.txt
> index 214f31b451f..8c979cb20f2 100644
> --- a/Documentation/config/rebase.txt
> +++ b/Documentation/config/rebase.txt
> @@ -1,10 +1,3 @@
> -rebase.useBuiltin::
> -	Unused configuration variable. Used in Git versions 2.20 and
> -	2.21 as an escape hatch to enable the legacy shellscript
> -	implementation of rebase. Now the built-in rewrite of it in C
> -	is always used. Setting this will emit a warning, to alert any
> -	remaining users that setting this now does nothing.
> -
>  rebase.backend::
>  	Default backend to use for rebasing.  Possible choices are
>  	'apply' or 'merge'.  In the future, if the merge backend gains
> diff --git a/builtin/rebase.c b/builtin/rebase.c
> index de400f9a197..783b526f6e7 100644
> --- a/builtin/rebase.c
> +++ b/builtin/rebase.c
> @@ -100,7 +100,6 @@ struct rebase_options {
>  	char *strategy, *strategy_opts;
>  	struct strbuf git_format_patch_opt;
>  	int reschedule_failed_exec;
> -	int use_legacy_rebase;
>  	int reapply_cherry_picks;
>  	int fork_point;
>  };
> @@ -1102,11 +1101,6 @@ static int rebase_config(const char *var, const char *value, void *data)
>  		return 0;
>  	}
>
> -	if (!strcmp(var, "rebase.usebuiltin")) {
> -		opts->use_legacy_rebase = !git_config_bool(var, value);
> -		return 0;
> -	}
> -
>  	if (!strcmp(var, "rebase.backend")) {
>  		return git_config_string(&opts->default_backend, var, value);
>  	}
> @@ -1441,11 +1435,6 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
>  	gpg_sign = options.gpg_sign_opt ? "" : NULL;
>  	FREE_AND_NULL(options.gpg_sign_opt);
>
> -	if (options.use_legacy_rebase ||
> -	    !git_env_bool("GIT_TEST_REBASE_USE_BUILTIN", -1))
> -		warning(_("the rebase.useBuiltin support has been removed!\n"
> -			  "See its entry in 'git help config' for details."));
> -
>  	strbuf_reset(&buf);
>  	strbuf_addf(&buf, "%s/applying", apply_dir());
>  	if(file_exists(buf.buf))
> diff --git a/t/t3400-rebase.sh b/t/t3400-rebase.sh
> index 587b408063a..0bb88aa982b 100755
> --- a/t/t3400-rebase.sh
> +++ b/t/t3400-rebase.sh
> @@ -388,22 +388,6 @@ test_expect_success 'rebase--merge.sh and --show-current-patch' '
>  	)
>  '
>
> -test_expect_success 'rebase -c rebase.useBuiltin=false warning' '
> -	expected="rebase.useBuiltin support has been removed" &&
> -
> -	# Only warn when the legacy rebase is requested...
> -	test_must_fail git -c rebase.useBuiltin=false rebase 2>err &&
> -	test_i18ngrep "$expected" err &&
> -	test_must_fail env GIT_TEST_REBASE_USE_BUILTIN=false git rebase 2>err &&
> -	test_i18ngrep "$expected" err &&
> -
> -	# ...not when we would have used the built-in anyway
> -	test_must_fail git -c rebase.useBuiltin=true rebase 2>err &&
> -	test_must_be_empty err &&
> -	test_must_fail env GIT_TEST_REBASE_USE_BUILTIN=true git rebase 2>err &&
> -	test_must_be_empty err
> -'
> -
>  test_expect_success 'switch to branch checked out here' '
>  	git checkout main &&
>  	git rebase main main
> --
> 2.31.0.366.g75c23356abd
>
>
Previous: Junio C Hamano
Message 31 of 31 in “rebase -x: sanity check command”
  1. rebase -x: sanity check commandPhillip Wood, Jan 28, 2019
  2. Junio C HamanoJan 28, 2019
  3. Johannes SchindelinJan 28, 2019
  4. Phillip WoodJan 29, 2019
  5. Johannes SchindelinJan 29, 2019
  6. Johannes SchindelinJan 28, 2019
  7. Phillip WoodJan 29, 2019
  8. Johannes SchindelinJan 29, 2019
  9. rebase -x: sanity check commandPhillip Wood, Jan 29, 2019
  10. Junio C HamanoJan 29, 2019
  11. Johannes SchindelinJan 30, 2019
  12. Ævar Arnfjörð BjarmasonFeb 13, 2019
  13. rebase: remove the rebase.useBuiltin settingÆvar Arnfjörð Bjarmason, Feb 13, 2019
  14. Johannes SchindelinFeb 13, 2019
  15. Junio C HamanoFeb 13, 2019
  16. rebase: fix regression in rebase.useBuiltin=false test modeÆvar Arnfjörð Bjarmason, Feb 13, 2019
  17. Junio C HamanoFeb 13, 2019
  18. Phillip WoodFeb 14, 2019
  19. rebase: remove the rebase.useBuiltin settingÆvar Arnfjörð Bjarmason, Mar 14, 2019
  20. Johannes SchindelinMar 14, 2019
  21. Ævar Arnfjörð BjarmasonMar 14, 2019
  22. rebase: remove the rebase.useBuiltin settingÆvar Arnfjörð Bjarmason, Mar 15, 2019
  23. Johannes SchindelinMar 15, 2019
  24. Ævar Arnfjörð BjarmasonMar 15, 2019
  25. Junio C HamanoMar 18, 2019
  26. Phillip WoodMar 18, 2019
  27. rebase: remove the rebase.useBuiltin settingÆvar Arnfjörð Bjarmason, Mar 18, 2019
  28. Phillip WoodMar 19, 2019
  29. rebase: remove transitory rebase.useBuiltin setting & envÆvar Arnfjörð Bjarmason, Mar 23, 2021
  30. Junio C HamanoMar 23, 2021
  31. Johannes SchindelinMar 23, 2021

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.