Differences between revisions 1 and 100 (spanning 99 versions)
Revision 1 as of 2005-09-16 18:27:47
Size: 721
Editor: mpm
Comment:
Revision 100 as of 2011-03-02 08:13:03
Size: 23646
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Changes from 0.6c to 0.7:
{{{
core
 improved merge logic
 improved copy/rename support (still experimental)
 automatic binary file handling
 generic file filtering support
 locate branches by tag
 various performance improvements
command line
 new bundle/unbundle commands for exchanging native updates
 more natural support for remove, copy, and rename
 faster, more powerful log command
 new grep command for searching entire history
 support for plug-in extensions
 improved exception handling and debugging facilities
hgweb
 optional downloading of tarballs and zip files
Windows support
 hardlinking support
 newline conversion through file filtering
contrib
 Emacs support
 updated hgk
}}}
#pragma section-numbers 2
## notes that are older than 3 major releases should be moved to WhatsNew/Archive
= Release Notes =
Features and bugfixes in our latest releases.

{i} Be sure to read the [[UpgradeNotes|upgrade notes]] when [[UpgradingMercurial|upgrading]].

<<TableOfContents(2)>>

(See [[WhatsNew/Archive|archive]] for older versions.)

== 1.8 (2011-03-01) ==

=== Core ===

 * Bookmarks are now a core feature (see UpgradeNotes)
 * New `listfile:` pattern-matching (Topic:patterns)
 * Revset syntax supported by most commands
 * Performance improvements for reading large repository indexes
 * Certificate validation for HTTPS proxies

=== Subrepos ===

 * New support for git subrepos
 * Various improvements to merge, update, and commit logic

=== Windows ===

 * Numerous robustness improvements for quirks in Windows file handling
 * Now uses the native ctypes module rather than !PyWin32

=== Extensions ===

 * eol: filter aliases for compatibility with win32text
 * mq: `--exact` option for qpush
 * mq: various robustness improvements
 * progress: remaining time estimates

== 1.7.5 (2011-02-01) ==
This is a quick bugfix release to include some fixes accidentally dropped from 1.7.4.

 * subrepo: fix update -C with svn subrepos when cwd != repo.root
 * subrepo: make update -C clean the working directory for svn subrepos
 * url: add --insecure option to bypass verification of ssl certificates
 * win32mbcs: Fix typo in documentation

