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.
(0) -10000 -3000 -1000 -300 -100 -48 +48 +100 +300 +1000 +3000 +10000 +30000 tip