Mercurial 3.8 (2016-04-30)#

Mercurial 3.8.4 (2016-07-01)#

This is a regularly-scheduled bugfix release.

  • bdiff: extend matches across popular lines

  • bdiff: remove effectively dead code

  • bundle2: don't assume ordering of heads checked after push

  • help: document that [subpaths] may rewrite relative paths

  • largefiles: fix support for local largefiles while using share extension

  • sslutil: synchronize hostname matching logic with CPython

Mercurial 3.8.3 (2016-06-01)#

This is a regularly-scheduled bugfix release.

  • bookmarks: allow pushing active bookmark on new remote head (issue5236)

  • localrepo: prevent executable-bit only changes from being lost on amend

  • strip: invalidate phase cache after stripping changeset (issue5235)

Mercurial 3.8.2 (2016-05-16)#

This is an unscheduled bugfix release. 3.8.1 contained a noisy deprecation warning that was only intended for Mercurial developers, sorry.

  • bookmarks: properly invalidate volatile sets when writing bookmarks

  • builddeb: add distroseries to tagged versions

  • bundle2: properly request phases during getbundle

  • debian: add wish to suggests

  • debian: forgot to make debian/rules executable in 6b95a623ec90

  • deprecation: gate deprecation warning behind devel configuration

  • help: fix the display for hg help internals.revlogs (issue5227)

  • help: search section of help topic by translated section name correctly

  • hg-ssh: copy doc string to man page

  • patch: show lower-ed translated message correctly

  • progress: stop excessive clearing (issue4801)

Mercurial 3.8 release#

Features#

  • hg update and other commands that can perform update (such as hg pull -u) now warn about other topological heads

  • [[CHg|cHg]] has been added

  • hg update now updates to the tip-most changeset on the same topological branch. Before, it would update to the tip-most changeset, possibly on a different topological head

  • Hints on how to continue interrupted commands are now printed (e.g. hg resolve -m will now tell you to run hg rebase --continue or hg histedit --continue)

  • The experimental automv extension has been added. This extension attempts to detect file copes and renames automatically.

  • The 3rd party hgwatchman extension has been imported as the [[FsMonitorExtension|fsmonitor extension]]. This extension uses filesystem watching to make commands like hg status significantly faster on large repositories.

  • hg rebase now chooses its default destination the same way hg merge does

  • hg pull -u now activates a bookmark if the has a bookmark

  • hg pull -u now deactivates a bookmark if the destination doesn't match the existing bookmark

  • Improved edge styles in graph log. Cset:d7af9b4ae7dd

  • User template keywords and functions can be defined in [templatealias] section.

  • It's now possible to push the active bookmark using hg push -B ..

Improvements#

This release includes many improvements, including (but not limited to):

  • performance of copy detection during rebases has been improved, potentially leading to faster rebase execution

  • performance of hg log -f <file> has been improved

  • syntax errors in loaded extensions are now handled better

  • hg update on Windows should now be up to 4x faster

  • JSON encoding should now be proper UTF-8 for all inputs

  • Performance of the - revset operator has been improved

  • The blackbox extension now logs more data

  • "hgext" is now a Python namespace package

  • revsets accessing changelog data (commit messages, authors, dates) are now 10-15% faster

  • hg.exe built in MinGW will now link against the proper Python DLL

A full overview is available on WhatsNew.