##// END OF EJS Templates
phabricator: warn if unable to amend, instead of aborting after posting...
phabricator: warn if unable to amend, instead of aborting after posting There was a divergence in behavior here between obsolete and strip based amending. I first noticed the abort when testing outside of the test harness, but then had trouble recreating it here after reverting the code changes. It turns out, strip based amend was successfully amending the public commit after it was posted! It looks like the protection is in the `commit --amend` command, not in the underlying code that it calls. I considered doing a preflight check and aborting. But the locks are only acquired at the end, if amending, and this is too large a section of code to be wrapped in a maybe-it's-held-or-not context manager for my tastes. Additionally, some people do post-push reviews, and amending is the default behavior, so they shouldn't see a misleading error message. The lack of a 'Differential Revision' entry in the commit message breaks a {phabreview} test, so it had to be partially conditionalized.

File last commit:

r39662:6ecfd12f default
r41198:0101a35d default
Show More
test-identify.t
175 lines | 3.5 KiB | text/troff | Tads3Lexer
Matt Mackall
tests: replace exit 80 with #require
r22046 #require serve
Mads Kiilerich
tests: convert some 'hghave no-outer-repo' to #if...
r17014
#if no-outer-repo
Nicolas Dumazet
tests: unify test-identify
r11796
no repo
$ hg id
Martin Geisler
Merge with stable
r12070 abort: there is no Mercurial repository here (.hg not found)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-identify
r11796
Mads Kiilerich
tests: convert some 'hghave no-outer-repo' to #if...
r17014 #endif
Nicolas Dumazet
tests: unify test-identify
r11796 create repo
$ hg init test
$ cd test
$ echo a > a
$ hg ci -Ama
adding a
basic id usage
$ hg id
cb9a9f314b8b tip
$ hg id --debug
cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b tip
$ hg id -q
cb9a9f314b8b
$ hg id -v
cb9a9f314b8b tip
with options
$ hg id -r.
cb9a9f314b8b tip
$ hg id -n
0
$ hg id -t
tip
$ hg id -b
default
$ hg id -i
cb9a9f314b8b
$ hg id -n -t -b -i
cb9a9f314b8b 0 default tip
Matt Harbison
identify: add template support...
r33051 $ hg id -Tjson
[
{
"bookmarks": [],
"branch": "default",
Matt Harbison
identify: rename 'changed' keyword -> 'dirty'...
r33054 "dirty": "",
Yuya Nishihara
identify: use fm.hexfunc thoroughly...
r39661 "id": "cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b",
Matt Harbison
identify: add template support...
r33051 "node": "ffffffffffffffffffffffffffffffffffffffff",
Yuya Nishihara
identify: change {parents} to a list of nodes (BC)...
r39662 "parents": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
Matt Harbison
identify: add template support...
r33051 "tags": ["tip"]
}
]
Nicolas Dumazet
tests: unify test-identify
r11796
Yuya Nishihara
identify: provide changectx to templater
r33091 test template keywords and functions which require changectx:
$ hg id -T '{rev} {node|shortest}\n'
2147483647 ffff
$ hg id -T '{parents % "{rev} {node|shortest} {desc}\n"}'
0 cb9a a
Yuya Nishihara
formatter: make nested items somewhat readable in template output
r37518 $ hg id -T '{parents}\n'
Yuya Nishihara
identify: change {parents} to a list of nodes (BC)...
r39662 cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
Yuya Nishihara
identify: provide changectx to templater
r33091
Yuya Nishihara
templater: drop symbols which should be overridden by new 'ctx' (issue5612)...
r37093 test nested template: '{tags}'/'{node}' constants shouldn't override the
default keywords, but '{id}' persists because there's no default keyword
for '{id}' (issue5612)
$ hg id -T '{tags}\n'
tip
Yuya Nishihara
identify: use fm.hexfunc thoroughly...
r39661 $ hg id -T '{revset("null:.") % "{rev}:{node|short} {tags} {id|short}\n"}'
Yuya Nishihara
templater: drop symbols which should be overridden by new 'ctx' (issue5612)...
r37093 -1:000000000000 cb9a9f314b8b
0:cb9a9f314b8b tip cb9a9f314b8b
Nicolas Dumazet
tests: unify test-identify
r11796 with modifications
$ echo b > a
$ hg id -n -t -b -i
cb9a9f314b8b+ 0+ default tip
Matt Harbison
identify: add template support...
r33051 $ hg id -Tjson
[
{
"bookmarks": [],
"branch": "default",
Matt Harbison
identify: rename 'changed' keyword -> 'dirty'...
r33054 "dirty": "+",
Yuya Nishihara
identify: use fm.hexfunc thoroughly...
r39661 "id": "cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b+",
Matt Harbison
identify: add template support...
r33051 "node": "ffffffffffffffffffffffffffffffffffffffff",
Yuya Nishihara
identify: change {parents} to a list of nodes (BC)...
r39662 "parents": ["cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b"],
Matt Harbison
identify: add template support...
r33051 "tags": ["tip"]
}
]
Nicolas Dumazet
tests: unify test-identify
r11796
other local repo
$ cd ..
$ hg -R test id
cb9a9f314b8b+ tip
Mads Kiilerich
tests: convert some 'hghave no-outer-repo' to #if...
r17014 #if no-outer-repo
Nicolas Dumazet
tests: unify test-identify
r11796 $ hg id test
cb9a9f314b8b+ tip
Mads Kiilerich
tests: convert some 'hghave no-outer-repo' to #if...
r17014 #endif
Nicolas Dumazet
tests: unify test-identify
r11796
with remote http repo
$ cd test
$ hg serve -p $HGPORT1 -d --pid-file=hg.pid
$ cat hg.pid >> $DAEMON_PIDS
$ hg id http://localhost:$HGPORT1/
cb9a9f314b8b
Kevin Bullock
id: add bookmarks to id...
r13477 remote with rev number?
$ hg id -n http://localhost:$HGPORT1/
Nils Adermann
identify: list bookmarks for remote repositories
r13644 abort: can't query remote revision number, branch, or tags
Kevin Bullock
id: add bookmarks to id...
r13477 [255]
Nicolas Dumazet
tests: unify test-identify
r11796 remote with tags?
$ hg id -t http://localhost:$HGPORT1/
Nils Adermann
identify: list bookmarks for remote repositories
r13644 abort: can't query remote revision number, branch, or tags
Kevin Bullock
id: add bookmarks to id...
r13477 [255]
remote with branch?
$ hg id -b http://localhost:$HGPORT1/
Nils Adermann
identify: list bookmarks for remote repositories
r13644 abort: can't query remote revision number, branch, or tags
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Adrian Buehlmann
introduce new RequirementError (issue2649)...
r13447
David Soria Parra
tests: add tests for bookmarks support in hg identify
r13645 test bookmark support
$ hg bookmark Y
$ hg bookmark Z
$ hg bookmarks
Y 0:cb9a9f314b8b
* Z 0:cb9a9f314b8b
$ hg id
cb9a9f314b8b+ tip Y/Z
$ hg id --bookmarks
Y Z
test remote identify with bookmarks
$ hg id http://localhost:$HGPORT1/
cb9a9f314b8b Y/Z
$ hg id --bookmarks http://localhost:$HGPORT1/
Y Z
$ hg id -r . http://localhost:$HGPORT1/
cb9a9f314b8b Y/Z
$ hg id --bookmarks -r . http://localhost:$HGPORT1/
Y Z
Mads Kiilerich
httppeer: reintroduce _abort that accidentally was removed in 167047ba3cfa...
r21188 test invalid lookup
$ hg id -r noNoNO http://localhost:$HGPORT1/
abort: unknown revision 'noNoNO'!
[255]
Adrian Buehlmann
introduce new RequirementError (issue2649)...
r13447 Make sure we do not obscure unknown requires file entries (issue2649)
$ echo fake >> .hg/requires
$ hg id
Mads Kiilerich
repo: rephrase the "missing requirement" error message...
r20820 abort: repository requires features unknown to this Mercurial: fake!
Matt Mackall
urls: bulk-change primary website URLs
r26421 (see https://mercurial-scm.org/wiki/MissingRequirement for more information)
Adrian Buehlmann
introduce new RequirementError (issue2649)...
r13447 [255]
$ cd ..
Mads Kiilerich
tests: convert some 'hghave no-outer-repo' to #if...
r17014 #if no-outer-repo
Adrian Buehlmann
introduce new RequirementError (issue2649)...
r13447 $ hg id test
Mads Kiilerich
repo: rephrase the "missing requirement" error message...
r20820 abort: repository requires features unknown to this Mercurial: fake!
Matt Mackall
urls: bulk-change primary website URLs
r26421 (see https://mercurial-scm.org/wiki/MissingRequirement for more information)
Adrian Buehlmann
introduce new RequirementError (issue2649)...
r13447 [255]
Mads Kiilerich
tests: convert some 'hghave no-outer-repo' to #if...
r17014 #endif