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

Re: [GSoC] [PATCH v6 1/1] t9811: be more precise to check importing of tags

From
Anthony Wang <anthonywang513@gmail.com>
Date
Apr 16, 2025, 15:03 UTC
Message-ID
<CAOSofod9m7wHafP5=_tcMYW_oN9_icSmVX7rQioUkc_RC6pVYw@mail.gmail.com>
In-Reply-To
<xmqqjz7lo4o4.fsf@gitster.g>
On Tue, Apr 15, 2025 at 4:55 PM Junio C Hamano <gitster@pobox.com> wrote:
Show 26 quoted lines
>
> Anthony Wang <anthonywang513@gmail.com> writes:
>
> > The tests use grep to search the output of `git tag` for tagnames they
> > expect to exist, which can incorrectly pass if an unxpected tag
> > has the expected tag as its substring. We fix this by using `git
> > show-ref --verify` instead.
> >
> > Additionally, we add a negative test to verify that a possible
> > uninteded tag does not show up in the imported repository.
> >
> > This change also fixes the original problem, where piping the
> > output of `git tag` caused the exit codes to be lost.
>
> The word "original" is misleading; perhaps phase it as "additional"
> instead?
>
> That is because not allowing to notice potential breakage by hiding
> the exit status behind pipes is just as bad as falsely taking a
> partial tagname match as success, and there is no reason to call one
> "original" problem, implying the other problem(s) are different.
>
> Other than that, looks excellent.
>
> Thanks.
>

Changed and resubmitted the patch. Thank you for the guidance on this microproject, I appreciate the help as I am still new to open-source, and I now understand the workflow and style of Git much better.

Show 33 quoted lines
>
> > Signed-off-by: Anthony Wang <anthonywang513@gmail.com>
> > ---
> >  t/t9811-git-p4-label-import.sh | 9 ++++-----
> >  1 file changed, 4 insertions(+), 5 deletions(-)
> >
> > diff --git a/t/t9811-git-p4-label-import.sh b/t/t9811-git-p4-label-import.sh
> > index 5ac5383fb7..39856629c0 100755
> > --- a/t/t9811-git-p4-label-import.sh
> > +++ b/t/t9811-git-p4-label-import.sh
> > @@ -95,9 +95,9 @@ test_expect_success 'two labels on the same changelist' '
> >               cd "$git" &&
> >               git p4 sync --import-labels &&
> >
> > -             git tag | grep TAG_F1 &&
> > -             git tag | grep -q TAG_F1_1 &&
> > -             git tag | grep -q TAG_F1_2 &&
> > +             git show-ref --verify refs/tags/TAG_F1_1 &&
> > +             git show-ref --verify refs/tags/TAG_F1_2 &&
> > +             test_must_fail git show-ref --verify refs/tags/TAG_F1_ONLY &&
> >
> >               cd main &&
> >
> > @@ -207,8 +207,7 @@ test_expect_success 'use git config to enable import/export of tags' '
> >               git tag CFG_A_GIT_TAG &&
> >               git p4 rebase --verbose &&
> >               git p4 submit --verbose &&
> > -             git tag &&
> > -             git tag | grep TAG_F1_1
> > +             git show-ref --verify refs/tags/TAG_F1_1 &&
> >       ) &&
> >       (
> >               cd "$cli" &&
Previous: Junio C HamanoNext: Anthony Wang
Message 30 of 35 in “t9811: avoid using pipes”
  1. Anthony WangApr 5, 2025
  2. Patrick SteinhardtApr 7, 2025
  3. [GSoC] [PATCH v2 0/3] t9811: Improve test coverage and clarityAnthony Wang, Apr 7, 2025
  4. [GSoC] [PATCH v2 1/3] t9811: avoid using pipes to expose exit codesAnthony Wang, Apr 7, 2025
  5. Eric SunshineApr 7, 2025
  6. Junio C HamanoApr 7, 2025
  7. Anthony WangApr 7, 2025
  8. Junio C HamanoApr 8, 2025
  9. Anthony WangApr 8, 2025
  10. [GSoC] [PATCH v2 2/3] t9811: Remove the -q quiet mode from some instances of grepAnthony Wang, Apr 7, 2025
  11. Eric SunshineApr 7, 2025
  12. Junio C HamanoApr 7, 2025
  13. [GSoC] [PATCH v2 3/3] t9811: Change `grep` to `test_grep` for debug outputAnthony Wang, Apr 7, 2025
  14. [GSoC] [PATCH v3 0/3] t9811: Improve test coverage and clarityAnthony Wang, Apr 7, 2025
  15. [GSoC] [PATCH v3 1/3] t9811: avoid using pipes to expose exit codesAnthony Wang, Apr 7, 2025
  16. [GSoC] [PATCH v3 2/3] t9811: Remove the -q quiet mode from some instances of grepAnthony Wang, Apr 7, 2025
  17. [GSoC] [PATCH v3 3/3] t9811: Change `grep` to `test_grep` for debug outputAnthony Wang, Apr 7, 2025
  18. [GSoC] [PATCH v4 0/1] t9811: Improve test coverage and clarityAnthony Wang, Apr 8, 2025
  19. [GSoC] [PATCH v4 1/1] Remove the pipe following the `git tag`, ensuring the exit code is not hidden. Add explicit verification to check for expected and unexpected tags, increasing specificity and future-proofing a portion of the test.Anthony Wang, Apr 8, 2025
  20. Karthik NayakApr 8, 2025
  21. [GSoC] [PATCH v5 0/1] t9811: Improve test coverage and clarityAnthony Wang, Apr 8, 2025
  22. [GSoC] [PATCH v5 1/1] t9811: Improve test coverage and clarityAnthony Wang, Apr 8, 2025
  23. Junio C HamanoApr 8, 2025
  24. Eric SunshineApr 8, 2025
  25. Anthony WangApr 9, 2025
  26. Junio C HamanoApr 9, 2025
  27. [GSoC] [PATCH v6 0/1] t9811: be more precise to check importing of tagsAnthony Wang, Apr 12, 2025
  28. [GSoC] [PATCH v6 1/1] t9811: be more precise to check importing of tagsAnthony Wang, Apr 12, 2025
  29. Junio C HamanoApr 15, 2025
  30. Anthony WangApr 16, 2025
  31. [GSoC] [PATCH v7 0/1] t9811: be more precise to check importing of tagsAnthony Wang, Apr 16, 2025
  32. [GSoC] [PATCH v7 1/1] t9811: be more precise to check importing of tagsAnthony Wang, Apr 16, 2025
  33. Junio C HamanoApr 18, 2025
  34. Junio C HamanoApr 18, 2025
  35. Eric SunshineApr 18, 2025

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.