Mercurial 0.9 (2006-05-10)#
Mercurial 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
Mercurial 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
Mercurial 0.9.3 (2006-12-17)#
Bug fixes:
fix a merge copy/rename corner case
fix spurious new heads message with push -r
fix hg export %n sequence numbers
fix shell quoting on Windows
fix charset encoding for hgwebdir and obfuscated addresses
fix missing generated files for distribution tarball
fix convert-repo tag updates and transcoding of committer
add instructions for redoing failed merges
Documentation fixes:
hg cat, manifest, and tag default to current parent revision.
CGI stub comments clarified
corrected synopses for many commands
improve doc building and distribution
convert-repo: update usage information
Extension fixes:
mq: fix strip on Windows
mq: fix some guards corner cases
gpg: make 'hg sign' default to current parent
Mercurial 0.9.2 (2006-12-10)#
New features:
merge now follows renames and copies
new layout protects against case-insensitivity issues
new branch and branches commands for managing named branches
push command accepts -r for pushing specified heads or named branches
proper storage of changelog and other metadata in UTF-8
log, annotate and grep
--followfollow renames and copiesdate parsing is improved and log, update, and revert now accept --date ranges
additional command options for log, status, addremove
improved schema for hgweb URLs
bundle can now use
-rand--baseremoving the need of an base repositorysupport for git-style extended patches with --git option
new debuginstall command to check for common installation issues
New contributions and extensions:
mq
support for quilt-style guards
can import existing changesets into mq (
qimport -r) or commit mq patches as regular changesets (qdel -r)edit the log message with
qrefresh -erename patches with
qrenameqheader to display the patch header of particular patches, and
--summaryfor qseries, qapplied, qunapplied and qtopcombine patches with
qfoldqrefresh supports pattern options to import only a subset of the changes into a patch, to help split changes into multiple patches
patch names for applied patches act like local tags, and can be used in the revision arguments of any hg command
hgk
browse a subset of the entire history with
--limitand revision range argumentsshows revision numbers as well as node hashes
churn: graph lines of code changed per user over a range of history
patchbomb: generate inline attachments with
-a
Behavior changes:
hg cat defaults to the working directory revision rather than tip
hg manifest no longer shows internal file revision hashes by default
hg revert now requires the -a flag to revert all files
Developer notes:
new high-level API functions in the
hgmodulenew context API simplifies many operations
The changelog can now include arbitrary metadata in key: value form
Mercurial 0.9.1 (2006-07-24)#
These are the major changes between Mercurial 0.9 and 0.9.1:
New features:
You can now configure your
hgwebserver to let remote userspushchanges over http.You can now
importa patch in a mail message by saving the mail message, and importing it. This works for patches sent either inline or as attachments.The
diffcommand now accepts-rA:Bsyntax as a synonym for-r A -r B, and adds-band-Boptions.
New contributions and extensions:
The
aclextension lets you lock down parts of a repository against incoming changesThe
extdiffextension lets you run your favourite graphical change viewerComprehensive integration with the
vimeditorA restricted shell for
ssh-hosted repositoriesAn importer for
darcsrepositories
New hooks added:
preupdateis run before an update or merge in the working directory.updateis run after an update or merge in the working directory.
Behaviour changes:
NOTE: Mercurial as installed by the Windows binary installer no longer performs automatic line-ending conversion for Unix/Linux compatibility. To re-enable this feature, edit your
mercurial.inifile after you upgrade.The Windows binary installer now automatically adds
hgto your%PATH%.The
backoutcommand now runs an editor by default, to let you modify the commit message for a backed-out changeset.An earlier problem with parsing of tags has been fixed. This makes tag parsing slower but more reliable.
Memory usage and performance improvements:
The
removecommand has been rewritten to be hundreds of times faster in large repositories.It is now possible to
clonea repository very quickly over a LAN, if the server is configured to allow it. See the newserversection in thehgrcdocumentation.
Other changes of note:
Mercurial will now print help for an extension if you type
hg help EXT_NAME.The usual array of bug fixes and documentation improvements.
The integrated web server is now more WSGI-compliant.
Work has begun to solidify Mercurial's API for use by third-party packages.
Mercurial 0.9 (2006-05-10)#
These are the major changes between Mercurial 0.8.1 and 0.9:
The repository file format has been improved.
This has resulted in an average 40% reduction in disk space usage.
The new format (called RevlogNG) is now the default.
Mercurial works perfectly with both the old and new repository file formats. It can transfer changes transparently between repositories of either format.
To use the new repository format, simply use
hg clone --pullto clone an existing repository.Note: Versions 0.8.1 and earlier of Mercurial cannot read RevlogNG repositories directly, but they can
clone,pullfrom, andpushto servers that are serving RevlogNG repositories.
Memory usage has been improved by over 50% for many common operations.
Substantial performance improvements on large repositories.
New commands:
archive- generate a directory tree snapshot, tarball, or zip file of a revision
Deprecated commands:
addremove- replaced byaddandremove --afterforget- replaced byrevertundo- replaced byrollback
New extensions:
Bugzilla integration hook
Email notification hook
Nested repositories are now supported. Mercurial will not recurse into a subdirectory that contains a
.hgdirectory. It is treated as a separate repository.The standalone web server,
hg serve, is now threaded, so it can talk to multiple clients at a time.The web server can now display a "message of the day".
Support added for hooks written in Python.
Many improvements and clarifications to built-in help.