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`.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 24 Oct 2012 17:26:40 +0200] rev 17916
bookmark: simplify mutability check in `validdest`
There is no need to check phase by hand. We already have a ctx method for that.
Bryan O'Sullivan <bryano@fb.com> [Wed, 07 Nov 2012 09:59:46 -0800] rev 17915
Merge with stable
Bryan O'Sullivan <bryano@fb.com> [Tue, 06 Nov 2012 16:49:54 -0800] rev 17914
Merge with mpm
Tomasz Kleczek <tkleczek@fb.com> [Wed, 31 Oct 2012 16:23:23 -0700] rev 17913
bundle: add revset expression to show bundle contents (issue3487)
bundle() revset expression returns all changes that are present
in the bundle file (no matter whether they are in the repo or not).
Bundle file should be specified via -R option.
Matt Mackall <mpm@selenic.com> [Tue, 06 Nov 2012 17:38:22 -0600] rev 17912
tags: add formatter support
Matt Mackall <mpm@selenic.com> [Tue, 06 Nov 2012 17:30:49 -0600] rev 17911
manifest: add formatter support
Matt Mackall <mpm@selenic.com> [Tue, 06 Nov 2012 17:30:47 -0600] rev 17910
status: use condwrite to avoid zero-width format string hack
Matt Mackall <mpm@selenic.com> [Sat, 03 Nov 2012 14:37:50 -0500] rev 17909
formatter: add condwrite method
This makes handling conditional output tidier
Simon Heimberg <simohe@besonet.ch> [Wed, 24 Oct 2012 23:09:31 +0200] rev 17908
run-tests: skip unnecessary operations on the args in the child proces
The arguments are already sorted and never empty.
Adrian Buehlmann <adrian@cadifra.com> [Fri, 02 Nov 2012 20:47:03 +0100] rev 17907
test-subrepo: adapt for Windows after 17c030014ddf
Fixes
@@ -606,7 +606,7 @@
issue3276_ok
$ rm repo/s/b
$ hg -R repo revert --all
- reverting repo/.hgsubstate
+ reverting repo\.hgsubstate
reverting subrepo s
$ hg -R repo update
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
on Windows
Adrian Buehlmann <adrian@cadifra.com> [Fri, 02 Nov 2012 20:22:09 +0100] rev 17906
test-mq-qrefresh: adapt for Windows after 39b7052b217b
Fixes
@@ -208,7 +208,7 @@
$ echo 'orphan' > orphanchild
$ hg add orphanchild
$ hg qrefresh nonexistentfilename # clear patch
- nonexistentfilename: No such file or directory
+ nonexistentfilename: The system cannot find the file specified
$ hg qrefresh --short 1/base
$ hg qrefresh --short 2/base
on Windows
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 16:30:48 -0500] rev 17905
merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 16:09:21 -0500] rev 17904
Added signature for changeset 195ad823b5d5
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 16:09:17 -0500] rev 17903
Added tag 2.4 for changeset 195ad823b5d5
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 14:59:55 -0500] rev 17902
tests: fix test for issue3581 for vfat on Linux
Keegan Carruthers-Smith <keegancsmith@fb.com> [Tue, 30 Oct 2012 17:23:51 -0700] rev 17901
filemerge: only run test for issue3581 on non-windows environments
Adrian Buehlmann <adrian@cadifra.com> [Thu, 01 Nov 2012 13:46:03 +0100] rev 17900
openpath: specify binary mode and use util.posixfile
follow-up to 0e2846b2482c
Wagner Bruna <wbruna@softwareexpress.com.br> [Thu, 01 Nov 2012 11:37:40 -0200] rev 17899
i18n-pt_BR: synchronized with afa7e6fa820b
Matt Mackall <mpm@selenic.com> [Wed, 31 Oct 2012 16:34:36 -0500] rev 17898
merge with i18n
Wagner Bruna <wbruna@softwareexpress.com.br> [Wed, 31 Oct 2012 11:13:44 -0200] rev 17897
i18n-pt_BR: synchronized with 36ed69d4593d
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 18:44:40 +0900] rev 17896
i18n-ja: synchronized with 0188ddfa844e
Simon Heimberg <simohe@besonet.ch> [Wed, 24 Oct 2012 18:45:22 +0200] rev 17895
subrepo: only do clean update when overwrite is set (issue3276)
Files in a subrepo were overwritten on update. But this should only happen on a
clean update (example: -C is specified).
Use the overwrite parameter introduced for svn subrepos in c19b9282d3a7 to
decide whether to merge changes (as update) or remove them (as clean).
The new function hg.updaterepo is intruduced to keep all update calls in hg.
test-subrepo.t is extended to test if an untracked file is overwritten
(issue3276). (Update -C is already tested in many places.)
The first two chunks are debugging output which has changed. (Because overwrite
is not always true anymore for subrepos)
All other tests still pass without any change.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 03:59:28 +0900] rev 17894
i18n: change output of largefiles for summary to distinguish from one for outgoing
Before this patch, largefiles extension uses "largefiles: No remote
repo" message not only for "outgoing" as status report, but also for
"summary" as summarized information.
This sharing prevents message translators from inserting white spaces
between "largefiles:" and "No remote repo" in translated message to
align column position of summarized information.
This patch changes output of largefiles for summary to distinguish
from one for outgoing.
This patch puts "no remote repo" into parentheses, because this is not
summarized information.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 03:59:28 +0900] rev 17893
i18n: make column positioning message of MQ summary output translatable
Before this patch, one of column positioning messages of MQ summary
output is not translatable, and patches are always listed up at fixed
column position like below, when patch queue is not empty:
mq: 1 applied, 1 unapplied
But column positioning messages for other summarized information are
translatable, so other information may be displayed at different
column position on non-English locale environments.
This patch makes column positioning message of MQ summary output
translatable.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 03:59:28 +0900] rev 17892
i18n: add "i18n" comment to column positioning messages of "hg summary"
This comment makes it easier to distinguish such messages from others
for message translators.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 03:59:27 +0900] rev 17891
i18n: add "i18n" comment to column positioning messages of "hg log"
This comment makes it easier to distinguish such messages from others
for message translators.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 03:59:27 +0900] rev 17890
i18n: add "i18n" comment to error messages of template functions
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 16:50:22 +0900] rev 17889
icasefs: make case-folding collision detection as deletion aware (issue3648)
Before this patch, case-folding collision is checked simply between
manifests of each merged revisions.
So, files may be considered as colliding each other, even though one
of them is already deleted on one of merged branches: in such case,
merge causes deleting it, so case-folding collision doesn't occur.
This patch checks whether both of files colliding each other still
remain after merge or not, and ignores collision if at least one of
them is deleted by merge.
In the case that one of colliding files is deleted on one of merged
branches and changed on another, file is considered to still remain
after merge, even though it may be deleted by merge, if "deleting" of
it is chosen in "manifestmerge()".
This avoids fail to merge by case-folding collisions after choices
from "changing" and "deleting" of files.
This patch adds only tests for "removed remotely" code paths in
"_remains()", because other ones are tested by existing tests in
"test-casecollision-merge.t".
Durham Goode <durham@fb.com> [Tue, 30 Oct 2012 13:19:06 -0700] rev 17888
mq: fix qrefresh case sensitivity (issue3271)
When calling qrefresh with filenames, the filenames were being
treated as case-sensistive on case-insensitive file systems.
So 'qrefresh foo' would not match file 'Foo', and it failed silently.
This fix makes it work correctly on case-insensitive file systems.
Previously the matching function was applied directly to the filenames.
Now we apply the matching function through repo.status, which handles
the case logic for us. A side effect of using repo.status is that
if the qrefresh file doesn't exist, there is output stating it
doesn't exist.
Adds a test to an existing mq refresh case test.
Siddharth Agarwal <sid0@fb.com> [Wed, 17 Oct 2012 21:30:08 -0700] rev 17887
url: use open and not url.open for local files (issue3624)
Matt Mackall <mpm@selenic.com> [Tue, 30 Oct 2012 18:48:44 -0500] rev 17886
revset: accept @ in unquoted symbols (issue3686)
Keegan Carruthers-Smith <keegancsmith@fb.com> [Fri, 26 Oct 2012 12:02:58 -0700] rev 17885
filemerge: use util.shellquote when calling merge (issue3581)
Matt Mackall <mpm@selenic.com> [Tue, 30 Oct 2012 16:46:52 -0500] rev 17884
merge with i18n
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 23 Oct 2012 11:40:48 -0200] rev 17883
i18n-pt_BR: synchronized with 71c1513fd560
Adrian Buehlmann <adrian@cadifra.com> [Mon, 29 Oct 2012 14:02:30 +0100] rev 17882
clone: show status "updating to bookmark @"
if bookmark @ is not on the default branch, we show
updating to bookmark @ on branch <name>
Adrian Buehlmann <adrian@cadifra.com> [Sun, 28 Oct 2012 14:16:16 +0100] rev 17881
test-clone: fix directory level
92980a8dfdfe inserted a "cd a" but didn't restore the previous directory.
Julian Cowley <julian@lava.net> [Sun, 28 Oct 2012 05:44:50 -1000] rev 17880
patchbomb: -c is not an alias for the --confirm option
The help text shows "-c/--confirm", which implies that -c is an alias
for --confirm. Actually, it is an alias for --cc. Correct the text
by removing -c.