Sat, 10 Nov 2012 11:37:41 -0800 run-tests: open child-parent pipes in binary mode
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.
Tue, 13 Nov 2012 08:41:56 -0800 amend: force editor only if old message is reused (issue3698) stable
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.
Mon, 12 Nov 2012 19:27:03 +0200 grep: don't search past the end of the searched string
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.
Wed, 07 Nov 2012 16:21:39 -0600 bookmarks: introduce a bmstore to manage bookmark persistence
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.
Fri, 09 Nov 2012 14:49:30 -0800 run-tests: add --time option to log times for each test
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.
Fri, 09 Nov 2012 15:09:35 -0800 run-tests: remove resultslock since it serves no useful purpose
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.
Fri, 09 Nov 2012 14:42:36 -0800 run-tests: use pickle to send results from children to parent
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.
Wed, 24 Oct 2012 18:11:17 +0200 bookmark: remove useless line in `validdest`
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.
Wed, 24 Oct 2012 17:55:21 +0200 bookmark: issue a single call to `allsuccessors` per loop
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`.
Wed, 24 Oct 2012 17:26:40 +0200 bookmark: simplify mutability check in `validdest`
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.
Wed, 07 Nov 2012 09:59:46 -0800 Merge with stable
Bryan O'Sullivan <bryano@fb.com> [Wed, 07 Nov 2012 09:59:46 -0800] rev 17915
Merge with stable
Tue, 06 Nov 2012 16:49:54 -0800 Merge with mpm
Bryan O'Sullivan <bryano@fb.com> [Tue, 06 Nov 2012 16:49:54 -0800] rev 17914
Merge with mpm
Wed, 31 Oct 2012 16:23:23 -0700 bundle: add revset expression to show bundle contents (issue3487)
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.
Tue, 06 Nov 2012 17:38:22 -0600 tags: add formatter support
Matt Mackall <mpm@selenic.com> [Tue, 06 Nov 2012 17:38:22 -0600] rev 17912
tags: add formatter support
Tue, 06 Nov 2012 17:30:49 -0600 manifest: add formatter support
Matt Mackall <mpm@selenic.com> [Tue, 06 Nov 2012 17:30:49 -0600] rev 17911
manifest: add formatter support
Tue, 06 Nov 2012 17:30:47 -0600 status: use condwrite to avoid zero-width format string hack
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
Sat, 03 Nov 2012 14:37:50 -0500 formatter: add condwrite method
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
Wed, 24 Oct 2012 23:09:31 +0200 run-tests: skip unnecessary operations on the args in the child proces
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.
Fri, 02 Nov 2012 20:47:03 +0100 test-subrepo: adapt for Windows after 17c030014ddf stable
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
Fri, 02 Nov 2012 20:22:09 +0100 test-mq-qrefresh: adapt for Windows after 39b7052b217b stable
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
Thu, 01 Nov 2012 16:30:48 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 16:30:48 -0500] rev 17905
merge with stable
Thu, 01 Nov 2012 16:09:21 -0500 Added signature for changeset 195ad823b5d5 stable
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 16:09:21 -0500] rev 17904
Added signature for changeset 195ad823b5d5
Thu, 01 Nov 2012 16:09:17 -0500 Added tag 2.4 for changeset 195ad823b5d5 stable
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 16:09:17 -0500] rev 17903
Added tag 2.4 for changeset 195ad823b5d5
Thu, 01 Nov 2012 14:59:55 -0500 tests: fix test for issue3581 for vfat on Linux stable 2.4
Matt Mackall <mpm@selenic.com> [Thu, 01 Nov 2012 14:59:55 -0500] rev 17902
tests: fix test for issue3581 for vfat on Linux
Tue, 30 Oct 2012 17:23:51 -0700 filemerge: only run test for issue3581 on non-windows environments stable
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
Thu, 01 Nov 2012 13:46:03 +0100 openpath: specify binary mode and use util.posixfile stable
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
Thu, 01 Nov 2012 11:37:40 -0200 i18n-pt_BR: synchronized with afa7e6fa820b stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Thu, 01 Nov 2012 11:37:40 -0200] rev 17899
i18n-pt_BR: synchronized with afa7e6fa820b
Wed, 31 Oct 2012 16:34:36 -0500 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Wed, 31 Oct 2012 16:34:36 -0500] rev 17898
merge with i18n
Wed, 31 Oct 2012 11:13:44 -0200 i18n-pt_BR: synchronized with 36ed69d4593d stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Wed, 31 Oct 2012 11:13:44 -0200] rev 17897
i18n-pt_BR: synchronized with 36ed69d4593d
Wed, 31 Oct 2012 18:44:40 +0900 i18n-ja: synchronized with 0188ddfa844e stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 31 Oct 2012 18:44:40 +0900] rev 17896
i18n-ja: synchronized with 0188ddfa844e
Wed, 24 Oct 2012 18:45:22 +0200 subrepo: only do clean update when overwrite is set (issue3276) stable
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.
Wed, 31 Oct 2012 03:59:28 +0900 i18n: change output of largefiles for summary to distinguish from one for outgoing stable
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.
Wed, 31 Oct 2012 03:59:28 +0900 i18n: make column positioning message of MQ summary output translatable stable
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.
Wed, 31 Oct 2012 03:59:28 +0900 i18n: add "i18n" comment to column positioning messages of "hg summary" stable
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.
Wed, 31 Oct 2012 03:59:27 +0900 i18n: add "i18n" comment to column positioning messages of "hg log" stable
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.
Wed, 31 Oct 2012 03:59:27 +0900 i18n: add "i18n" comment to error messages of template functions stable
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
Wed, 31 Oct 2012 16:50:22 +0900 icasefs: make case-folding collision detection as deletion aware (issue3648) stable
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".
Tue, 30 Oct 2012 13:19:06 -0700 mq: fix qrefresh case sensitivity (issue3271) stable
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.
Wed, 17 Oct 2012 21:30:08 -0700 url: use open and not url.open for local files (issue3624) stable
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)
Tue, 30 Oct 2012 18:48:44 -0500 revset: accept @ in unquoted symbols (issue3686) stable
Matt Mackall <mpm@selenic.com> [Tue, 30 Oct 2012 18:48:44 -0500] rev 17886
revset: accept @ in unquoted symbols (issue3686)
Fri, 26 Oct 2012 12:02:58 -0700 filemerge: use util.shellquote when calling merge (issue3581) stable
Keegan Carruthers-Smith <keegancsmith@fb.com> [Fri, 26 Oct 2012 12:02:58 -0700] rev 17885
filemerge: use util.shellquote when calling merge (issue3581)
Tue, 30 Oct 2012 16:46:52 -0500 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Tue, 30 Oct 2012 16:46:52 -0500] rev 17884
merge with i18n
Tue, 23 Oct 2012 11:40:48 -0200 i18n-pt_BR: synchronized with 71c1513fd560 stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 23 Oct 2012 11:40:48 -0200] rev 17883
i18n-pt_BR: synchronized with 71c1513fd560
Mon, 29 Oct 2012 14:02:30 +0100 clone: show status "updating to bookmark @" stable
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>
Sun, 28 Oct 2012 14:16:16 +0100 test-clone: fix directory level stable
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.
Sun, 28 Oct 2012 05:44:50 -1000 patchbomb: -c is not an alias for the --confirm option stable
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.
Tue, 23 Oct 2012 21:25:22 -0700 dirstate: handle dangling junctions on windows (issue2579) stable
Bryan O'Sullivan <bryano@fb.com> [Tue, 23 Oct 2012 21:25:22 -0700] rev 17879
dirstate: handle dangling junctions on windows (issue2579)
Tue, 23 Oct 2012 21:32:19 -0400 largefiles: don't copy largefiles from working dir to the store while converting stable
Matt Harbison <matt_harbison@yahoo.com> [Tue, 23 Oct 2012 21:32:19 -0400] rev 17878
largefiles: don't copy largefiles from working dir to the store while converting Previously, if one or more largefiles for a repo being converted were not in the usercache, the convert would abort with a reference to the largefile being missing (as opposed to the previous patch, where the standin was referenced as missing). This is because commitctx() tries to copy all largefiles to the local store, first from the user cache, and if the file isn't found there, from the working directory. No files will exist in the working directory during a convert, however. It is not sufficient to force the source repo to be local before proceeding, because clone and pull do not download largefiles by default. This is slightly less than ideal because while the conversion will now complete, it won't be possible to update to revs with missing largefiles unless the user intervenes manually, because there is no default path pointing back to the source repo. Ideally these files would be cached during the conversion. This check could have been done in reposetup.commitctx() instead, but this ensures the local store directory is created, which is necessary to enable the standin matcher. The rm -> 'rm -f' change in the test is to temporarily suppress an error clearing the cache- as noted, the cache is is not repopulated during convert. When that is fixed, this can be changed back and the verification errors will disappear too.
Tue, 23 Oct 2012 21:07:14 -0400 largefiles: respect the rev when reading standins in copytostore() (issue3630) stable
Matt Harbison <matt_harbison@yahoo.com> [Tue, 23 Oct 2012 21:07:14 -0400] rev 17877
largefiles: respect the rev when reading standins in copytostore() (issue3630) When the rev isn't specified, the standin for the working copy gets read. But convert doesn't update the working copy for each cset it processes, so there is no standin and the 'hg convert' would abort complaining about the standin being missing. Note that if the largefile is not in the user cache, 'hg convert' complains about the largefile itself missing from the destination repo.
Wed, 10 Oct 2012 01:18:06 +0200 subrepo: subrepo isolation, pass baseui when cloning a new subrepo (issue2904) stable
Simon Heimberg <simohe@besonet.ch> [Wed, 10 Oct 2012 01:18:06 +0200] rev 17876
subrepo: subrepo isolation, pass baseui when cloning a new subrepo (issue2904) Create the repo with baseui because it should only get the global configuration. After this patch issue2904 is finally fixed.
Thu, 04 Oct 2012 19:46:43 +0200 subrepo: more isolation, only use ui for hg.peer when there is no repo stable
Simon Heimberg <simohe@besonet.ch> [Thu, 04 Oct 2012 19:46:43 +0200] rev 17875
subrepo: more isolation, only use ui for hg.peer when there is no repo ui contains repo specific configuration, so do not use it when there is a repo. But pass it to hg.peer when there is no repo. Then it only contains global configuration.
Sat, 28 Jul 2012 23:28:36 +0200 peer: subrepo isolation, pass repo instead of repo.ui to hg.peer stable
Simon Heimberg <simohe@besonet.ch> [Sat, 28 Jul 2012 23:28:36 +0200] rev 17874
peer: subrepo isolation, pass repo instead of repo.ui to hg.peer Do not pass ui because it contains the configuration of the repo. It is the same object as repo.ui. When a repo is passed to hg.peer, the global configuration is read from repo.baseui.
Sat, 29 Sep 2012 20:11:24 +0900 subrepo: isolate configuration between each repositories in subrepo tree stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 29 Sep 2012 20:11:24 +0900] rev 17873
subrepo: isolate configuration between each repositories in subrepo tree Before this patch, repository local configurations are not isolated between repositories in subrepo tree, because "localrepository" objects for each subrepositories are created with "ui" instance of the parent of each ones. So, local configuration of the parent or higher repositories are visible also in children or lower ones. This patch uses "baseui" instead of "ui" to create repository object: the former contains only global configuration. This patch also copies 'ui.commitsubrepos' configuration to commit recursively in subrepo tree, because it may be set in not "repo.baseui" but "repo.ui".
Sat, 27 Oct 2012 16:39:47 -0500 bookmarks: backed out new message from changeset 52c7e171e355 stable
Matt Mackall <mpm@selenic.com> [Sat, 27 Oct 2012 16:39:47 -0500] rev 17872
bookmarks: backed out new message from changeset 52c7e171e355 Not strictly a bugfix, hasn't achieved consensus yet.
Fri, 26 Oct 2012 14:53:31 +0200 clone: print bookmark name when clone activates a bookmark stable
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 26 Oct 2012 14:53:31 +0200] rev 17871
clone: print bookmark name when clone activates a bookmark Similar to the message that prints the checked out branch name. Without this, the user might accidentally move the @ bookmark.
Fri, 26 Oct 2012 14:37:03 +0200 clone: activate @ bookmark if updating to it stable
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 26 Oct 2012 14:37:03 +0200] rev 17870
clone: activate @ bookmark if updating to it The message "updating bookmark @ failed!" in test-bookmarks-pushpull.t is correct, because the changeset that the @ bookmark points to is not pushed to the target repository.
Fri, 26 Oct 2012 13:20:44 +0200 test-clone.t: check that branch "@" is not automatically checked out stable
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 26 Oct 2012 13:20:44 +0200] rev 17869
test-clone.t: check that branch "@" is not automatically checked out This verifies that c9339efed653 fixes the second problem mentioned in issue3677.
Fri, 26 Oct 2012 13:09:55 +0200 test-bookmarks.t: check that bookmark "default" is not automatically checked out stable
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 26 Oct 2012 13:09:55 +0200] rev 17868
test-bookmarks.t: check that bookmark "default" is not automatically checked out This verifies that c9339efed653 fixes the problem originally reported in issue3677.
Fri, 26 Oct 2012 12:36:15 +0200 clone: make sure to use "@" as bookmark and "default" as branch (issue3677) stable
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 26 Oct 2012 12:36:15 +0200] rev 17867
clone: make sure to use "@" as bookmark and "default" as branch (issue3677) Before this change a bookmark named "default" or a branch named "@" would cause the wrong changeset to be checked out. The change in output of test-hardlinks.t is due to the fact that no unneeded tag lookups for the tags "@" or "default" happen, therefore the cache file is not created.
Fri, 26 Oct 2012 09:29:50 +0200 bookmark: simplify nodemap check introduced in the previous changeset stable
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 26 Oct 2012 09:29:50 +0200] rev 17866
bookmark: simplify nodemap check introduced in the previous changeset
Thu, 25 Oct 2012 23:43:52 +0200 bookmark: prevent crashing when a successor is unknown locally (issue3680) stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 25 Oct 2012 23:43:52 +0200] rev 17865
bookmark: prevent crashing when a successor is unknown locally (issue3680) The `%ln` revset substitution does not accept unknown node. We prune unknown node from potential successors before computing descendants. This have no impact on the result of this function. - Descendants of unknown changeset as unknown, - all successors of unknown changesets are already return by the call who returned those same unknown changesets, - unknown changesets are never a valid destination for a bookmark.
Thu, 25 Oct 2012 23:36:03 +0200 bookmark: complexity pull-push test to have deeper tree stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 25 Oct 2012 23:36:03 +0200] rev 17864
bookmark: complexity pull-push test to have deeper tree This changeset only touch test. The previous test was correct, it tested that the successors of an old bookmark position was seen as a valid destination for bookmark. However, a newer version is made for two reason: (1) The new test check further. It check that the descendant of the successors is a valid destination (2) An ever more complexe test is needed to validate a future fix to issue 3680 Splitting complexification of the test and actual bugfix help to reduce the noise in the bugfix changeset. Issue 3680 is NOT fixed by this changeset.
Wed, 24 Oct 2012 15:37:32 +0200 amend: fix incompatibity between logfile and message option (issue3675) stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 24 Oct 2012 15:37:32 +0200] rev 17863
amend: fix incompatibity between logfile and message option (issue3675) Bug introduced by 9732473aa24b
Wed, 24 Oct 2012 11:51:24 +0200 test-remove: adapt to differing error message on Windows stable
Adrian Buehlmann <adrian@cadifra.com> [Wed, 24 Oct 2012 11:51:24 +0200] rev 17862
test-remove: adapt to differing error message on Windows On Windows, this part of the test failed with $ hg rm --after nosuch - nosuch: No such file or directory + nosuch: The system cannot find the file specified [1] Fixed by glob-ing away the error message if the test is run on Windows (see for example test-bad-pull.t line 3 for precedent). test-remove.t now passes on Windows.
Wed, 24 Oct 2012 11:38:31 +0200 test-remove: fix \ vs. / issues on Windows stable
Adrian Buehlmann <adrian@cadifra.com> [Wed, 24 Oct 2012 11:38:31 +0200] rev 17861
test-remove: fix \ vs. / issues on Windows This part of the test failed with $ hg rm --after d1 - removing d1/a + removing d1\a on Windows.
Wed, 24 Oct 2012 09:27:47 -0700 verify: fix all doubled-slash sites (issue3665) stable
Bryan O'Sullivan <bryano@fb.com> [Wed, 24 Oct 2012 09:27:47 -0700] rev 17860
verify: fix all doubled-slash sites (issue3665)
Wed, 24 Oct 2012 09:53:10 +0200 patchbomb: respect --in-reply-to for all mails if no intro message is sent stable
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 24 Oct 2012 09:53:10 +0200] rev 17859
patchbomb: respect --in-reply-to for all mails if no intro message is sent Before this change, the thread hierarchy looked like this: PARENT PATCH1/x PATCH2/x PATCH3/x ... Now it is: PARENT PATCH1/x PATCH2/x PATCH3/x ... With an introductory message the behaviour is unchanged: PARENT INTRO PATCH1/x PATCH2/x PATCH3/x ...
Tue, 23 Oct 2012 17:06:31 +0900 test: add test for the issue introduced by e410be860393 (issue3669) stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Tue, 23 Oct 2012 17:06:31 +0900] rev 17858
test: add test for the issue introduced by e410be860393 (issue3669) e410be860393 (released as Mercurial 2.3) introduced the issue that the revset program started with 40 hexadecimal letters caused unexpected result at "hg log" execution. This issue was already fixed by bde1185f406c (released as 2.3.1), but there is no test to examine whether this issue is certainly fixed or not: no test fails even if bde1185f406c is backed out. This patch adds test for this issue. Added test is also confirmed to fail, when it is tested against: - Mercurial 2.3, or - Mercurial 2.3.1 or later with backing bde1185f406c out
Fri, 19 Oct 2012 13:52:34 +0200 obsolete: add missing line feed in debug error message stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 19 Oct 2012 13:52:34 +0200] rev 17857
obsolete: add missing line feed in debug error message
Tue, 23 Oct 2012 09:28:42 +0200 merge with stable
Thomas Arendsen Hein <thomas@intevation.de> [Tue, 23 Oct 2012 09:28:42 +0200] rev 17856
merge with stable
Tue, 23 Oct 2012 09:22:46 +0200 localrepo: translate "push includes X changeset" only once stable
Thomas Arendsen Hein <thomas@intevation.de> [Tue, 23 Oct 2012 09:22:46 +0200] rev 17855
localrepo: translate "push includes X changeset" only once This was introduced in 12fdaa30063a
Tue, 23 Oct 2012 09:27:48 +0200 merge stable heads stable
Thomas Arendsen Hein <thomas@intevation.de> [Tue, 23 Oct 2012 09:27:48 +0200] rev 17854
merge stable heads
Mon, 22 Oct 2012 21:56:13 -0700 Merge with stable
Bryan O'Sullivan <bryano@fb.com> [Mon, 22 Oct 2012 21:56:13 -0700] rev 17853
Merge with stable
Mon, 22 Oct 2012 21:54:36 -0700 Merge repeated-slash fix stable
Bryan O'Sullivan <bryano@fb.com> [Mon, 22 Oct 2012 21:54:36 -0700] rev 17852
Merge repeated-slash fix
Mon, 22 Oct 2012 18:05:40 -0700 verify: tolerate repeated slashes in a converted repo (issue3665)
Bryan O'Sullivan <bryano@fb.com> [Mon, 22 Oct 2012 18:05:40 -0700] rev 17851
verify: tolerate repeated slashes in a converted repo (issue3665) These slashes are a hangover from issue3612, fixed in e4da793998bf. Although the bugfix in that commit is correct, the test it adds does not replicate the conditions for the bug correctly.
Sun, 21 Oct 2012 11:20:33 -0200 scmutil: generalize message to make it more i18n-friendly stable
Wagner Bruna <wbruna@yahoo.com> [Sun, 21 Oct 2012 11:20:33 -0200] rev 17850
scmutil: generalize message to make it more i18n-friendly
Mon, 22 Oct 2012 17:23:31 -0500 update: check for missing files with --check (issue3595) stable
Matt Mackall <mpm@selenic.com> [Mon, 22 Oct 2012 17:23:31 -0500] rev 17849
update: check for missing files with --check (issue3595)
Mon, 22 Oct 2012 16:06:47 -0500 remove: don't return error on directories with tracked files stable
Matt Mackall <mpm@selenic.com> [Mon, 22 Oct 2012 16:06:47 -0500] rev 17848
remove: don't return error on directories with tracked files Spotted by Sergey <sergemp@mail.ru>
Sat, 20 Oct 2012 21:43:46 -0400 largefiles: use 'default' instead of 'default-push' when pulling (issue3584) stable
Matt Harbison <matt_harbison@yahoo.com> [Sat, 20 Oct 2012 21:43:46 -0400] rev 17847
largefiles: use 'default' instead of 'default-push' when pulling (issue3584) This only applies to downloading largefiles, and only when no source for the pull is explicitly provided. The repository itself was properly being pulled via 'default' previously. Using --all-largefiles is not necessary on a bare pull to test this (this existing test is merely a convenience), but it is required to test pulling on the rebase path. Note that the errors generated in the --rebase case are because the repo specified doesn't have the largefiles in its cache (though they are in the user cache), so the errors are misleading. Specifying --all-largefiles when cloning to 'b' fixes this, but instead of errors, it reports caching only 5 largefiles instead of the 9 that come up missing. Likely this is because the largefile download procedure tries to download missing files for each rev, and some of the files have standins in more than one rev that gets pulled.
Mon, 22 Oct 2012 12:00:21 -0700 scmutil: add mustaudit delegation to filtervfs (issue3673) stable
Bryan O'Sullivan <bryano@fb.com> [Mon, 22 Oct 2012 12:00:21 -0700] rev 17846
scmutil: add mustaudit delegation to filtervfs (issue3673)
Mon, 22 Oct 2012 11:59:11 -0700 scmutil: abstract out mustaudit delegation stable
Bryan O'Sullivan <bryano@fb.com> [Mon, 22 Oct 2012 11:59:11 -0700] rev 17845
scmutil: abstract out mustaudit delegation
Fri, 19 Oct 2012 14:47:55 -0500 clone: don't %-escape the default destination (issue3145) stable
Matt Mackall <mpm@selenic.com> [Fri, 19 Oct 2012 14:47:55 -0500] rev 17844
clone: don't %-escape the default destination (issue3145)
Fri, 19 Oct 2012 15:45:16 +0200 test-largefiles: fix failing test on Windows stable
Adrian Buehlmann <adrian@cadifra.com> [Fri, 19 Oct 2012 15:45:16 +0200] rev 17843
test-largefiles: fix failing test on Windows The test failed due to / vs. \ in paths issues. Fixes 08d11b82d9fc.
Fri, 19 Oct 2012 15:03:35 +0200 test-push-http: fix failing test on Windows stable
Adrian Buehlmann <adrian@cadifra.com> [Fri, 19 Oct 2012 15:03:35 +0200] rev 17842
test-push-http: fix failing test on Windows The test failed due to problems with escaping. Fixes 8474be4412ca.
Fri, 19 Oct 2012 01:38:53 -0500 Added signature for changeset d118a4f4fd16 stable
Matt Mackall <mpm@selenic.com> [Fri, 19 Oct 2012 01:38:53 -0500] rev 17841
Added signature for changeset d118a4f4fd16
Fri, 19 Oct 2012 01:38:49 -0500 Added tag 2.4-rc for changeset d118a4f4fd16 stable
Matt Mackall <mpm@selenic.com> [Fri, 19 Oct 2012 01:38:49 -0500] rev 17840
Added tag 2.4-rc for changeset d118a4f4fd16
Fri, 19 Oct 2012 01:34:50 -0500 merge default into stable for 2.4 code freeze stable 2.4-rc
Matt Mackall <mpm@selenic.com> [Fri, 19 Oct 2012 01:34:50 -0500] rev 17839
merge default into stable for 2.4 code freeze
Thu, 26 Jul 2012 21:29:39 +0200 hgwebdir: make collapsed folders easier to distinguish from repositories
Angel Ezquerra <angel.ezquerra@gmail.com> [Thu, 26 Jul 2012 21:29:39 +0200] rev 17838
hgwebdir: make collapsed folders easier to distinguish from repositories Add a "/" character after the collapsed folder names, to make them easier to distinguish from regular repository and subrepository entries.
Thu, 18 Oct 2012 10:31:15 +0900 help: indicate help omitting if help document is not fully displayed
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 18 Oct 2012 10:31:15 +0900] rev 17837
help: indicate help omitting if help document is not fully displayed Before this patch, there is no information about whether help document is fully displayed or not. So, some users seem to misunderstand "-v" for "hg help" just as "the option to show list of global options": experience on "hg help -v" for some commands not containing verbose containers may strengthen this misunderstanding. Such users have less opportunity for noticing omitted help document, and this may cause insufficient understanding about Mercurial. This patch indicates help omitting, if help document is not fully displayed. For command help, the message below is displayed at the end of help output, if help document is not fully displayed: use "hg -v help xxxx" to show more complete help and the global options and otherwise: use "hg -v help xxxx" to show the global options For topics and extensions help, the message below is displayed, only if help document is not fully displayed: use "hg help -v xxxx" to show more complete help This allows users to know whether there is any omitted information or not exactly, and can trigger "hg help -v" invocation. This patch causes formatting help document twice, to switch messages one for omitted help, and another for not omitted. This decreases performance of help document formatting, but it is not mainly focused at help command invocation, so this wouldn't become problem.
Thu, 18 Oct 2012 23:55:15 -0500 httpclient: fix calling convention violation
Matt Mackall <mpm@selenic.com> [Thu, 18 Oct 2012 23:55:15 -0500] rev 17836
httpclient: fix calling convention violation
Mon, 08 Oct 2012 23:49:36 +0900 largefiles: distinguish "no remote repo" from "no files to upload" (issue3651)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Mon, 08 Oct 2012 23:49:36 +0900] rev 17835
largefiles: distinguish "no remote repo" from "no files to upload" (issue3651) Before this patch, when no files to upload, "hg outgoing --large" and "hg summary --large" show "no remote repo", even though valid remote repository is specified. It is because that "getoutgoinglfiles()" returns None, not only if no valid remote repository is specified, but also if no files to upload. This patch makes "getoutgoinglfiles()" return empty list when no files to upload, and makes largefiles show "no files to upload" message at that time. This patch doesn't test "if toupload is None" route in "overrideoutgoing()", because this route is not executed unless remote repository becomes inaccessible just before largefiles specific processing: successful execution of "orig()" means that at least one of "default", "default-push" or dest is valid one, and that "getoutgoinglfiles()" never returns None in such cases. At "hg summary --large" invocation, this patch shows message below: largefiles: (no files to upload) This follows the message shown by "hg summary" with MQ: mq: (empty queue)
Fri, 19 Oct 2012 00:50:12 +0200 push: refuse to push bumped changeset
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 19 Oct 2012 00:50:12 +0200] rev 17834
push: refuse to push bumped changeset This applies the same logic as used for `obsolete` and `unstable` changesets. Refuse to push them without force. We'll probably want to factor this logic with two new functions `pctx.troubled()` and `ctx.troubles()`. But I'm waiting for the third "trouble" to make it into core.
Fri, 19 Oct 2012 00:46:39 +0200 obsolete: simplify push abort message
push includes an xxx changeset: yyyyyyyyyy [Fri, 19 Oct 2012 00:46:39 +0200] rev 17833
obsolete: simplify push abort message to: push includes xxx changeset: yyyyyyyyyy
Fri, 19 Oct 2012 00:43:44 +0200 context: add a `bumped` method to `changectx`
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 19 Oct 2012 00:43:44 +0200] rev 17832
context: add a `bumped` method to `changectx` Same as `unstable()`, returns true if the changeset is bumped.
Fri, 19 Oct 2012 00:41:53 +0200 obsolete: add a flag that allows fixing "bumped" changeset
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 19 Oct 2012 00:41:53 +0200] rev 17831
obsolete: add a flag that allows fixing "bumped" changeset The first obsolescence flag is introduced to allows for fixing the "bumped" changeset situation. bumpedfix == 1. Creator of new changesets intended to fix "bumped" situation should not forget to add this flag to the marker. Otherwise the newly created changeset will be bumped too. See inlined documentation for details.
Mon, 15 Oct 2012 14:45:27 +0200 debugobsolete: add --flags option
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 15 Oct 2012 14:45:27 +0200] rev 17830
debugobsolete: add --flags option This options allows to specify the `flag` part of obsolete markers. For details about marker flags, check the `mercurial/obsolete.py` documentation. Some random flag are added to a marker to test this feature.
Fri, 19 Oct 2012 00:39:06 +0200 revset: add a bumped revset
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 19 Oct 2012 00:39:06 +0200] rev 17829
revset: add a bumped revset Select bumped changesets.
Fri, 19 Oct 2012 00:36:18 +0200 obsolete: add the detection of bumped changeset.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 19 Oct 2012 00:36:18 +0200] rev 17828
obsolete: add the detection of bumped changeset. Bumped changesets are non-public changesets that tries to succeed a public() changeset.
Tue, 16 Oct 2012 15:49:58 +0200 obsolete: have `allsuccessors` takes a list of nodes
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 16 Oct 2012 15:49:58 +0200] rev 17827
obsolete: have `allsuccessors` takes a list of nodes Additional logic, used to detect mutable history troubles, will need to quickly compute successors of a whole set of changeset.
Fri, 19 Oct 2012 00:30:11 +0200 obsolete: rename `anysuccessors` into `allsuccessors`
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 19 Oct 2012 00:30:11 +0200] rev 17826
obsolete: rename `anysuccessors` into `allsuccessors` The "any" prefix looks like it returned a boolean. `allsuccessors` is more accurate.
Fri, 19 Oct 2012 00:28:13 +0200 obsolete: rename `getobscache` into `getrevs`
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 19 Oct 2012 00:28:13 +0200] rev 17825
obsolete: rename `getobscache` into `getrevs` The old name was not very good for two reasons: - caller does not care about "cache", - set of revision returned may not be obsolete at all. The new name was suggested by Kevin Bullock.
Sun, 14 Oct 2012 15:10:13 -0400 largefiles: always create the cache and standin directories when cloning
Matt Harbison <matt_harbison@yahoo.com> [Sun, 14 Oct 2012 15:10:13 -0400] rev 17824
largefiles: always create the cache and standin directories when cloning The standin matcher only works if the .hglf directory exists (and it won't exist if 'clone -U' is used, unless --all-largefiles is also specified). Since not even 'update -r null' will get rid of the standin directory, this ensures that the standin directory always exists if the repo has the 'largefiles' requirement. This requirement is only set after a largefile is committed, so these directories will not be created for repos that have the extension enabled but have not committed a largefile. With the standin directory in place, 'lfconvert --to-normal' will now be able to download the required largefiles when converting a repo that was created with 'clone -U', and whose files are not in the usercache. The downloadlfiles command could probably be put inside the 'largefiles' requirement conditional too, but given that the user specified --all-largefiles, there is likely an expectation to print out the number of largefiles downloaded, even if it is 0.
Sun, 14 Oct 2012 14:44:08 -0400 largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519)
Matt Harbison <matt_harbison@yahoo.com> [Sun, 14 Oct 2012 14:44:08 -0400] rev 17823
largefiles: fix a traceback in lfconvert if a largefile is missing (issue3519) The largefile may be missing for various reasons, including that a remote repository was cloned without the --all-largefiles option. Therefore, it seems reasonable to attempt to download the missing files and failing that, abort and indicate the affected file and revision so the user can manually fix the problem.
Thu, 18 Oct 2012 16:34:13 -0500 bookmarks: further flatten code
Kevin Bullock <kbullock@ringworld.org> [Thu, 18 Oct 2012 16:34:13 -0500] rev 17822
bookmarks: further flatten code This hopefully clarifies the behavior when no NAME is passed, by separating the branches for listing bookmarks vs. deactivating the current bookmark.
Wed, 17 Oct 2012 21:42:06 -0500 scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 21:42:06 -0500] rev 17821
scmutil: add bad character checking to checknewlabel This factors out the checks from tags and bookmarks, and newly applies the same prohibitions to branches. checknewlabel takes a new parameter, kind, indicating the kind of label being checked. Test coverage is added for all three types of labels.
Wed, 17 Oct 2012 21:39:07 -0500 tag: disallow '\0' in tag names
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 21:39:07 -0500] rev 17820
tag: disallow '\0' in tag names This brings the list of disallowed characters in line with bookmarks.
Wed, 17 Oct 2012 21:32:19 -0500 dirstate: use scmutil.checknewlabel to check new branch name
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 21:32:19 -0500] rev 17819
dirstate: use scmutil.checknewlabel to check new branch name
Wed, 17 Oct 2012 17:23:39 -0500 bookmarks: use scmutil.checknewlabel
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 17:23:39 -0500] rev 17818
bookmarks: use scmutil.checknewlabel Validation is pulled up into the commands module to avoid an import cycle.
Wed, 17 Oct 2012 16:34:46 -0500 scmutil: add function to validate new branch, tag, and bookmark names
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 16:34:46 -0500] rev 17817
scmutil: add function to validate new branch, tag, and bookmark names For now the new function only checks to make sure the new label name isn't a reserved name ('tip', '.', or 'null'). Eventually more of the checks will be unified between the different types of labels. The `tag` command is trivially updated to use it. Updating branches and bookmarks to use it is slightly more invasive and thus reserved for later patches.
Wed, 17 Oct 2012 16:32:43 -0500 bookmarks: disallow bookmarks named 'tip', '.', or 'null'
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 16:32:43 -0500] rev 17816
bookmarks: disallow bookmarks named 'tip', '.', or 'null' This makes bookmarks reject the same reserved names as tags and branches.
Wed, 17 Oct 2012 17:03:01 -0500 bookmarks: abort directly on invalid name
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 17:03:01 -0500] rev 17815
bookmarks: abort directly on invalid name This consolidates the abort message for a bookmark name containing invalid characters into one place, and renames the valid() method to checkvalid() to reflect the fact that it's no longer a predicate.
Wed, 17 Oct 2012 16:23:42 -0500 bookmarks: remove redundant check for newline
Kevin Bullock <kbullock@ringworld.org> [Wed, 17 Oct 2012 16:23:42 -0500] rev 17814
bookmarks: remove redundant check for newline New bookmarks are already checked for illegal characters (':', '\0', '\n', and '\r') in bookmarks.valid().
(0) -10000 -3000 -1000 -112 +112 +1000 +3000 +10000 +30000 tip