RFC: Phase UI (revset, phase command and others)

Jason Harris jason at jasonfharris.com
Tue Jan 3 06:05:57 CST 2012


On Jan 3, 2012, at 1:19 AM, Jesper Schmidt wrote:

> On Tue, 03 Jan 2012 00:20:11 +0100, Isaac Jurado <diptongo at gmail.com> wrote:
> 
>> On Tue, Jan 3, 2012 at 12:05 AM, Jesper Schmidt <schmiidt at gmail.com> wrote:
>>> 
>>> Therefore I suggest that we call the final phase 'stable', since it
>>> provides a stable foundation to build on, which is not the case for
>>> other two.
>> 
>> "stable" is a particularly bad name for a phase, as it can be very
>> confusing if you do standard branching:
>> 
>>    http://mercurial.selenic.com/wiki/StandardBranching
>> 
> 
> Okay, I don't use that branching model/naming convention myself, but I
> agree that it is problematic since mercurial does.
> 
> What about 'solid' then instead of 'stable'?
> 
> I really think that 'public' is misleading since a 'draft' changeset
> can be shared as well. Am I missing something here?

I also don't like 'public' that much for the reason you give, ie that draft is
already shared hence a draft is public under the dictionary definition. As Ollie
suggested maybe complete or absolute?

The other things which strikes me is that our english names which are longer and
more readable should really be the thing which documents our interface here. The
cryptic one letter abbreviation is very nice to have match the first letter of
our chosen name, but messing up our naming scheme hence our mental map of what
does what just to ensure that the first letter matches is IMHO wrong. The full
english names should be clear cut and intelligible and self-documenting.

Besides, we already break this first-letter-is-shortcut rule in at least several
places eg hg diff where we have -a for --text, -p for --show-function, -w for
--ignore-all-space, -b, -B etc; or in hg import -p for --strip. Or the verbose
option -y for --noninteractive. etc.

Cheers,
   Jas



More information about the Mercurial-devel mailing list