status: extract helper for producing relative or absolute path for UI
I put the helper in scmutil so it can be used by most modules. I would
have put it in utils.pathutil, but I think that's supposed to be
unaware of repos.
Differential Revision: https://phab.mercurial-scm.org/D5745
tags: avoid generating commit for an already deleted tag (
issue5752)
`$ hg tag --remove <tagname>` will keep on generating commits
regardless of checking whether the tag is deleted or not. I added a
a fix for `global` tags by aborting if `nullid` is already mapped
to the tag that is to be deleted.
Differential Revision: https://phab.mercurial-scm.org/D5780
watchman: detect nested mercurial repositories and abort
Disable fsmonitor on nested mercurial repositories. Only depth one
repositories are detected at the moment.
Differential Revision: https://phab.mercurial-scm.org/D5587
watchman: add verbose config knob
This new config knob allows to silent watchman log and warning messages when
watchman is unavailable.
Differential Revision: https://phab.mercurial-scm.org/D5586
extdiff: add --per-file and --confirm options
The new options lets the user control how the external program is run.
By default, Mercurial passes the 2 snapshot directories as usual, but
it can also run the program repeatedly on each file's snapshot pair,
and optionally prompt the user each time.
run-tests: sort the skip, failure and error lists in the final output
This will help keep the lists consistent, for comparison across runs.
tests: add Python 3 output for test-remotefilelog-gc.t
Python 3 raises a slightly different error on invalid paths.
Differential Revision: https://phab.mercurial-scm.org/D5773
hg: raise Abort on invalid path
Currently, some os.path functions when opening repositories may
raise an uncaught TypeError or ValueError if the path is invalid.
Let's catch these exceptions and turn them into an Abort for
convenience.
Differential Revision: https://phab.mercurial-scm.org/D5772
subrepo: bytes/str cleanups on Git support
Git subrepo tests now pass on Python 3.
Differential Revision: https://phab.mercurial-scm.org/D5768
tests: compare against a bytes in test-lock.py
skip-blame: just b'' prefixes
Differential Revision: https://phab.mercurial-scm.org/D5771