Matt Mackall <mpm@selenic.com> [Wed, 25 Aug 2010 15:20:25 -0500] rev 12040
merge with stable
Brodie Rao <brodie@bitheap.org> [Sat, 21 Aug 2010 22:48:14 -0400] rev 12039
alias: make shadowing behavior more consistent (issue2054)
Currently, given an alias like the following:
[alias]
summary = summary --remote
The alias might be executed - or it might not - depending on the order
of the cmdtable dict.
This happens because cmdalias gets assigned back to the cmdtable like so:
cmdtable['summary'] = ...
Yet '^summary|sum' is still in the table, so which one cmdutil.findcmd()
chooses isn't deterministic.
This patch makes cmdalias assign back to '^summary|sum'. It uses the same
cmdtable key lookup that extensions.wrapcommand() does.
Yuya Nishihara <yuya@tcha.org> [Tue, 24 Aug 2010 23:30:51 +0900] rev 12038
hgweb: handle exception of misconfigured path on index page
If hgweb.config contains wrong path mapping, hgweb causes internal server
error on repository index page.
This patch changes makeindex() to ignore RepoError, because it looks to be
designed to suppress configuration error.
Matt Mackall <mpm@selenic.com> [Tue, 24 Aug 2010 13:13:35 -0500] rev 12037
statichttprepo: disable pushkey
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Fri, 13 Aug 2010 16:05:08 +0200] rev 12036
mq: extend support for the --mq argument to extension commands
This allows commands like `purge' to accept the --mq option.
Patrick Mezard <pmezard@gmail.com> [Sun, 22 Aug 2010 13:17:34 +0200] rev 12035
repository: drop unused rjoin() method
This method was introduced by cfeeac24fc1e but grepping the history does not
reveal any call. Extensions may use it but the method intent is not even clear
to me.
Adrian Buehlmann <adrian@cadifra.com> [Tue, 24 Aug 2010 15:13:11 +0200] rev 12034
tests: unify test-export
Martin Geisler <mg@lazybytes.net> [Wed, 25 Aug 2010 16:40:49 +0200] rev 12033
revert: wrap long line
Martin Geisler <mg@lazybytes.net> [Wed, 25 Aug 2010 16:23:32 +0200] rev 12032
util: remove lexists, Python 2.4 introduced os.path.lexists
Martin Geisler <mg@lazybytes.net> [Wed, 25 Aug 2010 13:40:46 +0200] rev 12031
Merge with stable
Martin Geisler <mg@lazybytes.net> [Wed, 25 Aug 2010 13:29:46 +0200] rev 12030
context: mark string for translation
Mads Kiilerich <mads at kiilerich.com> [Thu, 01 Jul 2010 16:30:41 +0200] rev 12029
test-convert-cvs: test fuzz
Mads Kiilerich <mads@kiilerich.com> [Mon, 23 Aug 2010 22:32:36 +0200] rev 12028
test-dispatch: drop test for missing working directory
hstuart reported problems when the local Python has been configured to do stuff
and crash before reaching the expected error handler.
Martin Geisler <mg@lazybytes.net> [Mon, 23 Aug 2010 22:22:05 +0200] rev 12027
Merge with stable
Martin Geisler <mg@lazybytes.net> [Mon, 23 Aug 2010 22:16:56 +0200] rev 12026
bookmarks: guard against listing bookmarks on unsupported repos
This fixes clones and pulls from statichttprepository repos.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Mon, 23 Aug 2010 13:28:04 +0200] rev 12025
mdiff.patch(): add a special case for when the base text is empty
remove the special casing from revlog.addgroup()
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Mon, 23 Aug 2010 13:24:19 +0200] rev 12024
revlog: add rawsize(), identical to size() but not subclassed by filelog
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 23:17:17 +0200] rev 12023
revlog.addrevision(): move computation of nodeid in addrevision()
The check "if node in nodemap" is already done earlier in addgroup().
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 19:41:04 +0200] rev 12022
contrib/compress: compress should activate parentdelta
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 19:27:09 +0200] rev 12021
contrib/compress: correct ordering of copying
Changelog should always be copied last, otherwise readers can see an
inconsistent repo.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 19:26:07 +0200] rev 12020
contrib/compress: refactor revlog copying
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 19:13:30 +0200] rev 12019
contrib/compress: use store API instead of a collector
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 18:29:30 +0200] rev 12018
contrib/compress: proper lock handling
Lock the src repo before beginning the compression and lock the destination
repo before copying the revlogs.
Proper handling of exceptions.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 18:23:32 +0200] rev 12017
contrib/compress: use hg API to compute the destination path
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 18:21:30 +0200] rev 12016
contrib/compress: use repo's transaction method
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 22 Aug 2010 18:18:36 +0200] rev 12015
contrib/compress: remove unused variables
Brodie Rao <brodie@bitheap.org> [Sat, 21 Aug 2010 23:24:52 -0400] rev 12014
tests: unify test-hgrc
Patrick Mezard <pmezard@gmail.com> [Sun, 22 Aug 2010 12:04:15 +0200] rev 12013
tests: remove test-log.out, useless after unification
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 21 Aug 2010 19:31:59 +0200] rev 12012
revlog: fix docstring
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 21 Aug 2010 19:30:42 +0200] rev 12011
deltaparent(): don't return nullrev for a revision containing a full snapshot
this allows us to simplify manifest.readdelta and revlog.revdiff
Matt Mackall <mpm@selenic.com> [Sat, 21 Aug 2010 10:48:49 -0500] rev 12010
merge with stable
Matt Mackall <mpm@selenic.com> [Sat, 21 Aug 2010 10:44:57 -0500] rev 12009
tests: fix up bisect test output
Matt Mackall <mpm@selenic.com> [Sat, 21 Aug 2010 10:41:29 -0500] rev 12008
merge: move reverse-merge logic out of filemerge (issue2342)
Matt Mackall <mpm@selenic.com> [Fri, 20 Aug 2010 21:28:14 -0500] rev 12007
bisect: add test for unrelated starting revisions
Matt Mackall <mpm@selenic.com> [Fri, 20 Aug 2010 21:23:47 -0500] rev 12006
merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 20 Aug 2010 17:16:37 -0500] rev 12005
bisect: better message for unrelated starting revisions
Matt Mackall <mpm@selenic.com> [Fri, 20 Aug 2010 15:31:05 -0500] rev 12004
debuginstall: report installpath
Adrian Buehlmann <adrian@cadifra.com> [Fri, 20 Aug 2010 18:26:20 +0200] rev 12003
tests: unify test-glog
Matt Mackall <mpm@selenic.com> [Thu, 19 Aug 2010 17:33:46 -0500] rev 12002
bookmarks: fix long line
Matt Mackall <mpm@selenic.com> [Thu, 19 Aug 2010 17:29:13 -0500] rev 12001
merge with stable
Vishakh H <vsh426@gmail.com> [Fri, 13 Aug 2010 19:42:28 +0530] rev 12000
revlog: addgroup re-adds punched revisions for missing parents
While reading changegroup if a node with missing parents is encountered,
we add a punched entry in the index with null parents for the missing
parent node.
Vishakh H <vsh426@gmail.com> [Fri, 13 Aug 2010 19:41:51 +0530] rev 11999
revlog: generate full revisions when parent node is missing
The full revision is sent if the first parent, against which diff is calculated, is
missing at remote. This happens in the case of shallow clones.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 20 Aug 2010 00:17:50 +0200] rev 11998
revlog.revision(): inline deltachain computation
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 20 Aug 2010 00:17:50 +0200] rev 11997
revlog.revision(): remove debug code
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 20 Aug 2010 00:17:50 +0200] rev 11996
revlog.revision(): don't use nullrev as the default value for the cache
I is probably a bug if the deltachain computation think there was a cache hit
at nullrev. Use None instead, this will never trigger a cache hit.
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 20 Aug 2010 00:17:50 +0200] rev 11995
revlog.revision(): minor cleanup
Rename some variables, making the name more obvious (in particular "cache" was
actually two different variable.
Move code around, moving the index preloading before the deltachain computation,
without that index preloading was useless (everything was read in deltachain).
David Soria Parra <dsp@php.net> [Thu, 19 Aug 2010 15:04:21 -0400] rev 11994
bookmarks: Check if the bookmark to delete exists on the remote
Patrick Mezard <pmezard@gmail.com> [Thu, 19 Aug 2010 23:13:20 +0200] rev 11993
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Thu, 19 Aug 2010 22:51:09 +0200] rev 11992
win32: remove useless lstat() fallback in nlinks()
The fallback was introduced by 3b4f05ff3130 at the same time than
nlinks(). Apparently it only handles the case where target path
does not exist. Just raise IOError directly.
Patrick Mezard <pmezard@gmail.com> [Thu, 19 Aug 2010 22:51:09 +0200] rev 11991
win32: correctly break hardlinks on network drives (issue761)
win32.nlinks() was often returning 1 instead of the correct
hardlinks count when reading from network drives. This made
commit or push to a repository on a network share to fail
breaking the hardlinks in the datastore, possibly causing
integrity errors in repositories linked locally on the remote
side.
Here is what the MSDN says about GetFileInformationByHandle():
Depending on the underlying network features of the operating
system and the type of server connected to, the
GetFileInformationByHandle function may fail, return partial
information, or full information for the given file.
In practice, we never got the correct hardlinks count when
reading from and to many combinations of Window XP, 2003, Vista
and 7, via network drives or RDP shares. It always returned 1
instead. The only setup returning an accurate links count was a
samba on Debian.
To avoid this, Mercurial now breaks the hardlinks unconditionally
when writing to a network drive.
Matt Mackall <mpm@selenic.com> [Thu, 19 Aug 2010 11:51:30 -0500] rev 11990
merge with stable
Steve Losh <steve@stevelosh.com> [Wed, 18 Aug 2010 18:56:44 -0400] rev 11989
aliases: provide more flexible ways to work with shell alias arguments
This patch changes the functionality of shell aliases to add more powerful
options for working with shell alias arguments.
First: the alias name + arguments to a shell alias are set as an HG_ARGS
environment variable, delimited by spaces. This matches the behavior of hooks.
Second: any occurrences of "$@" (without quotes) are replaced with the
arguments, separated by spaces. This happens *before* the alias gets to the shell.
Third: any positive numeric variables ("$1", "$2", etc) are replaced with the
appropriate argument, indexed from 1. "$0" is replaced with the name of the
alias. Any "extra" numeric variables are replaced with an empty string. This
happens *before* the alias gets to the shell.
These changes allow for more flexible shell aliases:
[alias]
echo = !echo $@
count = !hg log -r "$@" --template='.' | wc -c | sed -e 's/ //g'
qqueuemv = !mv "`hg root`/.hg/patches-$1" "`hg root`/.hg/patches-$2"
In action:
$ hg echo foo
foo
$ hg count 'branch(default)'
901
$ hg count 'branch(stable) and keyword(fixes)'
102
$ hg qqueuemv myfeature somefeature
Steve Losh <steve@stevelosh.com> [Wed, 18 Aug 2010 18:18:26 -0400] rev 11988
util: add an interpolate() function to for replacing multiple values
util.interpolate can be used to replace multiple items in a string all at once
(and optionally apply a function to the replacement), without worrying about
recursing:
>>> import util
>>> s = '$foo, $spam'
>>> util.interpolate(r'\$', { 'foo': 'bar', 'spam': 'eggs' }, s)
'bar, eggs'
>>> util.interpolate(r'\$', { 'foo': 'spam', 'spam': 'foo' }, s)
'spam, foo'
>>> util.interpolate(r'\$', { 'foo': 'spam', 'spam': 'foo' }, s, lambda s: s.upper())
'SPAM, FOO'
The patch also changes filemerge.py to use this new function.
Brodie Rao <brodie@bitheap.org> [Wed, 18 Aug 2010 10:53:52 -0400] rev 11987
convert: use encoding.encoding instead of locale.getpreferredencoding()
The latter may not return useful results in certain OS X environments.
Brodie Rao <brodie@bitheap.org> [Wed, 18 Aug 2010 10:53:50 -0400] rev 11986
convert: properly set encoding for gnuarch converter
Matt Mackall <mpm@selenic.com> [Thu, 19 Aug 2010 11:14:09 -0500] rev 11985
log: add logging for commands
Matt Mackall <mpm@selenic.com> [Thu, 19 Aug 2010 11:14:02 -0500] rev 11984
ui: add logging hook
Pradeepkumar Gayam <in3xes@gmail.com> [Wed, 18 Aug 2010 06:05:09 +0530] rev 11983
tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com> [Wed, 18 Aug 2010 06:02:08 +0530] rev 11982
tests: unify test-merge9
Pradeepkumar Gayam <in3xes@gmail.com> [Wed, 18 Aug 2010 05:55:56 +0530] rev 11981
tests: unify test-merge8