15977
Comment:
|
18975
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
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].) |
Be sure to read [[UpgradeNotes]] and, if relevant, [[API_Changes|API Changes]]. <<TableOfContents>> (See [[/Archive|archive]] for older versions. New versions will be released according to the [[TimeBasedReleasePlan|time-based release plan]].) == 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 |
Line 145: | Line 222: |
* hgcia: new extension to facilitate communication with [http://cia.vc/ CIA] | * hgcia: new extension to facilitate communication with [[http://cia.vc/|CIA]] |
Line 192: | Line 269: |
* 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]) | * 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]]) |
Line 259: | Line 336: |
* greatly improved [:MergeToolConfiguration:merge tool configuration], see "hgrc.5.txt" for details | * greatly improved [[MergeToolConfiguration|merge tool configuration]], see "hgrc.5.txt" for details |
Release Notes
Be sure to read UpgradeNotes and, if relevant, API Changes.
Contents
(See archive for older versions. New versions will be released according to the time-based release plan.)
1. Version 1.3 - 2009-07-01
1.1. Major Changes
experimental support for sub-repositories
- Python 2.3 is no longer supported; now requires Python 2.4-2.6
1.2. 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
1.3. 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
1.4. 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
1.5. Extensions
experimental 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
2. 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
3. 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)
4. 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
5. 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
6. 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 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
7. 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 (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
8. 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
9. Version 1.0 - 2008-03-24
General:
greatly improved 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"
10. 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
11. 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