Guillermo Pérez <bisho@fb.com> [Thu, 15 Nov 2012 13:57:03 -0800] rev 17944
diff: rewrite diffline
Make diffline more readable, using strings with placeholders
rather than appending to a list from many ifs that makes
difficult to understand the actual output format.
Guillermo Pérez <bisho@fb.com> [Thu, 15 Nov 2012 13:52:51 -0800] rev 17943
diff: swap and simplify diffline args
Args order swapped, since a, b are more important than revs
(which is only used on non-git format), and change to read opts
from context.
Guillermo Pérez <bisho@fb.com> [Thu, 15 Nov 2012 13:49:04 -0800] rev 17942
diff: change how quiet mode supresses diffline
Before, quiet mode produced no diffline header for mercurial as a
side effect of not populating "revs". This was a weird side effect,
and we will always need revs for git index header that will be added
in upcoming patches, so now we just check ui.quiet from diffline
directly.
Guillermo Pérez <bisho@fb.com> [Thu, 15 Nov 2012 12:19:03 -0800] rev 17941
diff: move diffline to patch module
diffline is not part of diff computation, so it makes more sense
to place it with other header generation in patch module.
In upcoming patches we will generalize this approach for
all headers added in the patch, including the git index
header.
Guillermo Pérez <bisho@fb.com> [Thu, 15 Nov 2012 12:16:08 -0800] rev 17940
diff: unify calls to diffline
diffline was called from trydiff for binary diffs and from unidiff
for text diffs. In this patch we unify those calls into one.
diffline is also a header, not part of diff mechanisms, so it makes
sense to remove that responsibility from the mdiff module. In
upcoming patches we will move diffline to patch module and
keep grouping responsibilities.
Guillermo Pérez <bisho at fb.com> [Tue, 06 Nov 2012 14:04:05 -0800] rev 17939
diff: move b85diff to mdiff module
b85diff generates a binary diff, so we move this code to mdiff module
along with unidiff for text diffs. All diffing mechanisms will be in the
same place.
In an upcoming patch we will remove the responsibility to print the
index header from b85diff and move it back to patch, since it's
a patch metadata header, not part of the diff generation.
simon@laptop-tosh [Sat, 27 Oct 2012 12:38:59 +0200] rev 17938
share: always set default path to work with subrepos (
issue3518)
set the default path in any case because creating subrepo looks this up.
Subrepos are cloned, not shared.
Adrian Buehlmann <adrian@cadifra.com> [Sat, 03 Nov 2012 10:40:36 +0100] rev 17937
vfs: optimize __call__ by not calling util.split for reads
dirname and basename are not used on reads
Matt Mackall <mpm@selenic.com> [Wed, 14 Nov 2012 18:08:39 -0600] rev 17936
run-tests: backout
4a4173519b63
This deleted work in progress to eliminate child processes for -j.
Bryan O'Sullivan <bryano@fb.com> [Thu, 15 Nov 2012 10:55:32 -0800] rev 17935
test-pathencode: make a 2.4-safe import of collections
Bryan O'Sullivan <bryano@fb.com> [Thu, 15 Nov 2012 10:04:29 -0800] rev 17934
tests: add a randomized test for pathencode
This is a probabilistic test - it generates different test cases on every
run, unless invoked from the command line with a specific seed.
The default number of tests run should make the tests take about a
second to complete on a semi-modern laptop.
Jordi Gutiérrez Hermoso <jordigh@octave.org> [Mon, 29 Oct 2012 10:53:46 -0400] rev 17933
webcommands: allow hgweb's archive to recurse into subrepos
Currently when obtaining an archive snapshot of a repository via the
web interface, subrepositories are not taken in the snapshot. I
introduce an option, archivesubrepos, which allows this.
Augie Fackler <raf@durin42.com> [Tue, 13 Nov 2012 19:32:53 -0600] rev 17932
Merge with crew-stable.
Idan Kamara <idankk86@gmail.com> [Mon, 12 Nov 2012 19:27:03 +0200] rev 17931
grep: don't search past the end of the searched string
'*' causes the resulting RE to match 0 or more repetitions of the preceding RE:
>>> bool(re.search('.*', ''))
>>> True
This causes an infinite loop because currently we're only checking if there was
a match without looking at where we are in the searched string.
Bryan O'Sullivan <bryano@fb.com> [Tue, 13 Nov 2012 13:09:42 -0800] rev 17930
convert: fix a too-long line nag
YaNan Xu <robot9@fb.com> [Mon, 29 Oct 2012 17:40:13 -0700] rev 17929
convert: add support for converting git submodule (
issue3528)
Previously, convert aborted upon encountering a git submodule. This patch
changes it so that it now succeeds. It modifies convert_git to manually generate
'.hgsub' and '.hgsubstate' files for each git revision, so as to convert git sub
modules to non-mercurial subrepositories.
Siddharth Agarwal <sid0@fb.com> [Thu, 08 Nov 2012 14:10:04 -0800] rev 17928
run-tests.py: remove runqueue's results parameter since it is now a global
Bryan O'Sullivan <bryano@fb.com> [Tue, 13 Nov 2012 09:56:09 -0800] rev 17927
makefile: don't use system hgrc when running hg in-place
This suppresses the printing of spurious error messages if a global
hgrc refers to extensions that the in-place hg can't access.
Bryan O'Sullivan <bryano@fb.com> [Tue, 13 Nov 2012 09:55:26 -0800] rev 17926
setup: print subprocess stderr if there is any
I just spent 1.5 days trying to debug a failing buildbot because
setup.py was silently dropping the errors that were being printed
by in-place hg.
Siddharth Agarwal <sid0@fb.com> [Sat, 10 Nov 2012 11:37:41 -0800] rev 17925
run-tests: open child-parent pipes in binary mode
Python's pickle is a binary format.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 13 Nov 2012 08:41:56 -0800] rev 17924
amend: force editor only if old message is reused (
issue3698)
This regression was added by
9732473aa24b. It triggered the editor even if
--message or --logfile were provided.
Idan Kamara <idankk86@gmail.com> [Mon, 12 Nov 2012 19:27:03 +0200] rev 17923
grep: don't search past the end of the searched string
'*' causes the resulting RE to match 0 or more repetitions of the preceding RE:
>>> bool(re.search('.*', ''))
>>> True
This causes an infinite loop because currently we're only checking if there was
a match without looking at where we are in the searched string.
Augie Fackler <raf@durin42.com> [Wed, 07 Nov 2012 16:21:39 -0600] rev 17922
bookmarks: introduce a bmstore to manage bookmark persistence
Bookmarks persistence still showed a fair amount of its legacy as a
monkeypatching extension. This encapsulates all bookmarks
serialization and parsing in a single class, and offers a single
location where other bookmarks storage engines can be substituted
in. As a result, many files no longer import the bookmarks module,
which strikes me as an encapsulation win.
This doesn't do anything to the current bookmark state yet, but I'm
hoping put that in the bmstore class as well.
Siddharth Agarwal <sid0@fb.com> [Fri, 09 Nov 2012 14:49:30 -0800] rev 17921
run-tests: add --time option to log times for each test
--time also prints out the wall-clock time each test takes in descending order.
Siddharth Agarwal <sid0@fb.com> [Fri, 09 Nov 2012 15:09:35 -0800] rev 17920
run-tests: remove resultslock since it serves no useful purpose
Each child process has its own copy of the results dict, so all access to the results dict is serial.
Siddharth Agarwal <sid0@fb.com> [Fri, 09 Nov 2012 14:42:36 -0800] rev 17919
run-tests: use pickle to send results from children to parent
JSON would probably be preferable, but it isn't available for Python 2.4 or 2.5.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 24 Oct 2012 18:11:17 +0200] rev 17918
bookmark: remove useless line in `validdest`
This case is already covered by the `if old == new:` conditional at the start of
the function.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 24 Oct 2012 17:55:21 +0200] rev 17917
bookmark: issue a single call to `allsuccessors` per loop
Update to this code was minimalist when `allsuccessors` argument were changed
from a list to a set. As this code is getting my attention again I realised we
can drastically simplify this part of the code by issue a single call to
`allsuccessors`.