On Thu, Jul 16, 2020 at 04:50:34PM -0700, Junio C Hamano wrote: > > - improving the behavior when an extension not supported in v0 is > > encountered in a v0 repository. For extensions that are supported > > in v1 and not v0, we should presumably error out so the user can > > repair the repository, and we can put the "noop" extension in that > > category for the sake of easy testing. We can also include a check > > in "git fsck" for repositories that request the undefined behavior > > of v0 repositories with non-v0 extensions, for faster diagnosis. > > > > What about unrecognized extensions that are potentially extensions > > yet to be defined? Should these be silently ignored to match the > > historical behavior, or should we error out even in repository > > format v0? I lean toward the latter; we'll need to be cautious, > > though, e.g. by making this a separate patch so we can easily tweak > > it if this ends up being disruptive in some unanticipated way. > > I disagree with your first paragraph. Those that weren't honored by > mistake back in v0 days, in addition to those that aren't known to us > even now, should just be silently ignored, not causing an error. That's very much the opposite of my patch. As we add new extensions, those "unknowns" will start to die(). I remain unconvinced that there are a bunch of unknown extension.* config options hanging around in the wild, but maybe I'm being naive. It seems to me more likely that users will be helped by warning about extensions that _should_ have had v1 set than that they will be harmed because they put random crap in their extensions.* config. But maybe you know of a specific example? Anyway, if we move to "v1" as the default for "git init" anyway, then the number of people being helped would become much smaller. > > My preference would be to move forward in 2.28 with the first two > > patches in that topic branch (i.e., *not* the third yet), since they > > don't produce any user facing behavior that would create danger for > > users or clash with this plan. > > Yup, I agree. I'd give another name to the third commit and then > rewind jn/v0-with-extensions-fix by one to prevent mistakes from > happening. Thanks. OK. I was confused to see it still at the tip in the latest What's Cooking, but I think we're just crossing emails. :) -Peff