Mercurial 3.0 (2014-05-01)#
Mercurial 3.0.2 (2014-07-01)#
This is a regularly-scheduled bugfix release.
cmdutil: add copy-filtering support to duplicatecopies
hgweb: avoid initialization race (issue4280)
keyword: suppress keyword expansion for internal merge
match: make glob '**/' match the empty string
parsers.c: fix a couple of memory leaks
push: restore contents of HG_URL for hooks (issue4268)
rebase: fix bug that caused transitive copy records to disappear (issue4192)
repoview: do not crash when localtags refers to non existing revisions
Mercurial 3.0.1 (2014-06-01)#
This is a regularly-scheduled bugfix release.
alias: change return code of bad definition to 255
alias: fix loss of non-zero return code in command aliases
alias: handle shlex error in command aliases
bookmarks: properly align multi-byte characters
bugzilla: support Bugzilla 4.4.3+ API login token authentication (issue4257)
bundle2: fix bundle2 pulling all revs on empty pulls
bundle2: fix configuration name mismatch
changelog: ensure changelog._delaybuf is initialized
color: don't fail on error messages when no curses (issue4237)
exchange: propagate arguments to the _getbundleextrapart function
localrepo: prevent leak of transaction object (issue4258)
proxy: remove unneeded _set_hostport for compatibility with Python 2.7.7rc1
setup.py, make: avoid problems with outdated, existing
hgext/__index__.py*subrepo: avoid sanitizing ".hg/hgrc" in meta data area for non-hg subrepos
subrepo: invoke "_sanitize()" also after "git merge --ff"
subrepo: make "_sanitize()" take absolute path to the root of subrepo
subrepo: make "_sanitize()" work
subrepo: normalize path in the specific way for problematic encodings
templates: fix ifcontains against sets with length > 1 (issue4259)
win32: backout 1a9ebc83a74c
Mercurial 3.0 (2014-05-01)#
This is a regularly-scheduled quarterly feature release. Unlike other 3.0 software releases, this is simply 2.9 + .1, so it should be the usual pain-free upgrade.
Core features#
cat: support explicit paths in subrepos
cmdserver: allow starting server without repository
clone: abort if default destination has no meaningful name (BC)
clone: put streaming clones in a transaction
color: add debugcolor command (issue4094)
color: allow color keywords to be used directly in template
commands: add -T as alternative to --template
commands: hg debuginstall checks missing templates (issue4151)
commit: --edit/-e allows editing commit message supplied through other means
config: add initial implementation of --edit (with --global and --local flags)
debuginstall: add Python information to debuginstall output (issue4128)
demandimport: support HGDEMANDIMPORT=disable to disable demandimport
hgweb: add metadata to atom and rss feed entries
http: reuse authentication info after the first failed request (issue3567)
log: change implementation to use graphlog code
push: provide a hint when no paths are configured (issue3692)
require: provide a link to a wiki page as well as suggesting upgrade
revset: new implementation with incremental evaluation
revset: try to handle hyphenated symbols if lookup callback is available
revset: add 'only()' revset
sshpeer: only print out 'running ssh' messages in debug mode (BC)
template: add ifcontains template function
template: add pad function for padding output
template: add revset() template function
template: add shortest(node) template function
template: add flexible -T option
win32: improve the performance of win32.unlink() over CIFS
Extension features#
blackbox: log events related to branch cache
convert: avoid updating tags when there is nothing new
convert: compare tags from all heads instead of just one
convert: replace old sha1s in the description
extensions: mark win32text deprecated
extensions: remove interhg
extensions: remove the inotify extension (BC)
histedit: select the lowest rev when looking for a root in a revset (BC)
journal: report parsing errors on recover/rollback (issue4172)
qimport: allow importing URLs
Fixes#
backout: don't limit ancestry check to a single ancestor
backout: improve confusing 'cannot backout change on a different branch' abort
caches: invalidate store caches when lock is taken
cmdserver: forcibly use L channel to read password input (issue3161)
cmdserver: reload mq on each runcommand request to avoid corruption
diff: use second filename for --stat reporting on git patches (issue4221)
dirstate: report bad subdirectories as match.bad, not just a warning (BC)
extensions: use normpath to allow trailing '\' on Windows (issue4187)
fncache: clean up fncache during strips
largefiles: changed overridelog to work with graphlog
largefiles: don't prompt when one side of merge was changed but didn't change
largefiles: remove directories emptied after their files are moved (issue3515)
parsers: fail fast if Python has wrong minor version (issue4110)
phases: apply publishing enforcement for "serve" source
revlog: deal with chunk ranges over 2G on Windows (issue4215)
setup.py: fix C extension compilation issue with OS X 10.9 and Xcode 5.1
subrepo: check return code for git push (issue4223)
Experimental features#
bundle2: experimental support for bundle2
merge: experimental implementation of bid merge
merge: tell when .ancestor picks one of multiple common ancestors heads