Download Mercurial 5.1.2
Mercurial is a program for software and project developers, among others, with which management and version control over data and source code can be performed. The program can be seen as a direct competitor to the well-known svn or Subversion. For example, Mercurial is used by Mozilla, facebook and OpenJDK. Version 5.1.2 was released earlier this month with the following list of changes:
Mercurial 5.1.2
Regularly scheduled bug fix release.
extensions
- phabricator: don’t abort if property writing fails during amending
tests
- test: allow different result for zstd compression (issue6188)
Mercurial 5.1.1
Regularly scheduled bug fix release.
commands
- bookmarks: actual fix for race condition deleting bookmark
core
- exchange: abort on pushing bookmarks pointing to secret changesets (issue6159)
- python-zstandard: apply big-endian fix (issue6188)
- fcache: make debugrebuildfncache not fail on broken fcache
tests
- various test runner fixes
- fixed use of tr –delete for tr(1) portability
Mercurial 5.1
Regularly scheduled feature release. An overview of new features available. This is a regularly-scheduled quarterly feature release.
commands
- bookmark: also make bookmark cache depends of the changelog
- bookmarks: actual fix for race condition deleting bookmark
- bookmarks: actually trigger the race deleting bookmark in the test
- bookmarks: backout the attempt to fix the delete race
- bookmarks: keep bookmarks in .hg/store if new config set
- bookmarks: use context manager when writing files
- bookmarks: use correct store for “ambiguity check”
- branch: abort if closing branch from a non-branchhead cset
- branchcache: store the maximum tip in a variable inside for loop
- commands: drop support for legacy ^cmd registration (API)
- commit: add –force-close-branch flag to close a non-head changeset
- commit: add a check if it is trying to close an already closed branch head
- commit: add ability to print file status after each successful invocation
- commit: allow –interactive to work again when naming a directory (issue6131)
- commit: improve the files field of changelog for merges
- commit: make the error message more specific while aborting branch closing
- commit: respect –no-edit in combination with –amend
- graft: moved abortgraft and readgraft to cmdutil
- help: check if a subtopic exists and raise an error if it doesn’t (issue6145)
- log: add config for making ‘hg log -G’ always topo-sorted
- log: flag topo-sorted set as such
- log: pass getcopies() function instead of getrenamed() to displayer (API)
- merge: disallow merge abort in case of an unfinished operation (issue6160)
- patch: use a short, fixed-size message for last line of prompt (issue6158)
- push: added clear warning message when pushing closed branches(issue6080)
- tags: avoid double-reversing a list
- verify: also check full manifest validity during verify runs
- verify: introduce a notion of “level”
- verify: introduce an experimental –full flag
core
- docs: man page and HTML help now order commands categorically, instead of alphabetically
- minirst: support subsubsubsubsections (header level 5) with marker ””
- revlog: add the option to track the expected compression upper bound
- revlog: speed up isancestor
- templatekw: make {file_*} compare to both merge parents (issue4292)
- templater: drop support for old style keywords (API)
- util: make util.dirs() and util.finddirs() include root directory (API)
extensions
- largefiles: make last line of prompts <40 english chars (issue6158)
- mq: fix for merge detection methods
- rebase: fix in-memory rebasing or copy of empty file
- rebase: tweak description of inmemory working even w/ dirty working dir
- shelve: modify help text on –interactive
- unshelve: add interactive mode
- unshelve: add space to help
- unshelve: changed Corruptedstate error msg from ui.warn to error.Abort
- unshelve: mark unshelve interactive as experimental
unsorted
- abort: added support for graft
- abort: added support for histedit
- abort: added support for merge
- abort: added support for rebase
- abort: added support for unshelve
- automation: initial support for running Linux tests
- bisect: do not crash with rewritten commits
- blackbox: disable extremely verbose logging (issue6110)
- catapipe: add support for COUNTER events
- changelog: define changelogrevision.p[12]copies for null revision
- changelog: fix handling of empty copy entries in changeset
- changelog: optionally store added and removed files in changeset extras
- continue: added support for rebase
- continue: added support for unshelve
- copies: filter invalid copies only at end of pathcopies() (issue6163)
- copies: follow copies across merge base without source file (issue6163)
- debugrevlog: fix average size computation for empty data (issue6167)
- drawdag: don’t crash when writing copy info to changesets
- extdata: avoid crashing inside subprocess when we get a revset parse error
- extensions: drop support for extsetup() without ‘ui’ argument (API)
- filemerge: make last line of prompts <40 english chars (issue6158)
- graphmod: remove support for graph lines mixing parent/grandparent styles (BC)
- manifest: avoid corruption by dropping removed files with pure (issue5801)
- match: remove unused match.__iter__ implementation (API)
- match: use ” instead of ‘.’ for root directory (API)
- procutil: allow callers of runbgcommand to assume the process starts
- remotefilelog: check if RFL is enabled in getrenamedfn() override
- remotefilelog: handle copies in changesets in getrenamedfn() override
- remotefilelog: log when we’re about to fetch files
- remotefilelog: tell runbgcommand to not block on child process startup
- root: add support for -Tformatter option
- sslutil: add support for SSLKEYLOGFILE to wrapsocket
- sslutil: fsencode path returned by certifi (issue6132)
- statecheck: added support for STATES
- subrepos: make last line of prompts <40 english chars (issue6158)
- tests: make the grep pattern in remotefilelog-gcrepack portable (issue6122)
- tests: work around libressl being different about error strings (issue6122)
- tracing: add support for emitting counters
- worker: support parallelization of functions with return values
- zsh: enable completion support for chg as well
Behavior Changes
- graphmod: remove support for graph lines mixing parent/grandparent styles (BC)
Internal API Changes
- commands: drop support for legacy ^cmd registration (API)
- extensions: drop support for extsetup() without ‘ui’ argument (API)
- log: pass getcopies() function instead of getrenamed() to displayer (API)
- match: remove unused match.__iter__ implementation (API)
- match: use ” instead of ‘.’ for root directory (API)
- templater: drop support for old style keywords (API)
- util: make util.dirs() and util.finddirs() include root directory (API)
Version number | 5.1.2 |
Release status | Final |
Operating systems | Windows 7, Linux, BSD, macOS, Solaris, UNIX, Windows Server 2012, Windows 8, Windows 10, Windows Server 2016 |
Website | Mercurial |
Download | |
License type | Conditions (GNU/BSD/etc.) |