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

Re: [PATCH 0/8] config-include fixes

From
Jeff King <peff@peff.net>
Date
Feb 17, 2012, 00:14 UTC
Message-ID
<20120217001438.GD4756@sigill.intra.peff.net>
In-Reply-To
<7v1upuzgfr.fsf@alter.siamese.dyndns.org>
On Thu, Feb 16, 2012 at 12:11:52PM -0800, Junio C Hamano wrote:
Show 10 quoted lines
> Jeff King <peff@peff.net> writes:
> 
> > I prepared this on top of what you have queued in jk/config-include.
> > However, all of the cleanup is semantically independent of the topic
> > (though there are a few minor textual conflicts). If I were re-rolling,
> > I would put it all at the front, then squash patch 8 into my prior
> > "implement config includes" patch.
> 
> Sorry for being late in answering the "revert or build on top" question; I
> was mostly offline yesterday afternoon.

No problem. I did it as build-on-top because it's much easier to squash and reorder the commits later than it is to pick a re-roll apart into multiple commits.

Which way did you want me to go with it?
Show 11 quoted lines
> Looking at the rebased result, it strikes me that with_options version
> 
>     Furthermore, by providing a more "advanced" interface, we
>     now have a a natural place to add new options for callers
>     like git-config, which care about tweaking the specifics of
>     config lookup, without disturbing the large number of
>     "simple" users (i.e., every other part of git).
> 
> perhaps wants to get a pointer to struct config_lookup_options, instead of
> us having to add a new parameter to all callsites every time a new need
> is discovered.

I considered that, but I noticed that the only callers who are really going to care about the _with_options version will be in builtin/config.c, and they all care about every option. And dealing with creating a struct for each call seemed like more hassle.

OTOH, I could probably just make a single static global config_lookup_options, and have all of the option parsing tweak it directly (i.e., replace the given_config_file and respect_includes static globals).

-Peff
Previous: Junio C HamanoNext: Junio C Hamano
Message 16 of 23 in “What's cooking in git.git (Feb 2012, #05; Mon, 13)”
  1. Junio C HamanoFeb 13, 2012
  2. An incremental update to "What's cooking"Junio C Hamano, Feb 14, 2012
  3. Jeff KingFeb 14, 2012
  4. Junio C HamanoFeb 14, 2012
  5. Jeff KingFeb 14, 2012
  6. 0/8 config-include fixesJeff King, Feb 16, 2012
  7. 1/8 t1300: add missing &&-chainingJeff King, Feb 16, 2012
  8. 2/8 config: copy the return value of prefix_filenameJeff King, Feb 16, 2012
  9. 3/8 config: teach git_config_set_multivar_in_file a default pathJeff King, Feb 16, 2012
  10. 4/8 config: teach git_config_rename_section a file argumentJeff King, Feb 16, 2012
  11. 5/8 config: provide a version of git_config with more optionsJeff King, Feb 16, 2012
  12. 6/8 config: stop using config_exclusive_filenameJeff King, Feb 16, 2012
  13. 7/8 config: eliminate config_exclusive_filenameJeff King, Feb 16, 2012
  14. 8/8 config: do not respect includes for single-file --listJeff King, Feb 16, 2012
  15. Junio C HamanoFeb 16, 2012
  16. Jeff KingFeb 17, 2012
  17. Junio C HamanoFeb 17, 2012
  18. Jeff KingFeb 17, 2012
  19. Jeff KingFeb 17, 2012
  20. 0/2 api-config documentation leftoversJeff King, Feb 17, 2012
  21. Junio C HamanoFeb 17, 2012
  22. 1/2 docs/api-config: minor clarificationsJeff King, Feb 17, 2012
  23. 2/2 docs/api-config: describe git_config_with_optionsJeff King, Feb 17, 2012

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.