Size: 5819
Comment:
|
Size: 21102
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Be sure to read [:UpgradeNotes]. See also [:RoadMap]. [[TableOfContents()]] (see [:/Archive:archive] for older versions) == Version 1.0.1 - 2008-05-22 == Bugfix release. For details see here: (how does one line to all changesets between two tags?) == 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 |
#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.) == 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 * 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) ---- CategoryProcess CategoryProject |
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)