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

Re: [PATCH] [GSOC] ref-filter: solve bugs caused by enumeration

From
ZheNing Hu <adlternative@gmail.com>
Date
May 7, 2021, 05:09 UTC
Message-ID
<CAOLTT8RhVZQJX8z1gY5UM1jv0imZ4K9UnD14MgJFfvqBBiAZQg@mail.gmail.com>
In-Reply-To
<xmqq5yzvw3kk.fsf@gitster.g>
Show 10 quoted lines
> If that is truly the concern (I do not know without measuring),
> perhaps we should add a member next to the union to say which one of
> the union members is valid, so that you can say
>
>     if (atom->atom_type == ATOM_TYPE_REMOTE_REF &&
>         atom->u.remote_ref.push)
>
> (introduce an enum and define ATOM_TYPE_* after the member in the
> union).
>
Yes, I think so. Since the content of this part needs to be modified for
 the parsing of all atoms, I will put it in a separate topic to complete.
> That would help futureproofing the code even further, as a new
> synonym of "push" introduced laster [*] would not invalidate the check you are
> adding there.
>
Yes, this enhances its generalization ability.
Show 10 quoted lines
>
> [Footnote]
>
> * remote_ref_atom_parser() in the future may begin like so:
>
> -       if (!strcmp(atom->name, "push") || starts_with(atom->name, "push:"))
> +       if (!strcmp(atom->name, "push") || starts_with(atom->name, "push:") ||
> +           !strcmp(atom->name, "a-synonym-for-push"))
>                 atom->u.remote_ref.push = 1;
>

-- ZheNing Hu

Previous: Junio C HamanoNext: ZheNing Hu via GitGitGadget
Message 11 of 31 in “[GSOC] ref-filter: solve bugs caused by enumeration”
  1. [GSOC] ref-filter: solve bugs caused by enumerationZheNing Hu via GitGitGadget, May 5, 2021
  2. Junio C HamanoMay 6, 2021
  3. ZheNing HuMay 6, 2021
  4. Junio C HamanoMay 6, 2021
  5. ZheNing HuMay 6, 2021
  6. Junio C HamanoMay 6, 2021
  7. ZheNing HuMay 6, 2021
  8. Junio C HamanoMay 6, 2021
  9. ZheNing HuMay 7, 2021
  10. Junio C HamanoMay 7, 2021
  11. ZheNing HuMay 7, 2021
  12. [GSOC] ref-filter: fix read invalid union member bugZheNing Hu via GitGitGadget, May 6, 2021
  13. [GSOC] ref-filter: fix read invalid union member bugZheNing Hu via GitGitGadget, May 8, 2021
  14. Junio C HamanoMay 10, 2021
  15. ZheNing HuMay 10, 2021
  16. Junio C HamanoMay 10, 2021
  17. ZheNing HuMay 10, 2021
  18. [GSOC] ref-filter: fix read invalid union member bugZheNing Hu via GitGitGadget, May 10, 2021
  19. Junio C HamanoMay 11, 2021
  20. ZheNing HuMay 11, 2021
  21. Junio C HamanoMay 11, 2021
  22. ZheNing HuMay 11, 2021
  23. Junio C HamanoMay 11, 2021
  24. ZheNing HuMay 11, 2021
  25. [GSOC] ref-filter: fix read invalid union member bugZheNing Hu via GitGitGadget, May 11, 2021
  26. Junio C HamanoMay 12, 2021
  27. ZheNing HuMay 12, 2021
  28. [GSOC] ref-filter: fix read invalid union member bugZheNing Hu via GitGitGadget, May 12, 2021
  29. Junio C HamanoMay 12, 2021
  30. ZheNing HuMay 13, 2021
  31. [GSOC] ref-filter: fix read invalid union member bugZheNing Hu via GitGitGadget, May 13, 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.