680
Comment:
|
15503
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Changes from 0.6c to 0.7: {{{ core improved merge logic improved copy/rename support (still experimental) automatic binary file handling generic file filtering support various performance improvements command line new bundle/unbundle commands for exchanging native updates more natural support for remove, copy, and rename faster, more powerful log command new grep command for searching entire history support for plug-in extensions improved exception handling and debugging facilities hgweb optional downloading of tarballs and zip files Windows support hardlinking support newline conversion through file filtering contrib updated hgk }}} |
= Release Notes = Be sure to read [:UpgradeNotes]. [[TableOfContents()]] (See [:/Archive:archive] for older versions. New versions will be released according to the [:TimeBasedReleasePlan:time-based release plan].) == 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 (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 (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 (issue 1230) * fix inactive branches detection (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 (issue 1149) Extensions: * mq: * fix qrefresh losing metadata on the last refreshed file (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 |
Release Notes
Be sure to read [:UpgradeNotes].
(See [:/Archive:archive] for older versions. New versions will be released according to the [:TimeBasedReleasePlan:time-based release plan].)
1. 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)
2. Version 1.1.2 - 2008-12-31
This is a minor release including one security fix and two minor bug fixes
- improve path auditing (issue 1450)
- fix date-related test failures in test suite
- add graph controls to monoblue theme
3. 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
4. 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
5. 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 (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 (issue 1230)
- fix inactive branches detection (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 (issue 1149)
Extensions:
- mq:
- fix qrefresh losing metadata on the last refreshed file (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
6. 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
7. 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"
8. 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
9. 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