Tue, 27 May 2014 21:02:16 -0700 dirstate.status: assign members one by one instead of unpacking the tuple
Siddharth Agarwal <sid0@fb.com> [Tue, 27 May 2014 21:02:16 -0700] rev 21811
dirstate.status: assign members one by one instead of unpacking the tuple With this patch, hg status and hg diff regain their previous speed. The following tests are run against a working copy with over 270,000 files. Here, 'before' means without this or the previous patch applied. Note that in this case `hg perfstatus` isn't representative since it doesn't take dirstate parsing time into account. $ time hg status # best of 5 before: 2.03s user 1.25s system 99% cpu 3.290 total after: 2.01s user 1.25s system 99% cpu 3.261 total $ time hg diff # best of 5 before: 1.32s user 0.78s system 99% cpu 2.105 total after: 1.27s user 0.79s system 99% cpu 2.066 total
Tue, 27 May 2014 21:02:16 -0700 dirstate.status: assign members one by one instead of unpacking the tuple
Siddharth Agarwal <sid0@fb.com> [Tue, 27 May 2014 21:02:16 -0700] rev 21810
dirstate.status: assign members one by one instead of unpacking the tuple With this patch, hg status and hg diff regain their previous speed. The following tests are run against a working copy with over 270,000 files. Here, 'before' means without this or the previous patch applied. Note that in this case `hg perfstatus` isn't representative since it doesn't take dirstate parsing time into account. $ time hg status # best of 5 before: 2.03s user 1.25s system 99% cpu 3.290 total after: 2.01s user 1.25s system 99% cpu 3.261 total $ time hg diff # best of 5 before: 1.32s user 0.78s system 99% cpu 2.105 total after: 1.27s user 0.79s system 99% cpu 2.066 total
Tue, 27 May 2014 14:27:41 -0700 parsers: inline fields of dirstate values in C version
Siddharth Agarwal <sid0@fb.com> [Tue, 27 May 2014 14:27:41 -0700] rev 21809
parsers: inline fields of dirstate values in C version Previously, while unpacking the dirstate we'd create 3-4 new CPython objects for most dirstate values: - the state is a single character string, which is pooled by CPython - the mode is a new object if it isn't 0 due to being in the lookup set - the size is a new object if it is greater than 255 - the mtime is a new object if it isn't -1 due to being in the lookup set - the tuple to contain them all In some cases such as regular hg status, we actually look at all the objects. In other cases like hg add, hg status for a subdirectory, or hg status with the third-party hgwatchman enabled, we look at almost none of the objects. This patch eliminates most object creation in these cases by defining a custom C struct that is exposed to Python with an interface similar to a tuple. Only when tuple elements are actually requested are the respective objects created. The gains, where they're expected, are significant. The following tests are run against a working copy with over 270,000 files. parse_dirstate becomes significantly faster: $ hg perfdirstate before: wall 0.186437 comb 0.180000 user 0.160000 sys 0.020000 (best of 35) after: wall 0.093158 comb 0.100000 user 0.090000 sys 0.010000 (best of 95) and as a result, several commands benefit: $ time hg status # with hgwatchman enabled before: 0.42s user 0.14s system 99% cpu 0.563 total after: 0.34s user 0.12s system 99% cpu 0.471 total $ time hg add new-file before: 0.85s user 0.18s system 99% cpu 1.033 total after: 0.76s user 0.17s system 99% cpu 0.931 total There is a slight regression in regular status performance, but this is fixed in an upcoming patch.
Tue, 27 May 2014 17:10:28 -0700 dirstate: add dirstatetuple to create dirstate values
Siddharth Agarwal <sid0@fb.com> [Tue, 27 May 2014 17:10:28 -0700] rev 21808
dirstate: add dirstatetuple to create dirstate values Upcoming patches will switch away from using Python tuples for dirstate values in compiled builds. Make that easier by introducing a variable called dirstatetuple, currently set to tuple. In upcoming patches, this will be set to an object from the parsers module.
Tue, 27 May 2014 15:22:23 -0700 parsers: remove no longer used dirstate_unset
Siddharth Agarwal <sid0@fb.com> [Tue, 27 May 2014 15:22:23 -0700] rev 21807
parsers: remove no longer used dirstate_unset
Tue, 27 May 2014 15:17:38 -0700 pack_dirstate: in C version, for invalidation set dict to what we write to disk
Siddharth Agarwal <sid0@fb.com> [Tue, 27 May 2014 15:17:38 -0700] rev 21806
pack_dirstate: in C version, for invalidation set dict to what we write to disk For files written out in the last second, Mercurial used to invalidate all the stat data (state, size, mode, mtime) while persisting to disk. This included invalidating the data in the dirstate dict as well. In commit 187bf2dde7c1, this was found to be unnecessary, and Mercurial switched to invalidating only the mtime. However, in the C version of pack_dirstate the value set in the dict was still the fully invalidated one. Switch to invalidating just the mtime in the dict as well.
Thu, 26 Jun 2014 11:10:28 -0400 record: update comment to match code
Jordi Gutiérrez Hermoso <jordigh@octave.org> [Thu, 26 Jun 2014 11:10:28 -0400] rev 21805
record: update comment to match code Commit 205599e31870 changed how newfiles get passed to commitfunc, but did not change the corresponding comment that explains this. This commit also updates this comment.
Sat, 21 Jun 2014 14:49:49 +0530 hg: update newly added listdir function of vfs in clone
Chinmay Joshi <c@chinmayjoshi.com> [Sat, 21 Jun 2014 14:49:49 +0530] rev 21804
hg: update newly added listdir function of vfs in clone This change invokes os.listdir() via newly added vfs function in clone.
Sat, 21 Jun 2014 14:44:09 +0530 hg: use vfs functions in clone
Chinmay Joshi <c@chinmayjoshi.com> [Sat, 21 Jun 2014 14:44:09 +0530] rev 21803
hg: use vfs functions in clone This change applies vfs functions in clone. destvfs.exists will invoke os.path.lexists via lexists of vfs to check for broken symbolic links.
Sat, 21 Jun 2014 14:40:29 +0530 hg: update util.writefile method to use write with vfs in share
Chinmay Joshi <c@chinmayjoshi.com> [Sat, 21 Jun 2014 14:40:29 +0530] rev 21802
hg: update util.writefile method to use write with vfs in share This patch replaces util.writefile() to use destvfs.write().
Sat, 21 Jun 2014 14:37:39 +0530 hg: update to use vfs functions in shared destination repository
Chinmay Joshi <c@chinmayjoshi.com> [Sat, 21 Jun 2014 14:37:39 +0530] rev 21801
hg: update to use vfs functions in shared destination repository This patch uses destvfs with base as .hg directory in shared destination repository to update filesystem function with vfs. Some methods are changed to use vfs functions with destvfs. branch 'default' HG: bookmark '@' HG: changed mercurial/hg.py
Sat, 21 Jun 2014 14:29:20 +0530 hg: use vfs functions in destination repository with share
Chinmay Joshi <c@chinmayjoshi.com> [Sat, 21 Jun 2014 14:29:20 +0530] rev 21800
hg: use vfs functions in destination repository with share In this patch, dstwvfs is added to use vfs functions in working directory of destination shared repository. Existing filesystem operations are updated to use vfs functions through dstwvfs.
Fri, 20 Jun 2014 21:18:14 +0530 vfs: add listdir for os.listdir in vfs
Chinmay Joshi <c@chinmayjoshi.com> [Fri, 20 Jun 2014 21:18:14 +0530] rev 21799
vfs: add listdir for os.listdir in vfs This patch adds listdir() in vfs to use os.listdir().
Mon, 23 Jun 2014 09:24:56 -0400 templater: restore use of callable() since it was readded in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:24:56 -0400] rev 21798
templater: restore use of callable() since it was readded in Python 3.2
Mon, 23 Jun 2014 09:24:38 -0400 hook: restore use of callable() since it was readded in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:24:38 -0400] rev 21797
hook: restore use of callable() since it was readded in Python 3.2
Mon, 23 Jun 2014 09:24:24 -0400 help: restore use of callable() since it was readded in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:24:24 -0400] rev 21796
help: restore use of callable() since it was readded in Python 3.2
Mon, 23 Jun 2014 09:24:06 -0400 extensions: restore use of callable() since it was readded in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:24:06 -0400] rev 21795
extensions: restore use of callable() since it was readded in Python 3.2
Mon, 23 Jun 2014 09:24:16 -0400 fancyopts: restore use of callable() since it was readded in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:24:16 -0400] rev 21794
fancyopts: restore use of callable() since it was readded in Python 3.2
Mon, 23 Jun 2014 09:23:57 -0400 gendoc: restore use of callable() since it was readded in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:23:57 -0400] rev 21793
gendoc: restore use of callable() since it was readded in Python 3.2
Mon, 23 Jun 2014 09:23:47 -0400 check-seclevel: restore use of callable() since it was readded in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:23:47 -0400] rev 21792
check-seclevel: restore use of callable() since it was readded in Python 3.2
Mon, 23 Jun 2014 09:22:53 -0400 check-code: drop ban on callable() which was restored in Python 3.2
Augie Fackler <raf@durin42.com> [Mon, 23 Jun 2014 09:22:53 -0400] rev 21791
check-code: drop ban on callable() which was restored in Python 3.2 A followup will restore use of callable() in place of the awkward hasattr() construction we were using to be one step closer to Python 3.
Sat, 21 Jun 2014 15:56:49 +1000 diff: add nobinary config to suppress git-style binary diffs
Stephen Lee <sphen.lee@gmail.com> [Sat, 21 Jun 2014 15:56:49 +1000] rev 21790
diff: add nobinary config to suppress git-style binary diffs
Mon, 23 Jun 2014 13:50:44 -0500 branchmap: don't use ui.warn for debug message
Matt Mackall <mpm@selenic.com> [Mon, 23 Jun 2014 13:50:44 -0500] rev 21789
branchmap: don't use ui.warn for debug message
Mon, 23 Jun 2014 13:46:42 -0500 branch: add debug message for branch cache write failure
Matt Mackall <mpm@selenic.com> [Mon, 23 Jun 2014 13:46:42 -0500] rev 21788
branch: add debug message for branch cache write failure
Sun, 04 May 2014 22:36:07 -0700 record: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:36:07 -0700] rev 21787
record: define inferrepo in command decorator
Sun, 04 May 2014 22:30:47 -0700 mq: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:30:47 -0700] rev 21786
mq: define inferrepo in command decorator
Sun, 04 May 2014 22:23:45 -0700 largefiles: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:23:45 -0700] rev 21785
largefiles: define inferrepo in command decorator
Sun, 04 May 2014 22:32:15 -0700 keyword: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:32:15 -0700] rev 21784
keyword: define inferrepo in command decorator
Sun, 04 May 2014 22:33:22 -0700 hgk: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:33:22 -0700] rev 21783
hgk: define inferrepo in command decorator
Sun, 04 May 2014 22:28:46 -0700 graphlog: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:28:46 -0700] rev 21782
graphlog: define inferrepo in command decorator
Sun, 04 May 2014 22:29:27 -0700 extdiff: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:29:27 -0700] rev 21781
extdiff: define inferrepo in command decorator
Sun, 04 May 2014 22:25:28 -0700 children: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:25:28 -0700] rev 21780
children: define inferrepo in command decorator
Sun, 04 May 2014 22:24:38 -0700 churn: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:24:38 -0700] rev 21779
churn: define inferrepo in command decorator
Sun, 04 May 2014 22:22:59 -0700 commands: define inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:22:59 -0700] rev 21778
commands: define inferrepo in command decorator
Sun, 04 May 2014 22:20:00 -0700 cmdutil: support inferrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:20:00 -0700] rev 21777
cmdutil: support inferrepo in command decorator
Sun, 04 May 2014 22:16:56 -0700 keyword: define optionalrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:16:56 -0700] rev 21776
keyword: define optionalrepo in command decorator
Sun, 04 May 2014 22:16:05 -0700 commands: define optionalrepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:16:05 -0700] rev 21775
commands: define optionalrepo in command decorator
Sun, 04 May 2014 22:12:34 -0700 cmdutil: add optionalrepo argument to command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:12:34 -0700] rev 21774
cmdutil: add optionalrepo argument to command decorator
Sun, 04 May 2014 22:07:45 -0700 tests: define norepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:07:45 -0700] rev 21773
tests: define norepo in command decorator
Sun, 04 May 2014 22:03:11 -0700 share: define norepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:03:11 -0700] rev 21772
share: define norepo in command decorator
Sun, 04 May 2014 22:04:14 -0700 mq: define norepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:04:14 -0700] rev 21771
mq: define norepo in command decorator
Sun, 04 May 2014 21:11:15 -0700 largefiles: define norepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 21:11:15 -0700] rev 21770
largefiles: define norepo in command decorator
Sun, 04 May 2014 22:02:25 -0700 convert: define norepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 22:02:25 -0700] rev 21769
convert: define norepo in command decorator
Sun, 04 May 2014 20:57:01 -0700 commands: define norepo in command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 20:57:01 -0700] rev 21768
commands: define norepo in command decorator
Sun, 04 May 2014 20:58:25 -0700 commands: add norepo argument to command decorator
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 20:58:25 -0700] rev 21767
commands: add norepo argument to command decorator Since decorators are evaluated at module load time and since the @command decorator imports commands, the norepo variable (along with its friends) may not be declared yet. These variables are now declared before @command usage to ensure they are present.
Sun, 04 May 2014 18:45:04 -0700 cmdutil: better document command()
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 May 2014 18:45:04 -0700] rev 21766
cmdutil: better document command()
Wed, 11 Jun 2014 22:19:29 -0400 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com> [Wed, 11 Jun 2014 22:19:29 -0400] rev 21765
convert: update the transplant, rebase and graft references in 'extra' This change allows the origin() and destination() revsets to yield the same results in the new and old repos after a conversion. Previously, nothing would be listed for queries in the new repo. Like the SHA1 updates to the commit messages, this is only operational when the 'convert.hg.saverev=True' option is specified. If the old reference cannot be found, it is left as-is. It seems slightly better to leave stale evidence of the graft/transplant/rebase than to eliminate it entirely.
Wed, 18 Jun 2014 20:59:36 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 18 Jun 2014 20:59:36 -0500] rev 21764
merge with stable
Wed, 18 Jun 2014 20:51:49 -0500 run-tests: hold iolock across diff/prompt when interactive
Matt Mackall <mpm@selenic.com> [Wed, 18 Jun 2014 20:51:49 -0500] rev 21763
run-tests: hold iolock across diff/prompt when interactive Otherwise diff may get separated from the corresponding prompt by other threads. This required moving the interactive prompting from one helper method to another.
Wed, 18 Jun 2014 15:26:07 -0500 bookmarks: improve the bookmark help (issue4244)
Matt Mackall <mpm@selenic.com> [Wed, 18 Jun 2014 15:26:07 -0500] rev 21762
bookmarks: improve the bookmark help (issue4244)
Wed, 18 Jun 2014 19:46:18 -0500 push: restore contents of HG_URL for hooks (issue4268) stable
Matt Mackall <mpm@selenic.com> [Wed, 18 Jun 2014 19:46:18 -0500] rev 21761
push: restore contents of HG_URL for hooks (issue4268)
Wed, 18 Jun 2014 13:47:14 -0500 tests: ignore missing file with PYTHONDONTWRITEBYTECODE (issue4239) stable
Matt Mackall <mpm@selenic.com> [Wed, 18 Jun 2014 13:47:14 -0500] rev 21760
tests: ignore missing file with PYTHONDONTWRITEBYTECODE (issue4239)
Mon, 16 Jun 2014 13:30:46 -0500 hgweb: avoid initialization race (issue4280) stable
Matt Mackall <mpm@selenic.com> [Mon, 16 Jun 2014 13:30:46 -0500] rev 21759
hgweb: avoid initialization race (issue4280)
Mon, 16 Jun 2014 12:04:48 -0500 p4: accept changesets with no description (issue4282) stable
Matt Mackall <mpm@selenic.com> [Mon, 16 Jun 2014 12:04:48 -0500] rev 21758
p4: accept changesets with no description (issue4282)
Sat, 14 Jun 2014 11:56:20 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Sat, 14 Jun 2014 11:56:20 -0500] rev 21757
merge with stable
Fri, 30 May 2014 12:57:58 -0700 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:57:58 -0700] rev 21756
test-run-tests.t: test the --nodiff option
Fri, 30 May 2014 12:12:12 -0700 test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:12:12 -0700] rev 21755
test-run-tests.t: test the --interactive option
Fri, 13 Jun 2014 14:45:23 +0530 run-tests: fixes the '--interactive' option error
anuraggoel <anurag.dsps@gmail.com> [Fri, 13 Jun 2014 14:45:23 +0530] rev 21754
run-tests: fixes the '--interactive' option error This patch fixes a regression recently introduced by a refactoring. Previously when failure occurs while testing with '--interactive' was enable, it didn't prompt user by asking whether he wants to accept this failure changes or not. This was happening beacuse of the 'if' condition if ret or not self._options.interactive or \ not os.path.exists(test.errpath): Everytime failure occurs, this condition gets true and returns back even when '--interactive' is enabled. This condition don't led the function to execute further, which consist the '--interactive' functionality. Now, on failure with '--interactive' enabled, it prompts user whether he wants to accepts failure changes or not. If yes then test gets passed and returns true, else test gets failed. On every failure, results gets stored in "self.failures.append((test, reason))" But if failure changes accepted by user then test must get "pop out" from failed test list.
Fri, 13 Jun 2014 14:33:02 +0530 run-tests: checks behaviour of test on failure while testing
anuraggoel <anurag.dsps@gmail.com> [Fri, 13 Jun 2014 14:33:02 +0530] rev 21753
run-tests: checks behaviour of test on failure while testing On failure while testing, if this function "result.addFailure(self, str(e))" returns true then test get 'passed' else count as 'failed'.
Sat, 14 Jun 2014 11:49:02 -0500 revlog: fix check-code error stable
Matt Mackall <mpm@selenic.com> [Sat, 14 Jun 2014 11:49:02 -0500] rev 21752
revlog: fix check-code error
Fri, 13 Jun 2014 17:42:04 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 13 Jun 2014 17:42:04 -0500] rev 21751
merge with stable
Fri, 13 Jun 2014 14:17:14 -0500 revlog: hold a private reference to self._cache stable
Matt Mackall <mpm@selenic.com> [Fri, 13 Jun 2014 14:17:14 -0500] rev 21750
revlog: hold a private reference to self._cache This keeps other threads from modifying self._cache out from under us. With this and the previous fix, 'hg serve' survives 100k hits with siege.
Fri, 13 Jun 2014 14:16:03 -0500 revlog: make _chunkcache access atomic stable
Matt Mackall <mpm@selenic.com> [Fri, 13 Jun 2014 14:16:03 -0500] rev 21749
revlog: make _chunkcache access atomic With this and related fixes, 'hg serve' survived 100000 hits with siege.
Mon, 09 Jun 2014 10:34:21 -0700 tests: cat error messages are different on Solaris stable
Danek Duvall <danek.duvall@oracle.com> [Mon, 09 Jun 2014 10:34:21 -0700] rev 21748
tests: cat error messages are different on Solaris
Tue, 10 Jun 2014 17:00:31 -0700 error: restore python 2.4 compatibility for BundleValueError
Brendan Cully <brendan@kublai.com> [Tue, 10 Jun 2014 17:00:31 -0700] rev 21747
error: restore python 2.4 compatibility for BundleValueError Under python 2.4, this: super(BundleValueError, self).__init__(msg) raises this: TypeError: super() argument 1 must be type, not classobj
Thu, 12 Jun 2014 14:40:45 -0500 i18n: explicitly decode paragraphs
Matt Mackall <mpm@selenic.com> [Thu, 12 Jun 2014 14:40:45 -0500] rev 21746
i18n: explicitly decode paragraphs This was triggering an exception when the default encoding was disabled.
Fri, 13 Jun 2014 14:14:02 -0500 minirst: explicitly decode substitutions
Matt Mackall <mpm@selenic.com> [Fri, 13 Jun 2014 14:14:02 -0500] rev 21745
minirst: explicitly decode substitutions Caught by Augie and sys.setdefaultencoding("undefined")
Fri, 30 May 2014 12:12:03 -0700 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:12:03 -0700] rev 21744
test-run-tests.t: tests --jobs option
Fri, 30 May 2014 12:11:51 -0700 test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:11:51 -0700] rev 21743
test-run-tests.t: test --debug option
Fri, 30 May 2014 12:11:39 -0700 test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:11:39 -0700] rev 21742
test-run-tests.t: test selection of testfile from the command line
Fri, 30 May 2014 12:11:17 -0700 test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:11:17 -0700] rev 21741
test-run-tests.t: tests the --retest option
Thu, 12 Jun 2014 03:20:28 +0530 run-tests: fixes the number of tests ran when '--retest' is enabled
anuraggoel <anurag.dsps@gmail.com> [Thu, 12 Jun 2014 03:20:28 +0530] rev 21740
run-tests: fixes the number of tests ran when '--retest' is enabled This patch fixes a regression recently introduced by a refactoring. (see 92a6b16c9186 and about 200 previous changesets from Gregory Szorc) While retesting, that is when '--retest' is enabled, only failure tests run and others either skipped or ignored. During retesting, "result.testsRun" holds the count of failure test that has run. But as while printing output, we have subtracted the skipped and ignored count from "result.testsRun". Therefore, to make the count remain the same, we need to add skipped and ignored count before printing.
Thu, 12 Jun 2014 02:36:52 +0530 run-tests: skipped test should not produce 'i' mark while retesting
anuraggoel <anurag.dsps@gmail.com> [Thu, 12 Jun 2014 02:36:52 +0530] rev 21739
run-tests: skipped test should not produce 'i' mark while retesting When '--retest' option is enabled then skipped test should not produce 'i' mark. This fixes a regression introduced by 92a6b16c9186 and about 200 previous changesets from Gregory Szorc.
Fri, 30 May 2014 12:10:56 -0700 test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:10:56 -0700] rev 21738
test-run-tests.t: test running a failing test
Fri, 13 Jun 2014 16:36:53 -0500 run-tests: filter whitespace at end of error diffs
Matt Mackall <mpm@selenic.com> [Fri, 13 Jun 2014 16:36:53 -0500] rev 21737
run-tests: filter whitespace at end of error diffs Python 2.6 and 2.7 produce slightly different diff headers.
Thu, 12 Jun 2014 01:28:22 +0530 run-tests: produce '!' mark after running a failing test
anuraggoel <anurag.dsps@gmail.com> [Thu, 12 Jun 2014 01:28:22 +0530] rev 21736
run-tests: produce '!' mark after running a failing test This patch fixes a regression recently introduced by a refactoring (see 92a6b16c9186 and about 200 previous changesets from Gregory Szorc). '!' mark denotes that the test gets failed while testing.
Thu, 12 Jun 2014 01:36:57 +0530 run-tests: produce error on running a failing test
anuraggoel <anurag.dsps@gmail.com> [Thu, 12 Jun 2014 01:36:57 +0530] rev 21735
run-tests: produce error on running a failing test This patch fixes a regression recently introduced by a refactoring (see 92a6b16c9186 and about 200 previous changesets from Gregory Szorc). It produce an error message everytime with a test filename which gets fail while testing except at one condition when '--nodiff' option is enabled.
Fri, 30 May 2014 12:10:19 -0700 test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:10:19 -0700] rev 21734
test-run-tests.t: test running a passing test
Tue, 10 Jun 2014 14:32:52 -0700 run-tests: don't check for the mercurial library used when using --with-hg
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 10 Jun 2014 14:32:52 -0700] rev 21733
run-tests: don't check for the mercurial library used when using --with-hg In the ``--with-hg`` case, we cannot properly infer the location of the mercurial library, so we skip the warning completely.
Fri, 30 May 2014 12:09:49 -0700 test: introduce test-run-tests.t
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 12:09:49 -0700] rev 21732
test: introduce test-run-tests.t This testfile tests the test runner itself. There were multiple regressions in the last few weeks. Having tests would prevent this in the future.
Fri, 30 May 2014 11:40:24 -0700 tests: comment the main purpose of ``test-unified-test.t``
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 11:40:24 -0700] rev 21731
tests: comment the main purpose of ``test-unified-test.t``
Wed, 11 Jun 2014 15:31:04 -0700 parsers.c: fix a couple of memory leaks stable
Danek Duvall <danek.duvall@oracle.com> [Wed, 11 Jun 2014 15:31:04 -0700] rev 21730
parsers.c: fix a couple of memory leaks
Fri, 30 May 2014 11:35:45 -0700 tests: rename ``test-run-tests.t`` to ``test-unified-test.t``
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 11:35:45 -0700] rev 21729
tests: rename ``test-run-tests.t`` to ``test-unified-test.t`` This ``test-run-tests.y`` is testing the unified test (.t) syntax interpretation, not really the run-tests.py command tool itself.
Tue, 27 May 2014 14:45:31 -0700 wireproto: rephrase the error message for unknown getbundle parameters
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 27 May 2014 14:45:31 -0700] rev 21728
wireproto: rephrase the error message for unknown getbundle parameters In case of an unknown parameter passed to ``getbundle``, the server prints a message and ignores the parameter. This message was misleadingly prefixed with "abort: ". The use of "abort: " here is clearly wrong as nothing is actually aborted and the ``getbundle`` call proceeds without the parameter. The message is now prefixed with "warning: " and rephrased to make it clearer that the parameter was simply ignored.
Sat, 07 Jun 2014 11:32:37 -0400 patchbomb: reorder header insertions to clarify code
Augie Fackler <raf@durin42.com> [Sat, 07 Jun 2014 11:32:37 -0400] rev 21727
patchbomb: reorder header insertions to clarify code This is done as its own change to make the changes to test-patchbomb.t easier to review.
Sat, 07 Jun 2014 11:06:15 -0400 patchbomb: always use message-id of first patch for series-id
Augie Fackler <raf@durin42.com> [Sat, 07 Jun 2014 11:06:15 -0400] rev 21726
patchbomb: always use message-id of first patch for series-id This currently has the side effect that the 0 of N message has no series-id. This won't matter for Mercurial's own use, but may be undesirable for other projects depending on their workflow. The way the header is inserted is intentionally a little funny to make the test expectation diff easier to review.
Sat, 07 Jun 2014 11:30:06 -0400 test-patchbomb: normalize glob lines and record their construction
Augie Fackler <raf@durin42.com> [Sat, 07 Jun 2014 11:30:06 -0400] rev 21725
test-patchbomb: normalize glob lines and record their construction This makes it significantly less painful to use --interactive on run-tests, as you can now use the recorded regular expression substitutions to fix up the glob lines and produce zero diffs. This also tightens the expectations of a few of the lines for the MIME boundaries - it just seemed like the thing to do while in here and causing some changes.
Mon, 05 May 2014 22:51:20 -0700 patchbomb: includes a unique series ID in email header
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 05 May 2014 22:51:20 -0700] rev 21724
patchbomb: includes a unique series ID in email header Now that we have patch index and series size information, having a unique series identifier will helps tool to glue all email back together without any additional logic.
Fri, 30 May 2014 11:28:48 -0700 color: add parenthesis to help readability
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 30 May 2014 11:28:48 -0700] rev 21723
color: add parenthesis to help readability Took me a multiple attempts until my mind eventually stop reading: auto = coloropt = 'auto' And properly reads: auto = colorpopt == 'auto' So we add parenthesis to clarify.
Sat, 31 May 2014 17:26:15 -0700 status: document the content of the returned tuple in the docstring
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 31 May 2014 17:26:15 -0700] rev 21722
status: document the content of the returned tuple in the docstring The ``status`` function returns a lot of information. We document it.
Mon, 09 Jun 2014 14:11:17 -0500 resolve: fix grammar of no matching files message
Matt Mackall <mpm@selenic.com> [Mon, 09 Jun 2014 14:11:17 -0500] rev 21721
resolve: fix grammar of no matching files message
Mon, 09 Jun 2014 13:53:23 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 09 Jun 2014 13:53:23 -0500] rev 21720
merge with stable
Fri, 06 Jun 2014 00:21:46 -0500 bash_completion: add -l|--list support for shelve
Sean Farley <sean.michael.farley@gmail.com> [Fri, 06 Jun 2014 00:21:46 -0500] rev 21719
bash_completion: add -l|--list support for shelve This was overlooked previously and found via 'hg shelve -p -l <tab>' (to show the diff of the shelved commit).
Sat, 31 May 2014 21:21:06 +0900 workingctx: duplicate status list received at _poststatus hook
Yuya Nishihara <yuya@tcha.org> [Sat, 31 May 2014 21:21:06 +0900] rev 21718
workingctx: duplicate status list received at _poststatus hook basectx.status may reorder the list after workingctx._poststatus is called, so workingctx must copy it. Otherwise, wctx.deleted() would return "unknown" files, for example.
Thu, 05 Jun 2014 15:24:29 +0530 patch: replace functions in fsbackend to use vfs
Chinmay Joshi <c@chinmayjoshi.com> [Thu, 05 Jun 2014 15:24:29 +0530] rev 21717
patch: replace functions in fsbackend to use vfs Several functions in fsbackend are replaced to use vfs functions. vfs operations are applied on filename and path is joined by _join().
Thu, 05 Jun 2014 15:16:44 +0530 vfs: add unlinkpath to vfs
Chinmay Joshi <c@chinmayjoshi.com> [Thu, 05 Jun 2014 15:16:44 +0530] rev 21716
vfs: add unlinkpath to vfs This patch adds unlinkpath() function in vfs to replace util.unlinkpath().
Thu, 05 Jun 2014 22:20:32 +0900 shelve: add option combination tests for refactoring in succeeding patch
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 05 Jun 2014 22:20:32 +0900] rev 21715
shelve: add option combination tests for refactoring in succeeding patch
Sun, 01 Jun 2014 00:08:33 +0900 qfold: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 01 Jun 2014 00:08:33 +0900] rev 21714
qfold: allow to specify '--message/'--logfile' and '--edit' at the same time Before this patch, 'hg qfold' disallows to specify '--message/'--logfile' and '--edit' at the same time. 'hg qfold' has disallowed such combination since Mercurial 0.9.2, but this restriction seems not to be reasonable for recent Mercurial, because all other commands creating new changeset allow it. This patch allows 'hg qfold' to specify '--message/'--logfile' and '--edit' at the same time like other commands creating new changeset.
Sun, 01 Jun 2014 00:08:32 +0900 qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 01 Jun 2014 00:08:32 +0900] rev 21713
qrefresh: allow to specify '--message/'--logfile' and '--edit' at the same time Before this patch, 'hg qrefresh' disallows to specify '--message/'--logfile' and '--edit' at the same time. 'hg qrefresh' has disallowed such combination since Mercurial 0.9.2, but this restriction seems not to be reasonable for recent Mercurial, because all other commands creating new changeset allow it. This patch allows 'hg qrefresh' to specify '--message/'--logfile' and '--edit' at the same time like other commands creating new changeset.
Sun, 01 Jun 2014 00:08:32 +0900 backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 01 Jun 2014 00:08:32 +0900] rev 21712
backout: accept '--edit' like other commands creating new changeset After this patch, users can invoke editor for the commit message by '--edit' option regardless of '--message'/'--logfile'.
Sun, 01 Jun 2014 00:08:32 +0900 gpg: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 01 Jun 2014 00:08:32 +0900] rev 21711
gpg: accept '--edit' like other commands creating new changeset After this patch, users can invoke editor for the commit message by '--edit' option regardless of '--message'.
Tue, 03 Jun 2014 13:49:51 -0700 memfilectx: add a size method
Sean Farley <sean.michael.farley@gmail.com> [Tue, 03 Jun 2014 13:49:51 -0700] rev 21710
memfilectx: add a size method This method is needed to have memfilectx behave like the other file contexts. We can't just inherit this method because each file context has different behavior: filectx reads from the filelog, and workingfilectx reads from the disk. Therefore, we define memfilectx to return the size of the data in memory.
Mon, 26 May 2014 19:02:11 +0200 resolve: keep wlock while resolving stable
Mads Kiilerich <madski at unity3d.com> [Mon, 26 May 2014 19:02:11 +0200] rev 21709
resolve: keep wlock while resolving This will make resolve use correct locking and thus make it more safe. Resolve is usually a long running command spending a lot of time waiting for user input on hard problems. It is thus a real world scenario to start multiple resolves at once or run other commands (such as up -C and merge) while resolve is running. Proper locking prevents that.
Thu, 05 Jun 2014 16:47:14 +0900 keyword: suppress keyword expansion while 'hg fetch' for internal merge stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 05 Jun 2014 16:47:14 +0900] rev 21708
keyword: suppress keyword expansion while 'hg fetch' for internal merge Before this patch, 'hg fetch' may cause unexpected conflict, if 'hg fetch'-ed changes are located near lines in which keywords are embedded, because keywords are substituted with other strings in the working directory. This patch suppresses keyword expansion while 'hg fetch' for internal merge by adding 'fetch' to 'restricted' command list like 'merge'. This patch uses 'hg import' to safely create the new head to be merged at succeeding 'hg fetch', because: - branch of revision #10 is different from one of #11 in 'Test' repository, so just 'hg fetch -r 11' doesn't cause merging between them this means the new head should be created manually. - 'hg import' is easier and safer than 'cat <<EOF' and 'hg commit' to replay same changes including special characters like '$' safeness of 'hg import' with keyword extension is already examined in 'test-keyword.t'.
Thu, 05 Jun 2014 16:47:14 +0900 keyword: suppress keyword expansion while 'hg histedit' for internal merge stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 05 Jun 2014 16:47:14 +0900] rev 21707
keyword: suppress keyword expansion while 'hg histedit' for internal merge Before this patch, 'hg histedit' may cause unexpected conflict, if 'hg histedit'-ed changes are located near lines in which keywords are embedded, because keywords are substituted with other strings in the working directory. This patch suppresses keyword expansion while 'hg histedit' for internal merge by adding 'histedit' to 'restricted' command list like 'merge'. Test in this patch just swaps order of revision #13 and #14: this is enough to cause internal merge.
Thu, 05 Jun 2014 16:47:14 +0900 keyword: suppress keyword expansion while 'hg backout' for internal merge stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 05 Jun 2014 16:47:14 +0900] rev 21706
keyword: suppress keyword expansion while 'hg backout' for internal merge Before this patch, 'hg backout' may cause unexpected conflict, if 'hg backout'-ed changes are located near lines in which keywords are embedded, because keywords are substituted with other strings in the working directory. This patch suppresses keyword expansion while 'hg backout' for internal merge by adding 'backout' to 'restricted' command list like 'merge'.
Thu, 05 Jun 2014 16:47:14 +0900 keyword: suppress keyword expansion while 'hg graft' for internal merge stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 05 Jun 2014 16:47:14 +0900] rev 21705
keyword: suppress keyword expansion while 'hg graft' for internal merge Before this patch, 'hg graft' may cause unexpected conflict, if 'hg graft'-ed changes are located near lines in which keywords are embedded, because keywords are substituted with other strings in the working directory. This patch suppresses keyword expansion while 'hg graft' for internal merge by adding 'graft' to 'restricted' command list like 'merge'.
Thu, 05 Jun 2014 16:47:13 +0900 keyword: suppress keyword expansion while 'hg rebase' for internal merge stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 05 Jun 2014 16:47:13 +0900] rev 21704
keyword: suppress keyword expansion while 'hg rebase' for internal merge Before this patch, 'hg rebase' may cause unexpected conflict, if 'hg rebase'-ed changes are located near lines in which keywords are embedded, because keywords are substituted with other strings in the working directory. This patch suppresses keyword expansion while 'hg rebase' for internal merge by adding 'rebase' to 'restricted' command list like 'merge'. This patch specifies '--keep' to 'hg rebase', because revision #10 is useful also for tests in succeeding patches.
Thu, 05 Jun 2014 16:47:13 +0900 keyword: suppress keyword expansion while 'hg unshelve' for internal merge stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 05 Jun 2014 16:47:13 +0900] rev 21703
keyword: suppress keyword expansion while 'hg unshelve' for internal merge Before this patch, 'hg unshelve' may cause unexpected conflict, if 'hg unshelve'-ed changes are located near lines in which keywords are embedded, because keywords are substituted with other strings in the working directory. This patch suppresses keyword expansion while 'hg unshelve' for internal merge by adding 'unshelve' to 'restricted' command list like 'merge'.
Sun, 01 Jun 2014 16:01:01 -0700 merge with stable
Matt Mackall <mpm@selenic.com> [Sun, 01 Jun 2014 16:01:01 -0700] rev 21702
merge with stable
Sun, 01 Jun 2014 14:15:43 -0700 Added signature for changeset 269c80ee5b3c stable
Matt Mackall <mpm@selenic.com> [Sun, 01 Jun 2014 14:15:43 -0700] rev 21701
Added signature for changeset 269c80ee5b3c
Sun, 01 Jun 2014 14:15:15 -0700 Added tag 3.0.1 for changeset 269c80ee5b3c stable
Matt Mackall <mpm@selenic.com> [Sun, 01 Jun 2014 14:15:15 -0700] rev 21700
Added tag 3.0.1 for changeset 269c80ee5b3c
Sun, 01 Jun 2014 13:58:28 -0700 merge with i18n stable 3.0.1
Matt Mackall <mpm@selenic.com> [Sun, 01 Jun 2014 13:58:28 -0700] rev 21699
merge with i18n
Wed, 21 May 2014 18:02:35 -0700 localrepo: prevent leak of transaction object (issue4258) stable
Gregory Szorc <gregory.szorc@gmail.com> [Wed, 21 May 2014 18:02:35 -0700] rev 21698
localrepo: prevent leak of transaction object (issue4258) The onclose() closure added in cd443c7589cc held a regular reference to the transaction object. This was causing the transaction to not gc and a leak to occur. The closure now holds a reference to the weakref instance and the leak goes away.
Fri, 30 May 2014 19:52:55 +0900 i18n-ja: synchronized with 9e12579369f1 stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 30 May 2014 19:52:55 +0900] rev 21697
i18n-ja: synchronized with 9e12579369f1
Wed, 07 May 2014 09:23:23 +0200 i18n-zh_TW: set Language header stable
Martin Geisler <martin@geisler.net> [Wed, 07 May 2014 09:23:23 +0200] rev 21696
i18n-zh_TW: set Language header This avoids a warning from msgfmt: $ msgfmt -v -o mercurial/locale/zh_TW/LC_MESSAGES/hg.mo i18n/zh_TW.po -c i18n/zh_TW.po:7: warning: header field 'Language' still has the initial default value
Wed, 07 May 2014 09:15:58 +0200 i18n-de: translation improvement for gpg extension stable
Jakob Krainz <jakob.krainz@fau.de> [Wed, 07 May 2014 09:15:58 +0200] rev 21695
i18n-de: translation improvement for gpg extension
Fri, 30 May 2014 11:53:10 -0700 bundlerepo: backout dbf292f65b09
Matt Mackall <mpm@selenic.com> [Fri, 30 May 2014 11:53:10 -0700] rev 21694
bundlerepo: backout dbf292f65b09 According to foozy: This patch should be backed out, because "bundlename" and "bundle" in this case are not relative paths to the root of repositories. The former is specified via "hg incoming --bundle BUNDLENAME" (relative path to cwd, or absolute one), and the latter is generated in "changegroup.writebundle" by "tempfile.mkstemp" for internal temporary usage (absolute path). To be exact, the latter hunk in this patch can be applied, because "os.join" for two absolute paths can generate correct result. But the former hunk can't, because it may unexpected result, if specified path is relative to cwd and cwd != root.
Mon, 26 May 2014 11:44:58 -0700 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 26 May 2014 11:44:58 -0700] rev 21693
merge: drop the quotes around commit description We already have a ":" after the user name to denote the start of the description. The current usage of quotes around the description is problematic as the truncation to 80 chars is likely to drop the closing quote. This may confuse syntax coloration in some editors.
Thu, 15 Aug 2013 15:47:15 -0500 memfilectx: remove path since it is now inherited
Sean Farley <sean.michael.farley@gmail.com> [Thu, 15 Aug 2013 15:47:15 -0500] rev 21692
memfilectx: remove path since it is now inherited
(0) -10000 -3000 -1000 -120 +120 +1000 +3000 +10000 +30000 tip