Show More
@@ -57,10 +57,10 b' from mercurial import (' | |||||
57 | diffutil, |
|
57 | diffutil, | |
58 | error, |
|
58 | error, | |
59 | hg, |
|
59 | hg, | |
|
60 | logcmdutil, | |||
60 | patch, |
|
61 | patch, | |
61 | pycompat, |
|
62 | pycompat, | |
62 | registrar, |
|
63 | registrar, | |
63 | scmutil, |
|
|||
64 | ) |
|
64 | ) | |
65 | from mercurial.utils import dateutil |
|
65 | from mercurial.utils import dateutil | |
66 |
|
66 | |||
@@ -180,7 +180,7 b' def analyze(ui, repo, *revs, **opts):' | |||||
180 |
|
180 | |||
181 | # If a mercurial repo is available, also model the commit history. |
|
181 | # If a mercurial repo is available, also model the commit history. | |
182 | if repo: |
|
182 | if repo: | |
183 |
revs = |
|
183 | revs = logcmdutil.revrange(repo, revs) | |
184 | revs.sort() |
|
184 | revs.sort() | |
185 |
|
185 | |||
186 | progress = ui.makeprogress( |
|
186 | progress = ui.makeprogress( |
@@ -15,7 +15,7 b' from mercurial import (' | |||||
15 | error, |
|
15 | error, | |
16 | pycompat, |
|
16 | pycompat, | |
17 | registrar, |
|
17 | registrar, | |
18 |
|
|
18 | logcmdutil, | |
19 | ) |
|
19 | ) | |
20 |
|
20 | |||
21 | cmdtable = {} |
|
21 | cmdtable = {} | |
@@ -68,7 +68,7 b' def close_branch(ui, repo, *revs, **opts' | |||||
68 | opts = pycompat.byteskwargs(opts) |
|
68 | opts = pycompat.byteskwargs(opts) | |
69 |
|
69 | |||
70 | revs += tuple(opts.get(b'rev', [])) |
|
70 | revs += tuple(opts.get(b'rev', [])) | |
71 |
revs = |
|
71 | revs = logcmdutil.revrange(repo, revs) | |
72 |
|
72 | |||
73 | if not revs: |
|
73 | if not revs: | |
74 | raise error.Abort(_(b'no revisions specified')) |
|
74 | raise error.Abort(_(b'no revisions specified')) |
@@ -36,10 +36,10 b' from mercurial import (' | |||||
36 | exchange, |
|
36 | exchange, | |
37 | hg, |
|
37 | hg, | |
38 | lock as lockmod, |
|
38 | lock as lockmod, | |
|
39 | logcmdutil, | |||
39 | merge as mergemod, |
|
40 | merge as mergemod, | |
40 | phases, |
|
41 | phases, | |
41 | pycompat, |
|
42 | pycompat, | |
42 | scmutil, |
|
|||
43 | util, |
|
43 | util, | |
44 | ) |
|
44 | ) | |
45 | from mercurial.utils import dateutil |
|
45 | from mercurial.utils import dateutil | |
@@ -564,7 +564,7 b' class mercurial_source(common.converter_' | |||||
564 | ) |
|
564 | ) | |
565 | nodes = set() |
|
565 | nodes = set() | |
566 | parents = set() |
|
566 | parents = set() | |
567 |
for r in |
|
567 | for r in logcmdutil.revrange(self.repo, [hgrevs]): | |
568 | ctx = self.repo[r] |
|
568 | ctx = self.repo[r] | |
569 | nodes.add(ctx.node()) |
|
569 | nodes.add(ctx.node()) | |
570 | parents.update(p.node() for p in ctx.parents()) |
|
570 | parents.update(p.node() for p in ctx.parents()) |
@@ -15,6 +15,7 b' from mercurial.node import hex, nullrev' | |||||
15 | from mercurial.utils import stringutil |
|
15 | from mercurial.utils import stringutil | |
16 | from mercurial import ( |
|
16 | from mercurial import ( | |
17 | error, |
|
17 | error, | |
|
18 | logcmdutil, | |||
18 | pycompat, |
|
19 | pycompat, | |
19 | registrar, |
|
20 | registrar, | |
20 | scmutil, |
|
21 | scmutil, | |
@@ -182,7 +183,7 b' def fastexport(ui, repo, *revs, **opts):' | |||||
182 | if not revs: |
|
183 | if not revs: | |
183 | revs = scmutil.revrange(repo, [b":"]) |
|
184 | revs = scmutil.revrange(repo, [b":"]) | |
184 | else: |
|
185 | else: | |
185 |
revs = |
|
186 | revs = logcmdutil.revrange(repo, revs) | |
186 | if not revs: |
|
187 | if not revs: | |
187 | raise error.Abort(_(b"no revisions matched")) |
|
188 | raise error.Abort(_(b"no revisions matched")) | |
188 | authorfile = opts.get(b"authormap") |
|
189 | authorfile = opts.get(b"authormap") |
@@ -144,6 +144,7 b' from mercurial import (' | |||||
144 | context, |
|
144 | context, | |
145 | copies, |
|
145 | copies, | |
146 | error, |
|
146 | error, | |
|
147 | logcmdutil, | |||
147 | match as matchmod, |
|
148 | match as matchmod, | |
148 | mdiff, |
|
149 | mdiff, | |
149 | merge, |
|
150 | merge, | |
@@ -420,7 +421,7 b' def getrevstofix(ui, repo, opts):' | |||||
420 | if opts[b'all']: |
|
421 | if opts[b'all']: | |
421 | revs = repo.revs(b'(not public() and not obsolete()) or wdir()') |
|
422 | revs = repo.revs(b'(not public() and not obsolete()) or wdir()') | |
422 | elif opts[b'source']: |
|
423 | elif opts[b'source']: | |
423 |
source_revs = |
|
424 | source_revs = logcmdutil.revrange(repo, opts[b'source']) | |
424 | revs = set(repo.revs(b'(%ld::) - obsolete()', source_revs)) |
|
425 | revs = set(repo.revs(b'(%ld::) - obsolete()', source_revs)) | |
425 | if wdirrev in source_revs: |
|
426 | if wdirrev in source_revs: | |
426 | # `wdir()::` is currently empty, so manually add wdir |
|
427 | # `wdir()::` is currently empty, so manually add wdir | |
@@ -428,7 +429,7 b' def getrevstofix(ui, repo, opts):' | |||||
428 | if repo[b'.'].rev() in revs: |
|
429 | if repo[b'.'].rev() in revs: | |
429 | revs.add(wdirrev) |
|
430 | revs.add(wdirrev) | |
430 | else: |
|
431 | else: | |
431 |
revs = set( |
|
432 | revs = set(logcmdutil.revrange(repo, opts[b'rev'])) | |
432 | if opts.get(b'working_dir'): |
|
433 | if opts.get(b'working_dir'): | |
433 | revs.add(wdirrev) |
|
434 | revs.add(wdirrev) | |
434 | for rev in revs: |
|
435 | for rev in revs: | |
@@ -618,7 +619,7 b' def getbasectxs(repo, opts, revstofix):' | |||||
618 | # The --base flag overrides the usual logic, and we give every revision |
|
619 | # The --base flag overrides the usual logic, and we give every revision | |
619 | # exactly the set of baserevs that the user specified. |
|
620 | # exactly the set of baserevs that the user specified. | |
620 | if opts.get(b'base'): |
|
621 | if opts.get(b'base'): | |
621 |
baserevs = set( |
|
622 | baserevs = set(logcmdutil.revrange(repo, opts.get(b'base'))) | |
622 | if not baserevs: |
|
623 | if not baserevs: | |
623 | baserevs = {nullrev} |
|
624 | baserevs = {nullrev} | |
624 | basectxs = {repo[rev] for rev in baserevs} |
|
625 | basectxs = {repo[rev] for rev in baserevs} |
@@ -1707,7 +1707,7 b' def _chistedit(ui, repo, freeargs, opts)' | |||||
1707 | _(b'histedit requires exactly one ancestor revision') |
|
1707 | _(b'histedit requires exactly one ancestor revision') | |
1708 | ) |
|
1708 | ) | |
1709 |
|
1709 | |||
1710 |
rr = list(repo.set(b'roots(%ld)', |
|
1710 | rr = list(repo.set(b'roots(%ld)', logcmdutil.revrange(repo, revs))) | |
1711 | if len(rr) != 1: |
|
1711 | if len(rr) != 1: | |
1712 | raise error.InputError( |
|
1712 | raise error.InputError( | |
1713 | _( |
|
1713 | _( | |
@@ -1982,7 +1982,7 b' def _histedit(ui, repo, state, freeargs,' | |||||
1982 |
|
1982 | |||
1983 | hastags = False |
|
1983 | hastags = False | |
1984 | if revs: |
|
1984 | if revs: | |
1985 |
revs = |
|
1985 | revs = logcmdutil.revrange(repo, revs) | |
1986 | ctxs = [repo[rev] for rev in revs] |
|
1986 | ctxs = [repo[rev] for rev in revs] | |
1987 | for ctx in ctxs: |
|
1987 | for ctx in ctxs: | |
1988 | tags = [tag for tag in ctx.tags() if tag != b'tip'] |
|
1988 | tags = [tag for tag in ctx.tags() if tag != b'tip'] | |
@@ -2205,7 +2205,7 b' def _newhistedit(ui, repo, state, revs, ' | |||||
2205 | remote = None |
|
2205 | remote = None | |
2206 | root = findoutgoing(ui, repo, remote, force, opts) |
|
2206 | root = findoutgoing(ui, repo, remote, force, opts) | |
2207 | else: |
|
2207 | else: | |
2208 |
rr = list(repo.set(b'roots(%ld)', |
|
2208 | rr = list(repo.set(b'roots(%ld)', logcmdutil.revrange(repo, revs))) | |
2209 | if len(rr) != 1: |
|
2209 | if len(rr) != 1: | |
2210 | raise error.InputError( |
|
2210 | raise error.InputError( | |
2211 | _( |
|
2211 | _( |
@@ -26,6 +26,7 b' from mercurial import (' | |||||
26 | exthelper, |
|
26 | exthelper, | |
27 | hg, |
|
27 | hg, | |
28 | lock, |
|
28 | lock, | |
|
29 | logcmdutil, | |||
29 | match as matchmod, |
|
30 | match as matchmod, | |
30 | pycompat, |
|
31 | pycompat, | |
31 | scmutil, |
|
32 | scmutil, | |
@@ -657,7 +658,7 b' def lfpull(ui, repo, source=b"default", ' | |||||
657 | revs = opts.get('rev', []) |
|
658 | revs = opts.get('rev', []) | |
658 | if not revs: |
|
659 | if not revs: | |
659 | raise error.Abort(_(b'no revisions specified')) |
|
660 | raise error.Abort(_(b'no revisions specified')) | |
660 |
revs = |
|
661 | revs = logcmdutil.revrange(repo, revs) | |
661 |
|
662 | |||
662 | numcached = 0 |
|
663 | numcached = 0 | |
663 | for rev in revs: |
|
664 | for rev in revs: |
@@ -1000,7 +1000,7 b' def overridepull(orig, ui, repo, source=' | |||||
1000 | numcached = 0 |
|
1000 | numcached = 0 | |
1001 | repo.firstpulled = revsprepull # for pulled() revset expression |
|
1001 | repo.firstpulled = revsprepull # for pulled() revset expression | |
1002 | try: |
|
1002 | try: | |
1003 |
for rev in |
|
1003 | for rev in logcmdutil.revrange(repo, lfrevs): | |
1004 | ui.note(_(b'pulling largefiles for revision %d\n') % rev) |
|
1004 | ui.note(_(b'pulling largefiles for revision %d\n') % rev) | |
1005 | (cached, missing) = lfcommands.cachelfiles(ui, repo, rev) |
|
1005 | (cached, missing) = lfcommands.cachelfiles(ui, repo, rev) | |
1006 | numcached += len(cached) |
|
1006 | numcached += len(cached) | |
@@ -1027,7 +1027,7 b' def overridepush(orig, ui, repo, *args, ' | |||||
1027 | lfrevs = kwargs.pop('lfrev', None) |
|
1027 | lfrevs = kwargs.pop('lfrev', None) | |
1028 | if lfrevs: |
|
1028 | if lfrevs: | |
1029 | opargs = kwargs.setdefault('opargs', {}) |
|
1029 | opargs = kwargs.setdefault('opargs', {}) | |
1030 |
opargs[b'lfrevs'] = |
|
1030 | opargs[b'lfrevs'] = logcmdutil.revrange(repo, lfrevs) | |
1031 | return orig(ui, repo, *args, **kwargs) |
|
1031 | return orig(ui, repo, *args, **kwargs) | |
1032 |
|
1032 | |||
1033 |
|
1033 |
@@ -137,6 +137,7 b' from mercurial import (' | |||||
137 | filelog, |
|
137 | filelog, | |
138 | filesetlang, |
|
138 | filesetlang, | |
139 | localrepo, |
|
139 | localrepo, | |
|
140 | logcmdutil, | |||
140 | minifileset, |
|
141 | minifileset, | |
141 | pycompat, |
|
142 | pycompat, | |
142 | revlog, |
|
143 | revlog, | |
@@ -417,7 +418,7 b' def lfsfiles(context, mapping):' | |||||
417 | def debuglfsupload(ui, repo, **opts): |
|
418 | def debuglfsupload(ui, repo, **opts): | |
418 | """upload lfs blobs added by the working copy parent or given revisions""" |
|
419 | """upload lfs blobs added by the working copy parent or given revisions""" | |
419 | revs = opts.get('rev', []) |
|
420 | revs = opts.get('rev', []) | |
420 |
pointers = wrapper.extractpointers(repo, |
|
421 | pointers = wrapper.extractpointers(repo, logcmdutil.revrange(repo, revs)) | |
421 | wrapper.uploadblobs(repo, pointers) |
|
422 | wrapper.uploadblobs(repo, pointers) | |
422 |
|
423 | |||
423 |
|
424 |
@@ -1241,7 +1241,7 b' class queue(object):' | |||||
1241 | if opts.get(b'rev'): |
|
1241 | if opts.get(b'rev'): | |
1242 | if not self.applied: |
|
1242 | if not self.applied: | |
1243 | raise error.Abort(_(b'no patches applied')) |
|
1243 | raise error.Abort(_(b'no patches applied')) | |
1244 |
revs = |
|
1244 | revs = logcmdutil.revrange(repo, opts.get(b'rev')) | |
1245 | revs.sort() |
|
1245 | revs.sort() | |
1246 | revpatches = self._revpatches(repo, revs) |
|
1246 | revpatches = self._revpatches(repo, revs) | |
1247 | realpatches += revpatches |
|
1247 | realpatches += revpatches | |
@@ -2417,7 +2417,7 b' class queue(object):' | |||||
2417 | raise error.Abort( |
|
2417 | raise error.Abort( | |
2418 | _(b'option "-r" not valid when importing files') |
|
2418 | _(b'option "-r" not valid when importing files') | |
2419 | ) |
|
2419 | ) | |
2420 |
rev = |
|
2420 | rev = logcmdutil.revrange(repo, rev) | |
2421 | rev.sort(reverse=True) |
|
2421 | rev.sort(reverse=True) | |
2422 | elif not files: |
|
2422 | elif not files: | |
2423 | raise error.Abort(_(b'no files or revisions specified')) |
|
2423 | raise error.Abort(_(b'no files or revisions specified')) | |
@@ -3878,7 +3878,7 b' def finish(ui, repo, *revrange, **opts):' | |||||
3878 | ui.status(_(b'no patches applied\n')) |
|
3878 | ui.status(_(b'no patches applied\n')) | |
3879 | return 0 |
|
3879 | return 0 | |
3880 |
|
3880 | |||
3881 |
revs = |
|
3881 | revs = logcmdutil.revrange(repo, revrange) | |
3882 | if repo[b'.'].rev() in revs and repo[None].files(): |
|
3882 | if repo[b'.'].rev() in revs and repo[None].files(): | |
3883 | ui.warn(_(b'warning: uncommitted changes in the working directory\n')) |
|
3883 | ui.warn(_(b'warning: uncommitted changes in the working directory\n')) | |
3884 | # queue.finish may changes phases but leave the responsibility to lock the |
|
3884 | # queue.finish may changes phases but leave the responsibility to lock the |
@@ -91,6 +91,7 b' from mercurial import (' | |||||
91 | error, |
|
91 | error, | |
92 | formatter, |
|
92 | formatter, | |
93 | hg, |
|
93 | hg, | |
|
94 | logcmdutil, | |||
94 | mail, |
|
95 | mail, | |
95 | patch, |
|
96 | patch, | |
96 | pycompat, |
|
97 | pycompat, | |
@@ -812,7 +813,7 b' def email(ui, repo, *revs, **opts):' | |||||
812 | raise error.Abort(_(b"bookmark '%s' not found") % bookmark) |
|
813 | raise error.Abort(_(b"bookmark '%s' not found") % bookmark) | |
813 | revs = scmutil.bookmarkrevs(repo, bookmark) |
|
814 | revs = scmutil.bookmarkrevs(repo, bookmark) | |
814 |
|
815 | |||
815 |
revs = |
|
816 | revs = logcmdutil.revrange(repo, revs) | |
816 | if outgoing: |
|
817 | if outgoing: | |
817 | revs = _getoutgoing(repo, dest, revs) |
|
818 | revs = _getoutgoing(repo, dest, revs) | |
818 | if bundle: |
|
819 | if bundle: |
@@ -1354,7 +1354,7 b' def phabsend(ui, repo, *revs, **opts):' | |||||
1354 | """ |
|
1354 | """ | |
1355 | opts = pycompat.byteskwargs(opts) |
|
1355 | opts = pycompat.byteskwargs(opts) | |
1356 | revs = list(revs) + opts.get(b'rev', []) |
|
1356 | revs = list(revs) + opts.get(b'rev', []) | |
1357 |
revs = |
|
1357 | revs = logcmdutil.revrange(repo, revs) | |
1358 | revs.sort() # ascending order to preserve topological parent/child in phab |
|
1358 | revs.sort() # ascending order to preserve topological parent/child in phab | |
1359 |
|
1359 | |||
1360 | if not revs: |
|
1360 | if not revs: | |
@@ -2276,7 +2276,7 b' def phabupdate(ui, repo, *specs, **opts)' | |||||
2276 | if specs: |
|
2276 | if specs: | |
2277 | raise error.InputError(_(b'cannot specify both DREVSPEC and --rev')) |
|
2277 | raise error.InputError(_(b'cannot specify both DREVSPEC and --rev')) | |
2278 |
|
2278 | |||
2279 |
drevmap = getdrevmap(repo, |
|
2279 | drevmap = getdrevmap(repo, logcmdutil.revrange(repo, [revs])) | |
2280 | specs = [] |
|
2280 | specs = [] | |
2281 | unknown = [] |
|
2281 | unknown = [] | |
2282 | for r, d in pycompat.iteritems(drevmap): |
|
2282 | for r, d in pycompat.iteritems(drevmap): |
@@ -35,6 +35,7 b' from mercurial import (' | |||||
35 | dirstateguard, |
|
35 | dirstateguard, | |
36 | error, |
|
36 | error, | |
37 | extensions, |
|
37 | extensions, | |
|
38 | logcmdutil, | |||
38 | merge as mergemod, |
|
39 | merge as mergemod, | |
39 | mergestate as mergestatemod, |
|
40 | mergestate as mergestatemod, | |
40 | mergeutil, |
|
41 | mergeutil, | |
@@ -1302,19 +1303,19 b' def _definedestmap(ui, repo, inmemory, d' | |||||
1302 | dest = None |
|
1303 | dest = None | |
1303 |
|
1304 | |||
1304 | if revf: |
|
1305 | if revf: | |
1305 |
rebaseset = |
|
1306 | rebaseset = logcmdutil.revrange(repo, revf) | |
1306 | if not rebaseset: |
|
1307 | if not rebaseset: | |
1307 | ui.status(_(b'empty "rev" revision set - nothing to rebase\n')) |
|
1308 | ui.status(_(b'empty "rev" revision set - nothing to rebase\n')) | |
1308 | return None |
|
1309 | return None | |
1309 | elif srcf: |
|
1310 | elif srcf: | |
1310 |
src = |
|
1311 | src = logcmdutil.revrange(repo, srcf) | |
1311 | if not src: |
|
1312 | if not src: | |
1312 | ui.status(_(b'empty "source" revision set - nothing to rebase\n')) |
|
1313 | ui.status(_(b'empty "source" revision set - nothing to rebase\n')) | |
1313 | return None |
|
1314 | return None | |
1314 | # `+ (%ld)` to work around `wdir()::` being empty |
|
1315 | # `+ (%ld)` to work around `wdir()::` being empty | |
1315 | rebaseset = repo.revs(b'(%ld):: + (%ld)', src, src) |
|
1316 | rebaseset = repo.revs(b'(%ld):: + (%ld)', src, src) | |
1316 | else: |
|
1317 | else: | |
1317 |
base = |
|
1318 | base = logcmdutil.revrange(repo, basef or [b'.']) | |
1318 | if not base: |
|
1319 | if not base: | |
1319 | ui.status( |
|
1320 | ui.status( | |
1320 | _(b'empty "base" revision set - ' b"can't compute rebase set\n") |
|
1321 | _(b'empty "base" revision set - ' b"can't compute rebase set\n") |
@@ -24,10 +24,10 b' from mercurial import (' | |||||
24 | cmdutil, |
|
24 | cmdutil, | |
25 | config, |
|
25 | config, | |
26 | error, |
|
26 | error, | |
|
27 | logcmdutil, | |||
27 | minirst, |
|
28 | minirst, | |
28 | pycompat, |
|
29 | pycompat, | |
29 | registrar, |
|
30 | registrar, | |
30 | scmutil, |
|
|||
31 | util, |
|
31 | util, | |
32 | ) |
|
32 | ) | |
33 | from mercurial.utils import ( |
|
33 | from mercurial.utils import ( | |
@@ -676,7 +676,7 b' def releasenotes(ui, repo, file_=None, *' | |||||
676 | return _getadmonitionlist(ui, sections) |
|
676 | return _getadmonitionlist(ui, sections) | |
677 |
|
677 | |||
678 | rev = opts.get(b'rev') |
|
678 | rev = opts.get(b'rev') | |
679 |
revs = |
|
679 | revs = logcmdutil.revrange(repo, [rev or b'not public()']) | |
680 | if opts.get(b'check'): |
|
680 | if opts.get(b'check'): | |
681 | return checkadmonitions(ui, repo, sections.names(), revs) |
|
681 | return checkadmonitions(ui, repo, sections.names(), revs) | |
682 |
|
682 |
@@ -22,6 +22,7 b' from mercurial import (' | |||||
22 | commands, |
|
22 | commands, | |
23 | error, |
|
23 | error, | |
24 | hg, |
|
24 | hg, | |
|
25 | logcmdutil, | |||
25 | pycompat, |
|
26 | pycompat, | |
26 | registrar, |
|
27 | registrar, | |
27 | revsetlang, |
|
28 | revsetlang, | |
@@ -75,7 +76,7 b' def split(ui, repo, *revs, **opts):' | |||||
75 | # If the rebase somehow runs into conflicts, make sure |
|
76 | # If the rebase somehow runs into conflicts, make sure | |
76 | # we close the transaction so the user can continue it. |
|
77 | # we close the transaction so the user can continue it. | |
77 | with util.acceptintervention(tr): |
|
78 | with util.acceptintervention(tr): | |
78 |
revs = |
|
79 | revs = logcmdutil.revrange(repo, revlist or [b'.']) | |
79 | if len(revs) > 1: |
|
80 | if len(revs) > 1: | |
80 | raise error.InputError(_(b'cannot split multiple revisions')) |
|
81 | raise error.InputError(_(b'cannot split multiple revisions')) | |
81 |
|
82 |
@@ -37,7 +37,6 b' from mercurial import (' | |||||
37 | pycompat, |
|
37 | pycompat, | |
38 | registrar, |
|
38 | registrar, | |
39 | revset, |
|
39 | revset, | |
40 | scmutil, |
|
|||
41 | smartset, |
|
40 | smartset, | |
42 | state as statemod, |
|
41 | state as statemod, | |
43 | util, |
|
42 | util, | |
@@ -845,7 +844,7 b' def _dotransplant(ui, repo, *revs, **opt' | |||||
845 | if opts.get(b'prune'): |
|
844 | if opts.get(b'prune'): | |
846 | prune = { |
|
845 | prune = { | |
847 | source[r].node() |
|
846 | source[r].node() | |
848 |
for r in |
|
847 | for r in logcmdutil.revrange(source, opts.get(b'prune')) | |
849 | } |
|
848 | } | |
850 | matchfn = lambda x: tf(x) and x not in prune |
|
849 | matchfn = lambda x: tf(x) and x not in prune | |
851 | else: |
|
850 | else: | |
@@ -853,7 +852,7 b' def _dotransplant(ui, repo, *revs, **opt' | |||||
853 | merges = pycompat.maplist(source.lookup, opts.get(b'merge', ())) |
|
852 | merges = pycompat.maplist(source.lookup, opts.get(b'merge', ())) | |
854 | revmap = {} |
|
853 | revmap = {} | |
855 | if revs: |
|
854 | if revs: | |
856 |
for r in |
|
855 | for r in logcmdutil.revrange(source, revs): | |
857 | revmap[int(r)] = source[r].node() |
|
856 | revmap[int(r)] = source[r].node() | |
858 | elif opts.get(b'all') or not merges: |
|
857 | elif opts.get(b'all') or not merges: | |
859 | if source != repo: |
|
858 | if source != repo: |
@@ -987,7 +987,7 b' def changebranch(ui, repo, revs, label, ' | |||||
987 | with repo.wlock(), repo.lock(), repo.transaction(b'branches'): |
|
987 | with repo.wlock(), repo.lock(), repo.transaction(b'branches'): | |
988 | # abort in case of uncommitted merge or dirty wdir |
|
988 | # abort in case of uncommitted merge or dirty wdir | |
989 | bailifchanged(repo) |
|
989 | bailifchanged(repo) | |
990 |
revs = |
|
990 | revs = logcmdutil.revrange(repo, revs) | |
991 | if not revs: |
|
991 | if not revs: | |
992 | raise error.InputError(b"empty revision set") |
|
992 | raise error.InputError(b"empty revision set") | |
993 | roots = repo.revs(b'roots(%ld)', revs) |
|
993 | roots = repo.revs(b'roots(%ld)', revs) |
@@ -536,7 +536,7 b' def annotate(ui, repo, *pats, **opts):' | |||||
536 | ) |
|
536 | ) | |
537 | skiprevs = opts.get(b'skip') |
|
537 | skiprevs = opts.get(b'skip') | |
538 | if skiprevs: |
|
538 | if skiprevs: | |
539 |
skiprevs = |
|
539 | skiprevs = logcmdutil.revrange(repo, skiprevs) | |
540 |
|
540 | |||
541 | uipathfn = scmutil.getuipathfn(repo, legacyrelativevalue=True) |
|
541 | uipathfn = scmutil.getuipathfn(repo, legacyrelativevalue=True) | |
542 | for abs in ctx.walk(m): |
|
542 | for abs in ctx.walk(m): | |
@@ -1037,7 +1037,7 b' def bisect(' | |||||
1037 | state = hbisect.load_state(repo) |
|
1037 | state = hbisect.load_state(repo) | |
1038 |
|
1038 | |||
1039 | if rev: |
|
1039 | if rev: | |
1040 |
nodes = [repo[i].node() for i in |
|
1040 | nodes = [repo[i].node() for i in logcmdutil.revrange(repo, rev)] | |
1041 | else: |
|
1041 | else: | |
1042 | nodes = [repo.lookup(b'.')] |
|
1042 | nodes = [repo.lookup(b'.')] | |
1043 |
|
1043 | |||
@@ -1424,7 +1424,7 b' def branches(ui, repo, active=False, clo' | |||||
1424 | revs = opts.get(b'rev') |
|
1424 | revs = opts.get(b'rev') | |
1425 | selectedbranches = None |
|
1425 | selectedbranches = None | |
1426 | if revs: |
|
1426 | if revs: | |
1427 |
revs = |
|
1427 | revs = logcmdutil.revrange(repo, revs) | |
1428 | getbi = repo.revbranchcache().branchinfo |
|
1428 | getbi = repo.revbranchcache().branchinfo | |
1429 | selectedbranches = {getbi(r)[0] for r in revs} |
|
1429 | selectedbranches = {getbi(r)[0] for r in revs} | |
1430 |
|
1430 | |||
@@ -1558,7 +1558,7 b' def bundle(ui, repo, fname, *dests, **op' | |||||
1558 | revs = None |
|
1558 | revs = None | |
1559 | if b'rev' in opts: |
|
1559 | if b'rev' in opts: | |
1560 | revstrings = opts[b'rev'] |
|
1560 | revstrings = opts[b'rev'] | |
1561 |
revs = |
|
1561 | revs = logcmdutil.revrange(repo, revstrings) | |
1562 | if revstrings and not revs: |
|
1562 | if revstrings and not revs: | |
1563 | raise error.InputError(_(b'no commits to bundle')) |
|
1563 | raise error.InputError(_(b'no commits to bundle')) | |
1564 |
|
1564 | |||
@@ -1590,7 +1590,7 b' def bundle(ui, repo, fname, *dests, **op' | |||||
1590 | ui.warn(_(b"ignoring --base because --all was specified\n")) |
|
1590 | ui.warn(_(b"ignoring --base because --all was specified\n")) | |
1591 | base = [nullrev] |
|
1591 | base = [nullrev] | |
1592 | else: |
|
1592 | else: | |
1593 |
base = |
|
1593 | base = logcmdutil.revrange(repo, opts.get(b'base')) | |
1594 | if cgversion not in changegroup.supportedoutgoingversions(repo): |
|
1594 | if cgversion not in changegroup.supportedoutgoingversions(repo): | |
1595 | raise error.Abort( |
|
1595 | raise error.Abort( | |
1596 | _(b"repository does not support bundle version %s") % cgversion |
|
1596 | _(b"repository does not support bundle version %s") % cgversion | |
@@ -2753,7 +2753,7 b' def export(ui, repo, *changesets, **opts' | |||||
2753 | changesets = [b'.'] |
|
2753 | changesets = [b'.'] | |
2754 |
|
2754 | |||
2755 | repo = scmutil.unhidehashlikerevs(repo, changesets, b'nowarn') |
|
2755 | repo = scmutil.unhidehashlikerevs(repo, changesets, b'nowarn') | |
2756 |
revs = |
|
2756 | revs = logcmdutil.revrange(repo, changesets) | |
2757 |
|
2757 | |||
2758 | if not revs: |
|
2758 | if not revs: | |
2759 | raise error.InputError(_(b"export requires at least one changeset")) |
|
2759 | raise error.InputError(_(b"export requires at least one changeset")) | |
@@ -3170,7 +3170,7 b' def _dograft(ui, repo, *revs, **opts):' | |||||
3170 | raise error.InputError(_(b'no revisions specified')) |
|
3170 | raise error.InputError(_(b'no revisions specified')) | |
3171 | cmdutil.checkunfinished(repo) |
|
3171 | cmdutil.checkunfinished(repo) | |
3172 | cmdutil.bailifchanged(repo) |
|
3172 | cmdutil.bailifchanged(repo) | |
3173 |
revs = |
|
3173 | revs = logcmdutil.revrange(repo, revs) | |
3174 |
|
3174 | |||
3175 | skipped = set() |
|
3175 | skipped = set() | |
3176 | basectx = None |
|
3176 | basectx = None | |
@@ -3708,7 +3708,7 b' def heads(ui, repo, *branchrevs, **opts)' | |||||
3708 |
|
3708 | |||
3709 | if branchrevs: |
|
3709 | if branchrevs: | |
3710 | branches = { |
|
3710 | branches = { | |
3711 |
repo[r].branch() for r in |
|
3711 | repo[r].branch() for r in logcmdutil.revrange(repo, branchrevs) | |
3712 | } |
|
3712 | } | |
3713 | heads = [h for h in heads if h.branch() in branches] |
|
3713 | heads = [h for h in heads if h.branch() in branches] | |
3714 |
|
3714 | |||
@@ -5220,7 +5220,7 b' def phase(ui, repo, *revs, **opts):' | |||||
5220 | revs = list(revs) |
|
5220 | revs = list(revs) | |
5221 | revs.extend(opts[b'rev']) |
|
5221 | revs.extend(opts[b'rev']) | |
5222 | if revs: |
|
5222 | if revs: | |
5223 |
revs = |
|
5223 | revs = logcmdutil.revrange(repo, revs) | |
5224 | else: |
|
5224 | else: | |
5225 | # display both parents as the second parent phase can influence |
|
5225 | # display both parents as the second parent phase can influence | |
5226 | # the phase of a merge commit |
|
5226 | # the phase of a merge commit | |
@@ -5735,7 +5735,7 b' def push(ui, repo, *dests, **opts):' | |||||
5735 |
|
5735 | |||
5736 | try: |
|
5736 | try: | |
5737 | if revs: |
|
5737 | if revs: | |
5738 |
revs = [repo[r].node() for r in |
|
5738 | revs = [repo[r].node() for r in logcmdutil.revrange(repo, revs)] | |
5739 | if not revs: |
|
5739 | if not revs: | |
5740 | raise error.InputError( |
|
5740 | raise error.InputError( | |
5741 | _(b"specified revisions evaluate to an empty set"), |
|
5741 | _(b"specified revisions evaluate to an empty set"), |
@@ -1082,7 +1082,7 b' def debugdiscovery(ui, repo, remoteurl=b' | |||||
1082 | ui.status(_(b'comparing with %s\n') % urlutil.hidepassword(remoteurl)) |
|
1082 | ui.status(_(b'comparing with %s\n') % urlutil.hidepassword(remoteurl)) | |
1083 | else: |
|
1083 | else: | |
1084 | branches = (None, []) |
|
1084 | branches = (None, []) | |
1085 |
remote_filtered_revs = |
|
1085 | remote_filtered_revs = logcmdutil.revrange( | |
1086 | unfi, [b"not (::(%s))" % remote_revs] |
|
1086 | unfi, [b"not (::(%s))" % remote_revs] | |
1087 | ) |
|
1087 | ) | |
1088 | remote_filtered_revs = frozenset(remote_filtered_revs) |
|
1088 | remote_filtered_revs = frozenset(remote_filtered_revs) | |
@@ -1096,7 +1096,7 b' def debugdiscovery(ui, repo, remoteurl=b' | |||||
1096 | remote._repo = remote._repo.filtered(b'debug-discovery-remote-filter') |
|
1096 | remote._repo = remote._repo.filtered(b'debug-discovery-remote-filter') | |
1097 |
|
1097 | |||
1098 | if local_revs: |
|
1098 | if local_revs: | |
1099 |
local_filtered_revs = |
|
1099 | local_filtered_revs = logcmdutil.revrange( | |
1100 | unfi, [b"not (::(%s))" % local_revs] |
|
1100 | unfi, [b"not (::(%s))" % local_revs] | |
1101 | ) |
|
1101 | ) | |
1102 | local_filtered_revs = frozenset(local_filtered_revs) |
|
1102 | local_filtered_revs = frozenset(local_filtered_revs) | |
@@ -1134,7 +1134,7 b' def debugdiscovery(ui, repo, remoteurl=b' | |||||
1134 | def doit(pushedrevs, remoteheads, remote=remote): |
|
1134 | def doit(pushedrevs, remoteheads, remote=remote): | |
1135 | nodes = None |
|
1135 | nodes = None | |
1136 | if pushedrevs: |
|
1136 | if pushedrevs: | |
1137 |
revs = |
|
1137 | revs = logcmdutil.revrange(repo, pushedrevs) | |
1138 | nodes = [repo[r].node() for r in revs] |
|
1138 | nodes = [repo[r].node() for r in revs] | |
1139 | common, any, hds = setdiscovery.findcommonheads( |
|
1139 | common, any, hds = setdiscovery.findcommonheads( | |
1140 | ui, repo, remote, ancestorsof=nodes, audit=data |
|
1140 | ui, repo, remote, ancestorsof=nodes, audit=data | |
@@ -2593,7 +2593,7 b' def debugobsolete(ui, repo, precursor=No' | |||||
2593 | l.release() |
|
2593 | l.release() | |
2594 | else: |
|
2594 | else: | |
2595 | if opts[b'rev']: |
|
2595 | if opts[b'rev']: | |
2596 |
revs = |
|
2596 | revs = logcmdutil.revrange(repo, opts[b'rev']) | |
2597 | nodes = [repo[r].node() for r in revs] |
|
2597 | nodes = [repo[r].node() for r in revs] | |
2598 | markers = list( |
|
2598 | markers = list( | |
2599 | obsutil.getmarkers( |
|
2599 | obsutil.getmarkers( | |
@@ -4009,7 +4009,7 b' def debugsuccessorssets(ui, repo, *revs,' | |||||
4009 | cache = {} |
|
4009 | cache = {} | |
4010 | ctx2str = bytes |
|
4010 | ctx2str = bytes | |
4011 | node2str = short |
|
4011 | node2str = short | |
4012 |
for rev in |
|
4012 | for rev in logcmdutil.revrange(repo, revs): | |
4013 | ctx = repo[rev] |
|
4013 | ctx = repo[rev] | |
4014 | ui.write(b'%s\n' % ctx2str(ctx)) |
|
4014 | ui.write(b'%s\n' % ctx2str(ctx)) | |
4015 | for succsset in obsutil.successorssets( |
|
4015 | for succsset in obsutil.successorssets( | |
@@ -4068,7 +4068,7 b' def debugtemplate(ui, repo, tmpl, **opts' | |||||
4068 | raise error.RepoError( |
|
4068 | raise error.RepoError( | |
4069 | _(b'there is no Mercurial repository here (.hg not found)') |
|
4069 | _(b'there is no Mercurial repository here (.hg not found)') | |
4070 | ) |
|
4070 | ) | |
4071 |
revs = |
|
4071 | revs = logcmdutil.revrange(repo, opts['rev']) | |
4072 |
|
4072 | |||
4073 | props = {} |
|
4073 | props = {} | |
4074 | for d in opts['define']: |
|
4074 | for d in opts['define']: |
@@ -1352,7 +1352,7 b' def _outgoing(ui, repo, dests, opts, sub' | |||||
1352 | ui.status(_(b'comparing with %s\n') % urlutil.hidepassword(dest)) |
|
1352 | ui.status(_(b'comparing with %s\n') % urlutil.hidepassword(dest)) | |
1353 | revs, checkout = addbranchrevs(repo, repo, branches, opts.get(b'rev')) |
|
1353 | revs, checkout = addbranchrevs(repo, repo, branches, opts.get(b'rev')) | |
1354 | if revs: |
|
1354 | if revs: | |
1355 |
revs = [repo[rev].node() for rev in |
|
1355 | revs = [repo[rev].node() for rev in logcmdutil.revrange(repo, revs)] | |
1356 |
|
1356 | |||
1357 | other = peer(repo, opts, dest) |
|
1357 | other = peer(repo, opts, dest) | |
1358 | try: |
|
1358 | try: |
@@ -912,6 +912,18 b' def _makenofollowfilematcher(repo, pats,' | |||||
912 | return None |
|
912 | return None | |
913 |
|
913 | |||
914 |
|
914 | |||
|
915 | def revrange(repo, specs, localalias=None): | |||
|
916 | """Resolves user-provided revset(s). | |||
|
917 | ||||
|
918 | This just wraps the lower-level scmutil.revrange() in order to raise an | |||
|
919 | exception indicating user error. | |||
|
920 | """ | |||
|
921 | try: | |||
|
922 | return scmutil.revrange(repo, specs, localalias) | |||
|
923 | except error.RepoLookupError as e: | |||
|
924 | raise error.InputError(e.args[0], hint=e.hint) | |||
|
925 | ||||
|
926 | ||||
915 | _opt2logrevset = { |
|
927 | _opt2logrevset = { | |
916 | b'no_merges': (b'not merge()', None), |
|
928 | b'no_merges': (b'not merge()', None), | |
917 | b'only_merges': (b'merge()', None), |
|
929 | b'only_merges': (b'merge()', None), | |
@@ -987,7 +999,7 b' def _makerevset(repo, wopts, slowpath):' | |||||
987 | def _initialrevs(repo, wopts): |
|
999 | def _initialrevs(repo, wopts): | |
988 | """Return the initial set of revisions to be filtered or followed""" |
|
1000 | """Return the initial set of revisions to be filtered or followed""" | |
989 | if wopts.revspec: |
|
1001 | if wopts.revspec: | |
990 |
revs = |
|
1002 | revs = revrange(repo, wopts.revspec) | |
991 | elif wopts.follow and repo.dirstate.p1() == repo.nullid: |
|
1003 | elif wopts.follow and repo.dirstate.p1() == repo.nullid: | |
992 | revs = smartset.baseset() |
|
1004 | revs = smartset.baseset() | |
993 | elif wopts.follow: |
|
1005 | elif wopts.follow: |
@@ -8,6 +8,7 b' from . import (' | |||||
8 | error, |
|
8 | error, | |
9 | hg, |
|
9 | hg, | |
10 | lock as lockmod, |
|
10 | lock as lockmod, | |
|
11 | logcmdutil, | |||
11 | mergestate as mergestatemod, |
|
12 | mergestate as mergestatemod, | |
12 | pycompat, |
|
13 | pycompat, | |
13 | registrar, |
|
14 | registrar, | |
@@ -178,7 +179,7 b' def debugstrip(ui, repo, *revs, **opts):' | |||||
178 |
|
179 | |||
179 | cl = repo.changelog |
|
180 | cl = repo.changelog | |
180 | revs = list(revs) + opts.get(b'rev') |
|
181 | revs = list(revs) + opts.get(b'rev') | |
181 |
revs = set( |
|
182 | revs = set(logcmdutil.revrange(repo, revs)) | |
182 |
|
183 | |||
183 | with repo.wlock(): |
|
184 | with repo.wlock(): | |
184 | bookmarks = set(opts.get(b'bookmark')) |
|
185 | bookmarks = set(opts.get(b'bookmark')) |
@@ -185,22 +185,22 b' but "literal:." is not since "." seems n' | |||||
185 |
|
185 | |||
186 | $ hg log -r 'bookmark("literal:.")' |
|
186 | $ hg log -r 'bookmark("literal:.")' | |
187 | abort: bookmark '.' does not exist |
|
187 | abort: bookmark '.' does not exist | |
188 |
[ |
|
188 | [10] | |
189 |
|
189 | |||
190 | "." should fail if there's no active bookmark: |
|
190 | "." should fail if there's no active bookmark: | |
191 |
|
191 | |||
192 | $ hg bookmark --inactive |
|
192 | $ hg bookmark --inactive | |
193 | $ hg log -r 'bookmark(.)' |
|
193 | $ hg log -r 'bookmark(.)' | |
194 | abort: no active bookmark |
|
194 | abort: no active bookmark | |
195 |
[ |
|
195 | [10] | |
196 | $ hg log -r 'present(bookmark(.))' |
|
196 | $ hg log -r 'present(bookmark(.))' | |
197 |
|
197 | |||
198 | $ hg log -r 'bookmark(unknown)' |
|
198 | $ hg log -r 'bookmark(unknown)' | |
199 | abort: bookmark 'unknown' does not exist |
|
199 | abort: bookmark 'unknown' does not exist | |
200 |
[ |
|
200 | [10] | |
201 | $ hg log -r 'bookmark("literal:unknown")' |
|
201 | $ hg log -r 'bookmark("literal:unknown")' | |
202 | abort: bookmark 'unknown' does not exist |
|
202 | abort: bookmark 'unknown' does not exist | |
203 |
[ |
|
203 | [10] | |
204 | $ hg log -r 'bookmark("re:unknown")' |
|
204 | $ hg log -r 'bookmark("re:unknown")' | |
205 | $ hg log -r 'present(bookmark("literal:unknown"))' |
|
205 | $ hg log -r 'present(bookmark("literal:unknown"))' | |
206 | $ hg log -r 'present(bookmark("re:unknown"))' |
|
206 | $ hg log -r 'present(bookmark("re:unknown"))' |
@@ -147,7 +147,7 b' Changing branch of an obsoleted changese' | |||||
147 | $ hg branch -r 4 foobar |
|
147 | $ hg branch -r 4 foobar | |
148 | abort: hidden revision '4' was rewritten as: 7c1991464886 |
|
148 | abort: hidden revision '4' was rewritten as: 7c1991464886 | |
149 | (use --hidden to access hidden revisions) |
|
149 | (use --hidden to access hidden revisions) | |
150 |
[ |
|
150 | [10] | |
151 |
|
151 | |||
152 | $ hg branch -r 4 --hidden foobar |
|
152 | $ hg branch -r 4 --hidden foobar | |
153 | abort: cannot change branch of 3938acfb5c0f, as that creates content-divergence with 7c1991464886 |
|
153 | abort: cannot change branch of 3938acfb5c0f, as that creates content-divergence with 7c1991464886 |
@@ -42,7 +42,7 b' Testing with rev number' | |||||
42 | $ hg exp 2 --config experimental.directaccess.revnums=False |
|
42 | $ hg exp 2 --config experimental.directaccess.revnums=False | |
43 | abort: hidden revision '2' was rewritten as: 2443a0e66469 |
|
43 | abort: hidden revision '2' was rewritten as: 2443a0e66469 | |
44 | (use --hidden to access hidden revisions) |
|
44 | (use --hidden to access hidden revisions) | |
45 |
[ |
|
45 | [10] | |
46 |
|
46 | |||
47 | $ hg exp 2 |
|
47 | $ hg exp 2 | |
48 | # HG changeset patch |
|
48 | # HG changeset patch | |
@@ -197,12 +197,12 b' Commands with undefined intent should no' | |||||
197 | $ hg phase -r 28ad74 |
|
197 | $ hg phase -r 28ad74 | |
198 | abort: hidden revision '28ad74' was rewritten as: 2443a0e66469 |
|
198 | abort: hidden revision '28ad74' was rewritten as: 2443a0e66469 | |
199 | (use --hidden to access hidden revisions) |
|
199 | (use --hidden to access hidden revisions) | |
200 |
[ |
|
200 | [10] | |
201 |
|
201 | |||
202 | $ hg phase -r 2 |
|
202 | $ hg phase -r 2 | |
203 | abort: hidden revision '2' was rewritten as: 2443a0e66469 |
|
203 | abort: hidden revision '2' was rewritten as: 2443a0e66469 | |
204 | (use --hidden to access hidden revisions) |
|
204 | (use --hidden to access hidden revisions) | |
205 |
[ |
|
205 | [10] | |
206 |
|
206 | |||
207 | Setting a bookmark will make that changeset unhidden, so this should come in end |
|
207 | Setting a bookmark will make that changeset unhidden, so this should come in end | |
208 |
|
208 |
@@ -370,7 +370,7 b' Catch exporting unknown revisions (espec' | |||||
370 | [10] |
|
370 | [10] | |
371 | $ hg export 999 |
|
371 | $ hg export 999 | |
372 | abort: unknown revision '999' |
|
372 | abort: unknown revision '999' | |
373 |
[ |
|
373 | [10] | |
374 | $ hg export "not all()" |
|
374 | $ hg export "not all()" | |
375 | abort: export requires at least one changeset |
|
375 | abort: export requires at least one changeset | |
376 | [10] |
|
376 | [10] |
@@ -5,13 +5,13 b' Log on empty repository: checking consis' | |||||
5 | $ hg log |
|
5 | $ hg log | |
6 | $ hg log -r 1 |
|
6 | $ hg log -r 1 | |
7 | abort: unknown revision '1' |
|
7 | abort: unknown revision '1' | |
8 |
[ |
|
8 | [10] | |
9 | $ hg log -r -1:0 |
|
9 | $ hg log -r -1:0 | |
10 | abort: unknown revision '-1' |
|
10 | abort: unknown revision '-1' | |
11 |
[ |
|
11 | [10] | |
12 | $ hg log -r 'branch(name)' |
|
12 | $ hg log -r 'branch(name)' | |
13 | abort: unknown revision 'name' |
|
13 | abort: unknown revision 'name' | |
14 |
[ |
|
14 | [10] | |
15 | $ hg log -r null -q |
|
15 | $ hg log -r null -q | |
16 | -1:000000000000 |
|
16 | -1:000000000000 | |
17 |
|
17 | |||
@@ -1104,7 +1104,7 b' log -r <some unknown node id>' | |||||
1104 |
|
1104 | |||
1105 | $ hg log -r 1000000000000000000000000000000000000000 |
|
1105 | $ hg log -r 1000000000000000000000000000000000000000 | |
1106 | abort: unknown revision '1000000000000000000000000000000000000000' |
|
1106 | abort: unknown revision '1000000000000000000000000000000000000000' | |
1107 |
[ |
|
1107 | [10] | |
1108 |
|
1108 | |||
1109 | log -k r1 |
|
1109 | log -k r1 | |
1110 |
|
1110 | |||
@@ -2061,7 +2061,7 b' enable obsolete to test hidden feature' | |||||
2061 | $ hg log -r a |
|
2061 | $ hg log -r a | |
2062 | abort: hidden revision 'a' is pruned |
|
2062 | abort: hidden revision 'a' is pruned | |
2063 | (use --hidden to access hidden revisions) |
|
2063 | (use --hidden to access hidden revisions) | |
2064 |
[ |
|
2064 | [10] | |
2065 |
|
2065 | |||
2066 | test that parent prevent a changeset to be hidden |
|
2066 | test that parent prevent a changeset to be hidden | |
2067 |
|
2067 | |||
@@ -2125,7 +2125,7 b' test hidden revision 0 (issue5385)' | |||||
2125 | $ hg log -T'{rev}:{node}\n' -r:0 |
|
2125 | $ hg log -T'{rev}:{node}\n' -r:0 | |
2126 | abort: hidden revision '0' is pruned |
|
2126 | abort: hidden revision '0' is pruned | |
2127 | (use --hidden to access hidden revisions) |
|
2127 | (use --hidden to access hidden revisions) | |
2128 |
[ |
|
2128 | [10] | |
2129 | $ hg log -T'{rev}:{node}\n' -f |
|
2129 | $ hg log -T'{rev}:{node}\n' -f | |
2130 | 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e |
|
2130 | 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e | |
2131 | 2:94375ec45bddd2a824535fc04855bd058c926ec0 |
|
2131 | 2:94375ec45bddd2a824535fc04855bd058c926ec0 |
@@ -480,15 +480,15 b' Testing for a literal name which does no' | |||||
480 |
|
480 | |||
481 | $ hg log -r 'remotebranches(def)' -GT "{rev}:{node|short} {remotenames}\n" |
|
481 | $ hg log -r 'remotebranches(def)' -GT "{rev}:{node|short} {remotenames}\n" | |
482 | abort: remote name 'def' does not exist |
|
482 | abort: remote name 'def' does not exist | |
483 |
[ |
|
483 | [10] | |
484 |
|
484 | |||
485 | $ hg log -r 'remotebookmarks("server3")' -GT "{rev}:{node|short} {remotenames}\n" |
|
485 | $ hg log -r 'remotebookmarks("server3")' -GT "{rev}:{node|short} {remotenames}\n" | |
486 | abort: remote name 'server3' does not exist |
|
486 | abort: remote name 'server3' does not exist | |
487 |
[ |
|
487 | [10] | |
488 |
|
488 | |||
489 | $ hg log -r 'remotenames("server3")' -GT "{rev}:{node|short} {remotenames}\n" |
|
489 | $ hg log -r 'remotenames("server3")' -GT "{rev}:{node|short} {remotenames}\n" | |
490 | abort: remote name 'server3' does not exist |
|
490 | abort: remote name 'server3' does not exist | |
491 |
[ |
|
491 | [10] | |
492 |
|
492 | |||
493 | Testing for a pattern which does not match anything, which shouldn't fail. |
|
493 | Testing for a pattern which does not match anything, which shouldn't fail. | |
494 |
|
494 |
@@ -115,7 +115,7 b' Delete the same patch twice in one comma' | |||||
115 |
|
115 | |||
116 | $ hg qfinish -a pc |
|
116 | $ hg qfinish -a pc | |
117 | abort: unknown revision 'pc' |
|
117 | abort: unknown revision 'pc' | |
118 |
[ |
|
118 | [10] | |
119 |
|
119 | |||
120 | $ hg qpush |
|
120 | $ hg qpush | |
121 | applying pc |
|
121 | applying pc |
@@ -203,11 +203,11 b' check that various commands work well wi' | |||||
203 | 5:5601fb93a350 (draft) [tip ] add new_3_c |
|
203 | 5:5601fb93a350 (draft) [tip ] add new_3_c | |
204 | $ hg log -r 6 |
|
204 | $ hg log -r 6 | |
205 | abort: unknown revision '6' |
|
205 | abort: unknown revision '6' | |
206 |
[ |
|
206 | [10] | |
207 | $ hg log -r 4 |
|
207 | $ hg log -r 4 | |
208 | abort: hidden revision '4' was rewritten as: 5601fb93a350 |
|
208 | abort: hidden revision '4' was rewritten as: 5601fb93a350 | |
209 | (use --hidden to access hidden revisions) |
|
209 | (use --hidden to access hidden revisions) | |
210 |
[ |
|
210 | [10] | |
211 | $ hg debugrevspec 'rev(6)' |
|
211 | $ hg debugrevspec 'rev(6)' | |
212 | $ hg debugrevspec 'rev(4)' |
|
212 | $ hg debugrevspec 'rev(4)' | |
213 | $ hg debugrevspec 'null' |
|
213 | $ hg debugrevspec 'null' | |
@@ -1544,7 +1544,7 b' bookmarks change' | |||||
1544 | $ hg log -r 13bedc178fce |
|
1544 | $ hg log -r 13bedc178fce | |
1545 | abort: hidden revision '13bedc178fce' was rewritten as: a9b1f8652753 |
|
1545 | abort: hidden revision '13bedc178fce' was rewritten as: a9b1f8652753 | |
1546 | (use --hidden to access hidden revisions) |
|
1546 | (use --hidden to access hidden revisions) | |
1547 |
[ |
|
1547 | [10] | |
1548 |
|
1548 | |||
1549 | Empty out the test extension, as it isn't compatible with later parts |
|
1549 | Empty out the test extension, as it isn't compatible with later parts | |
1550 | of the test. |
|
1550 | of the test. |
@@ -96,10 +96,10 b' Test label with quote in them.' | |||||
96 | 2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] |
|
96 | 2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | |
97 | $ hg log -r '("foo")' |
|
97 | $ hg log -r '("foo")' | |
98 | abort: unknown revision 'foo' |
|
98 | abort: unknown revision 'foo' | |
99 |
[ |
|
99 | [10] | |
100 | $ hg log -r 'revset("foo")' |
|
100 | $ hg log -r 'revset("foo")' | |
101 | abort: unknown revision 'foo' |
|
101 | abort: unknown revision 'foo' | |
102 |
[ |
|
102 | [10] | |
103 | $ hg log -r '("\"foo\"")' |
|
103 | $ hg log -r '("\"foo\"")' | |
104 | 2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] |
|
104 | 2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | |
105 | $ hg log -r 'revset("\"foo\"")' |
|
105 | $ hg log -r 'revset("\"foo\"")' | |
@@ -126,10 +126,10 b' Test label with + in them.' | |||||
126 | 4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] |
|
126 | 4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | |
127 | $ hg log -r '(foo+bar)' |
|
127 | $ hg log -r '(foo+bar)' | |
128 | abort: unknown revision 'foo' |
|
128 | abort: unknown revision 'foo' | |
129 |
[ |
|
129 | [10] | |
130 | $ hg log -r 'revset(foo+bar)' |
|
130 | $ hg log -r 'revset(foo+bar)' | |
131 | abort: unknown revision 'foo' |
|
131 | abort: unknown revision 'foo' | |
132 |
[ |
|
132 | [10] | |
133 | $ hg log -r '"foo+bar"' |
|
133 | $ hg log -r '"foo+bar"' | |
134 | 4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] |
|
134 | 4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | |
135 | $ hg log -r '("foo+bar")' |
|
135 | $ hg log -r '("foo+bar")' |
@@ -407,7 +407,7 b' quoting needed' | |||||
407 | [10] |
|
407 | [10] | |
408 | $ log 'date' |
|
408 | $ log 'date' | |
409 | abort: unknown revision 'date' |
|
409 | abort: unknown revision 'date' | |
410 |
[ |
|
410 | [10] | |
411 | $ log 'date(' |
|
411 | $ log 'date(' | |
412 | hg: parse error at 5: not a prefix: end |
|
412 | hg: parse error at 5: not a prefix: end | |
413 | (date( |
|
413 | (date( | |
@@ -421,10 +421,10 b' quoting needed' | |||||
421 | [10] |
|
421 | [10] | |
422 | $ log '0:date' |
|
422 | $ log '0:date' | |
423 | abort: unknown revision 'date' |
|
423 | abort: unknown revision 'date' | |
424 |
[ |
|
424 | [10] | |
425 | $ log '::"date"' |
|
425 | $ log '::"date"' | |
426 | abort: unknown revision 'date' |
|
426 | abort: unknown revision 'date' | |
427 |
[ |
|
427 | [10] | |
428 | $ hg book date -r 4 |
|
428 | $ hg book date -r 4 | |
429 | $ log '0:date' |
|
429 | $ log '0:date' | |
430 | 0 |
|
430 | 0 | |
@@ -3067,7 +3067,7 b" abort if the revset doesn't expect given" | |||||
3067 | 0 |
|
3067 | 0 | |
3068 | $ log 'expectsize(0:1, 1)' |
|
3068 | $ log 'expectsize(0:1, 1)' | |
3069 | abort: revset size mismatch. expected 1, got 2 |
|
3069 | abort: revset size mismatch. expected 1, got 2 | |
3070 |
[ |
|
3070 | [10] | |
3071 | $ log 'expectsize(0:4, -1)' |
|
3071 | $ log 'expectsize(0:4, -1)' | |
3072 | hg: parse error: negative size |
|
3072 | hg: parse error: negative size | |
3073 | [10] |
|
3073 | [10] | |
@@ -3077,7 +3077,7 b" abort if the revset doesn't expect given" | |||||
3077 | 2 |
|
3077 | 2 | |
3078 | $ log 'expectsize(0:1, 3:5)' |
|
3078 | $ log 'expectsize(0:1, 3:5)' | |
3079 | abort: revset size mismatch. expected between 3 and 5, got 2 |
|
3079 | abort: revset size mismatch. expected between 3 and 5, got 2 | |
3080 |
[ |
|
3080 | [10] | |
3081 | $ log 'expectsize(0:1, -1:2)' |
|
3081 | $ log 'expectsize(0:1, -1:2)' | |
3082 | hg: parse error: negative size |
|
3082 | hg: parse error: negative size | |
3083 | [10] |
|
3083 | [10] | |
@@ -3104,10 +3104,10 b" abort if the revset doesn't expect given" | |||||
3104 | 2 |
|
3104 | 2 | |
3105 | $ log 'expectsize(0:2, 4:)' |
|
3105 | $ log 'expectsize(0:2, 4:)' | |
3106 | abort: revset size mismatch. expected between 4 and 11, got 3 |
|
3106 | abort: revset size mismatch. expected between 4 and 11, got 3 | |
3107 |
[ |
|
3107 | [10] | |
3108 | $ log 'expectsize(0:2, :2)' |
|
3108 | $ log 'expectsize(0:2, :2)' | |
3109 | abort: revset size mismatch. expected between 0 and 2, got 3 |
|
3109 | abort: revset size mismatch. expected between 0 and 2, got 3 | |
3110 |
[ |
|
3110 | [10] | |
3111 |
|
3111 | |||
3112 | Test getting list of node from file |
|
3112 | Test getting list of node from file | |
3113 |
|
3113 |
@@ -320,7 +320,7 b' test unknown revision in `_list`' | |||||
320 |
|
320 | |||
321 | $ log '0|unknown' |
|
321 | $ log '0|unknown' | |
322 | abort: unknown revision 'unknown' |
|
322 | abort: unknown revision 'unknown' | |
323 |
[ |
|
323 | [10] | |
324 |
|
324 | |||
325 | test integer range in `_list` |
|
325 | test integer range in `_list` | |
326 |
|
326 | |||
@@ -330,11 +330,11 b' test integer range in `_list`' | |||||
330 |
|
330 | |||
331 | $ log '-10|-11' |
|
331 | $ log '-10|-11' | |
332 | abort: unknown revision '-11' |
|
332 | abort: unknown revision '-11' | |
333 |
[ |
|
333 | [10] | |
334 |
|
334 | |||
335 | $ log '9|10' |
|
335 | $ log '9|10' | |
336 | abort: unknown revision '10' |
|
336 | abort: unknown revision '10' | |
337 |
[ |
|
337 | [10] | |
338 |
|
338 | |||
339 | test '0000' != '0' in `_list` |
|
339 | test '0000' != '0' in `_list` | |
340 |
|
340 | |||
@@ -590,7 +590,7 b' we can use patterns when searching for t' | |||||
590 |
|
590 | |||
591 | $ log 'tag("1..*")' |
|
591 | $ log 'tag("1..*")' | |
592 | abort: tag '1..*' does not exist |
|
592 | abort: tag '1..*' does not exist | |
593 |
[ |
|
593 | [10] | |
594 | $ log 'tag("re:1..*")' |
|
594 | $ log 'tag("re:1..*")' | |
595 | 6 |
|
595 | 6 | |
596 | $ log 'tag("re:[0-9].[0-9]")' |
|
596 | $ log 'tag("re:[0-9].[0-9]")' | |
@@ -601,16 +601,16 b' we can use patterns when searching for t' | |||||
601 |
|
601 | |||
602 | $ log 'tag(unknown)' |
|
602 | $ log 'tag(unknown)' | |
603 | abort: tag 'unknown' does not exist |
|
603 | abort: tag 'unknown' does not exist | |
604 |
[ |
|
604 | [10] | |
605 | $ log 'tag("re:unknown")' |
|
605 | $ log 'tag("re:unknown")' | |
606 | $ log 'present(tag("unknown"))' |
|
606 | $ log 'present(tag("unknown"))' | |
607 | $ log 'present(tag("re:unknown"))' |
|
607 | $ log 'present(tag("re:unknown"))' | |
608 | $ log 'branch(unknown)' |
|
608 | $ log 'branch(unknown)' | |
609 | abort: unknown revision 'unknown' |
|
609 | abort: unknown revision 'unknown' | |
610 |
[ |
|
610 | [10] | |
611 | $ log 'branch("literal:unknown")' |
|
611 | $ log 'branch("literal:unknown")' | |
612 | abort: branch 'unknown' does not exist |
|
612 | abort: branch 'unknown' does not exist | |
613 |
[ |
|
613 | [10] | |
614 | $ log 'branch("re:unknown")' |
|
614 | $ log 'branch("re:unknown")' | |
615 | $ log 'present(branch("unknown"))' |
|
615 | $ log 'present(branch("unknown"))' | |
616 | $ log 'present(branch("re:unknown"))' |
|
616 | $ log 'present(branch("re:unknown"))' | |
@@ -666,7 +666,7 b' matching() should preserve the order of ' | |||||
666 |
|
666 | |||
667 | $ log 'named("unknown")' |
|
667 | $ log 'named("unknown")' | |
668 | abort: namespace 'unknown' does not exist |
|
668 | abort: namespace 'unknown' does not exist | |
669 |
[ |
|
669 | [10] | |
670 | $ log 'named("re:unknown")' |
|
670 | $ log 'named("re:unknown")' | |
671 | $ log 'present(named("unknown"))' |
|
671 | $ log 'present(named("unknown"))' | |
672 | $ log 'present(named("re:unknown"))' |
|
672 | $ log 'present(named("re:unknown"))' | |
@@ -759,7 +759,7 b' parentrevspec' | |||||
759 |
|
759 | |||
760 | $ log 'branchpoint()~-1' |
|
760 | $ log 'branchpoint()~-1' | |
761 | abort: revision in set has more than one child |
|
761 | abort: revision in set has more than one child | |
762 |
[ |
|
762 | [10] | |
763 |
|
763 | |||
764 | Bogus function gets suggestions |
|
764 | Bogus function gets suggestions | |
765 | $ log 'add()' |
|
765 | $ log 'add()' |
General Comments 0
You need to be logged in to leave comments.
Login now