Sat, 08 Aug 2015 16:24:57 -0700 demandimport: refactor logic and add documentation
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 16:24:57 -0700] rev 25935
demandimport: refactor logic and add documentation demandimport doesn't currently support absolute imports (level >= 0). In preparation for this, we add some documentation and a code branch to handle the absolute_import case.
Sat, 08 Aug 2015 17:12:37 -0700 demandimport: add __future__ to ignore list
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 17:12:37 -0700] rev 25934
demandimport: add __future__ to ignore list __future__ is special. We should definitely not be trying to lazy load it.
Sat, 08 Aug 2015 15:01:27 -0700 demandimport: remove support for Python < 2.5
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 15:01:27 -0700] rev 25933
demandimport: remove support for Python < 2.5 The removed code was to support an __import__ function that doesn't support the "level" argument. This argument was added in Python 2.5, which we no longer support.
Sat, 08 Aug 2015 14:42:48 -0700 dispatch: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 14:42:48 -0700] rev 25932
dispatch: use absolute_import A mixed, ambiguous import has been removed!
Sat, 08 Aug 2015 14:30:39 -0700 commands: break import cycle
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 14:30:39 -0700] rev 25931
commands: break import cycle This was the easiest link in the chain to break as there was only one use of commandserver in commands.py. Other files had multiple users.
Sat, 08 Aug 2015 00:47:19 -0700 cmdutil: break import cycle
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 00:47:19 -0700] rev 25930
cmdutil: break import cycle This was the easiest place to break the chain, as there were only 2 uses of the imported module in the file.
Sun, 05 Jul 2015 12:50:09 +0900 revset: make balanced addsets by orset() without using _combinesets()
Yuya Nishihara <yuya@tcha.org> [Sun, 05 Jul 2015 12:50:09 +0900] rev 25929
revset: make balanced addsets by orset() without using _combinesets() As scmutil.revrange() was rewritten to not use _combinesets(), we no longer need _combinesets().
Sun, 05 Jul 2015 12:35:42 +0900 revrange: evaluate all revset specs at once
Yuya Nishihara <yuya@tcha.org> [Sun, 05 Jul 2015 12:35:42 +0900] rev 25928
revrange: evaluate all revset specs at once This provides an opportunity for revset to optimize given expressions. For example, "-r0 -r1 -r2" can be optimized to "_list(0 1 2)".
Fri, 07 Aug 2015 21:39:38 +0900 revset: add matchany() to construct OR expression from a list of specs
Yuya Nishihara <yuya@tcha.org> [Fri, 07 Aug 2015 21:39:38 +0900] rev 25927
revset: add matchany() to construct OR expression from a list of specs This will allow us to optimize "-rREV1 -rREV2 ..." command-line options.
Fri, 07 Aug 2015 21:31:16 +0900 revset: split post-parsing stage from match()
Yuya Nishihara <yuya@tcha.org> [Fri, 07 Aug 2015 21:31:16 +0900] rev 25926
revset: split post-parsing stage from match() _makematcher() will be reused by new matchany(ui, specs, repo=None) function I'll add by the next patch.
Sat, 08 Aug 2015 14:42:27 +0800 filesets: ignore unit case in size() predicate for single value stable
Anton Shestakov <av6@dwimlabs.net> [Sat, 08 Aug 2015 14:42:27 +0800] rev 25925
filesets: ignore unit case in size() predicate for single value When specifying one plain value in size(), e.g. size(1k), fileset tries to guess the upper bound automatically (see the comment in _sizetomax()). It didn't ignore the specified unit's case, and so size("1 GB"), for example, produced this error: hg: parse error: couldn't parse size: 1 GB Let's do the same thing that util.sizetoint() does: .lower(). The two test lines without output just check that there are no parse errors.
Sat, 08 Aug 2015 00:41:13 -0700 copies: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 00:41:13 -0700] rev 25924
copies: use absolute_import
Sat, 08 Aug 2015 00:28:53 -0700 config: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 00:28:53 -0700] rev 25923
config: use absolute_import
Sat, 08 Aug 2015 00:26:49 -0700 changelog: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 00:26:49 -0700] rev 25922
changelog: use absolute_import
Sat, 08 Aug 2015 00:35:37 -0700 changegroup: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 00:35:37 -0700] rev 25921
changegroup: use absolute_import
Sat, 08 Aug 2015 00:36:35 -0700 bundlerepo: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 08 Aug 2015 00:36:35 -0700] rev 25920
bundlerepo: use absolute_import
Fri, 07 Aug 2015 19:54:08 -0700 bundle2: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 07 Aug 2015 19:54:08 -0700] rev 25919
bundle2: use absolute_import
Fri, 07 Aug 2015 19:51:55 -0700 branchmap: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 07 Aug 2015 19:51:55 -0700] rev 25918
branchmap: use absolute_import
Fri, 07 Aug 2015 19:49:21 -0700 bookmarks: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 07 Aug 2015 19:49:21 -0700] rev 25917
bookmarks: use absolute_import
Fri, 07 Aug 2015 19:47:49 -0700 archival: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 07 Aug 2015 19:47:49 -0700] rev 25916
archival: use absolute_import
Fri, 07 Aug 2015 19:45:48 -0700 ancestor: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 07 Aug 2015 19:45:48 -0700] rev 25915
ancestor: use absolute_import A few months ago, import-checker.py was taught to enforce a more well-defined import style for files with absolute_import. However, we stopped short of actually converting source files to use absolute_import because of problems with certain files. Investigation revealed the following problems with switching to absolute_import universally: 1) import cycles result in import failure on Python 2.6 2) undetermined way to import C/pure modules While these problems need to be solved, they can be put off. This patch starts a series of converting files to absolute_import that won't exhibit any of the aforementioned problems.
Wed, 05 Aug 2015 14:21:46 -0400 discovery: always use batching now that all peers support batching
Augie Fackler <augie@google.com> [Wed, 05 Aug 2015 14:21:46 -0400] rev 25914
discovery: always use batching now that all peers support batching Some peers will transparently downgrade batched requests to non-batched ones, but that simplifies code for everyone using batching.
Wed, 05 Aug 2015 14:15:17 -0400 wireproto: make wirepeer look-before-you-leap on batching
Augie Fackler <augie@google.com> [Wed, 05 Aug 2015 14:15:17 -0400] rev 25913
wireproto: make wirepeer look-before-you-leap on batching This means that users of request batching don't need to worry themselves with capability checking. Instead, they can just use batching, and if the remote server doesn't support batching for some reason the wirepeer code will transparently un-batch the requests. This will allow for some slight simplification in a handful of places. Prior to this change, largefiles would have been silently broken against a server which did not support batching.
Wed, 05 Aug 2015 14:51:34 -0400 batching: migrate basic noop batching into peer.peer
Augie Fackler <augie@google.com> [Wed, 05 Aug 2015 14:51:34 -0400] rev 25912
batching: migrate basic noop batching into peer.peer "Real" batching only makes sense for wirepeers, but it greatly simplifies the clients of peer instances if they can be ignorant to actual batching capabilities of that peer. By moving the not-really-batched batching code into peer.peer, all peer instances now work with the batching API, thus simplifying users. This leaves a couple of name forwards in wirepeer.py. Originally I had planned to clean those up, but it kind of unclarifies other bits of code that want to use batching, so I think it makes sense for the names to stay exposed by wireproto. Specifically, almost nothing is currently aware of peer (see largefiles.proto for an example), so making them be aware of the peer module *and* the wireproto module seems like some abstraction leakage. I *think* the right long-term fix would actually be to make wireproto an implementation detail that clients wouldn't need to know about, but I don't really know what that would entail at the moment. As far as I'm aware, no clients of batching in third-party extensions will need updating, which is nice icing.
(0) -10000 -3000 -1000 -300 -100 -50 -24 +24 +50 +100 +300 +1000 +3000 +10000 tip