[PATCH] extensions: formalize concept of experimental extensions
Yuya Nishihara
yuya at tcha.org
Mon Mar 13 22:02:06 EDT 2017
On Sun, 12 Mar 2017 19:48:35 -0700, Gregory Szorc wrote:
> > On Mar 12, 2017, at 19:28, Jun Wu <quark at fb.com> wrote:
> >
> > If I read it correctly, this means an "experimental" extension will end up
> > with:
> >
> > | ext= | ext=!beta
> > ----------------------------------------
> > old client | load | do not load
> > new client | do not load | load
> >
> > I think that's confusing.
> >
> > I think we can have an "[extensions:experimental]" section instead, which
> > will only be processed by new mercurial.
>
> For extensions distributed with Mercurial, old clients won't have the extension. So the old client plus ext= scenario results in no load.
Old clients can load 3rd-party extensions from PYTHONPATH and/or hgext3rd.
If evolve get into the core as an experimental extension, I would have to
adjust my .hgrc per hg versions.
Another minor concern is that some people use "!<path>" to disable their local
extensions. "!beta" seems confusing.
How about <name>:allowbeta = True ?
More information about the Mercurial-devel
mailing list