mbox series

[00/11] Drop the PREPARE_FOR_MAIN_BRANCH prereq

Message ID pull.816.git.1608167230.gitgitgadget@gmail.com (mailing list archive)
Headers show
Series Drop the PREPARE_FOR_MAIN_BRANCH prereq | expand

Message

Jean-Noël Avila via GitGitGadget Dec. 17, 2020, 1:06 a.m. UTC
When I started contributing all those patch series to start preparing for
the default branch name main, I had the idea that we could change the
default branch name in time for v2.30.0, and therefore felt free to
introduce the PREPARE_FOR_MAIN_BRANCH prereq whose sole purpose was to
adjust a few tests preemptively that would then have to be skipped until the
test suite was converted to using main as default branch name.

However, this was too ambitious a plan.

The current state is therefore an undesirable one: we skip a few test cases,
in preparation for a time when git init will default to using a different
name than master for the initial branch name, and nobody realistically knows
when this will happen.

To address that, I spent some time to convert just the affected scripts to
using main, adjusting them in a way where they do not depend on the name git
init gave the initial branch at all, which allowed me to drop that prereq
altogether.

None of these changes should be controversial, intentionally so, to allow
this patch series to go in before v2.30.0 is tagged, so that we can enjoy
the full coverage of the test suite again.

Johannes Schindelin (11):
  t1400: use `main` as initial branch name
  t3200: finish transitioning to the initial branch name `main`
  t3201: finalize transitioning to using the branch name `main`
  t3203: complete the transition to using the branch name `main`
  t3205: finalize transitioning to using the branch name `main`
  t5505: finalize transitioning to using the branch name `main`
  t5510: use `main` as initial branch name
  t5703: use `main` as initial branch name
  t6302: use `main` as initial branch name
  t9902: use `main` as initial branch name
  tests: drop the `PREPARE_FOR_MAIN_BRANCH` prereq

 t/t1400-update-ref.sh              |  75 +++----
 t/t3200-branch.sh                  | 265 +++++++++++++------------
 t/t3201-branch-contains.sh         |  83 ++++----
 t/t3203-branch-output.sh           |  43 ++--
 t/t3205-branch-color.sh            |   9 +-
 t/t5505-remote.sh                  | 156 +++++++--------
 t/t5510-fetch.sh                   | 168 ++++++++--------
 t/t5703-upload-pack-ref-in-want.sh |  65 +++---
 t/t6302-for-each-ref-filter.sh     |  59 +++---
 t/t9902-completion.sh              | 309 +++++++++++++++--------------
 t/test-lib.sh                      |   8 -
 11 files changed, 621 insertions(+), 619 deletions(-)


base-commit: 1c52ecf4ba0f4f7af72775695fee653f50737c71
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-816%2Fdscho%2Fdrop-prepare-for-main-branch-prereq-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-816/dscho/drop-prepare-for-main-branch-prereq-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/816

Comments

Junio C Hamano Dec. 17, 2020, 1:41 a.m. UTC | #1
"Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com>
writes:

> To address that, I spent some time to convert just the affected scripts to
> using main, adjusting them in a way where they do not depend on the name git
> init gave the initial branch at all, which allowed me to drop that prereq
> altogether.
>
> None of these changes should be controversial, intentionally so, to allow
> this patch series to go in before v2.30.0 is tagged, so that we can enjoy
> the full coverage of the test suite again.

Thanks for taking care of this one.  The titles all imply that we
are committed to switch the default to 'main', but I understand that
the focus is more about using a hardcoded initial branch in these
tests, so that the tests will not be affected when the default
changes from 'master' to any other value, even when the ":dirname"
and ":random" magic were to be invented and used as the default ;-)

So these may get unwarranted "who says we gained a concensus to
change the default in that direction?" complaint, which might want
to be reworded, ...

>   t3200: finish transitioning to the initial branch name `main`
>   t3201: finalize transitioning to using the branch name `main`
>   t3203: complete the transition to using the branch name `main`
>   t3205: finalize transitioning to using the branch name `main`
>   t5505: finalize transitioning to using the branch name `main`

... but these just make a statement of fact (i.e. these scripts use
X as initial branch name), and less likely to confuse the matter.

>   t1400: use `main` as initial branch name
>   t5510: use `main` as initial branch name
>   t5703: use `main` as initial branch name
>   t6302: use `main` as initial branch name
>   t9902: use `main` as initial branch name

And of course, this is what we want:

>   tests: drop the `PREPARE_FOR_MAIN_BRANCH` prereq

Thanks.