Alexander Solovyov <alexander@solovyov.net> [Tue, 07 Dec 2010 15:50:28 +0100] rev 13114
templatekw.showdiffstat: use ctx.diff() instead of calling patch
Adrian Buehlmann <adrian@cadifra.com> [Fri, 10 Dec 2010 16:10:14 +0100] rev 13113
localrepo: remove unneeded os.unlink call in wwrite
The opener already unlinks the filename before 'w'riting, for both
the symlink and the normal file case. It also now resets the flags
for normal files on 'w'rite, which makes this os.unlink call completely
redundant.
For Windows, removing this extra unlink call helps to avoid tripping
issue2524 (os.unlink followed by a write).
Adrian Buehlmann <adrian@cadifra.com> [Fri, 10 Dec 2010 15:14:05 +0100] rev 13112
opener: always reset flags on 'w'rite
only the patcher needs to preserve flags on write
Eric Eisner <ede@mit.edu> [Thu, 09 Dec 2010 16:52:14 -0500] rev 13111
subrepo: silence git output when ui.quiet is set
Eric Eisner <ede@mit.edu> [Thu, 09 Dec 2010 16:52:14 -0500] rev 13110
subrepo: show git command with --debug
Also removing the clutter of --no-pager, since none of these commands use
the pager.
Eric Eisner <ede@mit.edu> [Thu, 09 Dec 2010 16:52:14 -0500] rev 13109
subrepo: speed up git push logic
In many common cases where the subrepo is up to date with the remote repo,
hg push will only need to run one git-branch command to see that nothing
needs to be pushed.
Eric Eisner <ede@mit.edu> [Thu, 09 Dec 2010 16:52:14 -0500] rev 13108
subrepo: use subprocess.Popen without the shell
As well as simplifying the code, this makes subprocess calls about 25% faster.
Tested on a couple linux boxes.
python -mtimeit -s'import subprocess' 'subprocess.Popen(
"git version", shell=True, stdout=subprocess.PIPE).wait()'
python -mtimeit -s'import subprocess' 'subprocess.Popen(
["git","version"], stdout=subprocess.PIPE).wait()'
Eric Eisner <ede@mit.edu> [Thu, 09 Dec 2010 16:52:14 -0500] rev 13107
subrepo: treat git error code 1 as success
At least status, commit, merge-base, and diff all return 1 when not failing.
Eric Eisner <ede@mit.edu> [Thu, 09 Dec 2010 16:52:14 -0500] rev 13106
subrepo: gitsubrepo should inherit from abstractsubrepo
Mads Kiilerich <mads@kiilerich.com> [Fri, 10 Dec 2010 01:30:16 +0100] rev 13105
subrepo: initialize subrepo relative default paths relative to their root
Matt Mackall <mpm@selenic.com> [Wed, 08 Dec 2010 13:12:12 -0600] rev 13104
merge with stable
Brodie Rao <brodie@bitheap.org> [Tue, 07 Dec 2010 20:03:04 +1100] rev 13103
bookmarks: create undo.bookmarks using repo.opener instead of util.copyfile
This more closely matches how the other undo files are created, and we
don't care about settings permissions or times on the file, which can
fail if the user running hg doesn't own the file.
Brodie Rao <brodie@bitheap.org> [Tue, 07 Dec 2010 19:47:53 +1100] rev 13102
archival: don't set gzip filename header when there's no filename
This mainly affects hgweb, which can generate tar.gz archives without
filenames. Without this change, the header would be set to ".gz",
which can confuse Safari into extracting the file and renaming it to
"gz" when "Open 'safe' files after downloading" is enabled.
file(1) before:
hg-crew-
5e51254ad4d4.tar.gz: gzip compressed data, was ".gz", last modified: Thu Dec 2 11:46:20 2010, max compression
after:
hg-crew-
5e51254ad4d4.tar.gz: gzip compressed data, last modified: Thu Dec 2 11:46:20 2010, max compression
Matt Mackall <mpm@selenic.com> [Wed, 08 Dec 2010 11:18:26 -0600] rev 13101
build: don't delete precious version information on 'make clean'
setup.py rebuilds version information if it's locally available,
regardless if file already exists.
Patrick Mezard <pmezard@gmail.com> [Fri, 03 Dec 2010 11:40:30 +0900] rev 13100
patch: write .rej files without rewriting EOLs
Do not pass reject file content to patchfile.writelines() to:
- Avoid line endings transformations
- Avoid polluting overriding implementations with unrelated data. They should
override write_rej() to deal or ignore reject files properly.
Bug report, analysis and original patch and test by
Shun-ichi GOTO <shunichi.goto@gmail.com>
Brodie Rao <brodie@bitheap.org> [Tue, 07 Dec 2010 20:03:05 +1100] rev 13099
record: move copystat() hack out of util.copyfile() and into record
b2410ed2cbe9 updated copyfile to also copy over atimes and
mtimes. That behavior is specifically to trick editors into thinking
files that hg record has modified haven't changed. We don't really
care about preserving times in the general case.
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Tue, 07 Dec 2010 16:03:42 +0100] rev 13098
util: make atomicfiles closable
Eric Eisner <ede@mit.edu> [Mon, 06 Dec 2010 21:17:27 -0500] rev 13097
subrepo: drop arguments unsupported by old git
Eric Eisner <ede@mit.edu> [Mon, 06 Dec 2010 21:17:27 -0500] rev 13096
subrepo: work around old git's remote naming scheme
Older git versions use 'origin/master'
Current git uses 'remotes/origin/master'
Eric Eisner <ede@mit.edu> [Mon, 06 Dec 2010 21:17:27 -0500] rev 13095
subrepo: use environment variable instead of git commit's --date
Older git versions do not have a --date flag.
Eric Eisner <ede@mit.edu> [Mon, 06 Dec 2010 21:17:27 -0500] rev 13094
subrepo: parse git status's human-readable output
Older git versions do not have a machine-readable output, but the default
format has not changed over time.
Eric Eisner <ede@mit.edu> [Mon, 06 Dec 2010 21:17:27 -0500] rev 13093
subrepo: use subprocess's cwd instead of git's --work-tree
Some older git commands (e.g. git merge) do not properly recognize the
--work-tree argument, so abstract that away from git.
Eric Eisner <ede@mit.edu> [Mon, 06 Dec 2010 21:17:27 -0500] rev 13092
test-subrepo-git.t: make gitroot pushable earlier
Older git versions get confused when the git repo becomes bare.
Eric Eisner <ede@mit.edu> [Mon, 06 Dec 2010 21:17:27 -0500] rev 13091
test-subrepo-git.t: silence git output
Older git versions have different ideas of what output is considered quiet,
so the tests can be more version-blind.
Matt Mackall <mpm@selenic.com> [Mon, 06 Dec 2010 16:59:43 -0600] rev 13090
bdiff: Fix bogus NULL return
Matt Mackall <mpm@selenic.com> [Mon, 06 Dec 2010 16:42:48 -0600] rev 13089
bdiff: dynamically allocate hunks
Make the hunk list a singly-linked list rather than a large array.
Matt Mackall <mpm@selenic.com> [Mon, 06 Dec 2010 16:03:00 -0600] rev 13088
merge with stable
Eric Eisner <ede@mit.edu> [Sun, 28 Nov 2010 17:19:23 -0500] rev 13087
subrepo: lazily update git's local tracking branches
This continues the strategy of separation between hg pull and hg update in
git subrepos by only dealing with git's branches on an update. This behavior
tries to cover the bare essentials of the semantics of git pull in the subrepo
when the parent repo does hg pull and hg update.
Eric Eisner <ede@mit.edu> [Sun, 28 Nov 2010 15:21:23 -0500] rev 13086
subrepo: return both mapping directions from gitbranchmap
Eric Eisner <ede@mit.edu> [Sun, 28 Nov 2010 15:03:48 -0500] rev 13085
subrepo: strip gitcommand output
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Wed, 01 Dec 2010 21:46:08 +0100] rev 13084
sshrepo: don't use readline() on the stderr pipe
For some reason, the stat/readline dance suppressed lines following
the first in PyPy 1.4.
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Wed, 01 Dec 2010 21:46:08 +0100] rev 13083
test-demandimport.py: PyPy support
The stringification of sys.stderr is different in PyPy:
$ pypy -c 'import sys; print sys.stderr'
<open file '<fdopen>', mode 'w' at 0x
00a42080>
$ python -c 'import sys; print sys.stderr'
<open file '<stderr>', mode 'w' at 0x
10025a270>
The test will now ignore the exact value between the angle brackets.
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Wed, 01 Dec 2010 21:46:08 +0100] rev 13082
demandimport: change default for level from None to -1
The Python default for this function is -1, indicating both relative
and absolute imports should be used.[1] Previously, we relied on the
Python VM not passing level when such semantics were
requisted. This is not the case for PyPy, however, where a level of -1
is always passed to __import__.
[1] <http://docs.python.org/library/functions.html#__import__>
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Wed, 01 Dec 2010 21:46:08 +0100] rev 13081
export: flush the file pointer between patches
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Wed, 01 Dec 2010 19:20:16 +0100] rev 13080
test-clone-failure.t: fix unification oversight
Prior to unification, the test contained an 'echo $?' line. This line
was removed during unification, but the 'echo 255' line that faked it
when FIFO support is absent was not.
Christian Ebert <blacktrash@gmx.net> [Sat, 04 Dec 2010 14:44:05 +0100] rev 13079
keyword: make kwfiles show deleted files configured for expansion
Christian Ebert <blacktrash@gmx.net> [Sat, 04 Dec 2010 14:22:12 +0100] rev 13078
keyword: colorize hg kwfiles output
Thomas Arendsen Hein <thomas@jtah.de> [Fri, 03 Dec 2010 12:22:56 +0100] rev 13077
coding style: fix yield used as a function
Thomas Arendsen Hein <thomas@jtah.de> [Fri, 03 Dec 2010 12:04:31 +0100] rev 13076
check-code: single check for Python keywords used as a function
This replaces the specific checks for del/and/or/not/except and additionally
checks other Python keywords.
Thomas Arendsen Hein <thomas@jtah.de> [Fri, 03 Dec 2010 11:30:45 +0100] rev 13075
coding style: fix gratuitous whitespace after Python keywords
Thomas Arendsen Hein <thomas@jtah.de> [Fri, 03 Dec 2010 11:23:38 +0100] rev 13074
check-code: check for gratuitous whitespace after Python keywords
Wagner Bruna <wbruna@yahoo.com> [Thu, 02 Dec 2010 01:28:38 -0200] rev 13073
i18n-pt_BR: synchronized with
9696954415db
Matt Mackall <mpm@selenic.com> [Wed, 01 Dec 2010 18:47:40 -0600] rev 13072
merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 01 Dec 2010 18:46:20 -0600] rev 13071
Added signature for changeset
6aff4f144ad3
Matt Mackall <mpm@selenic.com> [Wed, 01 Dec 2010 18:46:15 -0600] rev 13070
Added tag 1.7.2 for changeset
6aff4f144ad3
Christian Ebert <blacktrash@gmx.net> [Wed, 01 Dec 2010 10:51:49 +0100] rev 13069
keyword: copy: when copied source is a symlink, follow it
1) hg cp symlink copy -> copy is a symlink.
2) cp symlink copy; hg cp -A symlink copy -> copy is a regular file.
In the second case we have to follow the symlink to its target
to find out whether we have to unexpand keywords in the copy.
Add test covering the case where the copied link's target is ignored
by keyword but has content which would match the regex for expanded
keywords to check whether we indeed leave the destination alone.
Adrian Buehlmann <adrian@cadifra.com> [Wed, 01 Dec 2010 21:15:31 +0100] rev 13068
makedirs: abort if parent == name (
issue2531)
catches unknown drive letters on Windows
Shun-ichi GOTO <shunichi.goto@gmail.com> [Fri, 19 Nov 2010 18:07:15 +0900] rev 13067
win32mbcs: use extsetup() to wrap functions only once.
Using reposetup() may cause multiple-wrap issue in some situation
like "hg serve".