On Sat, Jun 17, 2006 at 01:23:09AM -0400, James Carlson wrote:

> Danek Duvall writes:
> > I'm using the new stability terminology, so "Committed" means you can only
> > make incompatible changes at a minor release with notice (and it's
> 
> Actually, I think you want "Uncommitted" for the new taxonomy.
> "Committed" means that you can make incompatible changes only in Major
> releases.  There likely won't be another of those for Solaris.

Understood.  I would be wildly surprised if the package name, the command
name, the project name, etc, ever changed.  If they do, and we want to
follow that change, then we'll file an obsolete case, and maintain the old
name in parallel with the new as long as is necessary (because even
Committed interfaces can be removed at a Minor release boundary with
appropriate procedure).

> >     This project requests a minor release binding.
> 
> For what it's worth, I think this would be fine as patch/micro.

Fair enough.  I don't know if Stephen has the intention of putting this
back into S10.

> >     hg commandline                  Volatile
> 
> Volatile means that people can't write reliable scripts that use it.
> Is that right?

Erm.  Good point.  I think you're right that certain subcommands have a
greater stability than others, and some options more than others.  Doing
this properly will explode the interface table.  I'll ask for Bryan's input
on the stability, but I'll take a crack at it.  I think we can call most of
the important parts Committed, by the same reasoning as above, and
Uncommitted would still require contracts to use.

> >     hgrc contents                   Volatile
> 
> This also means that the user's configuration can just fall apart at
> any time without warning, and we won't necessarily even try to make it
> work by doing something reasonable (like translating on upgrade).
> 
> Is that desirable?  Is that what the upstream really offers?  I find
> it hard to believe that users would settle for that.

Again, I'll ask for Bryan's input.  Perhaps this is more appropriately
Uncomitted.

> On the wire protocols that are Volatile are likely non-starters, I'd
> think.  Wire protocols tend to be some form of "Committed Private" --
> meaning that compatibility between some range of versions is
> maintained using some internal scheme, but that the protocol isn't
> documented for others to rely on.

Yeah, that was a thinko -- they should be Committed Private.

Danek
_______________________________________________
tools-discuss mailing list
[email protected]

Reply via email to