== 1.7.4 (2011-02-01) ==
This is a scheduled bugfix release that smooths out some of the rough edged introduced with 1.7.3's HTTPS certificate verification.

 * bookmarks: always write undo file
 * bookmarks: respect rollbacks dryrun parameter
 * hgrc.5: mention that web.cacerts are run through util.expandpath
 * opener: force copy on 'a'ppend if nlinks() returns 0 (Bts:issue1922)
 * subrepo: compare svn subrepo state to last committed revision
 * subrepo: do not report known files inside repositories as unknown
 * url: 'ssh known host'-like checking of fingerprints of HTTPS certificates (see [[CACertificates#Host_certificate_fingerprints|CACertificates]])
 * url: check subjectAltName when verifying ssl certificate
 * url: expand path for web.cacerts
 * url: fix !UnicodeDecodeError on certificate verification error
 * win32: add cacert.pem file to Inno Setup installer
 * win32: win32console.!GetStdHandle() can return None

== 1.7.3 (2011-01-01) ==
This is a scheduled bugfix release.

 * archive: don't set gzip filename header when there's no filename
 * checknlink: use two testfiles (Bts:issue2543)
 * churn: ignore trailing and leading spaces (Bts:issue2546)
 * date: fix matching of underspecified date ranges
 * eol: improve help on whether EOLs are changed in working copy or repository
 * fncachestore: copy dh directory before the manifest
 * hgweb: abort if config file isn't found
 * hook: assume relative path to hook is given from repo root
 * hook: fix import path handling for repo=None
 * https: use web.cacerts configuration from local repo to validate remote repo
 * https: warn when server certificate isn't verified (see [[CACertificates]])
 * keyword: copy: when copied source is a symlink, follow it
 * patch: write .rej files without rewriting EOLs
 * strip: typo bugfix related to '--nobackup -> --no-backup' rename (Bts:issue2377)
 * tag: abort if not at a branch head (Bts:issue2552)
 * tag: don't check .hgtags status if --local passed
 * tag: fix uncommitted merge check and error message (Bts:issue2542)
 * util: fix ellipsis() not to break multi-byte sequence (Bts:issue2564)
 * util: work around behavior change in Python 2.7.1
 * windows.rename: eliminate temp name race (Bts:issue2571)
 * wix: add an ssl certificate file to the WiX installers (see [[CACertificates]])

== 1.7.2 (2010-12-01) ==
This is a scheduled bugfix release.

 * checknlink: return False if .hgtmp file preexists (Bts:issue2517)
 * commit: search both parents for missing copy revision (Bts:issue2484)
 * context: walk both parents for workingctx.ancestors()
 * convert/svn: fix changed files list upon directory replacements
 * hgwebdir: fix incorrect index generation for invalid paths (Bts:issue2023)
 * keyword: copy: when copied source is a symlink, follow it
 * mq: ignore subrepos (Bts:issue2499)
 * rebase: support --detach when null is common ancestor
 * subrepo: fix removing read-only svn files on Windows
 * subrepo: handle missing subrepo spec file as removed
 * subrepo: prune empty directories when removing svn subrepo
 * subrepo: use subprocess directly to avoid python 2.6 bug
 * util: do not crash on revisions with negative timestamp (Bts:issue2513)
 * util: do not recurse in makedirs if name is {{{''}}} (Bts:issue2528)
 * win32mbcs: use extsetup() to wrap functions only once
 * wix: add support for x64 native MSI packages

== 1.7.1 (2010-11-15) ==
This is an unscheduled bugfix release. 1.7 clients broke support for pushing bookmarks with HTTP.

 * alias: fall back to normal error handling for ambigious commands (Bts:issue2475)
 * bundlerepository: get rid of temporary bundle files (Bts:issue2478)
 * bundlerepository: test self.tempfile field, not tempfile module
 * eol: exclude .hgtags file from eol translation (Bts:issue2493)
 * log: fix log -rREV FILE when REV isnt the last filerev (Bts:issue2492)
 * opener: check hardlink count reporting (Bts:issue1866)
 * pushkey: force HTTP POST on push and add tests (Bts:issue2489)
 * revlog: fix descendants() if nullrev is in revs
 * subrepo: test & fix svn subrepo removal
 * win32: remove try-catch block of GetModuleFileNameEx (Bts:issue2480)

== 1.7 (2010-11-01) ==
=== Core ===
 * filelog: improve cmp performances (Bts:issue2273)
 * patch: don't strip '#' lines from patch descriptions (Bts:issue2417)
 * patch: when native patching fails (ui.patch is not set), don't retry with an external tool
 * setup/hg: always load Mercurial from where it was installed.
 * setup: user-friendly error message if Python headers are missing
 * store: new unsupported and experimental parentdelta format (see UpgradeNotes)
 * store: encode first period or space in filenames (Bts:issue1713)
 * url: expand environment variables in [auth] settings (Bts:issue2328)
 * url: check validity (notBefore/notAfter) using OpenSSL (Bts:issue2407)

=== Commands ===
 * addremove: use similarity 100 by default
 * alias: add support for shell command aliases starting with '!' (see [alias] in hgrc(5))
 * backout: add --tool argument for specifying merge tool
 * backout: backout linearly by default instead of branching and merging (use --merge to get the former behaviour)
 * dispatch: properly handle relative path aliases used with -R (Bts:issue2376)
 * init: expand destination url as a configured paths
 * log: do not --follow file that is deleted and recreated later (Bts:issue732)
 * merge: don't detect copies as "divergent renames", make diagnostic message more helpful
 * merge: add --tool argument to merge and resolve
 * merge: handle no file parent in backwards merge (Bts:issue2364)
 * tags: do not fail if tags.cache is corrupted (Bts:issue2444)
 * templater: add "hex" filter and "children" keywords (see hg help templating)

=== Subrepos ===
 * support remapping of subrepository source paths (see [subpaths] in hgrc(5))
 * make add, diff, incoming, outgoing and status commands recurse into subrepos with --subrepos/-S
 * subrepo: add support for 'hg archive'
 * subrepo: fix status check on SVN subrepos (Bts:issue2445)

=== Revsets ===
 * add id() and rev() to allow explicit references to changes by hash or rev (see hg help revsets)
 * add min() function to complement max()
 * add present() function to avoid lookup errors on possibly missing changesets
 * rename tagged() to tag() and allow it to take an optional tag name
 * strip: add revsets support
 * add revsets support to bisect and update (Bts:issue1993)
 * bookmarks: add a bookmark([name]) revset for referencing bookmarks
 * transplant: add a transplanted(set) revset to get transplanted revisions

=== hgweb ===
 * add a help view for accessing the built-in documentation (see help link in hg serve)
 * let HTTPS serve use more compatible but less secure encryption
 * support very simple caching model (Bts:issue1845)

=== Extensions ===
 * color: better support for branches and mq guards
 * convert: handle closed branch heads in hg-hg conversion (Bts:issue2185)
 * convert: support darcs changelogs with bytes 0x7F-0xFF (Bts:issue2411)
 * convert: deprecate `--authors` in preference for `--authormap`
 * graphlog: support header and footer templates when using styles (Bts:issue2395)
 * keyword: do not expand at all during diff
 * keyword: support copy and rename
 * mq: extend support for the `--mq` argument to extension commands
 * mq: save qrefresh message for easy recovery in case it fails (Bts:issue2062)
 * mq: support `hg qimport --existing --name renametothis thatexistingpatch`, fix `--force` case on Windows
 * mq/qqueue: support renaming of active queue
 * mq/qqueue: add `--purge` option to delete a queue and its patches
 * pager: add global `--pager=<auto/boolean>` option
 * patchbomb: add `--confirm` option to show series details and ask for confirmation
 * patchbomb: let diffstat prompt only once with complete summary
 * progress: support rebase and patchbomb
 * rebase: re-add patches to mq repo after rebase
 * strip: add `--keep` flag to avoid modifying working directory during strip
 * strip: rename `--nobackup` option to `--no-backup` (Bts:issue2377)
 * strip: support stripping multiple revisions

=== contrib ===
 * mergetools.hgrc: add vimdiff
 * zsh completion: support bookmarks and patchbomb extensions
 * zsh completion: add qpush --move option

=== Windows ===
 * 64-bit Inno Setup installer
 * handle spaces in path to Python (Bts:issue2074)

== 1.6.4 (2010-10-01) ==
This is a monthly bugfix release.

 * archive: set date to 1980 for very old zip files
 * bookmarks: fix _bookmarks/lookup() reentrancy issue (Bts:issue2016)
 * color: add win32 support for non-black background
 * context: fix filectx.undelete() (Bts:issue2388)
 * convert/darcs: handle non-ASCII metadata in darcs changelog (Bts:issue2354)
 * convert/svn: fix broken symlink renames in svn sink
 * core: use lexists() instead of exists() where appropriate
 * hgweb: Fix memory leak when using hg commands over http repositories
 * hgweb: correct Content-Type header values for archive downloads
 * log: include unmodified-in-merge files in log diff/stat (Bts:issue2383)
 * mq: always require --force when pushing patches (Bts:issue2363)
 * patch: do not overwrite broken untracked symlinks
 * patch: fix rename text to binary file (Bts:issue2400)
 * patch: fix target when patching broken symlinks (Bts:issue2368)
 * patch: upgrade to git patch when removing binary file
 * rename: do not overwrite existing broken symlinks
 * url: verify correctness of https server certificates (Bts:issue2407)
 * util: avoid using hashlib on Python < 2.5 (Bts:issue2278)
 * verify: fix "missing revlog!" errors for revlog format v0 and add test
 * win32: add Emacs scripts to Inno Setup installer
 * win32: add hgweb scripts to Inno Setup installer

== 1.6.3 (2010-08-26) ==
This is a monthly bugfix release. It includes several significant fixes, including a fix for a long-standing hardlink corruption issue on Windows (Bts:issue761).

 * alias: make shadowing behavior more consistent (Bts:issue2054)
 * bisect: better message for unrelated starting revisions
 * bookmarks: Check if the bookmark to delete exists on the remote
 * bookmarks: guard against listing bookmarks on unsupported repos
 * chunkbuffer: use += rather than cStringIO to reduce memory footprint
 * convert: Using --dest-type svn crashed, if the source repo used tags.
 * convert: properly set encoding for gnuarch converter
 * convert: use encoding.encoding instead of locale.getpreferredencoding()
 * encoding: improve handling of buggy getpreferredencoding() on Mac OS X
 * graphlog: mark --branch as incompatible with --graph
 * http basic auth: reset redirect counter on new requests (Bts:issue2255)
 * httprepo: decompress stream incrementally to reduce memory usage
 * log: fix the bug 'hg log --stat -p == hg log --stat'
 * mercurial.spec: gettext is a build requirement for getting proper localization
 * merge: drop reference to file contents after write
 * merge: move reverse-merge logic out of filemerge (Bts:issue2342)
 * merge: fix detection of conflict markers with checkconflicts enabled
 * mq: don't inherit default and default-push paths with --mq (Bts:issue2333)
 * resolve: updated help documentation for improved clarity
 * revlog: drop cache after use to save memory footprint
 * templatefilters: unnest uescape()
 * templates: add filenolink to raw style (Bts:issue2332)
 * url: expand vars in all [auth] settings (Bts:issue2328)
 * url: limit expansion to safe auth keys (Bts:Issue2328)
 * util: avoid using hashlib on Python < 2.5 (Bts:issue2278)
 * verify: initialize rp variable in case we hit out of memory
 * verify: reduce memory footprint when unpacking files
 * verify: report exceptions that don't have a str() method
 * win32: correctly break hardlinks on network drives (Bts:issue761)

== 1.6.2 (2010-08-02) ==
This release addresses a regression in the color extension.

 * color: pass write/write_err to win32print correctly (Bts:issue2312)
 * convert/progress: use plural and avoid retrieving
 * color: call correct superclass method in write_err

== 1.6.1 (2010-08-01) ==
This is a scheduled monthly minor bugfix release.

 * alias: ensure checksignature() is applied directly to the command (Bts:issue2286)
 * bash/zsh completion: use HGPLAIN when invoking hg (Bts:issue2297)
 * bookmarks: don't allow name to contain whitespaces only
 * bookmarks: ensure current bookmark is updated when specified with -r .
 * bundle: lookup revisions after addbranchrevs
 * color/progress: subclass ui instead of using wrapfunction (Bts:issue2096)
 * commit: only warn when reopening the workdir's branch
 * dispatch: give better error message when cwd doesn't exist (Bts:issue2293)
 * doc: make sure we use our own code for generating man pages
 * filelog: cmp: don't read data if hashes are identical (Bts:issue2273)
 * filelog: test behaviour for data starting with "\1\n"
 * hg.clone: fix branch value when passing a repo object (Bts:issue2267)
 * hgweb.wsgi: add a URL to the corresponding wiki documentation
 * hgwebdir: allow pure relative globs in paths
 * hgwebdir: use template paths configured in the hgrc (Bts:issue2281)
 * init: create target directory recursively
 * inotify: check all components of filenames against hgignore (Bts:issue884)
 * keyword: move collecting of [keyword] patterns to reposetup (Bts:issue2303)
 * log: fix missing diff output for hg log -p in subdirectory
 * log: follow filenames through renames (Bts:issue647)
 * mail: ensure that Python2.4 to 2.7 use the same header format
 * mercurial.spec: rename docutils to python-docutils in BuildRequires
 * mq: clarify the fact that qimport is trying to read a file
 * mq: cleanup status if applied mq is stripped (Bts:issue1881)
 * mq: fixed ENOENT when qrename to new/directory.patch
 * mq: reset self.added after the mq transaction instead of inside qimport
 * qpush --move: move the right patch even with comment lines
 * rebase: re-add patches to mq repo after rebase
 * revert: rename original to .orig instead of copying (Bts:issue2282)
 * revset: fix ancestor subset handling (Bts:issue2298)
 * runrst: try to be more helpful if docutils is not installed
 * tag: do not allow tag names to consist solely of whitespace (Bts:issue2307)
 * transplant: crash if repo.commit() finds nothing to commit

== 1.6 (2010-07-01) ==
(This release makes a couple small behavior changes, be sure to read UpgradeNotes!)

=== Core ===
 * addremove: optimize `addremove -s100` by matching files by their SHA1 hashes
 * archive: auto-detect archive type by extension (Bts:issue2058)
 * commit: more friendly handling of new and closed named branches
 * hooks: provide pre- and post- hooks with parsed command line arguments
 * log: add `--branch` for filtering on named branch
 * log: add `--stat` for diffstat output
 * push: add `--new-branch` option to allow initial push of new branches
 * push: break infinite http recursion bug with Python 2.6.5 (Bts:issue2179)
 * rollback: add `-n`/`--dry-run` flag, report what's being rolled back
 * subrepo: various fixes
 * summary: report copies and renames and add subrepo status
 * tag: add `-e`/`--edit` option for modifying the commit message
 * revsets: introduce a powerful query language for specifying revisions, see [[http://www.selenic.com/mercurial/hg.1.html#revsets|the manpage]] or `hg help revsets`

=== Hgweb ===
 * unify and simplify `hgweb.cgi` and `hgwebdir.cgi` scripts
 * fix race in refreshing repo list (Bts:issue2188)
 * simplify `hgweb.cgi`, add help pointer
 * deliver shell hook output to client
 * allow `--port=0` to specify "choose free port number automatically"
 * improved templater performance

=== Help ===
 * add new hgweb, glossary, and revsets topics
 * numerous improvements to help text

=== Extensions ===
 * acl: support for access control base on branches and user-defined or OS-level groups
 * acl: added support for `pretxncommit`, so that one can call the ACL hook at (?)
 * bookmarks: add support for pushing and pulling bookmarks
 * churn: add possibility to include/exclude paths
 * color: add support for Windows consoles
 * color: colorize based on output labels instead of parsing output
 * extdiff: add labels, read diff arguments from `[merge-tools]`
 * keyword: offer svn-like default keywordmaps
 * keyword: support (q)record
 * mq: add a line to hg summary
 * mq: `qpush --move`, reorder patch series and apply only the patch
 * progress: progress support for many more commands
 * rebase: add option to not commit after a collapsing

== 1.5.4 (2010-06-01) ==
This is a scheduled monthly minor bugfix release.

 * dispatch: include Python version in traceback
 * push: update help
 * status: avoid performance regression when no .hgsub is present
 * clone: fix performance issue with hardlinks and Windows shares
 * hgweb: fix race in refreshing repo list (Bts:issue2188)
 * hgrc: clarify that hgrc keys can be overridden and sections can be split
 * eol: [[EolExtension|new extension]] for managing file newlines based on a version controlled configuration file
 * pager: fork and exec pager as parent process with /bin/sh -c
 * rebase: stress that only local changesets should be rebased
 * convert/svn: close gettags() log stream (Bts:issue2196)
 * record: check that we are not committing a merge before patch selection

== 1.5.3 (2010-05-13) ==
This is an unscheduled bugfix release to fix Bts:issue2181 (commit generates traceback on Nonetype). Also included:

 * various improvements to SVN conversion support
 * minor doc improvements

== 1.5.2 (2010-05-01) ==
This is a monthly bugfix release with numerous minor fixes including:

=== Core ===
 * clone: fix URL too long problem with many heads
 * commands: revised documentation of 'default' and 'default-push'
 * copies: properly visit file context ancestors on working file contexts
 * diffstat: use ui.plain() instead of ui.interactive()
 * dirstate: fix in memory dirstate entries for 1-second race
 * dispatch: don't mangle !ImportError abort messages
 * filemerge: use working dir parent as ancestor for backward wdir merge
 * hgrc.5: describe form of config values and mention lists as well
 * hgweb: fix attribute error in error response (Bts:issue2060)
 * log: document the new xml style
 * merge: correctly compute the flag for noexec filesystems
 * patch: don't look for headers in diff lines
 * push: fix bug in warning message selection
 * revlog: fix lazyparser.__iter__() to return all revisions (Bts:issue2137)
 * static-http: allow clone -r (Bts:issue2164)
 * subrepo: fix repo root path handling in svn subrepo
 * subrepo: propagate and catch push failures
 * templates: document missing template variables
 * util: fix default termwidth() under Windows
 * util: use an explicit prefix for checkexec/checklink temporary files

=== Extensions ===
 * convert/cvs: skip bad tags
 * convert/git: check status when reading output stream
 * convert/subversion: fix default URL checker prototype
 * mq: rewrite strip docstrings
 * mq: use util.unlink instead of os.unlink and os.removedirs
 * schemes: fix // breakage with Python 2.6.5 (Bts:issue2111)

== 1.5.1 (2010-04-01) ==
=== Core ===
 * improve warning on adding large files
 * expand ~ in auth filenames and aliases
 * several improvements to patch parsing
 * warn about attempts to use hg branch to switch branches
 * push: fix bug in prepush logic and its tests
 * hgweb: fix broken URLs of RSS/Atom feeds
 * subrepo: several bug fixes

=== Extensions ===
 * acl: added support for '*' (everyone) in user list
 * progress: use stderr instead of stdout
 * schemes: add Kiln On Demand to default schemes

== 1.5 (2010-03-06) ==
(This release makes a number of small behavior changes, be sure to read UpgradeNotes!)

=== Core ===
 * improved behavior for named branches with `heads` command
 * new XML output template for logs
 * `import` extract multiple patches from emails, mboxes, files, and URLs
 * new `patch.eol=auto` option to ignore patch line-endings while preserving target file endings.
 * new `-b/--branch` option for `clone, bundle, incoming, outgoing, pull, and push`
 * new `server.validate` option to validate completeness of pushed changesets
 * subrepos now has basic Subversion support
 * support for SSL server certificates and improved IPv6 support
 * the `HGPLAIN` environment variable makes output more stable for scripts

=== Extensions ===
 * new [[ProgressExtension|progress bar extension]]
 * mq: new `--mq` option to make regular commands operate on queue repository
 * mq: automatically upgrade conventional patches to git format where needed
 * color: add support for bookmarks, `resolve -l`, and `churn --diffstat`
 * convert: two CVS history editing hooks
 * win32mbcs: add configuration to specify path encoding
 * zeroconf: many bug fixes
 * rebase: new `--detach` option for rebase

=== Web Interface ===
 * improve navigation on log and graph pages
 * support for pluggable authorization
 * raw templates for tags/branches pages
 * add wsgi script for Microsoft IIS with isapi-wsgi

=== Windows ===
 * add WiX installer scripts to contrib/wix
 * handle configuration files in <install-dir>\hgrc.d
 * expand environment variables specified in merge tools paths

=== Help and Documentation ===
 * greatly improve error messages and command documentation
 * support extended documentation with --verbose
 * provide help for disabled extensions and commands

== See also ==
 * [[UpgradeNotes|Upgrade notes]] describe possible compatibility issues
 * Advice on [[UpgradingMercurial|upgrading Mercurial]]
 * [[WhatsNew/Archive|Archive]] of older release notes
 * Our [[TimeBasedReleasePlan|time-based release plan]]
 * [[API_Changes|API Changes]] for developers of third-party extensions

----
CategoryProcess CategoryProject

Release Notes

Features and bugfixes in our latest releases.

{i} Be sure to read the upgrade notes when upgrading.

(See archive for older versions.)

1. 1.8 (2011-03-01)

1.1. Core

  • Bookmarks are now a core feature (see UpgradeNotes)

  • New listfile: pattern-matching (patterns)

  • Revset syntax supported by most commands
  • Performance improvements for reading large repository indexes
  • Certificate validation for HTTPS proxies

1.2. Subrepos

  • New support for git subrepos
  • Various improvements to merge, update, and commit logic

1.3. Windows

  • Numerous robustness improvements for quirks in Windows file handling
  • Now uses the native ctypes module rather than PyWin32

1.4. Extensions

  • eol: filter aliases for compatibility with win32text
  • mq: --exact option for qpush

  • mq: various robustness improvements
  • progress: remaining time estimates

2. 1.7.5 (2011-02-01)

This is a quick bugfix release to include some fixes accidentally dropped from 1.7.4.

  • subrepo: fix update -C with svn subrepos when cwd != repo.root
  • subrepo: make update -C clean the working directory for svn subrepos
  • url: add --insecure option to bypass verification of ssl certificates
  • win32mbcs: Fix typo in documentation

3. 1.7.4 (2011-02-01)

This is a scheduled bugfix release that smooths out some of the rough edged introduced with 1.7.3's HTTPS certificate verification.

  • bookmarks: always write undo file
  • bookmarks: respect rollbacks dryrun parameter
  • hgrc.5: mention that web.cacerts are run through util.expandpath
  • opener: force copy on 'a'ppend if nlinks() returns 0 (issue1922)

  • subrepo: compare svn subrepo state to last committed revision
  • subrepo: do not report known files inside repositories as unknown
  • url: 'ssh known host'-like checking of fingerprints of HTTPS certificates (see CACertificates)

  • url: check subjectAltName when verifying ssl certificate
  • url: expand path for web.cacerts
  • url: fix UnicodeDecodeError on certificate verification error

  • win32: add cacert.pem file to Inno Setup installer
  • win32: win32console.GetStdHandle() can return None

4. 1.7.3 (2011-01-01)

This is a scheduled bugfix release.

  • archive: don't set gzip filename header when there's no filename
  • checknlink: use two testfiles (issue2543)

  • churn: ignore trailing and leading spaces (issue2546)

  • date: fix matching of underspecified date ranges
  • eol: improve help on whether EOLs are changed in working copy or repository
  • fncachestore: copy dh directory before the manifest
  • hgweb: abort if config file isn't found
  • hook: assume relative path to hook is given from repo root
  • hook: fix import path handling for repo=None
  • https: use web.cacerts configuration from local repo to validate remote repo
  • https: warn when server certificate isn't verified (see CACertificates)

  • keyword: copy: when copied source is a symlink, follow it
  • patch: write .rej files without rewriting EOLs
  • strip: typo bugfix related to '--nobackup -> --no-backup' rename (issue2377)

  • tag: abort if not at a branch head (issue2552)

  • tag: don't check .hgtags status if --local passed
  • tag: fix uncommitted merge check and error message (issue2542)

  • util: fix ellipsis() not to break multi-byte sequence (issue2564)

  • util: work around behavior change in Python 2.7.1
  • windows.rename: eliminate temp name race (issue2571)

  • wix: add an ssl certificate file to the WiX installers (see CACertificates)

5. 1.7.2 (2010-12-01)

This is a scheduled bugfix release.

  • checknlink: return False if .hgtmp file preexists (issue2517)

  • commit: search both parents for missing copy revision (issue2484)

  • context: walk both parents for workingctx.ancestors()
  • convert/svn: fix changed files list upon directory replacements
  • hgwebdir: fix incorrect index generation for invalid paths (issue2023)

  • keyword: copy: when copied source is a symlink, follow it
  • mq: ignore subrepos (issue2499)

  • rebase: support --detach when null is common ancestor
  • subrepo: fix removing read-only svn files on Windows
  • subrepo: handle missing subrepo spec file as removed
  • subrepo: prune empty directories when removing svn subrepo
  • subrepo: use subprocess directly to avoid python 2.6 bug
  • util: do not crash on revisions with negative timestamp (issue2513)

  • util: do not recurse in makedirs if name is '' (issue2528)

  • win32mbcs: use extsetup() to wrap functions only once
  • wix: add support for x64 native MSI packages

6. 1.7.1 (2010-11-15)

This is an unscheduled bugfix release. 1.7 clients broke support for pushing bookmarks with HTTP.

  • alias: fall back to normal error handling for ambigious commands (issue2475)

  • bundlerepository: get rid of temporary bundle files (issue2478)

  • bundlerepository: test self.tempfile field, not tempfile module
  • eol: exclude .hgtags file from eol translation (issue2493)

  • log: fix log -rREV FILE when REV isnt the last filerev (issue2492)

  • opener: check hardlink count reporting (issue1866)

  • pushkey: force HTTP POST on push and add tests (issue2489)

  • revlog: fix descendants() if nullrev is in revs
  • subrepo: test & fix svn subrepo removal

  • win32: remove try-catch block of GetModuleFileNameEx (issue2480)

7. 1.7 (2010-11-01)

7.1. Core

  • filelog: improve cmp performances (issue2273)

  • patch: don't strip '#' lines from patch descriptions (issue2417)

  • patch: when native patching fails (ui.patch is not set), don't retry with an external tool
  • setup/hg: always load Mercurial from where it was installed.
  • setup: user-friendly error message if Python headers are missing
  • store: new unsupported and experimental parentdelta format (see UpgradeNotes)

  • store: encode first period or space in filenames (issue1713)

  • url: expand environment variables in [auth] settings (issue2328)

  • url: check validity (notBefore/notAfter) using OpenSSL (issue2407)

7.2. Commands

  • addremove: use similarity 100 by default
  • alias: add support for shell command aliases starting with '!' (see [alias] in hgrc(5))
  • backout: add --tool argument for specifying merge tool
  • backout: backout linearly by default instead of branching and merging (use --merge to get the former behaviour)
  • dispatch: properly handle relative path aliases used with -R (issue2376)

  • init: expand destination url as a configured paths
  • log: do not --follow file that is deleted and recreated later (issue732)

  • merge: don't detect copies as "divergent renames", make diagnostic message more helpful
  • merge: add --tool argument to merge and resolve
  • merge: handle no file parent in backwards merge (issue2364)

  • tags: do not fail if tags.cache is corrupted (issue2444)

  • templater: add "hex" filter and "children" keywords (see hg help templating)

7.3. Subrepos

  • support remapping of subrepository source paths (see [subpaths] in hgrc(5))
  • make add, diff, incoming, outgoing and status commands recurse into subrepos with --subrepos/-S
  • subrepo: add support for 'hg archive'
  • subrepo: fix status check on SVN subrepos (issue2445)

7.4. Revsets

  • add id() and rev() to allow explicit references to changes by hash or rev (see hg help revsets)
  • add min() function to complement max()
  • add present() function to avoid lookup errors on possibly missing changesets
  • rename tagged() to tag() and allow it to take an optional tag name
  • strip: add revsets support
  • add revsets support to bisect and update (issue1993)

  • bookmarks: add a bookmark([name]) revset for referencing bookmarks
  • transplant: add a transplanted(set) revset to get transplanted revisions

7.5. hgweb

  • add a help view for accessing the built-in documentation (see help link in hg serve)
  • let HTTPS serve use more compatible but less secure encryption
  • support very simple caching model (issue1845)

7.6. Extensions

  • color: better support for branches and mq guards
  • convert: handle closed branch heads in hg-hg conversion (issue2185)

  • convert: support darcs changelogs with bytes 0x7F-0xFF (issue2411)

  • convert: deprecate --authors in preference for --authormap

  • graphlog: support header and footer templates when using styles (issue2395)

  • keyword: do not expand at all during diff
  • keyword: support copy and rename
  • mq: extend support for the --mq argument to extension commands

  • mq: save qrefresh message for easy recovery in case it fails (issue2062)

  • mq: support hg qimport --existing --name renametothis thatexistingpatch, fix --force case on Windows

  • mq/qqueue: support renaming of active queue
  • mq/qqueue: add --purge option to delete a queue and its patches

  • pager: add global --pager=<auto/boolean> option

  • patchbomb: add --confirm option to show series details and ask for confirmation

  • patchbomb: let diffstat prompt only once with complete summary
  • progress: support rebase and patchbomb
  • rebase: re-add patches to mq repo after rebase
  • strip: add --keep flag to avoid modifying working directory during strip

  • strip: rename --nobackup option to --no-backup (issue2377)

  • strip: support stripping multiple revisions

7.7. contrib

  • mergetools.hgrc: add vimdiff
  • zsh completion: support bookmarks and patchbomb extensions
  • zsh completion: add qpush --move option

7.8. Windows

  • 64-bit Inno Setup installer
  • handle spaces in path to Python (issue2074)

8. 1.6.4 (2010-10-01)

This is a monthly bugfix release.

  • archive: set date to 1980 for very old zip files
  • bookmarks: fix _bookmarks/lookup() reentrancy issue (issue2016)

  • color: add win32 support for non-black background
  • context: fix filectx.undelete() (issue2388)

  • convert/darcs: handle non-ASCII metadata in darcs changelog (issue2354)

  • convert/svn: fix broken symlink renames in svn sink
  • core: use lexists() instead of exists() where appropriate
  • hgweb: Fix memory leak when using hg commands over http repositories
  • hgweb: correct Content-Type header values for archive downloads
  • log: include unmodified-in-merge files in log diff/stat (issue2383)

  • mq: always require --force when pushing patches (issue2363)

  • patch: do not overwrite broken untracked symlinks
  • patch: fix rename text to binary file (issue2400)

  • patch: fix target when patching broken symlinks (issue2368)

  • patch: upgrade to git patch when removing binary file
  • rename: do not overwrite existing broken symlinks
  • url: verify correctness of https server certificates (issue2407)

  • util: avoid using hashlib on Python < 2.5 (issue2278)

  • verify: fix "missing revlog!" errors for revlog format v0 and add test
  • win32: add Emacs scripts to Inno Setup installer
  • win32: add hgweb scripts to Inno Setup installer

9. 1.6.3 (2010-08-26)

This is a monthly bugfix release. It includes several significant fixes, including a fix for a long-standing hardlink corruption issue on Windows (issue761).

  • alias: make shadowing behavior more consistent (issue2054)

  • bisect: better message for unrelated starting revisions
  • bookmarks: Check if the bookmark to delete exists on the remote
  • bookmarks: guard against listing bookmarks on unsupported repos
  • chunkbuffer: use += rather than cStringIO to reduce memory footprint
  • convert: Using --dest-type svn crashed, if the source repo used tags.
  • convert: properly set encoding for gnuarch converter
  • convert: use encoding.encoding instead of locale.getpreferredencoding()
  • encoding: improve handling of buggy getpreferredencoding() on Mac OS X
  • graphlog: mark --branch as incompatible with --graph
  • http basic auth: reset redirect counter on new requests (issue2255)

  • httprepo: decompress stream incrementally to reduce memory usage
  • log: fix the bug 'hg log --stat -p == hg log --stat'
  • mercurial.spec: gettext is a build requirement for getting proper localization
  • merge: drop reference to file contents after write
  • merge: move reverse-merge logic out of filemerge (issue2342)

  • merge: fix detection of conflict markers with checkconflicts enabled
  • mq: don't inherit default and default-push paths with --mq (issue2333)

  • resolve: updated help documentation for improved clarity
  • revlog: drop cache after use to save memory footprint
  • templatefilters: unnest uescape()
  • templates: add filenolink to raw style (issue2332)

  • url: expand vars in all [auth] settings (issue2328)

  • url: limit expansion to safe auth keys (Issue2328)

  • util: avoid using hashlib on Python < 2.5 (issue2278)

  • verify: initialize rp variable in case we hit out of memory
  • verify: reduce memory footprint when unpacking files
  • verify: report exceptions that don't have a str() method
  • win32: correctly break hardlinks on network drives (issue761)

10. 1.6.2 (2010-08-02)

This release addresses a regression in the color extension.

  • color: pass write/write_err to win32print correctly (issue2312)

  • convert/progress: use plural and avoid retrieving
  • color: call correct superclass method in write_err

11. 1.6.1 (2010-08-01)

This is a scheduled monthly minor bugfix release.

  • alias: ensure checksignature() is applied directly to the command (issue2286)

  • bash/zsh completion: use HGPLAIN when invoking hg (issue2297)

  • bookmarks: don't allow name to contain whitespaces only
  • bookmarks: ensure current bookmark is updated when specified with -r .
  • bundle: lookup revisions after addbranchrevs
  • color/progress: subclass ui instead of using wrapfunction (issue2096)

  • commit: only warn when reopening the workdir's branch
  • dispatch: give better error message when cwd doesn't exist (issue2293)

  • doc: make sure we use our own code for generating man pages
  • filelog: cmp: don't read data if hashes are identical (issue2273)

  • filelog: test behaviour for data starting with "\1\n"
  • hg.clone: fix branch value when passing a repo object (issue2267)

  • hgweb.wsgi: add a URL to the corresponding wiki documentation
  • hgwebdir: allow pure relative globs in paths
  • hgwebdir: use template paths configured in the hgrc (issue2281)

  • init: create target directory recursively
  • inotify: check all components of filenames against hgignore (issue884)

  • keyword: move collecting of [keyword] patterns to reposetup (issue2303)

  • log: fix missing diff output for hg log -p in subdirectory
  • log: follow filenames through renames (issue647)

  • mail: ensure that Python2.4 to 2.7 use the same header format
  • mercurial.spec: rename docutils to python-docutils in BuildRequires

  • mq: clarify the fact that qimport is trying to read a file
  • mq: cleanup status if applied mq is stripped (issue1881)

  • mq: fixed ENOENT when qrename to new/directory.patch
  • mq: reset self.added after the mq transaction instead of inside qimport
  • qpush --move: move the right patch even with comment lines
  • rebase: re-add patches to mq repo after rebase
  • revert: rename original to .orig instead of copying (issue2282)

  • revset: fix ancestor subset handling (issue2298)

  • runrst: try to be more helpful if docutils is not installed
  • tag: do not allow tag names to consist solely of whitespace (issue2307)

  • transplant: crash if repo.commit() finds nothing to commit

12. 1.6 (2010-07-01)

(This release makes a couple small behavior changes, be sure to read UpgradeNotes!)

12.1. Core

  • addremove: optimize addremove -s100 by matching files by their SHA1 hashes

  • archive: auto-detect archive type by extension (issue2058)

  • commit: more friendly handling of new and closed named branches
  • hooks: provide pre- and post- hooks with parsed command line arguments
  • log: add --branch for filtering on named branch

  • log: add --stat for diffstat output

  • push: add --new-branch option to allow initial push of new branches

  • push: break infinite http recursion bug with Python 2.6.5 (issue2179)

  • rollback: add -n/--dry-run flag, report what's being rolled back

  • subrepo: various fixes
  • summary: report copies and renames and add subrepo status
  • tag: add -e/--edit option for modifying the commit message

  • revsets: introduce a powerful query language for specifying revisions, see the manpage or hg help revsets

12.2. Hgweb

  • unify and simplify hgweb.cgi and hgwebdir.cgi scripts

  • fix race in refreshing repo list (issue2188)

  • simplify hgweb.cgi, add help pointer

  • deliver shell hook output to client
  • allow --port=0 to specify "choose free port number automatically"

  • improved templater performance

12.3. Help

  • add new hgweb, glossary, and revsets topics
  • numerous improvements to help text

12.4. Extensions

  • acl: support for access control base on branches and user-defined or OS-level groups
  • acl: added support for pretxncommit, so that one can call the ACL hook at (?)

  • bookmarks: add support for pushing and pulling bookmarks
  • churn: add possibility to include/exclude paths
  • color: add support for Windows consoles
  • color: colorize based on output labels instead of parsing output
  • extdiff: add labels, read diff arguments from [merge-tools]

  • keyword: offer svn-like default keywordmaps
  • keyword: support (q)record
  • mq: add a line to hg summary
  • mq: qpush --move, reorder patch series and apply only the patch

  • progress: progress support for many more commands
  • rebase: add option to not commit after a collapsing

13. 1.5.4 (2010-06-01)

This is a scheduled monthly minor bugfix release.

  • dispatch: include Python version in traceback
  • push: update help
  • status: avoid performance regression when no .hgsub is present
  • clone: fix performance issue with hardlinks and Windows shares
  • hgweb: fix race in refreshing repo list (issue2188)

  • hgrc: clarify that hgrc keys can be overridden and sections can be split
  • eol: new extension for managing file newlines based on a version controlled configuration file

  • pager: fork and exec pager as parent process with /bin/sh -c
  • rebase: stress that only local changesets should be rebased
  • convert/svn: close gettags() log stream (issue2196)

  • record: check that we are not committing a merge before patch selection

14. 1.5.3 (2010-05-13)

This is an unscheduled bugfix release to fix issue2181 (commit generates traceback on Nonetype). Also included:

  • various improvements to SVN conversion support
  • minor doc improvements

15. 1.5.2 (2010-05-01)

This is a monthly bugfix release with numerous minor fixes including:

15.1. Core

  • clone: fix URL too long problem with many heads
  • commands: revised documentation of 'default' and 'default-push'
  • copies: properly visit file context ancestors on working file contexts
  • diffstat: use ui.plain() instead of ui.interactive()
  • dirstate: fix in memory dirstate entries for 1-second race
  • dispatch: don't mangle ImportError abort messages

  • filemerge: use working dir parent as ancestor for backward wdir merge
  • hgrc.5: describe form of config values and mention lists as well
  • hgweb: fix attribute error in error response (issue2060)

  • log: document the new xml style
  • merge: correctly compute the flag for noexec filesystems
  • patch: don't look for headers in diff lines
  • push: fix bug in warning message selection
  • revlog: fix lazyparser.iter() to return all revisions (issue2137)

  • static-http: allow clone -r (issue2164)

  • subrepo: fix repo root path handling in svn subrepo
  • subrepo: propagate and catch push failures
  • templates: document missing template variables
  • util: fix default termwidth() under Windows
  • util: use an explicit prefix for checkexec/checklink temporary files

15.2. Extensions

  • convert/cvs: skip bad tags
  • convert/git: check status when reading output stream
  • convert/subversion: fix default URL checker prototype
  • mq: rewrite strip docstrings
  • mq: use util.unlink instead of os.unlink and os.removedirs
  • schemes: fix // breakage with Python 2.6.5 (issue2111)

16. 1.5.1 (2010-04-01)

16.1. Core

  • improve warning on adding large files
  • expand ~ in auth filenames and aliases
  • several improvements to patch parsing
  • warn about attempts to use hg branch to switch branches
  • push: fix bug in prepush logic and its tests
  • hgweb: fix broken URLs of RSS/Atom feeds
  • subrepo: several bug fixes

16.2. Extensions

  • acl: added support for '*' (everyone) in user list
  • progress: use stderr instead of stdout
  • schemes: add Kiln On Demand to default schemes

17. 1.5 (2010-03-06)

(This release makes a number of small behavior changes, be sure to read UpgradeNotes!)

17.1. Core

  • improved behavior for named branches with heads command

  • new XML output template for logs
  • import extract multiple patches from emails, mboxes, files, and URLs

  • new patch.eol=auto option to ignore patch line-endings while preserving target file endings.

  • new -b/--branch option for clone, bundle, incoming, outgoing, pull, and push

  • new server.validate option to validate completeness of pushed changesets

  • subrepos now has basic Subversion support
  • support for SSL server certificates and improved IPv6 support
  • the HGPLAIN environment variable makes output more stable for scripts

17.2. Extensions

  • new progress bar extension

  • mq: new --mq option to make regular commands operate on queue repository

  • mq: automatically upgrade conventional patches to git format where needed
  • color: add support for bookmarks, resolve -l, and churn --diffstat

  • convert: two CVS history editing hooks
  • win32mbcs: add configuration to specify path encoding
  • zeroconf: many bug fixes
  • rebase: new --detach option for rebase

17.3. Web Interface

  • improve navigation on log and graph pages
  • support for pluggable authorization
  • raw templates for tags/branches pages
  • add wsgi script for Microsoft IIS with isapi-wsgi

17.4. Windows

  • add WiX installer scripts to contrib/wix
  • handle configuration files in <install-dir>\hgrc.d

  • expand environment variables specified in merge tools paths

17.5. Help and Documentation

  • greatly improve error messages and command documentation
  • support extended documentation with --verbose
  • provide help for disabled extensions and commands

18. See also


CategoryProcess CategoryProject

WhatsNew (last edited 2024-06-12 09:32:05 by RaphaelGomes)