Size: 36749
Comment:
|
Size: 21102
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
## notes that are older than 3 major releases should be moved to WhatsNew/Archive | |
Line 3: | Line 4: |
Be sure to read UpgradeNotes and, if relevant, [[API_Changes|API Changes]]. <<TableOfContents>> (See [[WhatsNew/Archive|archive]] for older versions. New versions will be released according to the [[TimeBasedReleasePlan|time-based release plan]].) == 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 |
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.) == Mercurial 1.9 (2011-07-01) == This is a regular feature release. See UpgradeNotes for some minor compatibility notes. === Major features === * New [[http://www.selenic.com/hg/help/filesets|fileset]] file matching support * Improved remote changeset discovery * New [[CommandServer|command server]] mode to improve application integration * Experimental generaldelta storage scheme * Experimental new http client library === Command changes === * HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT * manifest: add new option --all * aliases: add positional arguments to non-shell aliases * add: introduce a warning message for non-portable filenames (Bts:issue2756) * add: notify when adding a file that would cause a case-folding collision * bisect: new command to extend the bisect range (Bts:issue2690) * bookmarks: allow deactivating current bookmark with -i * bundle: update current bookmark to most recent revision on current branch * diff: make diff -c aware of revision sets * help: add -c/--command flag to only show command help (Bts:issue2799) * help: add -e/--extension switch to display extension help text * help: move hgignore man page into built-in help (Bts:issue2769) * http: correctly handle redirects from http to https * identify: list bookmarks for remote repositories * import: add --bypass option * paths: Add support for -q/--quiet * pushkey: add hooks for pushkey/listkeys * revset: add aliases * revset: add ^ and ~ operators from parentrevspec extension * revset: add a revset command to get bisect state * revset: add desc(string) to search in commit messages * revset: add follow(filename) to follow a filename's history across copies * revset: introduce filelog() to emulate log's fast path * revset: add a last() function === Web changes === * add bookmarks listing to raw style and summary pages * support alternate logo url * add base link to file log for paper and coal styles (Bts:issue2452) * paper, coal: display diffstat on the changeset page * elapsed time calculation dynamic (javascript) * provide diffstat and summary on the changeset page === Extension changes === * hgcia: handle URL like in notify (Bts:issue2406) * rebase: add -m/--message to rebase --collapse (Bts:issue2389) * Updating hgext.extdiff to use revsets * bash_completion: enable alias auto-complete * bugzilla: add XMLRPC interface * color: add support for terminfo-based attributes and color * convert/mtn: add support for using monotone's "automate stdio" when available * convert/svn: stop using svn bindings when pushing to svn * convert: add bookmark support for hg and git backends * convert: add svnrev, svnpath and svnuuid template keywords * extdiff: add repository root as a variable * graphlog: support more log command features with revsets * keyword: convert a verbatim block to a field list * keyword: offer additional datefilters when the extension is enabled * mq: add a 'mq()' revset predicate that returns applied mq csets * notify: send changesets on 'outgoing' hook, updated doc * progress: add speed format * rebase: add --tool argument for specifying merge tool * rebase: allow for rebasing descendants onto ancestors on different named branches * record: add an option to backup all wc modifications * record: add qrefresh -i/--interactive * record: add white space diff options * record: alias qrecord to qnew -i/--interactive === Bug fixes === * bookmarks: allow create/move bookmark without making it current (Bts:issue2788) * bookmarks: do not forward merged bookmark (Bts:issue1877) * changegroup: do not count closed new heads (Bts:issue2697) * config: handle comment lines in continuations (Bts:issue2854) * dispatch: propagate ui command options to the local ui (Bts:issue2523) * eol: make the hook check all new heads, not only tip (Bts:issue2666) * grep: don't print data from binary files for matches (Bts:issue2614) * http: report unexpected unparsable push responses (Bts:issue2777) * httprepo: handle large lengths by bypassing the len() operator * httprepo: long arguments support (Bts:issue2126) * httprepo: proper handling of invalid responses without content-type (Bts:issue2019) * httprepo: send URL redirection notices to stderr (Bts:issue2828) * localrepo: don't add deleted files to list of modified/added files (Bts:issue2761) * localrepo: ignore tags to unknown nodes (Bts:issue2750) * merge: drop resolve state for mergers with identical contents (Bts:issue2680) * patch: do not patch unknown files (Bts:issue752) * path_auditor: check filenames for basic platform validity (Bts:issue2755) * rebase: don't mark file as removed if missing in parent's manifest (Bts:issue2725) * rebase: preserve mq series order after rebasing (Bts:issue2849) * rebase: restore mq guards after rebasing (Bts:issue2107) * revset: report a parse error if a revset is not parsed completely (Bts:issue2654) * scmutil: improve path calculation for install-relative RC files (Bts:issue2841) * set NOT_CONTENT_INDEXED on .hg dir (Bts:issue2694) * sslutil: fall back to commonName when no dNSName in subjectAltName (Bts:issue2798) * subrepo: be more careful with deletions of .hgsub and .hgsubstate (Bts:issue2844) * subrepo: make stdin for svn a pipe for non-interactive use (Bts:issue2759) * subrepo: svn abort now depends on exit code (Bts:issue2833) * subrepo: be smarter about what's an absolute path (Bts:issue2808) * svn subrepo: attempt work around obstructed checkouts (Bts:issue2752) * svn subrepos: work around checkout obstructions (Bts:issue2752) * tags: catch more corruption during cache parsing (Bts:issue2779) * util: add Mac-specific check whether we're in a GUI session (Bts:issue2553) == Mercurial 1.8.4 (2011-06-01) == This is a regular time-based bugfix release. * bookmarks: do not forward merged bookmark (Bts:issue1877) * changelog: convert user and desc from local encoding early * fix bookmarks rollback behavior * hgrc.5: document shell aliases * httprepo: proper handling of invalid responses without content-type (Bts:issue2019) * httprepo: send URL redirection notices to stderr (Bts:issue2828) * localrepo: don't add deleted files to list of modified/added files (Bts:issue2761) * localrepo: ignore tags to unknown nodes (Bts:issue2750) * mq: strip extra whitespace from node ids in header (Bts:issue2790) * rebase: restore mq guards after rebasing (Bts:issue2107) * revset: expand help for contains predicate * revset: note case-insensitive matches in keyword and user * revset: note case-sensitive match in grep * revset: report a parse error if a revset is not parsed completely (Bts:issue2654) * revset: the name is optional for the tag predicate * simplemerge: do not allow binary files to abort an entire merge * strip: make it clear that --force discards changes (Bts:issue310) * subrepo: don't crash when git .hgsubstate is empty (Bts:issue2716) * subrepo: make stdin for svn a pipe for non-interactive use (Bts:issue2759) * subrepo: respect non-default path for incoming/outgoing * subrepo: svn abort now depends on exit code (Bts:issue2833) * subrepo: use code from 71ea5b only if Python needs it (Bts:issue2795) * tags: catch more corruption during cache parsing (Bts:issue2779) == Mercurial 1.8.3 (2011-05-01) == This is a regular time-based bugfix release. * convert: make filemap prune useless branch closing revs (Bts:issue2774) * encoding: avoid localstr when a string can be encoded losslessly (Bts:issue2763) * extdiff: fix broken symlinks handling (Bts:issue1909) * help config: explain that config files do not exist by default * hgweb: add bookmark labels to gitweb theme * hgweb: add missing bookmarks definition to coal/map * hgweb: add missing bookmarks templates to atom/rss styles * hgweb: add separate bookmarks listing to gitweb theme * hgweb: add separate bookmarks listing to monoblue theme * hgweb: detect change based on changelog size too * hgweb: fix inconsistant display of graphlog (Bts:issue1706) * hgweb: fix typo and inactive link in page_nav and page_header of gitweb's help * hgweb: fix typo in page-header of monoblue's help template * hgweb: format page_nav of gitweb/error.tmpl and add missing links * rebase: don't mark file as removed if missing in parent's manifest (Bts:issue2725) * subrepo: handle svn tracked/unknown directory collisions * subrepo: prevent url normalization from removing // in ssh paths (Bts:issue2556) * subrepo: tell Subversion when we are non-interactive (Bts:issue2759) * url: use a regex to hide unsupported ssh passwords (Bts:issue2754) * zeroconf: notify the Zeroconf threads when hg exits == Mercurial 1.8.2 (2011-04-01) == This is a regular time-based bugfix release. * bookmarks: discard current bookmark if absent from the bookmarks (Bts:issue2692) * bookmarks: fix update of the current bookmark during rename * color: port to using ctypes (Bts:issue2687) * convert/svn: fix _iterfiles() output in root dir case (Bts:issue2647) * eol: do not abort when win32text is found, only warn * eol: use dirstate methods to clear dirstate * fix compiling of extensions for OS X and XCode 4.0 * hgweb: add display of bookmarks for changelog and changeset * hgweb: add separate page with bookmarks listing * merge: avoid unlinking destination of merge when case changes (Bts:issue2715) * mq: do not let qrefresh write bad patch * pager: don't page stderr if it's being redirected (Bts:issue2541) * push/outgoing: print remote target path even if there's an error (Bts:issue2561) * subrepo: recognize scp-style paths as git URLs * templates: widen the graph canvas (Bts:issue2683) == Mercurial 1.8.1 (2011-03-10) == This release backs out a behavior change for so-called 'fast-forward' merges on named branches. * annotate: rewrite to deal with crossed linkrevs (Bts:issue2682) * bookmark: fix invalidation of localrepo._bookmarkcurrent * cacert: improve error report when web.cacert file does not exist * contrib: update tcsh_completion for Mercurial 1.8 * hgcia: accept "queued." xmlrpc return as success * hgweb: fix filelog rss links generation * hgweb: use tip in gitweb/monoblue filelog rss links (Bts:issue2677) * merge: back out single-parent fast-forward merge * merge: drop resolve state for mergers with identical contents (Bts:issue2680) * merge: improve unresolved conflicts warning (Bts:issue2681) * mergetools: add alternate registry keys for 32bit apps on 64bit O/S * mq: forbid commit of merge involving mq patches * subrepo: backout 67fbe566eff1, --force requires svn >= 1.5 * subrepo: don't crash when git repo is missing * subrepo: handle svn tracked/unknown directory collisions * wix: drop bin/ folder from MSI installers (Bts:issue2673) == Mercurial 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 == Mercurial 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 == Mercurial 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 == Mercurial 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]]) == Mercurial 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 == Mercurial 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) == Mercurial 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 |
Line 105: | Line 381: |
* 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 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 |
* 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 |
Line 256: | Line 391: |
* 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 == 1.4.3 - 2010-02-01 == This is a scheduled bugfix release. * Mercurial license has changed from GPLv2 to GPLv2+ * speed up copy detection in merge, status, and diff * templates: fix relative path expansion on style setting * merge: fix merging of already-merged subrepos * summary: fix i18n issue reporting clean working directories * hgweb: improve IIS PATH_INFO handling * relink: Windows support == 1.4.2 - 2010-01-01 == This is a minor bugfix release. === core === * config: raise ConfigError on non-existing include files * alias: do not crash when aliased command has no usage help text * auth: allow specifying auth sections in .hg/hgrc * patch: fix handling of chunk offsets * subrepo: add default path to new clones * docs: Fix rst2html detection === extensions === * convert/svn: better handling of hg recursive call failure * convert/svn: make sink recover gracefully from empty changeset * keyword: fix interaction with transplant * mq: preserve --git flag when folding and merging patches * mq: qnew -f rejects merge working directories * mq: qpop: remove added files before re-adding removed files * patchbomb: handle repository#rev URLs correctly * share: use defaultdest to compute unspecified destination == 1.4.1 - 2009-12-01 == === regression fixes === * fix to prepush logic when it creates new heads * fix qseries truncation === other === * doc fixes: formatting, missing options * tests fixes (now less dependent on environment variables) * inotify fixes * keyword: allow RCSfile like CVS * share: fix a bad interaction with clone * show non-default branch names with summary -q * new [[SchemesExtension|schemes extension]] * i18n updates == 1.4 - 2009-11-16 == === core === * summary: new command summarizes current working state * tags: new tag cache greatly speeds up tag operations * diff: new `--stat` option to show diffstat * diff: add `--reverse` option to diff * subrepo: fix a bunch of issues with the experimental subrepo extension * status: fixes for behavior when working with clock skew * clone: new `-u/--updaterev` option * templater: new `latesttag` and `latesttagdistance` keywords * push/pull: handle some broken pipe errors during large transfers * config: environment variables and `~user` constructs are expanded in pathnames === hgweb === * fix for showing header lines in raw changeset diffs * try to send better error messages to the client * use config-supplied ordering by default in hgwebdir index pages * add `web.descend` option to disable showing all nested repositories in hgwebdir === documentation and help === * new config help topic * help texts are now written in [[http://docutils.sourceforge.net/rst.html|reStructuredText]] format * many translation updates including a new Swedish translation * many help text updates and improvements === extensions === * mq: add `-1` options to qapplied/qunapplied * patchbomb: add a `--flag` option to set a flag value in the Subject header * patchbomb: correctly handle Unicode domains (using the IDNA encoding scheme) * color: improve colorization of the qseries command * inotify: cleaner code, fixed pattern handling * zeroconf: show repository descriptions * rebase: some performance and correctness fixes * extdiff: add 3-way diff for merge changesets * convert: handle directory renaming in Darcs, fixed file renaming * relink: new extension which helps people re-hardlink their clones === other === * contrib/shrink-revlog.py script that can significantly shrink some internal hg files * work around non-standard locale settings on OS X == Version 1.3.1 - 2009-07-23 == Regression fixes: * fixed excessive memory usage issues with diff and strip * fixed ssh performance issue on OS X * fixed slow calculation of branch heads * fixed handling of port numbers in URLs * fixed transaction handling exception * fixed incoming with graphlog extension * fixed slow commit in fetch extension * fixed loading of win32mbcs extension Other fixes: * fixed http username handling in acl extension * fixed subrepo path joining on Windows * allow update --check to cross branches * miscellaneous small doc and bug fixes == Version 1.3 - 2009-07-01 == === Major Changes === * experimental support for [[subrepos|sub-repositories]] * Python 2.3 is no longer supported; now requires Python 2.4-2.6 === Commands === * merge: add -P/--preview option * update: don't unlink added files when -C/--clean is specified * update: added -c/--check option to abort on local changes * update: allow merges going backwards * push: improved handling of named branches * branches/heads: add a -c/--closed option to show closed branches * help: new extensions topic === General === * add patch.eol config setting to work with cross-platform patches * fixed support for SSL through proxies * add ability to load hooks from arbitrary Python modules * hide passwords for HTTP repositories in error and log output * fix Python 2.6 support in the Windows installer * add mechanism for specifying HTTP authentication details in hgrc * prompts and choices are now shown even in non-interactive mode * performance improvements, especially on Windows * much improved zsh completion * improved Danish, Japanese, Italian and simplified Chinese translations * new German, French, Greek, Brazilian Portuguese and traditional Chinese translations === Web interface === * read configuration data from webdir configs * add branches page to hgweb * pluggable templater engine support * refresh hgwebdir configuration periodically * let web.encoding override ui.encoding setting * deal with dicts/lists like webdir config paths === Extensions === * experimental [[ShareExtension|share]] extension * the alias extension has been moved into core * mq * add -P/--push option to qimport * numerous bug fixes * convert * improved source detection * support for comments in author maps * add branch map support * add different ordering options * svn: support OS-specific authn providers * svn: improved tag support * git: add committer tag only when needed * bzr: fix renaming support * bzr: add support for filemaps * bzr: handle timestamps correctly * bzr: fix symlink handling * bzr: restore paths to source encoding * cvs: add support for CVS merge(point)s * cvs: add support for synthetic revisions * cvs: better support for branchpoints * cvs: deprecate use of external cvsps * mtn: improve renaming support * mtn: support mtn database files as source * mtn: improve date/time support * p4: better handling of keywords, binary files and symlinks * rebase * don't lose copy/rename info * keep original mq patch format * zeroconf * advertise repositories by hostname * try to guess IP address if necessary * patchbomb * option to set attachment name * support for In-Reply-To header * inotify * fix handling of untracked files moved out of repository * fix support for directory deletion * acl: now works with push over https == Version 1.2.1 - 2009-03-20 == This is a bugfix release. * fixed version number build from tarball * fix allow_read logic for hgweb * improve handling of damaged revlogs in verify * keep .orig files when resolving * clear resolve state properly when rebasing * improve --command handling with bisect * fix diff against bundles * improve fetch logic for inactive branches * fix diffstat with notify * fix 'synthetic file adds' in CVS conversion == Version 1.2 - 2009-03-04 == This is a larger feature release. General features: * explicit closing of named branches via hg commit --close-branch * hg now accepts options given after arguments on the commandline * added translation support with initial Danish, Chinese, Japanese, and Italian translations * added optional pure-Python versions of C modules * pending changesets can now be accessed safely from hooks * diff: added -c option to show single changeset * many improvements to the documentation and online help topics Extensions: * convert: * new support for perforce sources * improvements to handling cvs sources * improvements to handling gnu arch source * improvements to handling darcs sources * bookmarks: * set current to new when current is renamed * bookmarks: Add track.current option * bookmarks: add bookmarks to tags * mq: allow qpop when it won't invalidate any dirstate parents * patchbomb: respect diff settings * rebase: pull --rebase updates if there is nothing to rebase * bugzilla: updated to work with Bugzilla 3.2 * zeroconf: added more documentation * hgk: add several color settings * the imerge extension has been removed (obsoleted by the resolve command) == Version 1.1.2 - 2008-12-31 == This is a minor release including one security fix and two minor bug fixes * improve path auditing (Bts:issue 1450) * fix date-related test failures in test suite * add graph controls to monoblue theme == Version 1.1.1 - 2008-12-20 == This is a bugfix release * make hgweb recursion optional (use '**' rather than '*') * fix fncache bug for directories ending in ' ' or '.' * require -a switch to resolve all files * improve help for resolve command * fix inotify interaction with bundle diffs * fix strange readline import error on Windows * fix non-existing target directory with git diffs * fix removing symlinks with git diffs * fix directory creation bug in patch * rebase: allow keeping branch names * fix a copy bug in the SVN converter == Version 1.1 - 2008-12-2 == This is a larger feature release. General: * Added 'resolve' command for better tracking of in-progress merges * Several speedups for status and diff commands (especially on Windows) * Some modules have been rewritten in C for greater speed * Compatibility with Python 2.6 * Improved correctness in the face of casefolding filesystems * Fixed a possible race condition in pull * Fix support for context-size diff settings * Fixed several crashes on Windows related to code freezing * Don't complain when trying to load extensions twice * Allow C extensions to compile on Haiku * Allow for committing in-memory file contents * New repository format which limits path lengths in the store * Unclutter commands list by extracting extension commands into separate lists * static-http support is now a fallback for the general http support * Add some buffering to the templater * Better documentation on git diffs Web interface: * Add a canvas-based repository graph * New and improved hgweb themes: paper, coal and monoblue * paper is now the new default style; the old default is now called 'spartan' * Better WSGI compliance * Collections now show nested repos (best used without a checkout) * diffs are more sensible, follow diff.git settings * Full author name available in annotate templates * Make it easier to add template paths in extensions * Support for allow_read/deny_read access controls * Working diff and file log for removed files * Better alternative for repository collections * Corrected feed link in gitweb theme * Fix a bug with CGIs running under IIS Commands: * commit: print the revision ID when invoked with --verbose * resolve: new command to help keep track of merges * merge: only implicitly select same-branch heads * export: append instead of overwrite when exporting multiple changesets * bundle: added support for different compression types * rollback: clean up empty files * help: several more sections from the manual are available through hg help now * bisect: better documentation, give better feedback, option for scripted testing * branch: allow for resetting current branch name * patch: add a --similarity option to do rename/copy detection * tag: without a checkout, use tip as the tagging revision's parent * log: allow searching by user (with -u) * import: importing from URL now works with http authentication * unbundle: importing from URL now works * pull: with -u, still update if there's only one head on the current branch * diff: fix a problem with the --showfunc option Extensions: * rebase: new extension to support rebasing changesets * bookmarks: new extension to provide (local-only) git-like branches * zeroconf: new extension to support publishing repositories through Zeroconf/Bonjour * hgcia: new extension to facilitate communication with [[http://cia.vc/|CIA]] * mq: * qfinish: added command for conversion of patches into changesets * qpush/qgoto: gracefully abort when encountering guards * qrefresh: don't lose work when interrupted * qimport: allow for importing patches from URLs * qnew: abort early if patch already exists, be more careful in general * qdiff: now supports all diff options * qfold: more tolerance of file removals, better handling of commit messages * import: prevent import from working when patches are applied * convert: * added support for conversion from bzr repositories * incorporate an improved Python version of cvsps, replacing the external cvsps tool (see upgrade notes) * compatibility with recent git releases * add an option to start from an arbitrary revision * correctly encode characters in Subversion repository URLs * better, more tolerant tags detection * highlight: * remove need to pre-generate CSS stylesheet * compatibility with older Pygments versions * make the lexer guessing faster by not reading all of the file * allow demandimport to load it incrementally * fetch: improve support for named branches * graphlog: * now adds --graph options to log, incoming and outgoing * fix calls from outside the repository * inotify: * many bugfixes, should work much better * daemon is automatically started by default * color: * add colorization of diffs * add --color options to many commands * keywords: be more careful about expanding binary files * bugzilla: added support for Bugzilla 3.0 * pager: allow per-command configuration * hgk: display branch names for revisions * churn: support for templated statistics report generation * patchbomb: charset encoding can now be configured * notify: charset encoding can now be configured == Version 1.0.2 - 2008-08-13 == This is a relatively small bugfix release with two security fixes. Security: * ensure that git patches only touch files within the repository ([[http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-2942|CVE-2008-2942]]) * hgweb: fix "allowpull" permission being ignored when pulling from hgweb General: * commit: handle copies of previously deleted files (Bts:issue 1175) * bisect: allow for having multiple resulting changesets * fix Python 2.3 compatibility * make mq patches and .hgtags hardlink-safe again * various documentation improvements and fixes * fix a crash when addremove was called to replace a deleted directory with a symlink * make branches output easier to parse (Bts:issue 1230) * fix inactive branches detection (Bts:issue 1104) * hgweb: fix a crash in archive when the URL did not end in an expected archive type * sshserver: fix a crash in error handling code * fix the patchbomb extension on Windows by including email package in binary installations * handle symlinks when OS supports them but FS doesn't (Bts:issue 1149) Extensions: * mq: * fix qrefresh losing metadata on the last refreshed file (Bts:issue 1134) * fix a crash when renaming a patch just after a versioned queue initialization * fix the path of an explicitly specified queue when merging patches * strip now updates the working directory only if a parent was stripped * convert: * CVS: fix a crash when converting an existing working copy * monotone: fix quotes and backslashes parsing when reading commit messages * Subversion: correctly normalize paths and slashes * Subversion: fix compatibility with Subversion 1.5 * git: allow converter to work with recent git releases * color: * get coloring for qseries --verbose output * improve mq extension detection * reset coloring before and after outputting colorized lines * highlight: fix a performance issue when detecting file types from large files * notify: take the diff options into account == Version 1.0.1 - 2008-05-22 == This is a relatively small bugfix release. General: * several improvements in file copying implementation * allow different default value for diff.unified option * allow explicit use of internal merge tools Commands: * rename: doesn't unlink source file with --after * backout: reverse changeset belongs on current branch Extensions: * convert: * svn: improved detection of tags (has also become optional) * svn: improved branch handling * svn: better detection of file copies * mq: * expand terse command help texts * fix unimplemented qdiff -U option * highlight: fix compatibility with older Pygments (0.5.1) * churn: allow whitespaces as delimiter in aliases * pager: disable when used with --debugger == Version 1.0 - 2008-03-24 == General: * greatly improved [[MergeToolConfiguration|merge tool configuration]], see "hgrc.5.txt" for details * improved copy/rename handling in diffs, status, and merge * files in .hg inherit permissions from .hg/store * infer --repository when possible, so commands may be run from anywhere. * easy-installable * new "droplet" logo Commands: * archive: disable ".hg_archival.txt" file addition with "ui.archivemeta" * bisect: now built-in with greatly improved performance and usability * bundle: new --all option to bundle the whole repository more easily. * cat: apply decode filters with --decode * clone: can clone from a full-history bundle * commit: warn when creating a new head * debugancestor: index argument is now optional * diff: set the number of context line to show with -U/--unified * grep: display matched revisions commit date with --date * import: new --no-commit and --user options * incoming/outgoing: add --limit option * log: use -b/--only-branch to show revisions of a single branch * remove: improve handling for --after * revert: major speedup * serve: prefix the served path with --prefix (also in [web] section) * status: unknown files are skipped by --quiet * tag: allow multiple tags to be added or removed * tags: --verbose flags local tags * update: switch between named branches without -C Extensions: * churn: promoted to an official extension (previously in contrib) * color: new extension coloring "status" and "qseries" command outputs * convert: * allow synthetic history to be spliced in with --splicemap * support GNU Arch and Monotone sources * svn: allow shallow conversions of single branches with convert.svn.startrev option. * svn: make trunk/branches/tags layout detection more flexible by allowing either of them to be skipped. * svn: preliminary support as a conversion target * hgk: configuration file changed from .gitk to .hgk * highlight: new extension enabling syntax highlighting in hgweb file view (requires pygments) * inotify: new extension using Linux 2.6 inotify API for instant status checking * keyword: new extension for filewise RCS-keyword expansion in working directory * mq: new --currentdate, --date, --currentuser, and --user options * record: add "qrecord" command when used with mq * win32mbcs: new extension dealing with problematic MBCS behavior on Windows Web interface: * improved WSGI integration and compatibility * follow symlinks in hgwebdir collections * show branches in most of gitweb templates * add line anchors to annotate, changeset, diff and file views * support web.baseurl in hgwebdir, overriding SCRIPT_NAME Hooks: * standard hook to reject text files with CRLF in win32text extension * redirect stdout to stderr for ssh and http servers Windows support: * "hg" script output set to binary mode for redirecting diff, export, annotate, etc. * also search for .hgrc if mercurial.ini cannot be found * major speedup of "clone --pull" == Version 0.9.5 - 2007-10-19 == New features: * Handle symlinks on systems without symlink support * hg archive supports symlinks * Display executable/symlink bit with "hg manifest -v" (see UpgradeNotes) * Improved hg verify diagostics * Faster revlog handling * Faster handling of large directories * Greatly improved handling of large files * Atom syndication support in hgweb * Improved test suite with parallel execution Fixes: * Fixes for some file copy and rename corner cases * Allow moving newly-added files before commit * Improve hg diff whitespace handling * Disallow fast-forward merge with an ancestor * Fix adding untracked files on directory renames * Fix hg archive %r format specifier * Fix re: and glob: patterns in .hgignore * Improve hg executable path resolution * Many options and hgrc parsing improvements * Better handling of VFAT filesystems on Linux * Fix tgz archival on Windows * Fix hg serve on Windows requiring pywin32 modules * Fix --profile under Windows New extensions: * alias - allow user-defined command aliases * children - show the children of the given or working dir revision * imerge - incremental interactive merging * interhg - modify changelog text as in InterWiki * record - darcs-style interactive change selection during commit New extension features: * convert * Now supports Subversion, Darcs and Mercurial as source SCMs * Use clone's behaviour for the default destination name * Force encoding to UTF-8 for converted repository * Support new-style .cvspass file format * Filter the files and directories to import * Remap paths to new locations during import * hgk * Fix hgk stopping because of untrusted repository warnings * Handle filenames with spaces * Improved documentation * mq * Autodetect --git patches on qrefresh == Version 0.9.4 - 2007-06-25 == New features: * support for symlinks * improved tag handling * improved merge handling of file and directory renames * improved named branch usability * numerous improvements to commands * generic pre- and post-command hooks * improved Windows support * basic BeOS and OpenVMS support * numerous bug fixes New extensions and contributions: * extensions can now be specified in .hg/hgrc * new convert extension with CVS support * new graphlog extension * improved patchbomb extension * example FastCGI script == See also == * Our [[TimeBasedReleasePlan|time-based release plan]] * [[WhatsNew/Archive|Archive]] of older release notes |
* 64-bit Inno Setup installer * handle spaces in path to Python (Bts:issue2074) |
Release Notes
Features and bugfixes in our latest releases.
Be sure to read the upgrade notes when upgrading.
Contents
- Mercurial 1.9 (2011-07-01)
- Mercurial 1.8.4 (2011-06-01)
- Mercurial 1.8.3 (2011-05-01)
- Mercurial 1.8.2 (2011-04-01)
- Mercurial 1.8.1 (2011-03-10)
- Mercurial 1.8 (2011-03-01)
- Mercurial 1.7.5 (2011-02-01)
- Mercurial 1.7.4 (2011-02-01)
- Mercurial 1.7.3 (2011-01-01)
- Mercurial 1.7.2 (2010-12-01)
- Mercurial 1.7.1 (2010-11-15)
- Mercurial 1.7 (2010-11-01)
(See archive for older versions.)
1. Mercurial 1.9 (2011-07-01)
This is a regular feature release. See UpgradeNotes for some minor compatibility notes.
1.1. Major features
New fileset file matching support
- Improved remote changeset discovery
New command server mode to improve application integration
- Experimental generaldelta storage scheme
- Experimental new http client library
1.2. Command changes
- HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
- manifest: add new option --all
- aliases: add positional arguments to non-shell aliases
add: introduce a warning message for non-portable filenames (issue2756)
- add: notify when adding a file that would cause a case-folding collision
bisect: new command to extend the bisect range (issue2690)
- bookmarks: allow deactivating current bookmark with -i
- bundle: update current bookmark to most recent revision on current branch
- diff: make diff -c aware of revision sets
help: add -c/--command flag to only show command help (issue2799)
- help: add -e/--extension switch to display extension help text
help: move hgignore man page into built-in help (issue2769)
- http: correctly handle redirects from http to https
- identify: list bookmarks for remote repositories
- import: add --bypass option
- paths: Add support for -q/--quiet
- pushkey: add hooks for pushkey/listkeys
- revset: add aliases
- revset: add ^ and ~ operators from parentrevspec extension
- revset: add a revset command to get bisect state
- revset: add desc(string) to search in commit messages
- revset: add follow(filename) to follow a filename's history across copies
- revset: introduce filelog() to emulate log's fast path
- revset: add a last() function
1.3. Web changes
- add bookmarks listing to raw style and summary pages
- support alternate logo url
add base link to file log for paper and coal styles (issue2452)
- paper, coal: display diffstat on the changeset page
- elapsed time calculation dynamic (javascript)
- provide diffstat and summary on the changeset page
1.4. Extension changes
hgcia: handle URL like in notify (issue2406)
rebase: add -m/--message to rebase --collapse (issue2389)
- Updating hgext.extdiff to use revsets
- bash_completion: enable alias auto-complete
- bugzilla: add XMLRPC interface
- color: add support for terminfo-based attributes and color
- convert/mtn: add support for using monotone's "automate stdio" when available
- convert/svn: stop using svn bindings when pushing to svn
- convert: add bookmark support for hg and git backends
- convert: add svnrev, svnpath and svnuuid template keywords
- extdiff: add repository root as a variable
- graphlog: support more log command features with revsets
- keyword: convert a verbatim block to a field list
- keyword: offer additional datefilters when the extension is enabled
- mq: add a 'mq()' revset predicate that returns applied mq csets
- notify: send changesets on 'outgoing' hook, updated doc
- progress: add speed format
- rebase: add --tool argument for specifying merge tool
- rebase: allow for rebasing descendants onto ancestors on different named branches
- record: add an option to backup all wc modifications
- record: add qrefresh -i/--interactive
- record: add white space diff options
- record: alias qrecord to qnew -i/--interactive
1.5. Bug fixes
bookmarks: allow create/move bookmark without making it current (issue2788)
bookmarks: do not forward merged bookmark (issue1877)
changegroup: do not count closed new heads (issue2697)
config: handle comment lines in continuations (issue2854)
dispatch: propagate ui command options to the local ui (issue2523)
eol: make the hook check all new heads, not only tip (issue2666)
grep: don't print data from binary files for matches (issue2614)
http: report unexpected unparsable push responses (issue2777)
- httprepo: handle large lengths by bypassing the len() operator
httprepo: long arguments support (issue2126)
httprepo: proper handling of invalid responses without content-type (issue2019)
httprepo: send URL redirection notices to stderr (issue2828)
localrepo: don't add deleted files to list of modified/added files (issue2761)
localrepo: ignore tags to unknown nodes (issue2750)
merge: drop resolve state for mergers with identical contents (issue2680)
patch: do not patch unknown files (issue752)
path_auditor: check filenames for basic platform validity (issue2755)
rebase: don't mark file as removed if missing in parent's manifest (issue2725)
rebase: preserve mq series order after rebasing (issue2849)
rebase: restore mq guards after rebasing (issue2107)
revset: report a parse error if a revset is not parsed completely (issue2654)
scmutil: improve path calculation for install-relative RC files (issue2841)
set NOT_CONTENT_INDEXED on .hg dir (issue2694)
sslutil: fall back to commonName when no dNSName in subjectAltName (issue2798)
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)
subrepo: make stdin for svn a pipe for non-interactive use (issue2759)
subrepo: svn abort now depends on exit code (issue2833)
subrepo: be smarter about what's an absolute path (issue2808)
svn subrepo: attempt work around obstructed checkouts (issue2752)
svn subrepos: work around checkout obstructions (issue2752)
tags: catch more corruption during cache parsing (issue2779)
util: add Mac-specific check whether we're in a GUI session (issue2553)
2. Mercurial 1.8.4 (2011-06-01)
This is a regular time-based bugfix release.
bookmarks: do not forward merged bookmark (issue1877)
- changelog: convert user and desc from local encoding early
- fix bookmarks rollback behavior
- hgrc.5: document shell aliases
httprepo: proper handling of invalid responses without content-type (issue2019)
httprepo: send URL redirection notices to stderr (issue2828)
localrepo: don't add deleted files to list of modified/added files (issue2761)
localrepo: ignore tags to unknown nodes (issue2750)
mq: strip extra whitespace from node ids in header (issue2790)
rebase: restore mq guards after rebasing (issue2107)
- revset: expand help for contains predicate
- revset: note case-insensitive matches in keyword and user
- revset: note case-sensitive match in grep
revset: report a parse error if a revset is not parsed completely (issue2654)
- revset: the name is optional for the tag predicate
- simplemerge: do not allow binary files to abort an entire merge
strip: make it clear that --force discards changes (issue310)
subrepo: don't crash when git .hgsubstate is empty (issue2716)
subrepo: make stdin for svn a pipe for non-interactive use (issue2759)
- subrepo: respect non-default path for incoming/outgoing
subrepo: svn abort now depends on exit code (issue2833)
subrepo: use code from 71ea5b only if Python needs it (issue2795)
tags: catch more corruption during cache parsing (issue2779)
3. Mercurial 1.8.3 (2011-05-01)
This is a regular time-based bugfix release.
convert: make filemap prune useless branch closing revs (issue2774)
encoding: avoid localstr when a string can be encoded losslessly (issue2763)
extdiff: fix broken symlinks handling (issue1909)
- help config: explain that config files do not exist by default
- hgweb: add bookmark labels to gitweb theme
- hgweb: add missing bookmarks definition to coal/map
- hgweb: add missing bookmarks templates to atom/rss styles
- hgweb: add separate bookmarks listing to gitweb theme
- hgweb: add separate bookmarks listing to monoblue theme
- hgweb: detect change based on changelog size too
hgweb: fix inconsistant display of graphlog (issue1706)
- hgweb: fix typo and inactive link in page_nav and page_header of gitweb's help
- hgweb: fix typo in page-header of monoblue's help template
- hgweb: format page_nav of gitweb/error.tmpl and add missing links
rebase: don't mark file as removed if missing in parent's manifest (issue2725)
- subrepo: handle svn tracked/unknown directory collisions
subrepo: prevent url normalization from removing // in ssh paths (issue2556)
subrepo: tell Subversion when we are non-interactive (issue2759)
url: use a regex to hide unsupported ssh passwords (issue2754)
- zeroconf: notify the Zeroconf threads when hg exits
4. Mercurial 1.8.2 (2011-04-01)
This is a regular time-based bugfix release.
bookmarks: discard current bookmark if absent from the bookmarks (issue2692)
- bookmarks: fix update of the current bookmark during rename
color: port to using ctypes (issue2687)
convert/svn: fix _iterfiles() output in root dir case (issue2647)
- eol: do not abort when win32text is found, only warn
- eol: use dirstate methods to clear dirstate
- fix compiling of extensions for OS X and XCode 4.0
- hgweb: add display of bookmarks for changelog and changeset
- hgweb: add separate page with bookmarks listing
merge: avoid unlinking destination of merge when case changes (issue2715)
- mq: do not let qrefresh write bad patch
pager: don't page stderr if it's being redirected (issue2541)
push/outgoing: print remote target path even if there's an error (issue2561)
- subrepo: recognize scp-style paths as git URLs
templates: widen the graph canvas (issue2683)
5. Mercurial 1.8.1 (2011-03-10)
This release backs out a behavior change for so-called 'fast-forward' merges on named branches.
annotate: rewrite to deal with crossed linkrevs (issue2682)
- bookmark: fix invalidation of localrepo._bookmarkcurrent
- cacert: improve error report when web.cacert file does not exist
- contrib: update tcsh_completion for Mercurial 1.8
- hgcia: accept "queued." xmlrpc return as success
- hgweb: fix filelog rss links generation
hgweb: use tip in gitweb/monoblue filelog rss links (issue2677)
- merge: back out single-parent fast-forward merge
merge: drop resolve state for mergers with identical contents (issue2680)
merge: improve unresolved conflicts warning (issue2681)
- mergetools: add alternate registry keys for 32bit apps on 64bit O/S
- mq: forbid commit of merge involving mq patches
subrepo: backout 67fbe566eff1, --force requires svn >= 1.5
- subrepo: don't crash when git repo is missing
- subrepo: handle svn tracked/unknown directory collisions
wix: drop bin/ folder from MSI installers (issue2673)
6. Mercurial 1.8 (2011-03-01)
6.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
6.2. Subrepos
- New support for git subrepos
- Various improvements to merge, update, and commit logic
6.3. Windows
- Numerous robustness improvements for quirks in Windows file handling
Now uses the native ctypes module rather than PyWin32
6.4. Extensions
- eol: filter aliases for compatibility with win32text
mq: --exact option for qpush
- mq: various robustness improvements
- progress: remaining time estimates
7. Mercurial 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
8. Mercurial 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
9. Mercurial 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)
10. Mercurial 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
11. Mercurial 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)
12. Mercurial 1.7 (2010-11-01)
12.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)
12.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)
12.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)
12.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
12.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)
12.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
12.7. contrib
- mergetools.hgrc: add vimdiff
- zsh completion: support bookmarks and patchbomb extensions
- zsh completion: add qpush --move option
12.8. Windows
- 64-bit Inno Setup installer
handle spaces in path to Python (issue2074)