graft: warn when -r is combined with revisions as positional arguments
authorMads Kiilerich <madski@unity3d.com>
Sun, 17 Jan 2016 19:33:02 +0100
changeset 27899 78b9fdb844c1
parent 27898 2cc44efcb7cf
child 27900 27572a5cc409
graft: warn when -r is combined with revisions as positional arguments The behaviour in this case is undefined. Instead of silently doing something "random" and surprising, at least issue a warning. (This should perhaps be considered a "deprecation" and turned into an error in a future release.)
mercurial/commands.py
tests/test-graft.t
--- a/mercurial/commands.py	Sun Jan 17 19:33:02 2016 +0100
+++ b/mercurial/commands.py	Sun Jan 17 19:33:02 2016 +0100
@@ -3889,6 +3889,10 @@
         return _dograft(ui, repo, *revs, **opts)
 
 def _dograft(ui, repo, *revs, **opts):
+    if revs and opts['rev']:
+        ui.warn(_('warning: inconsistent use of --rev might give unexpected '
+                  'revision ordering!\n'))
+
     revs = list(revs)
     revs.extend(opts['rev'])
 
--- a/tests/test-graft.t	Sun Jan 17 19:33:02 2016 +0100
+++ b/tests/test-graft.t	Sun Jan 17 19:33:02 2016 +0100
@@ -62,6 +62,7 @@
   [255]
 
   $ hg graft -r 1 2
+  warning: inconsistent use of --rev might give unexpected revision ordering!
   skipping ancestor revision 2:5c095ad7e90f
   skipping ancestor revision 1:5d205f8b35b6
   [255]