From: Jeff King <email@example.com> To: Alex Riesen <firstname.lastname@example.org> Cc: email@example.com, Eric Wong <firstname.lastname@example.org>, Junio C Hamano <email@example.com> Subject: Re: sub-fetches discard --ipv4|6 option Date: Tue, 22 Sep 2020 01:08:55 -0400 [thread overview] Message-ID: <20200922050855.GC528837@coredump.intra.peff.net> (raw) In-Reply-To: <20200917143339.GF8079@pflmari> On Thu, Sep 17, 2020 at 04:33:39PM +0200, Alex Riesen wrote: > > Adding a new strvec pointer to parse_options() works, but means updating > > all of the callers, most of which will pass NULL. Possibly the existing > > "flags" parameter to parse_options() could grow into a struct. That > > requires modifying each caller, but at least solves the problem once and > > for all. > > With such complication a step-wise parsing sounds easier, given that at the > moment there is only one user for the feature. Are there *existing* callers > of parse_options with similar requirements? I don't know offhand. I'd suspect some of the command which take --recurse-submodules do something similar, but the number of steps between the main command the submodule argv may make it awkward to use a parse-options solution. I don't think we have a "push to each of these remotes" option the way we do for fetch. > I feel that doing this kind of selection work in parse_options is an overkill: > if it is specific for just this use case, the implementation might be more > complex than necessary, while profiting just one caller. Yeah, I agree it's complex, and I'm happy with simpler solutions (or just fixing these ones as you did and punting on it for now). > > Another option is to stick it into parse_opt_ctx_t. That's used only be > > step-wise callers, of which there are very few. > > Does that mean that currently there is no way to find out which option > corresponds to the last parsed command-line argument after a call to > parse_options_step? Which in turn makes the marking of recursive options > inaccessible to step-wise command line parsing code, right? I'm not super familiar with the internals of parse-options, but it doesn't look like it. Each step consumes an argv and matches it to a "struct option", but I don't think you get to know which struct it was matched to. It would be reasonable for it to keep a pointer in the parse_opt_ctx_t (and of course you'd need some bit in the option struct itself to say "I am a recursive option"). -Peff
next prev parent reply other threads:[~2020-09-22 5:09 UTC|newest] Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-09-14 12:19 Alex Riesen 2020-09-14 19:49 ` Jeff King 2020-09-15 11:50 ` Alex Riesen 2020-09-15 11:54 ` [PATCH] Pass --ipv4 and --ipv6 options to sub-fetches when fetching multiple remotes and submodules Alex Riesen 2020-09-15 13:06 ` Jeff King 2020-09-16 4:17 ` Junio C Hamano 2020-09-16 7:27 ` Alex Riesen 2020-09-15 21:19 ` Junio C Hamano 2020-09-16 7:25 ` Alex Riesen 2020-09-15 13:05 ` sub-fetches discard --ipv4|6 option Jeff King 2020-09-15 13:54 ` [PATCH] config: option transfer.ipversion to set transport protocol version for network fetches Alex Riesen 2020-09-16 20:02 ` Jeff King 2020-09-17 8:07 ` Alex Riesen 2020-09-17 13:20 ` [PATCH] Config option to set the " Alex Riesen 2020-09-17 13:26 ` Alex Riesen 2020-09-17 13:31 ` Jeff King 2020-09-17 13:35 ` Alex Riesen 2020-09-17 14:51 ` Jeff King 2020-09-17 15:17 ` Alex Riesen 2020-12-22 19:55 ` Junio C Hamano 2021-01-07 10:06 ` Alex Riesen 2020-09-17 16:05 ` Alex Riesen 2020-09-16 20:14 ` [PATCH] config: option transfer.ipversion to set " Junio C Hamano 2020-09-16 20:18 ` Jeff King 2020-09-16 22:50 ` Junio C Hamano 2020-09-16 22:52 ` Junio C Hamano 2020-09-17 0:48 ` Jeff King 2020-09-17 0:57 ` Junio C Hamano 2020-09-16 21:35 ` Junio C Hamano 2020-09-17 14:02 ` Alex Riesen 2020-09-17 22:31 ` Junio C Hamano 2020-09-18 7:16 ` Alex Riesen 2020-09-18 16:37 ` Junio C Hamano 2020-09-21 16:39 ` Alex Riesen 2020-09-22 5:03 ` Jeff King 2020-09-17 8:04 ` Alex Riesen 2020-09-17 8:18 ` Alex Riesen 2020-09-15 14:06 ` sub-fetches discard --ipv4|6 option Alex Riesen 2020-09-15 15:27 ` Jeff King 2020-09-15 16:03 ` Alex Riesen 2020-09-16 16:32 ` Jeff King 2020-09-17 14:33 ` Alex Riesen 2020-09-22 5:08 ` Jeff King [this message] 2020-09-15 20:09 ` Junio C Hamano 2020-09-15 21:23 ` Jeff King 2020-09-15 21:32 ` Junio C Hamano 2020-09-16 16:34 ` Jeff King 2020-09-16 21:20 ` Junio C Hamano 2020-09-14 20:06 ` Junio C Hamano
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style List information: http://vger.kernel.org/majordomo-info.html * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200922050855.GC528837@coredump.intra.peff.net \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --subject='Re: sub-fetches discard --ipv4|6 option' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Code repositories for project(s) associated with this inbox: https://80x24.org/mirrors/git.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).