Fri, 15 Jun 2012 01:02:44 +0200 test-bisect: adapt for Windows
Adrian Buehlmann <adrian@cadifra.com> [Fri, 15 Jun 2012 01:02:44 +0200] rev 16960
test-bisect: adapt for Windows
Fri, 15 Jun 2012 00:39:21 +0200 test-journal-exists: use #if
Adrian Buehlmann <adrian@cadifra.com> [Fri, 15 Jun 2012 00:39:21 +0200] rev 16959
test-journal-exists: use #if
Thu, 14 Jun 2012 15:13:16 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 14 Jun 2012 15:13:16 -0500] rev 16958
merge with stable
Wed, 30 May 2012 21:47:51 -0300 acl: user docs for the "!" prefix in user or group names
Elifarley Callado Coelho Cruz [Wed, 30 May 2012 21:47:51 -0300] rev 16957
acl: user docs for the "!" prefix in user or group names
Mon, 28 May 2012 19:45:15 -0300 acl: use of "!" prefix in user or group names
Elifarley Callado Coelho Cruz [Mon, 28 May 2012 19:45:15 -0300] rev 16956
acl: use of "!" prefix in user or group names The "!" prefix allows you to prevent anyone except a given user or group to push changesets in a given branch or path. This patch enables a use case suggested by a user (Julien Bonnet): There's a branch that only a given user (or group) should be able to push to, and you don't want to restrict access to any other branch that may be created. With the "!" prefix, you simply deny access to "!givenuser" (or "!@givengroup").
Wed, 30 May 2012 12:55:33 -0700 parsers: add a C function to pack the dirstate
Bryan O'Sullivan <bryano@fb.com> [Wed, 30 May 2012 12:55:33 -0700] rev 16955
parsers: add a C function to pack the dirstate This is about 9 times faster than the Python dirstate packing code. The relatively small speedup is due to the poor locality and memory access patterns caused by traversing dicts and other boxed Python values.
Fri, 08 Jun 2012 05:31:28 +0300 test-convert: disable autocrlf for git
Eduard-Cristian Stefan <alexandrul.ct@gmail.com> [Fri, 08 Jun 2012 05:31:28 +0300] rev 16954
test-convert: disable autocrlf for git
Mon, 11 Jun 2012 11:15:14 +0200 debugwalk: observe ui.slash config option
Adrian Buehlmann <adrian@cadifra.com> [Mon, 11 Jun 2012 11:15:14 +0200] rev 16953
debugwalk: observe ui.slash config option
Sat, 09 Jun 2012 14:20:25 +0200 test-commit: remove extra cd .. stable
Adrian Buehlmann <adrian@cadifra.com> [Sat, 09 Jun 2012 14:20:25 +0200] rev 16952
test-commit: remove extra cd .. This specific cd .. leaves the base directory of the test ($TESTTMP). Removing it avoids that test artifacts (e.g. files) are created outside of the base directory.
Wed, 13 Jun 2012 20:14:28 +0200 merge with stable
Martin Geisler <martin@geisler.net> [Wed, 13 Jun 2012 20:14:28 +0200] rev 16951
merge with stable
Tue, 29 May 2012 07:07:10 -0500 notify: various fixes to docstring stable
David Champion <dgc@uchicago.edu> [Tue, 29 May 2012 07:07:10 -0500] rev 16950
notify: various fixes to docstring Typo corrections, grammar adjustments, clarity improvements.
Wed, 13 Jun 2012 02:44:46 +0200 help: sort results from keyword search
Mads Kiilerich <mads@kiilerich.com> [Wed, 13 Jun 2012 02:44:46 +0200] rev 16949
help: sort results from keyword search
Wed, 13 Jun 2012 02:29:47 +0200 tests: reintroduce globs in test-convert-authormap.t
Mads Kiilerich <mads@kiilerich.com> [Wed, 13 Jun 2012 02:29:47 +0200] rev 16948
tests: reintroduce globs in test-convert-authormap.t They are needed on windows and were accidentally removed in eaf6a6d7f015.
Tue, 12 Jun 2012 16:20:38 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Tue, 12 Jun 2012 16:20:38 -0500] rev 16947
merge with stable
Tue, 12 Jun 2012 16:20:20 -0500 merge with crew stable
Matt Mackall <mpm@selenic.com> [Tue, 12 Jun 2012 16:20:20 -0500] rev 16946
merge with crew
Fri, 01 Jun 2012 11:15:00 -0300 tests: removed unneeded section in acl configuration: 'extensions'
Elifarley Callado Coelho Cruz [Fri, 01 Jun 2012 11:15:00 -0300] rev 16945
tests: removed unneeded section in acl configuration: 'extensions' Declaring 'acl' in the [extensions] section doesn't change anything.
Fri, 01 Jun 2012 15:26:46 -0700 config: use util.compilere to compile regexps
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:26:46 -0700] rev 16944
config: use util.compilere to compile regexps
Fri, 01 Jun 2012 15:26:20 -0700 matcher: use re2 bindings if available
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:26:20 -0700] rev 16943
matcher: use re2 bindings if available There are two sets of Python re2 bindings available on the internet; this code works with both. Using re2 can greatly improve "hg status" performance when a .hgignore file becomes even modestly complex. Example: "hg status" on a clean tree with 134K files, where "hg debugignore" reports a regexp 4256 bytes in size. no .hgignore: 1.76 sec Python re: 2.79 re2: 1.82 The overhead of regexp matching drops from 1.03 seconds with stock re to 0.06 with re2. (For comparison, a git repo with the same contents and .gitignore file runs "git status -s" in 1.71 seconds, i.e. only slightly faster than hg with re2.)
Thu, 07 Jun 2012 01:42:50 +0200 help: fix extension commands help in keyword search
Olav Reinert <seroton10@gmail.com> [Thu, 07 Jun 2012 01:42:50 +0200] rev 16942
help: fix extension commands help in keyword search This patch fixes the synopsis shown for extension commands in keyword search results. A previous patch erroneously caused the extension synopsis to be shown instead. Test cases for keyword search are missing, so I added a one.
Tue, 12 Jun 2012 14:18:18 +0200 localrepo: lowercase "unexpected response" message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16941
localrepo: lowercase "unexpected response" message
Tue, 12 Jun 2012 14:18:18 +0200 ui: lowercase "no username" warning
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16940
ui: lowercase "no username" warning
Tue, 12 Jun 2012 14:18:18 +0200 ui: lowercase "not trusting file" warning message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16939
ui: lowercase "not trusting file" warning message
Tue, 12 Jun 2012 14:18:18 +0200 ui: lowercase ConfigError warning message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16938
ui: lowercase ConfigError warning message
Tue, 12 Jun 2012 14:18:18 +0200 cmdutil: lowercase finddate status message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16937
cmdutil: lowercase finddate status message This message is output by 'hg revert -d DATE' and 'hg update -d DATE'.
Tue, 12 Jun 2012 14:18:18 +0200 bisect: lowercase status message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16936
bisect: lowercase status message
Tue, 12 Jun 2012 14:18:18 +0200 serve: lowercase "no repo here" message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16935
serve: lowercase "no repo here" message
Tue, 12 Jun 2012 14:18:18 +0200 debuginstall: lowercase status messages
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16934
debuginstall: lowercase status messages
Tue, 12 Jun 2012 14:18:18 +0200 dispatch: lowercase --time message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16933
dispatch: lowercase --time message
Tue, 12 Jun 2012 14:18:18 +0200 win32text: lowercase warning message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16932
win32text: lowercase warning message
Tue, 12 Jun 2012 14:18:18 +0200 patchbomb: lowercase status messages
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16931
patchbomb: lowercase status messages
Tue, 12 Jun 2012 14:18:18 +0200 purge: lowercase messages
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16930
purge: lowercase messages
Tue, 12 Jun 2012 14:18:18 +0200 mq: lowercase warning messages
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16929
mq: lowercase warning messages
Tue, 12 Jun 2012 14:18:18 +0200 largefiles: lowercase messages
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16928
largefiles: lowercase messages
Tue, 12 Jun 2012 14:18:18 +0200 gpg: lowercase messages
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16927
gpg: lowercase messages
Tue, 12 Jun 2012 14:18:18 +0200 fetch: lowercase abort message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16926
fetch: lowercase abort message
Tue, 12 Jun 2012 14:18:18 +0200 convert: lowercase status and abort messages
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16925
convert: lowercase status and abort messages
Tue, 12 Jun 2012 14:18:18 +0200 churn: lowercase message
Martin Geisler <mg@aragost.com> [Tue, 12 Jun 2012 14:18:18 +0200] rev 16924
churn: lowercase message
Mon, 11 Jun 2012 17:45:36 +0200 test-parse-date: move remaining date parsing tests from test-log
Martin Geisler <mg@aragost.com> [Mon, 11 Jun 2012 17:45:36 +0200] rev 16923
test-parse-date: move remaining date parsing tests from test-log
Mon, 11 Jun 2012 17:41:55 +0200 test-log: removed tests already covered by test-parse-date
Martin Geisler <mg@aragost.com> [Mon, 11 Jun 2012 17:41:55 +0200] rev 16922
test-log: removed tests already covered by test-parse-date
Mon, 11 Jun 2012 17:40:18 +0200 test-parse-date: remove cruft from 8c6f823efcc9
Martin Geisler <mg@aragost.com> [Mon, 11 Jun 2012 17:40:18 +0200] rev 16921
test-parse-date: remove cruft from 8c6f823efcc9 The test contained what looks like a copy-paste mistake.
Tue, 12 Jun 2012 12:10:47 +0200 merge with stable
Thomas Arendsen Hein <thomas@intevation.de> [Tue, 12 Jun 2012 12:10:47 +0200] rev 16920
merge with stable
Tue, 12 Jun 2012 12:05:52 +0200 archive: make progress only show files that are actually archived stable
Thomas Arendsen Hein <thomas@intevation.de> [Tue, 12 Jun 2012 12:05:52 +0200] rev 16919
archive: make progress only show files that are actually archived Before this, files that are excluded (or not included) were shown when using progress bar or --debug. Reported by Andrew Shadura.
Mon, 11 Jun 2012 19:57:25 +0200 test-hardlinks: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Mon, 11 Jun 2012 19:57:25 +0200] rev 16918
test-hardlinks: enable for Windows
Mon, 11 Jun 2012 19:18:36 +0200 test-command-template: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Mon, 11 Jun 2012 19:18:36 +0200] rev 16917
test-command-template: enable for Windows
Mon, 11 Jun 2012 19:04:18 +0200 test-rollback: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Mon, 11 Jun 2012 19:04:18 +0200] rev 16916
test-rollback: enable for Windows but without the part that needs serve
Mon, 11 Jun 2012 13:41:02 +0200 test-init: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Mon, 11 Jun 2012 13:41:02 +0200] rev 16915
test-init: enable for Windows On Windows, we can't create a directory with the name " ", as that is not a valid name for a directory.
Mon, 11 Jun 2012 14:09:35 +0200 test-run-tests: add tests for "#if no-false" and no-true
Adrian Buehlmann <adrian@cadifra.com> [Mon, 11 Jun 2012 14:09:35 +0200] rev 16914
test-run-tests: add tests for "#if no-false" and no-true
Mon, 11 Jun 2012 01:40:51 +0200 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com> [Mon, 11 Jun 2012 01:40:51 +0200] rev 16913
tests: add missing trailing 'cd ..' Many tests didn't change back from subdirectories at the end of the tests ... and they don't have to. The missing 'cd ..' could always be added when another test case is added to the test file. This change do that tests (99.5%) consistently end up in $TESTDIR where they started, thus making it simpler to extend them or move them around.
Mon, 11 Jun 2012 01:38:32 +0200 tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com> [Mon, 11 Jun 2012 01:38:32 +0200] rev 16912
tests: cleanup of tests that got lost in their own nested directories Some tests ended up in a directory several directories deeper than $TESTTMP, usually because some 'cd ..' had been forgotten between different test cases. Add 'cd ..' where they are missing so the tests get back where they started.
Mon, 11 Jun 2012 01:08:39 +0200 tests: cleanup of tests that ended up outside $TESTTMP
Mads Kiilerich <mads@kiilerich.com> [Mon, 11 Jun 2012 01:08:39 +0200] rev 16911
tests: cleanup of tests that ended up outside $TESTTMP No harm done, but it might confuse later on.
Sun, 10 Jun 2012 18:59:51 +0200 tests: remove 'hghave symlink' from test-import-git.t
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 18:59:51 +0200] rev 16910
tests: remove 'hghave symlink' from test-import-git.t The test had a long chain of commits depending on execbits in some of first commits. The hashes are checked throughout the file, so there was no elegant way to make it pass both with and without execbits. We now rollback the execbits-or-not commits and make a stable change instead. The hash chain is thus updated once but is now a bit more stable. The test coverage should be unaltered.
Sun, 10 Jun 2012 18:59:13 +0200 tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 18:59:13 +0200] rev 16909
tests: remove 'hghave symlink' from test-convert-svn-sink.t The symlink was present all over the test and could not easily be guarded with #if. Symlink testing is now moved to a separate #if section. All the relevant test coverage should unaltered.
Sun, 10 Jun 2012 18:50:42 +0200 tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 18:50:42 +0200] rev 16908
tests: convert some 'hghave symlink' to #if This will enable some tests for windows.
Sun, 10 Jun 2012 18:50:42 +0200 tests: drop a couple of unnecessary 'hghave symlink'
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 18:50:42 +0200] rev 16907
tests: drop a couple of unnecessary 'hghave symlink'
Sun, 10 Jun 2012 18:50:42 +0200 tests: use the right directory for running hghave from run-tests.py
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 18:50:42 +0200] rev 16906
tests: use the right directory for running hghave from run-tests.py
Sun, 10 Jun 2012 18:50:42 +0200 tests: make .t tests stop immediately if a cd fails
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 18:50:42 +0200] rev 16905
tests: make .t tests stop immediately if a cd fails This prevents tests from escaping from TESTTMP as a consequence of a failing directory creation.
Sun, 10 Jun 2012 18:28:42 +0200 test-remove-new: integrate into test-remove.t
Adrian Buehlmann <adrian@cadifra.com> [Sun, 10 Jun 2012 18:28:42 +0200] rev 16904
test-remove-new: integrate into test-remove.t
Sun, 10 Jun 2012 17:35:09 +0200 test-bundle: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Sun, 10 Jun 2012 17:35:09 +0200] rev 16903
test-bundle: enable for Windows
Sun, 10 Jun 2012 17:10:53 +0200 test-rename.t: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Sun, 10 Jun 2012 17:10:53 +0200] rev 16902
test-rename.t: enable for Windows
Sun, 10 Jun 2012 14:41:14 +0200 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 14:41:14 +0200] rev 16901
tests: consistently use a HGEDITOR pattern that works with msys on windows Removing the need for an executable sh script that can be run from a native windows application enables some tests for running on windows.
Sun, 10 Jun 2012 14:14:52 +0200 tests: glob the remaining 'saved backup bundle to' to prepare for windows
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 14:14:52 +0200] rev 16900
tests: glob the remaining 'saved backup bundle to' to prepare for windows
Sun, 10 Jun 2012 14:14:05 +0200 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 14:14:05 +0200] rev 16899
tests: convert some 'hghave execbit' to #if This enables some new tests for running on windows.
Sun, 10 Jun 2012 13:01:40 +0200 tests: change odd uses of 'if hghave' to #if
Mads Kiilerich <mads@kiilerich.com> [Sun, 10 Jun 2012 13:01:40 +0200] rev 16898
tests: change odd uses of 'if hghave' to #if
Sun, 10 Jun 2012 03:05:59 +0200 tests/run-tests: avoid C:/ in arguments
Adrian Buehlmann <adrian@cadifra.com> [Sun, 10 Jun 2012 03:05:59 +0200] rev 16897
tests/run-tests: avoid C:/ in arguments MSYS replaces C:/... in arguments with C;... as it interprets the C:/ as a colon separated POSIX path list. The colon is replaced with ; (path separator on Windows) according to http://www.mingw.org/wiki/Posix_path_conversion So we must not replace \ with / for neither $TESTTMP nor $TESTDIR, but we have to keep replacing \ with / for the Popen4 call of function hghave. If we don't do the latter, test-run-tests.t will fail with $ python run-tests.py --local test-run-tests.t --- C:\Users\adi\hgrepos\hg-main\tests\test-run-tests.t +++ C:\Users\adi\hgrepos\hg-main\tests\test-run-tests.t.err @@ -70,6 +70,7 @@ tested #else $ echo skipped + skipped #endif #if false An additional tweak in test-ssh.t is needed that globs away an encoded path, as it can't be translated back to $TESTTMP, because the backslashes in the output have been already encoded as %5C. This patch makes test-ssh.t pass in MSYS on Windows.
Sat, 09 Jun 2012 14:20:25 +0200 test-commit: remove extra cd ..
Adrian Buehlmann <adrian@cadifra.com> [Sat, 09 Jun 2012 14:20:25 +0200] rev 16896
test-commit: remove extra cd .. This specific cd .. leaves the base directory of the test ($TESTTMP). Removing it avoids that test artifacts (e.g. files) are created outside of the base directory.
Fri, 08 Jun 2012 23:37:11 +0200 help: test keyword search in translated text.
Olav Reinert <seroton10@gmail.com> [Fri, 08 Jun 2012 23:37:11 +0200] rev 16895
help: test keyword search in translated text. Tests that help keyword search is able to search the translated help text when using a non-English language.
Fri, 08 Jun 2012 05:49:50 +0300 test-mq-subrepo-svn: enable for Windows
Eduard-Cristian Stefan <alexandrul.ct@gmail.com> [Fri, 08 Jun 2012 05:49:50 +0300] rev 16894
test-mq-subrepo-svn: enable for Windows
Fri, 08 Jun 2012 05:37:06 +0300 test-convert-git: remove the read-only attribute of repository files
Eduard-Cristian Stefan <alexandrul.ct@gmail.com> [Fri, 08 Jun 2012 05:37:06 +0300] rev 16893
test-convert-git: remove the read-only attribute of repository files Git object files are stored read-only in the filesystem. Trying to remove a read-only file on windows will fail with access denied, so we have to make them writeable before they can be removed.
Fri, 08 Jun 2012 05:31:28 +0300 test-convert: disable autocrlf for git
Eduard-Cristian Stefan <alexandrul.ct@gmail.com> [Fri, 08 Jun 2012 05:31:28 +0300] rev 16892
test-convert: disable autocrlf for git Git might have autocrlf=true as a global or default setting, especially on windows. That is not expected in the tests and can cause + warning: LF will be replaced by CRLF in d/b. + The file will have its original line endings in your working directory. Explicitly setting it false will make the test pass in some setups - but still not out of the box.
Fri, 08 Jun 2012 15:11:05 +0200 tests/hghave: implement #if true / #if false
Adrian Buehlmann <adrian@cadifra.com> [Fri, 08 Jun 2012 15:11:05 +0200] rev 16891
tests/hghave: implement #if true / #if false For unconditionally testing / skipping a section. Useful for testing the test infrastructure in test-run-tests.t and for debugging/developing tests.
Fri, 08 Jun 2012 15:11:05 +0200 tests/run-tests: use $TMP on Windows (issue3490)
Adrian Buehlmann <adrian@cadifra.com> [Fri, 08 Jun 2012 15:11:05 +0200] rev 16890
tests/run-tests: use $TMP on Windows (issue3490) This is just a short-term workaround for that issue. More work needs to be done on scmutil.canonpath & friends. $TMP on Windows is specified to be defined, and it has correct casing, so we can use that as the default dir for tempfile.mkdtemp on Windows.
Fri, 08 Jun 2012 15:11:05 +0200 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Fri, 08 Jun 2012 15:11:05 +0200] rev 16889
test-import: enable for Windows
Fri, 08 Jun 2012 15:11:05 +0200 test-import: remove unneeded chmod call
Adrian Buehlmann <adrian@cadifra.com> [Fri, 08 Jun 2012 15:11:05 +0200] rev 16888
test-import: remove unneeded chmod call As pointed out by Mads, setting the x bit on dummypatch.py is unneeded, because it is called with 'python ../dummypatch.py'.
Fri, 08 Jun 2012 15:11:05 +0200 test-log: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Fri, 08 Jun 2012 15:11:05 +0200] rev 16887
test-log: enable for Windows
Fri, 08 Jun 2012 15:11:05 +0200 test-revert: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Fri, 08 Jun 2012 15:11:05 +0200] rev 16886
test-revert: enable for Windows
Thu, 07 Jun 2012 15:55:12 +0200 merge heads
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 07 Jun 2012 15:55:12 +0200] rev 16885
merge heads
Thu, 07 Jun 2012 15:54:40 +0200 help: fix 'hg help -k' matching an extension without docs
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 07 Jun 2012 15:54:40 +0200] rev 16884
help: fix 'hg help -k' matching an extension without docs getattr is not needed, __doc__ always exists and defaults to None
Mon, 04 Jun 2012 14:46:42 -0700 revlog: zlib.error sent to the user (issue3424)
Brad Hall <bhall@fb.com> [Mon, 04 Jun 2012 14:46:42 -0700] rev 16883
revlog: zlib.error sent to the user (issue3424) Give the user the zlib error message instead of a backtrace when decompression fails.
Sat, 09 Jun 2012 19:13:24 -0600 statichttprepo: don't send Range header when requesting entire file stable
Alexander Boyd <alex@opengroove.org> [Sat, 09 Jun 2012 19:13:24 -0600] rev 16882
statichttprepo: don't send Range header when requesting entire file When requesting files using statichttprepo.httprangereader, a request for the entire file is sent with a Range: bytes=0- header. This causes problems with web servers such as Cherokee that return an HTTP 416 when an empty file is requested in this way, which in turn cause some repository clone attempts to fail. This patch omits the Range header when the entire file is being requested, which fixes the problem.
Wed, 06 Jun 2012 21:17:33 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 06 Jun 2012 21:17:33 -0500] rev 16881
merge with stable
Wed, 06 Jun 2012 21:17:20 -0500 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Wed, 06 Jun 2012 21:17:20 -0500] rev 16880
merge with i18n
Tue, 05 Jun 2012 10:09:17 -0300 merge with i18n stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 05 Jun 2012 10:09:17 -0300] rev 16879
merge with i18n
Tue, 05 Jun 2012 07:57:04 +0100 i18n-ru: synchronized with 4cf41c333e74 stable
Alexander Sauta <demosito@gmail.com> [Tue, 05 Jun 2012 07:57:04 +0100] rev 16878
i18n-ru: synchronized with 4cf41c333e74
Tue, 05 Jun 2012 13:33:52 -0500 update: fix help regarding update to ancestor stable
Kevin Bullock <kbullock@ringworld.org> [Tue, 05 Jun 2012 13:33:52 -0500] rev 16877
update: fix help regarding update to ancestor As pointed out on the user mailing list, hg will update just as happily to an ancestor if there are uncommitted changes as to a descendant.
Wed, 06 Jun 2012 16:44:17 +0100 bugzilla: stop bugs always being marked as fixed in xmlrpc (issue3484) stable
Jim Hague <jim.hague@acm.org> [Wed, 06 Jun 2012 16:44:17 +0100] rev 16876
bugzilla: stop bugs always being marked as fixed in xmlrpc (issue3484) Bugs should only be marked fixed if the comment parser gives them the fixed state. xmlrpc+email got this right, xmlrpc screwed it up.
Tue, 05 Jun 2012 22:46:14 +0200 test-add: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Tue, 05 Jun 2012 22:46:14 +0200] rev 16875
test-add: enable for Windows
Tue, 05 Jun 2012 23:13:45 +0200 test-addremove: remove bits about con.xml
Adrian Buehlmann <adrian@cadifra.com> [Tue, 05 Jun 2012 23:13:45 +0200] rev 16874
test-addremove: remove bits about con.xml Windows reserved filename warnings are already enough tested in test-add.t. This enables the test for Windows.
Tue, 05 Jun 2012 16:52:20 -0700 util: simplify queue management in chunkbuffer
Bryan O'Sullivan <bryano@fb.com> [Tue, 05 Jun 2012 16:52:20 -0700] rev 16873
util: simplify queue management in chunkbuffer This also fixes a small wire protocol performance regression.
Sun, 27 May 2012 18:25:04 +0200 hghave: wrap command in 'sh -c "..."' for has_pyflakes()
Adrian Buehlmann <adrian@cadifra.com> [Sun, 27 May 2012 18:25:04 +0200] rev 16872
hghave: wrap command in 'sh -c "..."' for has_pyflakes() Without this, the has_pyflakes() check always fails in MSYS on Windows.
Mon, 04 Jun 2012 17:57:57 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 04 Jun 2012 17:57:57 -0500] rev 16871
merge with stable
Tue, 05 Jun 2012 00:32:18 +0200 help: fix keyword search result formatting
Olav Reinert <seroton10@gmail.com> [Tue, 05 Jun 2012 00:32:18 +0200] rev 16870
help: fix keyword search result formatting This patch fixes the broken formatting of keyword search results. Some blank lines were missing from the RST markup, which caused markup to be printed.
Mon, 04 Jun 2012 17:22:09 -0500 help: drop -a from heads syntax summary (issue3483) stable
Matt Mackall <mpm@selenic.com> [Mon, 04 Jun 2012 17:22:09 -0500] rev 16869
help: drop -a from heads syntax summary (issue3483)
Fri, 01 Jun 2012 15:44:13 -0700 revlog: add optional stoprev arg to revlog.ancestors()
Joshua Redstone <joshua.redstone@fb.com> [Fri, 01 Jun 2012 15:44:13 -0700] rev 16868
revlog: add optional stoprev arg to revlog.ancestors() This will be used as a step in removing reachable() in a future diff. Doing it now because bryano is in the process of rewriting ancestors in C. This depends on bryano's patch to replace *revs with revs in the declaration of revlog.ancestors.
Fri, 01 Jun 2012 12:45:16 -0700 revlog: descendants(*revs) becomes descendants(revs) (API)
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 12:45:16 -0700] rev 16867
revlog: descendants(*revs) becomes descendants(revs) (API) Once again making the API more rational, as with ancestors.
Fri, 01 Jun 2012 12:37:18 -0700 revlog: ancestors(*revs) becomes ancestors(revs) (API)
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 12:37:18 -0700] rev 16866
revlog: ancestors(*revs) becomes ancestors(revs) (API) Accepting a variable number of arguments as the old API did is deeply ugly, particularly as it means the API can't be extended with new arguments. Partly as a result, we have at least three different implementations of the same ancestors algorithm (!?). Most callers were forced to call ancestors(*somelist), adding to both inefficiency and ugliness.
Tue, 29 May 2012 23:26:55 +0200 config: make sortdict keys() and iterkeys() methods respect the item order
Angel Ezquerra <angel.ezquerra@gmail.com> [Tue, 29 May 2012 23:26:55 +0200] rev 16865
config: make sortdict keys() and iterkeys() methods respect the item order The config.sortdict class is a simple "sorted dictionary" container class, based on python's regular dict container. The main difference compared to regular dicts is that sortdicts remember the order in which items have been added to it. Without this patch the items() method returns the sortdict elements in the right order. However, getting the list of keys by using the keys() or iterkeys() methods, and consequencly, looping through the container elements in a for loop does not respect that order. This patch fixes this problem.
Mon, 04 Jun 2012 16:59:57 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 04 Jun 2012 16:59:57 -0500] rev 16864
merge with stable
Fri, 01 Jun 2012 15:19:08 -0700 parsers: replace magic number 64 with symbolic constant
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:19:08 -0700] rev 16863
parsers: replace magic number 64 with symbolic constant
Fri, 01 Jun 2012 15:50:22 -0700 revset: introduce and use _revsbetween
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16862
revset: introduce and use _revsbetween This is similar in spirit to revlog.nodesbetween, but less ambitious, much simpler, and ~2x faster.
Fri, 01 Jun 2012 15:50:22 -0700 revset: implement dagrange directly
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16861
revset: implement dagrange directly This is much faster than the older implementation (~8x).
Fri, 01 Jun 2012 15:50:22 -0700 revset: turn dagrange into a function
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16860
revset: turn dagrange into a function
Fri, 01 Jun 2012 15:50:22 -0700 revset: drop unreachable code
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16859
revset: drop unreachable code
Fri, 01 Jun 2012 15:50:22 -0700 perf: add a benchmark for revrange
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16858
perf: add a benchmark for revrange
Mon, 04 Jun 2012 21:40:38 +0200 test-tags: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 21:40:38 +0200] rev 16857
test-tags: enable for Windows It turns out that MSYS does have a chmod.exe, but it has no effect. So, the inserted "#if unix-permissions" is somewhat redundant, as the test would pass without it as well: it would simply write the tag cache, despite what the comment says. But I'm actually in favor of inserting the #if, as it makes it clearer what's going on.
Mon, 04 Jun 2012 21:09:54 +0200 tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 21:09:54 +0200] rev 16856
tests: roll test-copy2.t into test-copy.t
Sun, 03 Jun 2012 17:49:04 +0200 help: fix keyword search output for extension commands
Olav Reinert <seroton10@gmail.com> [Sun, 03 Jun 2012 17:49:04 +0200] rev 16855
help: fix keyword search output for extension commands This patch fixes the help keyword search "hg help -k" to show correct results in the section listing extension commands.
Sat, 02 Jun 2012 11:28:43 +0200 help: format all output using RST
Olav Reinert <seroton10@gmail.com> [Sat, 02 Jun 2012 11:28:43 +0200] rev 16854
help: format all output using RST This change is the last patch needed to implement help text generation based only on formatting a single text object marked up with RST.
Sat, 02 Jun 2012 11:25:40 +0200 help: format command and option list help using RST
Olav Reinert <seroton10@gmail.com> [Sat, 02 Jun 2012 11:25:40 +0200] rev 16853
help: format command and option list help using RST This patch changes the function which generates help text about commands and options to use RST formatting. Tables describing options have been formatted using RST table markup for some time already, so their appearance does not change. Command lists, however, change appearance. To format non-verbose command lists, RST field list markup was chosen, because it resembles the old format: <http://docutils.sourceforge.net/docs/user/rst/quickref.html#field-lists> In the old (hand-coded) format of non-verbose command lists, the left column is 12 characters wide. Our minirst implementation formats field lists with a left column 14 characters wide, so this patch changes the appearance of help output correspondingly: <http://markmail.org/message/krl4cxopsnii7s6z?q=mercurial+reinert+from:%22Olav+Reinert%22&page=2> The minirst markup most closely resembling the old verbose command lists is definition lists. But using it would cause a blank line to be inserted between each command definition, making the output excessively long, and no more useful than before. To avoid this, I chose to use field lists also for verbose command help, resulting in output like this example: add add the specified files on the next commit annotate, blame show changeset information by line for each file clone make a copy of an existing repository commit, ci commit the specified files or all outstanding changes diff diff repository (or selected files) export dump the header and diffs for one or more changesets forget forget the specified files on the next commit init create a new repository in the given directory log, history show revision history of entire repository or files merge merge working directory with another revision phase set or show the current phase name pull pull changes from the specified source push push changes to the specified destination qdiff diff of the current patch and subsequent modifications qinit init a new queue repository (DEPRECATED) qnew create a new patch qpop pop the current patch off the stack qpush push the next patch onto the stack qrefresh update the current patch remove, rm remove the specified files on the next commit serve start stand-alone webserver status, st show changed files in the working directory summary, sum summarize working directory state update, up, checkout, co update working directory (or switch revisions) This change is a move towards generating all help text as a list of strings marked up with RST.
Sat, 02 Jun 2012 11:22:33 +0200 help: format extension lists using RST
Olav Reinert <seroton10@gmail.com> [Sat, 02 Jun 2012 11:22:33 +0200] rev 16852
help: format extension lists using RST This change is a move towards generating all help text as a list of strings marked up with RST.
Sun, 03 Jun 2012 09:06:15 +0200 test-revset: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Sun, 03 Jun 2012 09:06:15 +0200] rev 16851
test-revset: enable for Windows In MSYS, the test fails like this if the hghave exit at the beginning is removed: --- C:\Users\adi\hgrepos\hg-main\tests\test-revset.t +++ C:\Users\adi\hgrepos\hg-main\tests\test-revset.t.err @@ -58,7 +58,7 @@ $ hg co 3 2 files updated, 0 files merged, 0 files removed, 0 files unresolved $ hg branch /a/b/c/ - marked working directory as branch /a/b/c/ + marked working directory as branch a:/b/c/ (branches are permanent and global, did you want a bookmark?) $ hg ci -Aqm"5 bug" @@ -252,7 +252,7 @@ 2 a-b-c- 3 +a+b+c+ 4 -a-b-c- - 5 /a/b/c/ + 5 a:/b/c/ 6 _a_b_c_ 7 .a.b.c. $ log 'children(ancestor(4,5))' due to the posix path conversion done by MSYS globally, as explained here http://www.mingw.org/wiki/Posix_path_conversion The solution is a bit lame, but it is simple and works: don't use strings that look like '/a/b', in order not to trigger the path magic done by MSYS. So, if we can agree not to insist on testing branch names starting with '/', then this relatively simple patch makes the test pass both on Windows with MSYS and Linux.
Mon, 04 Jun 2012 15:43:16 +0300 graft: restore config option on correct ui stable
Idan Kamara <idankk86@gmail.com> [Mon, 04 Jun 2012 15:43:16 +0300] rev 16850
graft: restore config option on correct ui
Mon, 04 Jun 2012 18:40:31 +0200 tests: roll test-commit-copy.t into test-commit.t
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 18:40:31 +0200] rev 16849
tests: roll test-commit-copy.t into test-commit.t
Mon, 04 Jun 2012 16:59:34 +0200 base85: cast Py_ssize_t values to int (issue3481)
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 16:59:34 +0200] rev 16848
base85: cast Py_ssize_t values to int (issue3481) If it outputs a nonsense value, no harm done, it was nonsense to start with.
Mon, 04 Jun 2012 19:05:22 +0200 tests: roll test-clone-failure.t into test-clone.t
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 19:05:22 +0200] rev 16847
tests: roll test-clone-failure.t into test-clone.t
Fri, 01 Jun 2012 13:38:18 +0200 test-clone-failure: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com> [Fri, 01 Jun 2012 13:38:18 +0200] rev 16846
test-clone-failure: enable for Windows using #if
Mon, 04 Jun 2012 10:45:56 +0400 help: fix search with `-k` option in non-ASCII locales
Nikolaj Sjujskij <sterkrig@myopera.com> [Mon, 04 Jun 2012 10:45:56 +0400] rev 16845
help: fix search with `-k` option in non-ASCII locales Keyword search in help (introduced in 497deec204d1 and a17983680f12 by Augie Fackler) tries to translate already translated strings, which results in Unicode errors in gettext when non-ASCII locale is used. Also command descriptions should be translated before searching there (thanks to FUJIWARA Katsunori for pointing this out and actual fix), (issue3482).
Mon, 04 Jun 2012 18:03:23 +0200 hgweb: fixes linebreak location in gitweb filediff.tmpl view stable
wujek srujek <wujek.srujek@googlemail.com> [Mon, 04 Jun 2012 18:03:23 +0200] rev 16844
hgweb: fixes linebreak location in gitweb filediff.tmpl view It is consistent with other templates now and doesn't cause the help link to (incorrectly) appear on the next line.
Sun, 03 Jun 2012 19:35:45 +0200 test-paths.t: enable for Windows using #if
Adrian Buehlmann <adrian@cadifra.com> [Sun, 03 Jun 2012 19:35:45 +0200] rev 16843
test-paths.t: enable for Windows using #if If the no-msys exit at the beginning is removed, the test fails on Windows with MSYS with: --- C:\Users\adi\hgrepos\hg-main\tests\test-paths.t +++ C:\Users\adi\hgrepos\hg-main\tests\test-paths.t.err @@ -24,7 +24,7 @@ expand = $TESTTMP/a/foo/bar (glob) $ SOMETHING=/foo hg paths dupe = $TESTTMP/b (glob) - expand = /foo/bar + expand = c:/MinGW/msys/1.0/foo/bar $ hg paths -q dupe expand caused by http://www.mingw.org/wiki/Posix_path_conversion .
Fri, 01 Jun 2012 02:25:12 +0200 tests: introduce c-style conditional sections in .t tests
Mads Kiilerich <mads@kiilerich.com> [Fri, 01 Jun 2012 02:25:12 +0200] rev 16842
tests: introduce c-style conditional sections in .t tests This makes it possible to have conditional sections like: #if windows $ echo foo foo #else $ echo bar bar #endif The directives and skipped sections are treated like comments, so don't interleave them with commands and their output. The parameters to #if are evaluated while preparing the test by passing them over to hghave. Requirements can thus be negated with 'no-' prefix, and multiple requirements must all be true to return true.
Wed, 30 May 2012 14:28:57 +0200 run-tests: don't add python lines to expected dict
Adrian Buehlmann <adrian@cadifra.com> [Wed, 30 May 2012 14:28:57 +0200] rev 16841
run-tests: don't add python lines to expected dict For test input lines of *.t files starting with ' >>> ', the code block for ' >>> ' 609: if l.startswith(' >>> '): # python inlines 610: after.setdefault(pos, []).append(l) was (unsurprisingly) executed, but because there was an "if" instead of an "elif" on the condition "l.startswith(' ... ')", program execution proceeded to line 636 635: elif l.startswith(' '): # results 636: # queue up a list of expected results 637: expected.setdefault(pos, []).append(l[2:]) due to the fact that if l starts with ' >>> ' it also starts with ' '. The net effect was that python command lines in *.t files were (surprisingly) also added to the "expected" dict. This caused no externally observable bad behavior, as the "expected" dict was not consulted for these lines.
Sun, 03 Jun 2012 19:35:23 +0200 run-test: replace backslashes in TESTDIR
Adrian Buehlmann <adrian@cadifra.com> [Sun, 03 Jun 2012 19:35:23 +0200] rev 16840
run-test: replace backslashes in TESTDIR This may cause troubles in MSYS on Windows.
Fri, 25 May 2012 14:24:07 +0200 dispatch: tolerate non-standard version strings in tuplever() (issue3470)
Adrian Buehlmann <adrian@cadifra.com> [Fri, 25 May 2012 14:24:07 +0200] rev 16839
dispatch: tolerate non-standard version strings in tuplever() (issue3470) When developing, we may see non-standard version strings of the form 5d64306f39bb+20120525 which caused tuplever() to raise ValueError: invalid literal for int() with base 10: '5d64306f39bb' and shadowing the real traceback.
Thu, 24 May 2012 13:05:06 +0200 revset: cache alias expansions
Patrick Mezard <patrick@mezard.eu> [Thu, 24 May 2012 13:05:06 +0200] rev 16838
revset: cache alias expansions Caching has no performance effect on the revset aliases which triggered the recent recursive evaluation bug. I wrote it not to feel bad about expanding several times the same complicated expression.
Thu, 24 May 2012 01:30:12 +0200 base85: use Py_ssize_t for string lengths
Adrian Buehlmann <adrian@cadifra.com> [Thu, 24 May 2012 01:30:12 +0200] rev 16837
base85: use Py_ssize_t for string lengths
Tue, 22 May 2012 15:17:37 -0700 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com> [Tue, 22 May 2012 15:17:37 -0700] rev 16836
hg-ssh: read-only flag Allows you to restrict a ssh key to have read-only access to a set of repos by passing the --read-only flag to hg-ssh. This is useful in an environment where the number of unix users you can or are willing to create is limited. In such an environment, multiple users or applications will share a single unix account. Some of those applications will likely need read-only access to the repository. This change makes it possible to grant them such access without requiring that they use a separate unix account.
Sun, 13 May 2012 10:21:27 +0200 bookmarks: allow existing remote bookmarks to become heads when pushing
Levi Bard <levi@unity3d.com> [Sun, 13 May 2012 10:21:27 +0200] rev 16835
bookmarks: allow existing remote bookmarks to become heads when pushing
Fri, 01 Jun 2012 17:05:31 -0700 util: subclass deque for Python 2.4 backwards compatibility
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 17:05:31 -0700] rev 16834
util: subclass deque for Python 2.4 backwards compatibility It turns out that Python 2.4's deque type is lacking a remove method. We can't implement remove in terms of find, because it doesn't have find either.
Sat, 02 Jun 2012 15:35:53 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Sat, 02 Jun 2012 15:35:53 -0500] rev 16833
merge with stable
Fri, 01 Jun 2012 23:48:27 -0500 Added signature for changeset 85a358df5bbb stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 23:48:27 -0500] rev 16832
Added signature for changeset 85a358df5bbb
Fri, 01 Jun 2012 23:48:22 -0500 Added tag 2.2.2 for changeset 85a358df5bbb stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 23:48:22 -0500] rev 16831
Added tag 2.2.2 for changeset 85a358df5bbb
Fri, 01 Jun 2012 23:44:10 -0500 localrepo: move filecache clearing into invalidate
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 23:44:10 -0500] rev 16830
localrepo: move filecache clearing into invalidate Moving from self.destroy to _rollback fixed rollback fixed rollback but broke mq. Move it lower rather than sideways.
Fri, 01 Jun 2012 23:42:27 -0500 strip: move bookmark deletion before strip to deal with filecache invalidation
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 23:42:27 -0500] rev 16829
strip: move bookmark deletion before strip to deal with filecache invalidation
Fri, 01 Jun 2012 15:14:29 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 15:14:29 -0500] rev 16828
merge with stable
Fri, 01 Jun 2012 15:14:13 -0500 merge with i18n stable 2.2.2
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 15:14:13 -0500] rev 16827
merge with i18n
Thu, 31 May 2012 21:47:40 -0300 i18n-pt_BR: synchronized with 2a0efa1112ac stable
Wagner Bruna <wbruna@yahoo.com> [Thu, 31 May 2012 21:47:40 -0300] rev 16826
i18n-pt_BR: synchronized with 2a0efa1112ac
Fri, 01 Jun 2012 15:13:05 -0500 revset: avoid validating all tag nodes for tag(x)
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 15:13:05 -0500] rev 16825
revset: avoid validating all tag nodes for tag(x) This generally causes the entire node->rev table to get built when we're only interested in one node.
Wed, 30 May 2012 23:14:04 +0100 revset: add pattern matching to 'extra' revset expression
Simon King <simon@simonking.org.uk> [Wed, 30 May 2012 23:14:04 +0100] rev 16824
revset: add pattern matching to 'extra' revset expression
Wed, 30 May 2012 23:13:58 +0100 revset: add pattern matching to the 'user' revset expression
Simon King <simon@simonking.org.uk> [Wed, 30 May 2012 23:13:58 +0100] rev 16823
revset: add pattern matching to the 'user' revset expression
Wed, 30 May 2012 23:13:33 +0100 revset: add pattern matching to 'bookmarks' revset expression
Simon King <simon@simonking.org.uk> [Wed, 30 May 2012 23:13:33 +0100] rev 16822
revset: add pattern matching to 'bookmarks' revset expression
Wed, 30 May 2012 23:13:33 +0100 revset: add pattern matching to 'branch' revset expression
Simon King <simon@simonking.org.uk> [Wed, 30 May 2012 23:13:33 +0100] rev 16821
revset: add pattern matching to 'branch' revset expression
Wed, 30 May 2012 23:13:33 +0100 revset: add pattern matching to 'tag' revset expression
Simon King <simon@simonking.org.uk> [Wed, 30 May 2012 23:13:33 +0100] rev 16820
revset: add pattern matching to 'tag' revset expression If the string provided to the 'tag' predicate starts with 're:', the rest of the string will be treated as a regular expression and matched against all tags in the repository. There is a slight backwards-compatibility problem for people who actually have tags that start with 're:'. As a workaround, these tags can be matched using a 'literal:' prefix. If no tags match the pattern, an error is raised. This matches the behaviour of the previous exact-match code.
Wed, 30 May 2012 23:13:33 +0100 revset: add helper function for matching strings to patterns
Simon King <simon@simonking.org.uk> [Wed, 30 May 2012 23:13:33 +0100] rev 16819
revset: add helper function for matching strings to patterns
Fri, 01 Jun 2012 12:35:30 +0200 help: format command help using RST
Olav Reinert <seroton10@gmail.com> [Fri, 01 Jun 2012 12:35:30 +0200] rev 16818
help: format command help using RST
Fri, 01 Jun 2012 12:15:45 +0200 help: format topic help using RST
Olav Reinert <seroton10@gmail.com> [Fri, 01 Jun 2012 12:15:45 +0200] rev 16817
help: format topic help using RST
Fri, 01 Jun 2012 12:01:33 +0200 help: inline helper function used once only
Olav Reinert <seroton10@gmail.com> [Fri, 01 Jun 2012 12:01:33 +0200] rev 16816
help: inline helper function used once only
Fri, 01 Jun 2012 11:58:23 +0200 minirst: generate tables as a list of joined lines
Olav Reinert <seroton10@gmail.com> [Fri, 01 Jun 2012 11:58:23 +0200] rev 16815
minirst: generate tables as a list of joined lines
Thu, 31 May 2012 20:55:30 -0700 scmutil: seen.union should be seen.update (issue3476) stable
Bryan O'Sullivan <bryano@fb.com> [Thu, 31 May 2012 20:55:30 -0700] rev 16814
scmutil: seen.union should be seen.update (issue3476)
Fri, 01 Jun 2012 17:37:56 +0200 patch: keep patching after missing copy source (issue3480) stable
Patrick Mezard <patrick@mezard.eu> [Fri, 01 Jun 2012 17:37:56 +0200] rev 16813
patch: keep patching after missing copy source (issue3480) When applying a patch renaming/copying 'a' to 'b' on a revision where 'a' does not exist, the patching process would abort immediately, without processing the remaining hunks and without reporting it. This patch makes the patching no longer abort and possible hunks applied on the copied/renamed file be written in reject files.
Sat, 26 May 2012 20:49:51 +0200 keyword: update copyleft
Christian Ebert <blacktrash@gmx.net> [Sat, 26 May 2012 20:49:51 +0200] rev 16812
keyword: update copyleft
Sat, 26 May 2012 20:49:44 +0200 keyword: wlock cmdutil.copy wrapper
Christian Ebert <blacktrash@gmx.net> [Sat, 26 May 2012 20:49:44 +0200] rev 16811
keyword: wlock cmdutil.copy wrapper Expanding/shrinking happens outside the wrapped copy function; therefore write lock the repo.
Sat, 26 May 2012 20:46:12 +0200 keyword: support commit --amend (issue3471)
Christian Ebert <blacktrash@gmx.net> [Sat, 26 May 2012 20:46:12 +0200] rev 16810
keyword: support commit --amend (issue3471) Include a test as well.
Fri, 25 May 2012 19:32:29 +0200 keyword: rename kwt.record attribute to kwt.postcommit
Christian Ebert <blacktrash@gmx.net> [Fri, 25 May 2012 19:32:29 +0200] rev 16809
keyword: rename kwt.record attribute to kwt.postcommit A more general descriptive name, as the attribute will be used for commit --amend as well.
Sun, 27 May 2012 11:30:03 +0200 scmutil: use _winreg.HKEY_LOCAL_MACHINE
Adrian Buehlmann <adrian@cadifra.com> [Sun, 27 May 2012 11:30:03 +0200] rev 16808
scmutil: use _winreg.HKEY_LOCAL_MACHINE
Sun, 27 May 2012 11:29:52 +0200 win32: move lookupreg() to windows.py
Adrian Buehlmann <adrian@cadifra.com> [Sun, 27 May 2012 11:29:52 +0200] rev 16807
win32: move lookupreg() to windows.py lookupreg() doesn't use the win32 API directly any more, it uses the Python standard library module _winreg.
Sun, 27 May 2012 11:29:45 +0200 win32: use Python's _winreg again
Adrian Buehlmann <adrian@cadifra.com> [Sun, 27 May 2012 11:29:45 +0200] rev 16806
win32: use Python's _winreg again This is a partial backout of f1fa8f481c7c. f1fa8f481c7c switched win32.py to using ctypes with the intention to get rid of the dependency on the pywin32 package. But f1fa8f481c7c replaced the usage of the Python standard module _winreg in lookup_reg as well, which was uneeded (note that lookup_reg was later renamed into lookupreg). Basically, we're switching back to the previous _winreg-based implementation, which uses _winreg.QueryValueEx(). QueryValueEx returns a unicode code string. See also: issue3467
Tue, 29 May 2012 18:27:12 +0300 localrepo: clear _filecache earlier to really force reloading (issue3462) stable
Idan Kamara <idankk86@gmail.com> [Tue, 29 May 2012 18:27:12 +0300] rev 16805
localrepo: clear _filecache earlier to really force reloading (issue3462) ce0ad184f489 attempted to force the filecaches in localrepo to reload everything after a rollback. But simply clearing _filecache isn't enough, invalidate() needs to be called before/after. localrepo._rollback calls invalidate() already, so we clear the map right afterwards which ensures everything will be reread.
Wed, 30 May 2012 13:57:41 -0700 lsprof: report units correctly
Bryan O'Sullivan <bryano@fb.com> [Wed, 30 May 2012 13:57:41 -0700] rev 16804
lsprof: report units correctly
Tue, 15 May 2012 10:46:23 -0700 cleanup: use the deque type where appropriate
Bryan O'Sullivan <bryano@fb.com> [Tue, 15 May 2012 10:46:23 -0700] rev 16803
cleanup: use the deque type where appropriate There have been quite a few places where we pop elements off the front of a list. This can turn O(n) algorithms into something more like O(n**2). Python has provided a deque type that can do this efficiently since at least 2.4. As an example of the difference a deque can make, it improves perfancestors performance on a Linux repo from 0.50 seconds to 0.36.
Tue, 15 May 2012 10:44:17 -0700 perf: add a perfancestors benchmark
Bryan O'Sullivan <bryano@fb.com> [Tue, 15 May 2012 10:44:17 -0700] rev 16802
perf: add a perfancestors benchmark
Wed, 30 May 2012 14:31:51 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 30 May 2012 14:31:51 -0500] rev 16801
merge with stable
Wed, 30 May 2012 14:31:39 -0500 merge with crew
Matt Mackall <mpm@selenic.com> [Wed, 30 May 2012 14:31:39 -0500] rev 16800
merge with crew
Wed, 30 May 2012 14:31:29 -0500 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Wed, 30 May 2012 14:31:29 -0500] rev 16799
merge with i18n
Tue, 29 May 2012 21:32:50 +0900 i18n-ja: synchronized with 2478594b37c2 stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Tue, 29 May 2012 21:32:50 +0900] rev 16798
i18n-ja: synchronized with 2478594b37c2
Sun, 27 May 2012 15:37:36 +0100 i1n-ru:synchronized with b748106fe616 stable
Alexander Sauta <demosito@gmail.com> [Sun, 27 May 2012 15:37:36 +0100] rev 16797
i1n-ru:synchronized with b748106fe616
Sun, 27 May 2012 09:52:25 -0300 i18n-pt_BR: synchronized with 0a730d3c5aae stable
Wagner Bruna <wbruna@yahoo.com> [Sun, 27 May 2012 09:52:25 -0300] rev 16796
i18n-pt_BR: synchronized with 0a730d3c5aae
Wed, 23 May 2012 21:34:29 +0200 merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 23 May 2012 21:34:29 +0200] rev 16795
merge: show renamed on one and deleted on the other side in debug output
Wed, 23 May 2012 20:50:16 +0200 merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 23 May 2012 20:50:16 +0200] rev 16794
merge: warn about file deleted in one branch and renamed in other (issue3074) For divergent renames the following message is printed during merge: note: possible conflict - file was renamed multiple times to: newfile file2 When a file is renamed in one branch and deleted in the other, the file still exists after a merge. With this change a similar message is printed for mv+rm: note: possible conflict - file was deleted and renamed to: newfile
Wed, 23 May 2012 17:33:19 +0200 tests: do not create repos inside repos in test-rename-merge1.t
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 23 May 2012 17:33:19 +0200] rev 16793
tests: do not create repos inside repos in test-rename-merge1.t This is no actual problem, but I when adding more tests to this file, the directory structure would become t/repo2089/repoXXXX/repoYYYY/...
Wed, 23 May 2012 17:25:48 +0200 merge: do not warn about copy and rename in the same transaction (issue2113)
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 23 May 2012 17:25:48 +0200] rev 16792
merge: do not warn about copy and rename in the same transaction (issue2113)
Wed, 30 May 2012 14:21:58 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 30 May 2012 14:21:58 -0500] rev 16791
merge with stable
Wed, 30 May 2012 14:13:57 -0500 revpair: handle odd ranges (issue3474) stable
Matt Mackall <mpm@selenic.com> [Wed, 30 May 2012 14:13:57 -0500] rev 16790
revpair: handle odd ranges (issue3474)
Wed, 23 May 2012 00:25:29 +0900 match: make 'match.files()' return list object always stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 23 May 2012 00:25:29 +0900] rev 16789
match: make 'match.files()' return list object always 'exact' match objects are sometimes created with a non-list 'pattern' argument: - using 'set' in queue.refresh():hgext/mq.py match = scmutil.matchfiles(repo, set(c[0] + c[1] + c[2] + inclsubs)) - using 'dict' in revert():mercurial/cmdutil.py (names = {}) m = scmutil.matchfiles(repo, names) 'exact' match objects return specified 'pattern' to callers of 'match.files()' as it is, so it is a non-list object. but almost all implementations expect 'match.files()' to return a list object, so this may causes problems: e.g. exception for "+" with another list object. this patch ensures that '_files' of 'exact' match objects is a list object. for non 'exact' match objects, parsing specified 'pattern' already ensures that it it a list one.
Wed, 16 May 2012 13:45:46 -0700 perf: add a perfdirstatewrite benchmark
Bryan O'Sullivan <bryano@fb.com> [Wed, 16 May 2012 13:45:46 -0700] rev 16788
perf: add a perfdirstatewrite benchmark
Sat, 19 May 2012 20:21:48 -0700 parsers: cache the result of index_headrevs
Bryan O'Sullivan <bryano@fb.com> [Sat, 19 May 2012 20:21:48 -0700] rev 16787
parsers: cache the result of index_headrevs Although index_headrevs is much faster than its Python counterpart, it's still somewhat expensive when history is large. Since headrevs is called several times when the tag cache is stale or missing (e.g. after a strip or rebase), there's a win to be gained from caching the result, which we do here.
Sat, 19 May 2012 19:44:58 -0700 revlog: switch to a C version of headrevs
Bryan O'Sullivan <bryano@fb.com> [Sat, 19 May 2012 19:44:58 -0700] rev 16786
revlog: switch to a C version of headrevs The C implementation is more than 100 times faster than the Python version (which is still available as a fallback). In a repo with 330,000 revs and a stale .hg/cache/tags file, this patch improves the performance of "hg tip" from 2.2 to 1.6 seconds.
Sat, 19 May 2012 19:44:23 -0700 perf: rework perfheads and perftags to clear caches
Bryan O'Sullivan <bryano@fb.com> [Sat, 19 May 2012 19:44:23 -0700] rev 16785
perf: rework perfheads and perftags to clear caches The cache clearing makes numbers more reproducible.
Sat, 19 May 2012 19:44:18 -0700 parsers: reduce raw_length when truncating
Bryan O'Sullivan <bryano@fb.com> [Sat, 19 May 2012 19:44:18 -0700] rev 16784
parsers: reduce raw_length when truncating When stripping revs, we now update raw_length to correctly reflect the new end of the index.
Tue, 22 May 2012 22:08:41 +0200 help: inline helper function used once only
Olav Reinert <seroton10@gmail.com> [Tue, 22 May 2012 22:08:41 +0200] rev 16783
help: inline helper function used once only
Tue, 22 May 2012 22:08:41 +0200 help: remove redundant parameter
Olav Reinert <seroton10@gmail.com> [Tue, 22 May 2012 22:08:41 +0200] rev 16782
help: remove redundant parameter
Tue, 22 May 2012 22:08:41 +0200 help: move some helper functions to help.py
Olav Reinert <seroton10@gmail.com> [Tue, 22 May 2012 22:08:41 +0200] rev 16781
help: move some helper functions to help.py
Tue, 22 May 2012 22:08:41 +0200 help: remove dependency on ui from some helper functions
Olav Reinert <seroton10@gmail.com> [Tue, 22 May 2012 22:08:41 +0200] rev 16780
help: remove dependency on ui from some helper functions
Mon, 21 May 2012 16:19:30 -0700 hg-ssh: refactor to have main() method
David Schleimer <dschleimer@fb.com> [Mon, 21 May 2012 16:19:30 -0700] rev 16779
hg-ssh: refactor to have main() method Refactor hg-ssh to have a main() function instead of a bunch of top-level statements.
Tue, 22 May 2012 14:37:20 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Tue, 22 May 2012 14:37:20 -0500] rev 16778
merge with stable
Tue, 08 May 2012 22:43:44 +0200 graphlog: turn getlogrevs() into a generator
Patrick Mezard <patrick@mezard.eu> [Tue, 08 May 2012 22:43:44 +0200] rev 16777
graphlog: turn getlogrevs() into a generator This improves the poor "time to first changeset" compared to the original log command. When running: $ hg log -u user log will enumerate the changelog and display matching revisions when they are found. But: $ hg log -G -u user will first find all revisions matching the user then start to display them. Initially, I considered turning revset.match() into a generator. This is doable but requires a fair amount of work. Instead, cmdutil.increasingwindows() is reused to call the revset matcher repeatedly. This has the nice properties of: - Let us reorder the windows after filtering, which is necessary as the matcher can reorder inputs but is an internal detail not a feature. - Let us feed the matcher with windows in changelog order, which is good for performances. - Have a generator designed for log-like commands, returning small windows at first then batching larger ones. I feel that calling the matcher multiple times is correct, at least with the revsets involved in getlogrevs() because they are: - stateless (no limit()) - respecting f(a|b) = f(a) | f(b), though I have no valid argument about that. Known issues compared to log code: - Calling the revset matcher multiple times can be slow when revset functions have to create expensive data structure for filtering. This will be addressed in a followup. - Predicate combinations like "--user foo --user bar" or "--user foo and --branch bar" are inherently slower because all input revision are checked against the first condition, then against the second, and so forth. log would enumerate the input revisions once and check each of them once against all conditions, which is faster. There are solutions but nothing cheap to implement. Some numbers against mozilla repository: first line total * hg log -u rnewman /Users/pmezard/bin/hg-2.2 0.148s 7.293s /Users/pmezard/bin/hgdev 0.132s 5.747s * hg log -u rnewman -u girard /Users/pmezard/bin/hg-2.2 0.146s 7.323s /Users/pmezard/bin/hgdev 0.136s 11.096s * hg log -l 10 /Users/pmezard/bin/hg-2.2 0.137s 0.153s /Users/pmezard/bin/hgdev 0.128s 0.144s * hg log -l 10 -u rnewman /Users/pmezard/bin/hg-2.2 0.146s 0.265s /Users/pmezard/bin/hgdev 0.133s 0.236s * hg log -b GECKO193a2_20100228_RELBRANCH /Users/pmezard/bin/hg-2.2 2.332s 6.618s /Users/pmezard/bin/hgdev 1.972s 5.543s * hg log xulrunner /Users/pmezard/bin/hg-2.2 5.829s 5.958s /Users/pmezard/bin/hgdev 0.194s 6.017s * hg log --follow xulrunner/build.mk /Users/pmezard/bin/hg-2.2 0.353s 0.438s /Users/pmezard/bin/hgdev 0.394s 0.580s * hg log -u girard tools /Users/pmezard/bin/hg-2.2 5.853s 6.012s /Users/pmezard/bin/hgdev 0.195s 6.030s * hg log -b COMM2000_20110314_RELBRANCH --copies /Users/pmezard/bin/hg-2.2 2.231s 6.653s /Users/pmezard/bin/hgdev 1.897s 5.585s * hg log --follow /Users/pmezard/bin/hg-2.2 0.137s 14.140s /Users/pmezard/bin/hgdev 0.381s 44.246s * hg log --follow -r 80000:90000 /Users/pmezard/bin/hg-2.2 0.127s 1.611s /Users/pmezard/bin/hgdev 0.147s 1.847s * hg log --follow -r 90000:80000 /Users/pmezard/bin/hg-2.2 0.130s 1.702s /Users/pmezard/bin/hgdev 0.368s 6.106s * hg log --follow -r 80000:90000 js/src/jsproxy.cpp /Users/pmezard/bin/hg-2.2 0.343s 0.388s /Users/pmezard/bin/hgdev 0.437s 0.631s * hg log --follow -r 90000:80000 js/src/jsproxy.cpp /Users/pmezard/bin/hg-2.2 0.342s 0.389s /Users/pmezard/bin/hgdev 0.442s 0.628s
Tue, 08 May 2012 22:43:44 +0200 cmdutil: extract increasing_windows() from walkchangerevs()
Patrick Mezard <patrick@mezard.eu> [Tue, 08 May 2012 22:43:44 +0200] rev 16776
cmdutil: extract increasing_windows() from walkchangerevs() It will be reused in the revset-based version.
Sat, 19 May 2012 09:34:25 -0500 httpclient: omit tests for the client since we don't run them anyway
Augie Fackler <raf@durin42.com> [Sat, 19 May 2012 09:34:25 -0500] rev 16775
httpclient: omit tests for the client since we don't run them anyway
Fri, 18 May 2012 17:05:17 -0500 httpclient: update to c5abd358e543 of httpplus
Augie Fackler <raf@durin42.com> [Fri, 18 May 2012 17:05:17 -0500] rev 16774
httpclient: update to c5abd358e543 of httpplus
Mon, 21 May 2012 00:20:05 +0200 hgweb: make graph data suitable for template usage
Paul Boddie <paul@boddie.org.uk> [Mon, 21 May 2012 00:20:05 +0200] rev 16773
hgweb: make graph data suitable for template usage Previously, graph data has been encoded for processing done by JavaScript code run in the browser, employing simple structures with implicit member positions. This patch modifies the graph command to also produce data employing a dictionary-based structure suitable for use with the templating mechanism, thus permitting other ways of presenting repository graphs using that mechanism. In order to test these changes, the raw theme has been modified to include templates for graph nodes and edges. In a similar fashion, themes could employ technologies such as SVG that lend themselves to templating to produce the graph display. This patch makes use of a much simpler output representation than SVG in order to maintain clarity.
Sat, 19 May 2012 17:19:55 +0200 revset: fix infinite alias expansion detection stable
Patrick Mezard <patrick@mezard.eu> [Sat, 19 May 2012 17:19:55 +0200] rev 16772
revset: fix infinite alias expansion detection The alias expansion code it changed from: 1- Get replacement tree 2- Substitute arguments in the replacement tree 3- Expand the replacement tree again into: 1- Get the replacement tree 2- Expand the replacement tree 3- Expand the arguments 4- Substitute the expanded arguments in the replacement tree and fixes cases like: [revsetalias] level1($1, $2) = $1 or $2 level2($1, $2) = level1($2, $1) $ hg log -r "level2(level1(1, 2), 3)" where the original version incorrectly aborted on infinite expansion error, because it was confusing the expanded aliases with their arguments.
Sat, 19 May 2012 17:18:29 +0200 revset: explicitely tag alias arguments for expansion stable
Patrick Mezard <patrick@mezard.eu> [Sat, 19 May 2012 17:18:29 +0200] rev 16771
revset: explicitely tag alias arguments for expansion The current revset alias expansion code works like: 1- Get the replacement tree 2- Substitute the variables in the replacement tree 3- Expand the replacement tree It makes it easy to substitute alias arguments because the placeholders are always replaced before the updated replacement tree is expanded again. Unfortunately, to fix other alias expansion issues, we need to reorder the sequence and delay the argument substitution. To solve this, a new "virtual" construct called _aliasarg() is introduced and injected when parsing the aliases definitions. Only _aliasarg() will be substituted in the argument expansion phase instead of all regular matching string. We also check user inputs do not contain unexpected _aliasarg() instances to avoid argument injections.
Mon, 21 May 2012 14:25:46 -0500 clone: add progress calls to uncompressed code path
Augie Fackler <raf@durin42.com> [Mon, 21 May 2012 14:25:46 -0500] rev 16770
clone: add progress calls to uncompressed code path
Mon, 21 May 2012 17:35:28 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 21 May 2012 17:35:28 -0500] rev 16769
merge with stable
Mon, 21 May 2012 14:24:24 -0500 util: fix bad variable use in bytecount introduced by f0f7f3fab315 stable
Augie Fackler <raf@durin42.com> [Mon, 21 May 2012 14:24:24 -0500] rev 16768
util: fix bad variable use in bytecount introduced by f0f7f3fab315
Fri, 18 May 2012 13:50:02 -0300 acl: 'util.never' can be used instead of a more complex expression
Elifarley Callado Coelho Cruz [Fri, 18 May 2012 13:50:02 -0300] rev 16767
acl: 'util.never' can be used instead of a more complex expression
Fri, 18 May 2012 13:47:44 -0300 acl: perform some computations earlier, so that returned lambda functions are simpler
Elifarley Callado Coelho Cruz [Fri, 18 May 2012 13:47:44 -0300] rev 16766
acl: perform some computations earlier, so that returned lambda functions are simpler
Fri, 18 May 2012 12:48:24 -0300 acl: added some comments to easily identify branch- and path-based verifications
Elifarley Callado Coelho Cruz [Fri, 18 May 2012 12:48:24 -0300] rev 16765
acl: added some comments to easily identify branch- and path-based verifications
Fri, 18 May 2012 12:40:04 -0300 acl: 'util.never' used
Elifarley Callado Coelho Cruz [Fri, 18 May 2012 12:40:04 -0300] rev 16764
acl: 'util.never' used
Fri, 18 May 2012 12:37:23 -0300 acl: cleanup
Elifarley Callado Coelho Cruz [Fri, 18 May 2012 12:37:23 -0300] rev 16763
acl: cleanup
Mon, 21 May 2012 16:36:09 -0500 revlog: don't handle long for revision matching
Matt Mackall <mpm@selenic.com> [Mon, 21 May 2012 16:36:09 -0500] rev 16762
revlog: don't handle long for revision matching The underlying C code doesn't support indexing by longs, there are no legitimate reasons to use a long, and longs should generally be converted to ints at a higher level by context's constructor.
Mon, 21 May 2012 16:35:27 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 21 May 2012 16:35:27 -0500] rev 16761
merge with stable
Mon, 21 May 2012 16:32:50 -0500 context: grudging accept longs in constructor stable
Matt Mackall <mpm@selenic.com> [Mon, 21 May 2012 16:32:50 -0500] rev 16760
context: grudging accept longs in constructor
Mon, 21 May 2012 16:32:49 -0500 win32: fix encoding handling for registry strings (issue3467) stable
Matt Mackall <mpm@selenic.com> [Mon, 21 May 2012 16:32:49 -0500] rev 16759
win32: fix encoding handling for registry strings (issue3467) This stopped handling non-ASCII strings in 1.8
Sun, 20 May 2012 01:28:31 +0200 mpatch: use Py_ssize_t for string length
Adrian Buehlmann <adrian@cadifra.com> [Sun, 20 May 2012 01:28:31 +0200] rev 16758
mpatch: use Py_ssize_t for string length
Sun, 20 May 2012 00:08:18 +0200 mpatch: use Py_ssize_t
Adrian Buehlmann <adrian@cadifra.com> [Sun, 20 May 2012 00:08:18 +0200] rev 16757
mpatch: use Py_ssize_t Eliminates mpatch.c(73) : warning C4244: 'return' : conversion from '__int64' to 'int', possible loss of data mpatch.c(299) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'int', possible loss of data mpatch.c(321) : warning C4244: '=' : conversion from 'Py_ssize_t' to 'int', possible loss of data mpatch.c(335) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'int', possible loss of data mpatch.c(346) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'int', possible loss of data when compiling for Windows x64 target using the Microsoft compiler.
Sun, 20 May 2012 21:11:34 +0300 subrepo: make subrepo.subrepo(<not a subrepo path>) fail
Dov Feldstern <dfeldstern@gmail.com> [Sun, 20 May 2012 21:11:34 +0300] rev 16756
subrepo: make subrepo.subrepo(<not a subrepo path>) fail Until now, when calling subrepo.subrepo with a path at which there is no subrepo, a "nullstate" tuple would be returned. However, this is not very useful (the tuple can't really be used for creating a subrepo), so we'd just as soon have the function just fail, and leave it up to the caller to decide what to do. The motivation for doing this now is to simplify the solution for (issue3056).
Sun, 20 May 2012 14:40:36 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Sun, 20 May 2012 14:40:36 -0500] rev 16755
merge with stable
Sun, 20 May 2012 14:37:22 -0500 hgweb: use ui.nontty to disable all cooked I/O
Matt Mackall <mpm@selenic.com> [Sun, 20 May 2012 14:37:22 -0500] rev 16754
hgweb: use ui.nontty to disable all cooked I/O
Sun, 20 May 2012 14:37:20 -0500 progress: use ui._isatty
Matt Mackall <mpm@selenic.com> [Sun, 20 May 2012 14:37:20 -0500] rev 16753
progress: use ui._isatty
Sun, 20 May 2012 14:33:49 -0500 pager: use ui._isatty infrastructure
Matt Mackall <mpm@selenic.com> [Sun, 20 May 2012 14:33:49 -0500] rev 16752
pager: use ui._isatty infrastructure
Sun, 20 May 2012 14:31:56 -0500 ui: add _isatty method to easily disable cooked I/O
Matt Mackall <mpm@selenic.com> [Sun, 20 May 2012 14:31:56 -0500] rev 16751
ui: add _isatty method to easily disable cooked I/O
Tue, 15 May 2012 22:36:47 +0200 bdiff: check and cast first parameter value on putbe32() calls
Adrian Buehlmann <adrian@cadifra.com> [Tue, 15 May 2012 22:36:47 +0200] rev 16750
bdiff: check and cast first parameter value on putbe32() calls Eliminates mercurial/bdiff.c(383) : warning C4244: 'function' : conversion from '__int64' to 'uint32_t', possible loss of data mercurial/bdiff.c(384) : warning C4244: 'function' : conversion from '__int64' to 'uint32_t', possible loss of data mercurial/bdiff.c(385) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'uint32_t', possible loss of data when compiling for Windows x64 target using the Microsoft compiler.
Tue, 15 May 2012 22:36:27 +0200 bdiff: use Py_ssize_t instead of int
Adrian Buehlmann <adrian@cadifra.com> [Tue, 15 May 2012 22:36:27 +0200] rev 16749
bdiff: use Py_ssize_t instead of int Reduces the conversion warnings mercurial/bdiff.c(61) : warning C4244: '=' : conversion from '__int64' to 'int', possible loss of data mercurial/bdiff.c(307) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'int', possible loss of data mercurial/bdiff.c(308) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'int', possible loss of data mercurial/bdiff.c(362) : warning C4244: '+=' : conversion from '__int64' to 'int', possible loss of data mercurial/bdiff.c(380) : warning C4244: '=' : conversion from '__int64' to 'int', possible loss of data mercurial/bdiff.c(381) : warning C4244: 'function' : conversion from '__int64' to 'uint32_t', possible loss of data mercurial/bdiff.c(382) : warning C4244: 'function' : conversion from '__int64' to 'uint32_t', possible loss of data mercurial/bdiff.c(416) : warning C4244: '=' : conversion from 'Py_ssize_t' to 'int', possible loss of data to mercurial/bdiff.c(383) : warning C4244: 'function' : conversion from '__int64' to 'uint32_t', possible loss of data mercurial/bdiff.c(384) : warning C4244: 'function' : conversion from '__int64' to 'uint32_t', possible loss of data mercurial/bdiff.c(385) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'uint32_t', possible loss of data on the three putbe32() calls in the function bdiff when compiling for Windows x64 target using the Microsoft compiler.
Wed, 16 May 2012 17:02:30 +0900 doc: add detail explanation for 'present()' predicate of revsets stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Wed, 16 May 2012 17:02:30 +0900] rev 16748
doc: add detail explanation for 'present()' predicate of revsets
Fri, 18 May 2012 14:34:33 -0500 osutil: handle deletion race with readdir/stat (issue3463) stable
Matt Mackall <mpm@selenic.com> [Fri, 18 May 2012 14:34:33 -0500] rev 16747
osutil: handle deletion race with readdir/stat (issue3463)
Thu, 17 May 2012 15:52:14 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 17 May 2012 15:52:14 -0500] rev 16746
merge with stable
Thu, 17 May 2012 15:34:59 -0500 branchcache: backout 0311a6abd38a
Matt Mackall <mpm@selenic.com> [Thu, 17 May 2012 15:34:59 -0500] rev 16745
branchcache: backout 0311a6abd38a
Wed, 16 May 2012 16:18:07 -0500 dispatch: try and identify third-party extensions as sources of tracebacks
Augie Fackler <raf@durin42.com> [Wed, 16 May 2012 16:18:07 -0500] rev 16744
dispatch: try and identify third-party extensions as sources of tracebacks Extension authors should explicitly declare their supported hg versions and include a buglink attribute in their extension. In the event that a traceback occurs, we'll identify the least-recently-tested extensionas the most likely source of the defect and suggest the user disable that extension. Packagers should make every effort to ship hg versions from exact tags, or with as few modifications as possible so that the versioning can work appropriately.
Tue, 15 May 2012 14:37:49 -0500 hgext: mark all first-party extensions as such
Augie Fackler <raf@durin42.com> [Tue, 15 May 2012 14:37:49 -0500] rev 16743
hgext: mark all first-party extensions as such
Sat, 05 May 2012 15:12:26 -0500 bookmarks: test that bare update forwards active bookmark
Kevin Bullock <kbullock@ringworld.org> [Sat, 05 May 2012 15:12:26 -0500] rev 16742
bookmarks: test that bare update forwards active bookmark
Sun, 13 May 2012 14:26:26 +0100 keyword: intentionally ignore check-code warning about unwrapped ui message
Christian Ebert <blacktrash@gmx.net> [Sun, 13 May 2012 14:26:26 +0100] rev 16741
keyword: intentionally ignore check-code warning about unwrapped ui message
Wed, 16 May 2012 10:29:11 -0500 help: include bookmarks in 'help revisions' and simplify wording
Kevin Bullock <kbullock@ringworld.org> [Wed, 16 May 2012 10:29:11 -0500] rev 16740
help: include bookmarks in 'help revisions' and simplify wording
Thu, 17 May 2012 12:15:30 -0500 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Thu, 17 May 2012 12:15:30 -0500] rev 16739
merge with i18n
Tue, 15 May 2012 14:58:16 +0100 i18n-ru: synchronized with b490be1fec06 stable
Alexander Sauta <demosito@gmail.com> [Tue, 15 May 2012 14:58:16 +0100] rev 16738
i18n-ru: synchronized with b490be1fec06
Tue, 10 Apr 2012 11:17:06 +0400 i18n-ru: correct `push --new-branch` description stable
Nikolaj Sjujskij <sterkrig@myopera.com> [Tue, 10 Apr 2012 11:17:06 +0400] rev 16737
i18n-ru: correct `push --new-branch` description
Sat, 12 May 2012 19:38:20 +0200 bundle: make bundles more portable (isue3441) stable
Sune Foldager <cryo@cyanite.org> [Sat, 12 May 2012 19:38:20 +0200] rev 16736
bundle: make bundles more portable (isue3441) This is achieved by acting as if the user had given -r<rev> for each head rev of outgoing changesets on the command line, as well as appropriate --base <rev>. The discovery information is computed as normal, and then adjusted as above.
Mon, 14 May 2012 19:25:13 -0400 revset: fix traceback for bogus revisions in id(rev) stable
Matt Harbison <matt_harbison@yahoo.com> [Mon, 14 May 2012 19:25:13 -0400] rev 16735
revset: fix traceback for bogus revisions in id(rev) hg log -r "id(1234567)" now returns an empty list like rev() does.
Tue, 15 May 2012 12:44:07 +0200 Makefile: remove generated mercurial/__version__.py stable
Thomas Arendsen Hein <thomas@intevation.de> [Tue, 15 May 2012 12:44:07 +0200] rev 16734
Makefile: remove generated mercurial/__version__.py
Sun, 13 May 2012 14:00:58 +0200 mq: rename --check into --keep-changes
Patrick Mezard <patrick@mezard.eu> [Sun, 13 May 2012 14:00:58 +0200] rev 16733
mq: rename --check into --keep-changes I named it --check because it felt like qpush & co were checking *more* things to ensure local changes could not be lost. But it has been pointed on the mailing list that --check is already used by update command with a meaning almost opposite to this one. An alternative was --keep but qfold and qdelete already have such an option to preserve patch files and qfold may be a candidate for --check. - qpush/qpop/qgoto --check becomes --keep-changes. - mq.check becomes mq.keepchanges. - The short option -c is dropped as -k may conflict with existing --keep. The availabilitity of mq.keepchanges should not make this too painful. - Fix minor reST mistake in option description.
Sun, 13 May 2012 11:56:50 +0200 parsers: use Py_CLEAR where appropriate
Bryan O'Sullivan <bryano@fb.com> [Sun, 13 May 2012 11:56:50 +0200] rev 16732
parsers: use Py_CLEAR where appropriate
Sun, 13 May 2012 12:11:50 +0200 largefiles: fix addremove when largefile is missing (issue3227)
Na'Tosha Bard <natosha@unity3d.com> [Sun, 13 May 2012 12:11:50 +0200] rev 16731
largefiles: fix addremove when largefile is missing (issue3227)
Sun, 13 May 2012 12:01:52 +0200 tags: short-circuit if no tags have ever been committed
Bryan O'Sullivan <bryano@fb.com> [Sun, 13 May 2012 12:01:52 +0200] rev 16730
tags: short-circuit if no tags have ever been committed
Wed, 16 May 2012 11:40:33 -0500 largefiles: fix default clone destination regression
Matt Mackall <mpm@selenic.com> [Wed, 16 May 2012 11:40:33 -0500] rev 16729
largefiles: fix default clone destination regression
Tue, 15 May 2012 07:01:35 +0200 merge with crew
Matt Mackall <mpm@selenic.com> [Tue, 15 May 2012 07:01:35 +0200] rev 16728
merge with crew
Tue, 15 May 2012 07:00:55 +0200 merge with stable
Matt Mackall <mpm@selenic.com> [Tue, 15 May 2012 07:00:55 +0200] rev 16727
merge with stable
Mon, 14 May 2012 13:25:42 +0100 posix: workaround lack of TIOCGWINSZ on Irix (issue3449) stable
Mark Round <hg@markround.com> [Mon, 14 May 2012 13:25:42 +0100] rev 16726
posix: workaround lack of TIOCGWINSZ on Irix (issue3449) On an Irix 6.5.24 system, TIOCGWINSZ is not available. This means that any usage of the "hg" tool that looks up the terminal size (e.g. "hg help") will fail with an AttributeError. A simple work-around is just to wrap this block in mercurial/posix.py with a try/except so that it ends up using the default 80 characters width.
Sun, 13 May 2012 12:07:49 +0200 phases: wrap docstrings at 70 characters
Martin Geisler <martin@geisler.net> [Sun, 13 May 2012 12:07:49 +0200] rev 16725
phases: wrap docstrings at 70 characters
Sun, 13 May 2012 12:06:12 +0200 phases: fix typos in docstrings
Martin Geisler <martin@geisler.net> [Sun, 13 May 2012 12:06:12 +0200] rev 16724
phases: fix typos in docstrings
Sun, 13 May 2012 22:59:22 +0200 largefiles: don't attempt to clone all largefiles to non-local destinations
Levi Bard <levi@unity3d.com> [Sun, 13 May 2012 22:59:22 +0200] rev 16723
largefiles: don't attempt to clone all largefiles to non-local destinations
Mon, 14 May 2012 12:56:43 +0200 hgweb: fix filediff base calculation stable
Matt Mackall <mpm@selenic.com> [Mon, 14 May 2012 12:56:43 +0200] rev 16722
hgweb: fix filediff base calculation Previously, we were finding the most recent version of a file in a changeset and comparing it against its first file parent. This was wrong on three counts: - it would show a diff in revisions where there was no change to a file - it would show a diff when only the exec bit changed - it would potentially compare against a much older changeset, which could be very expensive if git-style rename detection was enabled This compares the file in the current context with that context's parent, which may result in an empty diff when looking at a file not touched by the current changeset.
Sun, 13 May 2012 14:04:07 +0200 branches: improve performance by removing redundant operations
Brodie Rao <brodie@sf.io> [Sun, 13 May 2012 14:04:07 +0200] rev 16721
branches: improve performance by removing redundant operations This refactors the branches command so it collects all the information it needs about a branch in one pass over the branch map. In particular, it fixes an issue where the command called repo.branchtags() to get branch tips, and then used repo.branchheads() to get the closed/open status. Both repo methods read the changelog to determine if the branch is closed, resulting in extra, redundant I/O. For the PyPy repo with 744 branches and 843 branch heads, this brings hg branches over NFS from: CallCount Recursive Total(ms) Inline(ms) module:lineno(function) 2427 0 0.9057 0.9057 <open> 2424 0 0.4096 0.4096 <method 'close' of 'file' objects> 2424 0 0.0476 0.0476 <method 'read' of 'file' objects> 1 0 0.0468 0.0468 mercurial.revlog:637(headrevs) +1 0 0.0000 0.0000 +<len> 2422 0 0.0443 0.0443 <method 'seek' of 'file' objects> 2962 0 0.0337 0.0337 <zlib.decompress> 2491 0 1.8008 0.0322 mercurial.changelog:182(read) +2491 0 1.6982 0.0315 +mercurial.revlog:881(revision) +2488 0 0.0269 0.0134 +mercurial.changelog:28(decodeextra) +4982 0 0.0085 0.0085 +<method 'split' of 'str' objects> +4982 0 0.0274 0.0049 +mercurial.encoding:61(tolocal) +2491 0 0.0039 0.0039 +<method 'index' of 'str' objects> 2491 0 1.6982 0.0315 mercurial.revlog:881(revision) +2413 0 0.0112 0.0112 +mercurial.revlog:305(rev) +2491 0 1.5315 0.0068 +mercurial.revlog:847(_chunkraw) +2491 0 0.0414 0.0058 +mercurial.revlog:945(_checkhash) +2491 0 0.0028 0.0028 +mercurial.revlog:349(flags) +2491 0 0.0025 0.0025 +<mercurial.mpatch.patches> 2422 0 1.5089 0.0286 mercurial.revlog:818(_loadchunk) +2422 0 0.4093 0.4093 +<method 'close' of 'file' objects> +2422 0 0.0451 0.0451 +<method 'read' of 'file' objects> +2422 0 0.0443 0.0443 +<method 'seek' of 'file' objects> +2422 0 0.9703 0.0096 +mercurial.store:374(__call__) +2422 0 0.0079 0.0069 +mercurial.revlog:810(_addchunk) 5804 0 0.0204 0.0204 mercurial.revlog:305(rev) 2426 0 0.9552 0.0177 mercurial.scmutil:218(__call__) +2426 0 0.9057 0.9057 +<open> +2426 0 0.0120 0.0083 +os.path:80(split) +2426 0 0.0061 0.0049 +mercurial.scmutil:92(__call__) Time: real 1.950 secs (user 0.560+0.000 sys 0.220+0.000) down to: CallCount Recursive Total(ms) Inline(ms) module:lineno(function) 1545 0 0.6035 0.6035 <open> 1542 0 0.2697 0.2697 <method 'close' of 'file' objects> 1 0 0.0547 0.0547 mercurial.revlog:637(headrevs) +1 0 0.0000 0.0000 +<len> 1542 0 0.0389 0.0389 <method 'read' of 'file' objects> 1540 0 0.0316 0.0316 <method 'seek' of 'file' objects> 1853 0 0.0227 0.0227 <zlib.decompress> 1557 0 1.2131 0.0226 mercurial.changelog:182(read) +1557 0 1.1398 0.0221 +mercurial.revlog:881(revision) +1555 0 0.0199 0.0094 +mercurial.changelog:28(decodeextra) +3114 0 0.0058 0.0058 +<method 'split' of 'str' objects> +3114 0 0.0196 0.0035 +mercurial.encoding:61(tolocal) +1557 0 0.0026 0.0026 +<method 'index' of 'str' objects> 1557 0 1.1398 0.0221 mercurial.revlog:881(revision) +1557 0 1.0307 0.0047 +mercurial.revlog:847(_chunkraw) +1557 0 0.0287 0.0040 +mercurial.revlog:945(_checkhash) +1557 0 0.0018 0.0018 +<mercurial.mpatch.patches> +1557 0 0.0018 0.0018 +mercurial.revlog:326(node) +1557 0 0.0417 0.0013 +mercurial.revlog:857(_chunkbase) 1540 0 1.0147 0.0210 mercurial.revlog:818(_loadchunk) +1540 0 0.2693 0.2693 +<method 'close' of 'file' objects> +1540 0 0.0360 0.0360 +<method 'read' of 'file' objects> +1540 0 0.0316 0.0316 +<method 'seek' of 'file' objects> +1540 0 0.6487 0.0070 +mercurial.store:374(__call__) +1540 0 0.0059 0.0052 +mercurial.revlog:810(_addchunk) 3192 0 0.0173 0.0173 mercurial.revlog:305(rev) 8184 0 0.0300 0.0147 <method 'decode' of 'str' objects> +5204 0 0.0149 0.0048 +encodings.utf_8:15(decode) +1 0 0.0004 0.0000 +encodings:71(search_function) 43 26 0.0147 0.0129 <__import__> Time: real 1.390 secs (user 0.450+0.000 sys 0.170+0.000)
Sun, 13 May 2012 14:04:06 +0200 context: add changectx.closesbranch() method
Brodie Rao <brodie@sf.io> [Sun, 13 May 2012 14:04:06 +0200] rev 16720
context: add changectx.closesbranch() method This removes the duplicated code for inspecting the 'close' extra field in a changeset.
Sun, 13 May 2012 14:04:04 +0200 localrepo: add branchtip() method for faster single-branch lookups
Brodie Rao <brodie@sf.io> [Sun, 13 May 2012 14:04:04 +0200] rev 16719
localrepo: add branchtip() method for faster single-branch lookups For the PyPy repo with 744 branches and 843 branch heads, this brings hg log -r default over NFS from: CallCount Recursive Total(ms) Inline(ms) module:lineno(function) 3249 0 1.3222 1.3222 <open> 3244 0 0.6211 0.6211 <method 'close' of 'file' objects> 3243 0 0.0800 0.0800 <method 'read' of 'file' objects> 3241 0 0.0660 0.0660 <method 'seek' of 'file' objects> 3905 0 0.0476 0.0476 <zlib.decompress> 3281 0 2.6756 0.0472 mercurial.changelog:182(read) +3281 0 2.5256 0.0453 +mercurial.revlog:881(revision) +3276 0 0.0389 0.0196 +mercurial.changelog:28(decodeextra) +6562 0 0.0123 0.0123 +<method 'split' of 'str' objects> +6562 0 0.0408 0.0073 +mercurial.encoding:61(tolocal) +3281 0 0.0054 0.0054 +<method 'index' of 'str' objects> 3241 0 2.2464 0.0456 mercurial.revlog:818(_loadchunk) +3241 0 0.6205 0.6205 +<method 'close' of 'file' objects> +3241 0 0.0765 0.0765 +<method 'read' of 'file' objects> +3241 0 0.0660 0.0660 +<method 'seek' of 'file' objects> +3241 0 1.4209 0.0135 +mercurial.store:374(__call__) +3241 0 0.0122 0.0107 +mercurial.revlog:810(_addchunk) 3281 0 2.5256 0.0453 mercurial.revlog:881(revision) +3280 0 0.0175 0.0175 +mercurial.revlog:305(rev) +3281 0 2.2819 0.0119 +mercurial.revlog:847(_chunkraw) +3281 0 0.0603 0.0083 +mercurial.revlog:945(_checkhash) +3281 0 0.0051 0.0051 +mercurial.revlog:349(flags) +3281 0 0.0040 0.0040 +<mercurial.mpatch.patches> 13682 0 0.0479 0.0248 <method 'decode' of 'str' objects> +7418 0 0.0228 0.0076 +encodings.utf_8:15(decode) +1 0 0.0003 0.0000 +encodings:71(search_function) 3248 0 1.3995 0.0246 mercurial.scmutil:218(__call__) +3248 0 1.3222 1.3222 +<open> +3248 0 0.0235 0.0184 +os.path:80(split) +3248 0 0.0084 0.0068 +mercurial.scmutil:92(__call__) Time: real 2.750 secs (user 0.680+0.000 sys 0.360+0.000) down to: CallCount Recursive Total(ms) Inline(ms) module:lineno(function) 55 31 0.0197 0.0163 <__import__> +1 0 0.0006 0.0002 +mercurial.context:8(<module>) +1 0 0.0042 0.0001 +mercurial.revlog:12(<module>) +1 0 0.0002 0.0001 +mercurial.match:8(<module>) +1 0 0.0003 0.0001 +mercurial.dirstate:7(<module>) +1 0 0.0057 0.0001 +mercurial.changelog:8(<module>) 1 0 0.0117 0.0032 mercurial.localrepo:525(_readbranchcache) +844 0 0.0015 0.0015 +<binascii.unhexlify> +845 0 0.0010 0.0010 +<method 'split' of 'str' objects> +843 0 0.0045 0.0009 +mercurial.encoding:61(tolocal) +843 0 0.0004 0.0004 +<method 'setdefault' of 'dict' objects> +1 0 0.0003 0.0003 +<method 'close' of 'file' objects> 3 0 0.0029 0.0029 <method 'read' of 'file' objects> 9 0 0.0018 0.0018 <open> 990 0 0.0017 0.0017 <binascii.unhexlify> 53 0 0.0016 0.0016 mercurial.demandimport:43(__init__) 862 0 0.0015 0.0015 <_codecs.utf_8_decode> 862 0 0.0037 0.0014 <method 'decode' of 'str' objects> +862 0 0.0023 0.0008 +encodings.utf_8:15(decode) 981 0 0.0011 0.0011 <method 'split' of 'str' objects> 861 0 0.0046 0.0009 mercurial.encoding:61(tolocal) +861 0 0.0037 0.0014 +<method 'decode' of 'str' objects> 862 0 0.0023 0.0008 encodings.utf_8:15(decode) +862 0 0.0015 0.0015 +<_codecs.utf_8_decode> 4 0 0.0008 0.0008 <method 'close' of 'file' objects> 179 154 0.0202 0.0004 mercurial.demandimport:83(__getattribute__) +36 11 0.0199 0.0003 +mercurial.demandimport:55(_load) +72 0 0.0001 0.0001 +mercurial.demandimport:83(__getattribute__) +36 0 0.0000 0.0000 +<getattr> 1 0 0.0015 0.0004 mercurial.tags:148(_readtagcache) Time: real 0.060 secs (user 0.030+0.000 sys 0.010+0.000)
Sun, 13 May 2012 16:39:40 +0200 strip: introduce -B option to remove a bookmark
David Soria Parra <dsp@php.net> [Sun, 13 May 2012 16:39:40 +0200] rev 16718
strip: introduce -B option to remove a bookmark Add a -B option to remove a bookmark. All revisions are unreachable from a different head or a different bookmark will be removed too. This helps with topic branch workflow. You can create a topic branch and remove it if not needed anymore with hg strip -B topic/xyz.
Sun, 13 May 2012 17:34:55 +0200 largefiles: use wlock for lfconvert (issue3444) stable
Mads Kiilerich <mads@kiilerich.com> [Sun, 13 May 2012 17:34:55 +0200] rev 16717
largefiles: use wlock for lfconvert (issue3444) largefiles and lfconvert do dirty hacks with dirstate, so to avoid writing that as a side effect of the wlock release we clear dirstate first. To avoid confusing lock validation algorithms in error situations we unlock _before_ removing the target directory.
Fri, 11 May 2012 10:35:54 -0700 localrepo: strip now incrementally updates the branchheads cache
Joshua Redstone <joshua.redstone@fb.com> [Fri, 11 May 2012 10:35:54 -0700] rev 16716
localrepo: strip now incrementally updates the branchheads cache Destroying history via strip used to invalidate the branchheads cache, causing it to be regenerated the next time it is read. This is expensive in large repos. This change converts strip to pass info to localrepo.destroyed() to enable to it to incrementally update the cache, improving the performance of strip and other operations that depend on it (e.g., rebase). This change also strengthens a bit the integrity checking of the branchheads cache when it is read, by rejecting the cache if it has nodes in it that no longer exist.
Sat, 12 May 2012 16:53:36 +0200 phase: remove useless test, olddata is never None
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 16:53:36 +0200] rev 16715
phase: remove useless test, olddata is never None
Sun, 13 May 2012 14:29:05 +0200 test-rebase-collapse: fix Windows path separator
Patrick Mezard <patrick@mezard.eu> [Sun, 13 May 2012 14:29:05 +0200] rev 16714
test-rebase-collapse: fix Windows path separator
Sun, 13 May 2012 15:26:06 +0200 help: tweak keyword format output
Matt Mackall <mpm@selenic.com> [Sun, 13 May 2012 15:26:06 +0200] rev 16713
help: tweak keyword format output
Sun, 13 May 2012 05:22:23 -0500 help: link back to the help topics page from a specific topic page
Augie Fackler <raf@durin42.com> [Sun, 13 May 2012 05:22:23 -0500] rev 16712
help: link back to the help topics page from a specific topic page
Sun, 13 May 2012 06:03:11 -0500 help: add --keyword (-k) for searching help
Augie Fackler <raf@durin42.com> [Sun, 13 May 2012 06:03:11 -0500] rev 16711
help: add --keyword (-k) for searching help
Sun, 13 May 2012 04:27:08 -0500 help: introduce topicmatch for finding topics matching a keyword
Augie Fackler <raf@durin42.com> [Sun, 13 May 2012 04:27:08 -0500] rev 16710
help: introduce topicmatch for finding topics matching a keyword
Sun, 13 May 2012 04:06:07 -0500 extensions.disabled: return {} instead of None no extensions are disabled
Augie Fackler <raf@durin42.com> [Sun, 13 May 2012 04:06:07 -0500] rev 16709
extensions.disabled: return {} instead of None no extensions are disabled
Sun, 13 May 2012 11:55:42 +0200 merge: respect bookmarks during merge
David Soria Parra <dsp@php.net> [Sun, 13 May 2012 11:55:42 +0200] rev 16708
merge: respect bookmarks during merge Bookmarks will behave more like named branches when merge tries to pick a revision to merge. Bookmarks now to respect the current bookmarks. Bookmarks will not accidentally merged with unnamed heads or other bookmarks. However merge can pick heads with diverging bookmarks and pick those automatically. We end up with two cases for picking a revision to merge: (1) In case of an current bookmark, merge can pick a branch head that has a diverged bookmark (2) In case of no current bookmark, merge can pick a branch head that does not have a bookmark.
Sun, 13 May 2012 11:54:58 +0200 localrepo: introduce bookmarkheads
David Soria Parra <dsp@php.net> [Sun, 13 May 2012 11:54:58 +0200] rev 16707
localrepo: introduce bookmarkheads Similar to branch heads we introduce the notion of bookmarkheads. Bookmarkheads are changests that are bookmarked with the given bookmark or a diverged version
Sat, 12 May 2012 21:28:10 +0200 bookmarks: delete divergent bookmarks on merge
David Soria Parra <dsp@php.net> [Sat, 12 May 2012 21:28:10 +0200] rev 16706
bookmarks: delete divergent bookmarks on merge
Sun, 13 May 2012 13:18:06 +0200 check-code: ignore naked excepts with a "re-raise" comment
Brodie Rao <brodie@sf.io> [Sun, 13 May 2012 13:18:06 +0200] rev 16705
check-code: ignore naked excepts with a "re-raise" comment This also promotes the naked except check from a warning to an error.
(0) -10000 -3000 -1000 -256 +256 +1000 +3000 +10000 +30000 tip