[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index


From: Julian Foad <julianfoad_at_apache.org>
Date: Mon, 19 Mar 2018 18:36:23 +0000

Daniel Shahaf wrote in thread "Subversion 1.10 RC1?" on 2017-11-23:
> I don't think saying "This command is not forwards compatible" in the help text
> will prevent users from relying on it being forwards compatible; which, in
> turn, will discourage us, come 1.11, to make incompatible changes to this
> command.
> Perhaps we should rename the command to, say, "xshelve" — like the "X-" prefix
> of experimental email headers, but without a minus for ease of typing? Then we
> could have a convention, "any command whose name starts with 'x' is not
> guaranteed to be forwards compatible", and we'd be able to make incompatible
> changes (to "xshelve") without worrying about users asking for compatibility
> despite the documentation. In 1.11, if we wanted to make "shelve" stable, we
> could even continue to accept "xshelve" as an alias, if the semantics of
> xshelve_at_1.10 and shelve_at_1.11 are compatible.

Thinking on this theme, I came up with this:

$ svn help
Available subcommands:
    x-shelf-diff (shelf-diff)
    x-shelf-drop (shelf-drop)
    x-shelf-list (shelf-list, shelves)
    x-shelf-list-by-paths (shelf-list-by-paths)
    x-shelf-log (shelf-log)
    x-shelf-save (shelf-save)
    x-shelve (shelve)
    x-unshelve (unshelve)

$ svn help shelve
x-shelve (shelve): Move local changes onto a shelf.
usage: x-shelve [--keep-local] NAME [PATH...]

   Save the local changes in the given PATHs to a shelf named NAME.

Aliases. Makes it very clear in the help, while allowing people to try
using the more "real" names like "svn shelve".

- Julian
Received on 2018-03-19 19:36:28 CET

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.