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

Re: [PATCH 09/10] tree: stop using the_repository

From
Patrick Steinhardt <ps@pks.im>
Date
Jan 12, 2026, 15:00 UTC
Message-ID
<aWUMn6G0C1cHA4qY@pks.im>
In-Reply-To
<xmqqh5sqoqr0.fsf@gitster.g>
On Mon, Jan 12, 2026 at 06:22:11AM -0800, Junio C Hamano wrote:
Show 20 quoted lines
> Patrick Steinhardt <ps@pks.im> writes:
> 
> > On Fri, Jan 09, 2026 at 10:30:20PM +0100, René Scharfe wrote:
> >> Push the use of the_repository to the remaining callers by turning the
> >> compatibility wrappers into macros, whose use still requires
> >> USE_THE_REPOSITORY_VARIABLE to be defined.
> >
> > Can't we make this step a bit more explicit by adapting all callers to
> > parse `repo_parse_tree()` with `the_repository`? That makes it way more
> > obvious that we rely on the global repository.
> >
> > Edit: I see that you _do_ edit all callsites in the next commit, nice.
> >
> > In any case, I'd propose to move the compatibility macros into a section
> > that says something like:
> >
> >     /* Deprecated wrappers that will be removed once Git 2.53 is released. */
> 
> Please do not take release schedule hostage to one particular fix-up
> series of patches.  Thanks.

The intent isn't really to take anything hostage. It's rather intended as a hint that once a specific event has happened, we should take another look at removing these wrappers.

We regularly have the case that we add compatibility wrappers to not break in-flight patch series. We then have to wait a bit before we can remove those wrappers, which makes it likely that we forget doing so. By having the above marker we basically crowdsource their removal as everyone passing by the comment will now wonder "Wait, we already have Git 2.67, why do these wrappers still exist?".

Patrick
Previous: Junio C HamanoNext: Junio C Hamano
Message 9 of 25 in “tree: stop using the_repository”
  1. 00/10 tree: stop using the_repositoryRené Scharfe, Jan 9, 2026
  2. 03/10 add-interactive: use repo_parse_tree_indirect()René Scharfe, Jan 9, 2026
  3. 04/10 bloom: use repo_parse_tree()René Scharfe, Jan 9, 2026
  4. 08/10 tree: use repo_parse_tree()René Scharfe, Jan 9, 2026
  5. Patrick SteinhardtJan 12, 2026
  6. 09/10 tree: stop using the_repositoryRené Scharfe, Jan 9, 2026
  7. Patrick SteinhardtJan 12, 2026
  8. Junio C HamanoJan 12, 2026
  9. Patrick SteinhardtJan 12, 2026
  10. Junio C HamanoJan 12, 2026
  11. Junio C HamanoJan 12, 2026
  12. Patrick SteinhardtJan 12, 2026
  13. René ScharfeJan 12, 2026
  14. Patrick SteinhardtJan 13, 2026
  15. 10/10 cocci: convert parse_tree functions to repo_ variantsRené Scharfe, Jan 9, 2026
  16. 02/10 tree: add repo_parse_tree*()René Scharfe, Jan 9, 2026
  17. 01/10 environment: move access to core.maxTreeDepth into repo settingsRené Scharfe, Jan 9, 2026
  18. Patrick SteinhardtJan 12, 2026
  19. René ScharfeJan 12, 2026
  20. 07/10 path-walk: use repo_parse_tree_gently()René Scharfe, Jan 9, 2026
  21. 05/10 delta-islands: use repo_parse_tree()René Scharfe, Jan 9, 2026
  22. 06/10 pack-bitmap-write: use repo_parse_tree()René Scharfe, Jan 9, 2026
  23. 11/10 cocci: remove obsolete the_repository rulesRené Scharfe, Jan 15, 2026
  24. Patrick SteinhardtJan 16, 2026
  25. Junio C HamanoJan 16, 2026

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.