merge default into stable for 2.7 code freeze
template: fix tabindent docstring (issue2880)
convert: catch empty origpaths in svn gettags (issue3941)
heads: modernize documentation (issue3992)

The old docs emphasized topological heads rather than branch heads and
incorrectly defined branch heads as not having children rather than
descendants.
fileset: handle underbar in symbols

This was documented, but not implemented.
revlog: handle hidden revs in _partialmatch (issue3979)

Looking up hidden prefixes could cause a no node exception
Looking up unique non-hidden prefixes could be ambiguous
largefiles: overridematch() should replace the file path instead of extending (issue3934)
i18n-pt_BR: synchronized with bf6bc4681383
histedit: refuse to edit history that contains merges (issue3962)
cmdutil: core functionality to block during multistep commands (issue3955)

This adds a registration point and check functions that will allow
commands to check if multistep operations like an interrupted graft or
rebase are in progress before proceeding.
update: clear any clearable unfinished operations (issue3955)

Unclearable operations will cause an abort.
commands: add checks for unfinished operations (issue3955)

commands checked:
  backout
  bisect
  commit
  graft
  import
rebase: reorder parent check and state storage

This could cause a rebase to be 'in progress' even though it aborted.
rebase: add checkunfinished support (issue3955)
histedit: add checkunfinished support (issue3955)

The tests contain a couple corner cases where workarounds are now
required. Strictly speaking, these are behavior regressions, but of an
extremely obscure and marginal sort. Commits or updates in the middle
of a histedit would have almost always been fairly serious user error.
transplant: add checkunfinished (issue3955)

Nobody loves transplant anymore, but it was the first command to have
a --continue flag.
mq: add checkunfinished support (issue3955)
update: add tracking of interrupted updates (issue3113)

This takes advantage of the new checkunfinished infrastructure
merge with i18n
hgweb: always start graph with the revision in url

It is the same fix for graph command, as was recently for log. This makes the
specified revision be always on top of the graph view.
Before the patch, for example with repo having revisions 0, 1, 2, 3 and revision
in url being '2', all revisions were shown and the specified one wasn't
the first.