Patrick Mezard <pmezard@gmail.com> [Sun, 04 Jan 2009 21:44:06 +0100] rev 7595
Merge with crew-stable
Frank Kingswood <frank@kingswood-consulting.co.uk> [Sun, 04 Jan 2009 10:06:44 +0000] rev 7594
test: added testcase for cvsps log message lookahead
David Champion <dgc@uchicago.edu> [Sun, 04 Jan 2009 01:43:12 -0600] rev 7593
cvsps: cvs log loop uses lookahead to avoid misleading text
Changes cvsps.py's cvs log reader to use a one-line lookahead, so
that possibly misleading log messages can be disambiguated. In
particular I have past committers who used cvs log's 28-character
row of hyphens within commit messages; this throws cvsps and disrupts
conversion. The only alternative in this case is to edit the cvs
,v file by hand, which bloodies mercurial's "don't change history"
principle.
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 18:44:39 +0100] rev 7592
convert/gnuarch: recode cat-log parts to utf-8 to be hg.description friendly
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 18:44:30 +0100] rev 7591
convert/gnuarch: add cat-log payload to commit description
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 04 Jan 2009 19:38:41 +0100] rev 7590
bisect: improve hg bisect -c (relative paths, error handling)
hg bisect -c failed with a relative path or when the executable wasn't found.
Use util.find_exe()+os.spawnl() instead of os.spawnlp() and improve the
handling of errors (killed process, exe not found).
Thanks to Georg Brandl for reporting it.
Dirkjan Ochtman <dirkjan@ochtman.nl> [Sun, 04 Jan 2009 19:13:02 +0100] rev 7589
merge with crew-stable
Dirkjan Ochtman <dirkjan@ochtman.nl> [Sun, 04 Jan 2009 19:12:42 +0100] rev 7588
convert/gnuarch: correct indentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 04 Jan 2009 13:52:28 +0100] rev 7587
merge with crew
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Sun, 04 Jan 2009 08:06:05 +0100] rev 7586
test-audit-path: add one more test (issue 1450)
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7585
convert/gnuarch: follow continuation-of revisions
Built on top of previous patches:
- continuation-of parsing
- registered archives retrieval
- use of fully qualified revisions
This allows the converter scanning for more source revisions
following the tree versions 'leaked' through the continuation-of
informations. Coupled with the registered archives retrieval, this
makes possible to decide to follow such a hint or stop scanning for
more revisions.
This also implies some changes in the retrieval of some base-0
revisions when they're continuation-of other revisions, in that
case a 'replay' will work where a simple 'get' fails because the
dir exists already. I found the code dealing with 'replay' quite
good as it has already a fallback to 'get' in the error path.
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7584
convert/gnuarch: retrieve known archive names list
This will make possible in a followup patch to prevent
following history that is not reachable because an archive
is unknown to the user.
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7583
convert/gnuarch: parse continuation-of revisions in gnuarch source
In GNU Arch, continuation-of was often used for:
- tagging revisions
- continue working on a project in a new archive, because arch
was scaling poorly in revision numbers (cat-logs were slow
to be parsed and scanned through)
- very similar to the previous point, fork his own branch of
a project.
Parsing this header information will allow to 'follow' new history
because it often hints at older/forked/personal revision trees.
This patch however just implements the parsing of the
continuation-of header. A followup patch will implement the proper
use of this new information.
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7582
convert/gnuarch: use fully qualified revisions
There is no need loosing information in the conversion process. This could
lead to wrong shamap mappings if different archives used the same 'version'
naming.
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7581
convert/gnuarch: keep track of original revision in extra headers
It seems to be standard to populate the .rev attribute of a commit
to keep track of original SCM revision names.
Just do it(tm).
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7580
convert/gnuarch: robustify cat-log retrieval
GNU Arch used to scale very poorly when revision number was
increasing. This was mostly caused by the huge amount of
cat-log it has to scan/read through to keep track of all
patches that were merged in a given revision.
In order to improve things, cat-log prunning was a common
admin task that would accelerate cat-log parsing at the expense
of unreachabe locally stored cat-logs.
However, these missing cat-logs are still available in the archive.
So try to get them from the archive as a fallback solution.
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7579
convert/gnuarch: set prefered locale for str conversions
Seems necessary, as a test on my archives goes further with this.
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7578
convert/gnuarch: fix cat-log parsing
cat-log parsing was very wrong. It assumed the Summary header
was comming last, which is wrong. Plus the code was buggy because
it was concatenating all headers in the summary.
As parsing GNU Arch isn't trivial, and python email code does it
so well... just use that ;-)
Edouard Gomez <ed.gomez@free.fr> [Sun, 04 Jan 2009 02:36:48 +0100] rev 7577
convert/gnuarch: remove unused code
Debug stuff ? Wipe it.
Patrick Mezard <pmezard@gmail.com> [Sat, 03 Jan 2009 21:54:58 +0100] rev 7576
Merge with crew-stable
Dirkjan Ochtman <dirkjan@ochtman.nl> [Sat, 03 Jan 2009 21:44:15 +0100] rev 7575
hgweb: fix long line lengths introduced in 2dc868712dcc
Dirkjan Ochtman <dirkjan@ochtman.nl> [Sat, 03 Jan 2009 20:20:40 +0100] rev 7574
tests: use killdaemons.py in test-pull-http
Dirkjan Ochtman <dirkjan@ochtman.nl> [Sat, 03 Jan 2009 21:25:19 +0100] rev 7573
cvsps: kill some more trailing whitespace
Dirkjan Ochtman <dirkjan@ochtman.nl> [Sat, 03 Jan 2009 21:24:31 +0100] rev 7572
merge with crew-stable
Patrick Mezard <pmezard@gmail.com> [Sat, 03 Jan 2009 01:05:13 +0100] rev 7571
Merge with crew-stable
Martin Geisler <mg@daimi.au.dk> [Fri, 02 Jan 2009 22:53:33 +0100] rev 7570
use repo.wjoin(f) instead of os.path.join(repo.root, f)
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Wed, 07 Jan 2009 02:11:17 +0100] rev 7569
correctly update dirstate after update+mode change (issue1456)
Jason Orendorff <jorendorff@mozilla.com> [Tue, 06 Jan 2009 10:30:22 +0100] rev 7568
mq: don't warn about ambiguous patch name when using patch index (issue1439)
Patrick Mezard <pmezard@gmail.com> [Mon, 05 Jan 2009 14:34:20 +0100] rev 7567
convert/gnuarch: fix switched copy source and destination
Reported by Edouard Gomez <ed.gomez@free.fr>
Patrick Mezard <pmezard@gmail.com> [Sun, 04 Jan 2009 21:32:40 +0100] rev 7566
mq: drop copy records when refreshing regular patches (issue1441)
Copy information was saved in a common loop, then refined in a git-only block.
The problem was the latter did filter out renames occuring in the current
patch and irrelevant to commit. In the non-git case, copy records still existed
in the dirstate, referencing removed files, making the commit to fail. Git and
non-git copy handling paths are now separated for simplicity.
Reported by Gary Bernhardt