Mercurial 3.2 (2014-11-01)#
Mercurial 3.2.4 (2015-01-01)#
This is a regularly-scheduled bugfix release.
demandimport: blacklist distutils.msvc9compiler (issue4475)
largefiles: backout f72d73937853 - linear updates handle m -> a differently
largefiles: fix a spurious missing file warning with 'remove -A' (issue4053)
largefiles: fix a spurious missing file warning with forget (issue4053)
largefiles: introduce the 'composelargefilematcher()' method
largefiles: mark lfile as added in lfdirstate when the standin is added
sshpeer: more thorough shell quoting
Mercurial 3.2.3 (2014-12-18)#
This is an unscheduled bugfix release containing two security fixes for issues we uncovered in both Git and Mercurial for CVE-2014-9390. Users on Mac and Windows are encouraged to upgrade.
context: stop setting None for modified or added nodes
darwin: omit ignorable codepoints when normcase()ing a file path
encoding: add hfsignoreclean to clean out HFS-ignored characters
largefiles: don't actually remove largefiles in an addremove dry run
log: fix log -f slow path to actually follow history
log: fix log revset instability
manifest: disallow setting the node id of an entry to None
pathauditor: check for Windows shortname aliases
pathauditor: check for codepoints ignored on OS X
rebase: ignore negative state when updating back to original wc parent
update: add tests for untracked local file
update: don't overwrite untracked ignored files on update
Mercurial 3.2.2 (2014-12-01)#
This is a regularly-scheduled bugfix release.
changegroup: fix file linkrevs during reorders (issue4462)
hgweb: send proper HTTP response after uncaught exception
largefiles: avoid exec-bit examination on the platforms unaware of it
largefiles: don't show largefile/normal prompts if one side is unchanged
manifest: fix a bug where working copy file 'add' mark was buggy
merge: be precise about what merged into what in short desc
merge: before cd/dc prompt, check that changed side really changed
mq: fix update of headers that occur in the "wrong" order
mq: introduce insertplainheader - same naive implementation as before
mq: when adding headers in plain mode, separate them from message (issue4453)
mq: when setting message in plain mode, separate it from header (issue4453)
push: stop independent usage of bundle2 in syncphase (issue4454)
pushkey: gracefully handle prepushkey hook failure (issue4455)
rename: properly report removed and added file as modified (issue4458)
revert: look for copy information for all local modifications
revset: fix first and last for generatorset (issue4465)
templates: fix broken "less" & "more" links in paper style (issue4460)
Mercurial 3.2.1 (2014-11-11)#
This is an unscheduled release to address regressions in discovery, rebase, and bookmarks.
bookmarks: fix formatting of exchange message (issue4439)
changegroup: don't store unused value on fnodes (issue4443)
convert: use git diff-tree -Cn% instead of --find-copies=n% for older git
discovery: indices between sample and yesno must match (issue4438)
discovery: limit 'all local heads known remotely' to real 'all' (issue4438)
extdiff: quote user-supplied options passed to shell
hgweb: fix a crash when using web.archivesubrepos
mail: actually use the verifycert config value
rebase: fix rebase with no common ancestors (issue4446)
serve: correct meta variable of --daemon-pipefds option
templater: don't overwrite the keyword mapping in runsymbol() (issue4362)
Mercurial 3.2 (2014-11-01)#
This is a quarterly feature release.
Commands#
amend: abort early if no username is configured with evolve enabled (issue4211)
amend: fix amending rename commit with diverged topologies (issue4405)
annotate: rewrite long short-circuit statement by if-elif-else
bookmark: make the search for divergent names more robust
bookmarks: allow pushkey if new equals current
bookmarks: explicitly track identical bookmarks
bookmarks: fix divergent bookmark path normalization
bookmarks: inform transaction-related hooks that some bookmarks were moved
branches: include active, closed and current flags in template output
clone: copy '.hg/bookmarks' during copy clone
clone: explicitly push bookmarks when cloning from local to remote
clone: fix copying bookmarks in uncompressed clones (issue4430)
clone: for local clones, copy branchcache from the right location (issue4286)
clone: for local clones, copy over filtered branchcaches as well (issue4286)
clone: properly mark branches closed with --uncompressed (issue4428)
clone: provide sample username = config entry in .hg/hgrc (issue4359)
commit: correctly check commit mutability during commit --amend
commit: add customizable committemplate config
config: give more fine-tuned sample hgrcs to this command
config: highlight parse error caused by leading spaces (issue3214)
files: add new command unifying locate and manifest functionality
graft: allow regrafting ancestors with --force (issue3220)
graft: make --force apply across continues (issue3220)
help: document that default hgweb style is called paper (issue4373)
help: update help for hgweb template and style (issue4373)
import: let --exact 'work' with --no-commit (issue4376)
locate: deprecate in favor of files
log: allow patterns with -f
log: do not hide the public phase in debug mode (BC)
log: rewrite default template to use labels (issue2866)
log: show phase in hg log -v with the phase template
merge-tools: add a 'premerge=keep-merge3' config option
merge: use bid merge by default (BC)
merge: support three labels when using conflict markers
parents: deprecate the parents commands
pull: perform bookmark updates in the transaction
push: update bookmarks within the remote lock
push: wrap local phase movement in a transaction
pushbookmark: do not attempt to update bookmarks if the push failed (BC)
status: make 'hg status --rev' faster when there are deleted files
tag: properly abort if an unknown or ignored .hgtags is present
Core#
alias: expand "$@" as list of parameters quoted individually (BC) (issue4200)
dirstate: add exception when calling setparent without begin/end (API)
dirstate: wrap setparent calls with begin/endparentchange (issue4353)
hook: protect commit hooks against stripping of temporary commit (issue4422)
i18n: detect UI language without POSIX-style locale variable on Windows (BC)
localrepo: remove the 'pull' method (API)
localrepo: remove the 'push' method (API)
posix: implement readpipe using non-blocking I/O (issue4336)
revset: fix O(2^n) perf regression in addset
revset: have rev() drop out-of-range or filtered rev explicitly (issue4396)
setdiscovery: limit the size of all sample (issue4411)
ssl: only support TLS (BC)
ssl: only use the dummy cert hack if using an Apple Python (issue4410)
templater: fix ifcontains when list is a string (issue4399)
Extensions#
convert: add support for deterministic progress bar on scanning phase
convert: add support to detect git renames and copies
eol: fix crash when handling removed files
histedit: add "roll" command to fold commit data and drop message (issue4256)
largefiles: add examination of exec bit in "hg status --rev REV" case
largefiles: keep largefiles from colliding with normal one during linear merge
largefiles: restore R status of removed largefiles correctly at "hg rollback"
largefiles: restore standins from non branch-tip parent at rollback correctly
largefiles: unlink standins not known to the restored dirstate at rollback
mq: write '# Parent ' lines with two spaces like export does (BC)
mq: write headers for new HG patches in the same order as export (BC)
shelve: don't delete "." when rebase is a no-op (issue4398)
Hgweb#
hgweb: disable SSLv3 serving (BC)
hgweb: refresh repository using URL not path (issue4323)