Matt Mackall <mpm@selenic.com> [Tue, 22 Nov 2011 17:34:22 -0600] rev 15555
merge with stable
Mads Kiilerich <mads@kiilerich.com> [Tue, 22 Nov 2011 19:56:26 +0100] rev 15554
tests: test-largefiles.t should not try to escape from $TESTTMP
Mads Kiilerich <mads@kiilerich.com> [Tue, 22 Nov 2011 19:52:23 +0100] rev 15553
largefiles: file storage should be relative to repo, not relative to cwd
Revealed by the test in
1fd126cd2d91.
Augie Fackler <durin42@gmail.com> [Tue, 22 Nov 2011 12:06:42 -0600] rev 15552
clone: don't save user's password in .hg/hgrc (Issue3122)
Matt Mackall <mpm@selenic.com> [Tue, 22 Nov 2011 17:26:32 -0600] rev 15551
posix: add extended support for OS X path folding
OS X does the following transformation on paths for comparisons:
a) 8-bit strings are decoded as UTF-8 to UTF-16
b) undecodable bytes are percent-escaped
c) accented characters are converted to NFD decomposed form, approximately
d) characters are converted to _lowercase_ using internal tables
Both (c) and (d) are done using internal tables that vary from release
to release and match Unicode specs to greater or lesser extent. We
approximate these functions using Python's internal Unicode data.
With this change, Mercurial will (in almost all cases) match OS X
folding and not report unknown file aliases for files in UTF-8 or
other encodings.
Matt Mackall <mpm@selenic.com> [Tue, 22 Nov 2011 17:26:31 -0600] rev 15550
dirstate: use util.normcase to build foldmap
Martin Geisler <mg@lazybytes.net> [Tue, 22 Nov 2011 18:16:59 +0100] rev 15549
merge with stable
Martin Geisler <mg@lazybytes.net> [Tue, 22 Nov 2011 17:51:43 +0100] rev 15548
largefiles: fix 'hg clone . ../foo' OSError abort
Operating on a non-existant file can cause both IOError and OSError,
depending on the function used: open raises IOError, os.lstat raises
OSError.
The largefiles code called dirstate.normal, which in turn calls
os.lstat, so OSError is the right exception to catch here.
Mads Kiilerich <mads@kiilerich.com> [Tue, 22 Nov 2011 01:37:26 +0100] rev 15547
tests: test-patchbomb.t cleanup
Let commit messages and file names describe the facts without making incorrect
guess of the actual handling of it.
Mads Kiilerich <mads@kiilerich.com> [Tue, 22 Nov 2011 01:37:26 +0100] rev 15546
tests: show actual output in test-patchbomb.t
Drop fixheader and decode base64 encoded content and show non-ascii content.
Mads Kiilerich <mads@kiilerich.com> [Tue, 22 Nov 2011 01:37:26 +0100] rev 15545
tests: test findexe() access check fixed in
58f96703a9ab
Mads Kiilerich <mads@kiilerich.com> [Tue, 22 Nov 2011 01:37:26 +0100] rev 15544
check-code: fix return code initialization
Don't crash when nothing is tested, but return failure when other files than
the last one fails.
Matt Mackall <mpm@selenic.com> [Mon, 21 Nov 2011 13:11:17 -0600] rev 15543
merge with stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 21 Nov 2011 00:39:32 +0100] rev 15542
tests: make test-commandserver.py independent of line ending and slash direction
Mads Kiilerich <mads@kiilerich.com> [Mon, 21 Nov 2011 00:39:32 +0100] rev 15541
tests: make test-commandserver.py output readable
Mads Kiilerich <mads@kiilerich.com> [Mon, 21 Nov 2011 00:39:32 +0100] rev 15540
tests: 'hghave unix-permissions' for test-import.t
'hg import' of a patch with mode changes requires unix permissions support in
the file system.
Mads Kiilerich <mads@kiilerich.com> [Mon, 21 Nov 2011 00:39:32 +0100] rev 15539
tests: skip color test on platforms without tic
Mads Kiilerich <mads@kiilerich.com> [Sun, 20 Nov 2011 23:09:32 +0100] rev 15538
update: don't clobber untracked files with wrong casing
Matt Mackall <mpm@selenic.com> [Sun, 20 Nov 2011 16:07:07 -0600] rev 15537
merge with i18n
Matt Mackall <mpm@selenic.com> [Sun, 20 Nov 2011 16:06:51 -0600] rev 15536
merge with i18n
Wagner Bruna <wbruna@softwareexpress.com.br> [Fri, 18 Nov 2011 10:21:56 -0200] rev 15535
i18n-pt_BR: synchronized with
00276525e2b7
Matt Mackall <mpm@selenic.com> [Sun, 20 Nov 2011 16:06:18 -0600] rev 15534
merge with stable
Mads Kiilerich <mads@kiilerich.com> [Fri, 18 Nov 2011 01:32:28 +0100] rev 15533
help: Backed out changeset
e99facd2cd2a, description of file urls
This help entry didn't try to describe the 'localhost' notation. It described a
non-standard host-less notation where 'local' just was the first part of a
sample relative path. It describe "urls" with relative and absolute paths like:
file://file.txt
file:///tmp/file.txt
file://c:/tmp/file.txt
Matt Mackall <mpm@selenic.com> [Sun, 20 Nov 2011 15:29:55 -0600] rev 15532
revset: follow(nosuchfile) should give an empty set (
issue3114)
Eric Roshan Eisner <ede@alum.mit.edu> [Fri, 11 Nov 2011 11:11:11 +1111] rev 15531
subrepo: fix git status false positive (
issue3109)
It turns out there's a separate command to force git to look at file contents
if the stat has changed.
Patrick Mezard <pmezard@gmail.com> [Fri, 18 Nov 2011 14:23:03 +0100] rev 15530
mdiff: replace wscleanup() regexps with C loops
On my system it reduces:
hg annotate -w mercurial/commands.py
from 36s to less than 8s, to be compared with 6.3s when run without whitespace
options.
Patrick Mezard <pmezard@gmail.com> [Fri, 18 Nov 2011 14:16:47 +0100] rev 15529
mdiff: split lines in allblocks() only when necessary
These are only required to handle the --ignore-blank-lines case
Patrick Mezard <pmezard@gmail.com> [Fri, 18 Nov 2011 12:04:31 +0100] rev 15528
annotate: support diff whitespace filtering flags (
issue3030)
splitblock() was added to handle blocks returned by bdiff.blocks() which differ
only by blank lines but are not made only of blank lines. I do not know exactly
how it could happen but mdiff.blocks() threshold behaviour makes me think it
can if those blocks are made of very popular lines mixed with popular blank
lines. If it is proven to be wrong, the function can be dropped.
The first implementation made annotate share diff configuration entries. But it
looks like users will user -w/b for annotate but not for diff, on both the
command line and hgweb. Since the latter cannot use command line entries, we
introduce a new [annotate] section duplicating the diff whitespace options.
Pascal Quantin <pascal.quantin@gmail.com> [Sun, 20 Nov 2011 19:14:36 +0100] rev 15527
setup: fix py2exe generation broken by
c3a6ec304055 (
issue3116)
Py2exe is patching default distutils Distribution class. This patch ensures
that the right one is taken when calling hgdist class.
Patrick Mezard <pmezard@gmail.com> [Fri, 18 Nov 2011 12:01:04 +0100] rev 15526
mdiff: make diffblocks() return all blocks, matching and changed
Annotate uses matching blocks not changed ones.
Patrick Mezard <pmezard@gmail.com> [Fri, 18 Nov 2011 11:53:38 +0100] rev 15525
mdiff: extract blocks whitespace normalization in diffblocks()
We want to reuse it in annotate for whitespace normalization.
Matt Mackall <mpm@selenic.com> [Thu, 17 Nov 2011 23:02:18 -0600] rev 15524
merge with crew
Matt Mackall <mpm@selenic.com> [Thu, 17 Nov 2011 23:01:58 -0600] rev 15523
setup: backout
8504699d1aa6
Change wasn't compatible with Python 2.x
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15522
tests: don't use stdout redirection for test data
Stdout redirection is not binary safe everywhere - for example not on windows
with msys.
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15521
tests: hide 'No such file or directory' messages
Windows will use a different and localized message.
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15520
tests: add missing '(glob)'s to match '\' in paths in test output on windows
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15519
tests: add 'hghave system-sh' to skip tests on windows
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15518
tests: launch hghave with python interpreter without relying on hash-bang
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15517
tests: use the specified shell for running old fashioned sh tests
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15516
tests: add missing 'hghave unix-permissions'
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:14 +0100] rev 15515
tests: remove hacks for testing if file or directory exists
Mads Kiilerich <mads@kiilerich.com> [Wed, 16 Nov 2011 03:45:06 +0100] rev 15514
tests: don't leave temporary directories without write permission behind
Matt Mackall <mpm@selenic.com> [Thu, 17 Nov 2011 16:53:17 -0600] rev 15513
merge with stable
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> [Wed, 16 Nov 2011 08:34:36 +0100] rev 15512
hook: flush stdout before redirecting to stderr
When hook output redirection is enabled (e.g. when cloning over ssh), hook
output on stdout is redirected to stderr, to prevent the repository data on
stdout from being corrupted.
In certain cases, the redirection could cause part of the repository data to
end up on stderr as well. In case of a clone, this causes:
"abort: consistency error in delta!"
This was seen with a clone over ssh, an outgoing hook present (any
non-python type, e.g. 'pwd'), on certain repositories only,
probably depending on the distribution of the sent data)
This patch updates the hook redirection code to flush stdout before
redirecting, removing the problem.
Patrick Mezard <pmezard@gmail.com> [Wed, 16 Nov 2011 12:53:10 +0100] rev 15511
import: fix parent selection when importing merges
With "wp1" and "wp2" the current working directory parents, "p1" and "p2" the
patch parents and "parents" the resulting commit parents, the current behaviour
is:
--bypass --exact p2 parents
0 0 0 [wp1, wp2]
0 0 1 [wp1, wp2]/buggy
0 1 0 [p1]
0 1 1 [p1, p2]
1 0 0 [wp1, wp2]
1 0 1 [p1, p2]
1 1 0 [p1]
1 1 1 [p1, p2]
The original behaviour before
f53dc0787424 was:
--bypass --exact p2 parents
0 0 0 [wp1, wp2]
0 0 1 if p1 == wp1 then [p1, p2] otherwise [wp1, wp2]
0 1 0 [p1]
0 1 1 [p1, p2]
This patch restores the previous behaviour when --bypass is not set, and align
--bypass behaviour when --exact is not set with merge diffs.
Patrick Mezard <pmezard@gmail.com> [Mon, 14 Nov 2011 18:16:01 +0100] rev 15510
patch: simplify hunk extents parsing
Do not capture unwanted groups in regexps
Patrick Mezard <pmezard@gmail.com> [Sun, 13 Nov 2011 21:37:14 +0100] rev 15509
diff: --ignore-blank-lines was too enthusiastic
It was ignoring changes from:
ab
to:
a
b
Stefano Tortarolo <stefano.tortarolo@gmail.com> [Sat, 12 Nov 2011 14:00:25 +0100] rev 15508
graft: disallow grafting grafted csets in specific situations (
issue3091)
In particular, we do not allow:
- grafting an already grafted cset onto its original branch
- grafting already grafted csets with the same origin onto each other
Stefano Tortarolo <stefano.tortarolo@gmail.com> [Sat, 12 Nov 2011 11:23:52 +0100] rev 15507
graft: use revs to make tests more readable
Stefano Tortarolo <stefano.tortarolo@gmail.com> [Sat, 12 Nov 2011 13:15:40 +0100] rev 15506
graft: preserve original source in subsequent grafts
Dmitry Panov <dop@itoolabs.com> [Sun, 13 Nov 2011 00:29:26 +0000] rev 15505
makedate: wrong timezone offset if DST rules changed this year (
issue2511)
Python's time module sets timezone and altzone based on UTC offsets of
two dates: first and middle day of the current year. This approach
doesn't work on a year when DST rules change.
For example Russia abandoned winter time this year, so the correct UTC
offset should be +4 now, but time.timezone returns 3 hours difference
because that's what it was on 01.01.2011.
Related python issue: http://bugs.python.org/
issue1647654
Marc-Antoine Ruel <maruel@google.com> [Thu, 17 Nov 2011 15:44:37 -0600] rev 15504
posix: fix findexe() to check for file type and access
Mads Kiilerich <mads@kiilerich.com> [Tue, 15 Nov 2011 02:44:55 +0100] rev 15503
forget: use forward slashes for internal paths
forget into a subrepo failed on windows because pathes were joined with \.
Mads Kiilerich <mads@kiilerich.com> [Fri, 11 Nov 2011 01:25:47 +0100] rev 15502
check-code: add --nolineno option for hiding line numbers
This makes the output more stable when it is used as a whitelist.
Matt Mackall <mpm@selenic.com> [Wed, 16 Nov 2011 18:04:19 -0600] rev 15501
merge: give a special message for internal:merge failure (
issue3105)
Simon Heimberg <simohe@besonet.ch> [Sat, 12 Nov 2011 02:08:01 +0100] rev 15500
setup: raise when executing with python3 without c2to3 argument