Sat, 06 May 2017 10:59:38 -0700 perf: don't clobber startrev variable
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 06 May 2017 10:59:38 -0700] rev 32264
perf: don't clobber startrev variable Previously, the "startrev" argument would be ignored due to "startrev = 0" in the benchmark function. This meant that `hg perfrevlog` always started at revision 0. Rename the local variable to "beginrev" so the variable does the right thing.
Fri, 05 May 2017 17:31:15 +0200 bundle: add optional 'tagsfnodecache' data to on disk bundle (issue5543)
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 05 May 2017 17:31:15 +0200] rev 32263
bundle: add optional 'tagsfnodecache' data to on disk bundle (issue5543) This should help performance when unbundling.
Fri, 05 May 2017 17:28:52 +0200 bundle2: move tagsfnodecache generation in a generic function
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 05 May 2017 17:28:52 +0200] rev 32262
bundle2: move tagsfnodecache generation in a generic function This will help us reusing the logic for `hg bundle`.
Fri, 05 May 2017 17:09:47 +0200 bundle: introduce an higher level function to write bundle on disk
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 05 May 2017 17:09:47 +0200] rev 32261
bundle: introduce an higher level function to write bundle on disk The current function ('writebundle') is focussing on getting an existing changegroup to disk. It is no easy ways to includes more part in the generated bundle2. So we introduce a slightly higher level function that is fed the 'outgoing' object (that defines the bundled spec) and the bundlespec parameters (to control the changegroup generation and inclusion of other parts). This is creating the third logic dedicated to create a consistent bundle2 (the other 2 are the push code and the getbundle code). We should probably reconcile them at some points but they all takes different types of input. So we need to introduce an intermediate "object" that each different input could be converted to. Such unified "bundle2 specification" could be fed to some unified code. We start by having the `hg bundle` related code on its own to helps defines its specific needs first. Once the common and specific parts of each logic will be known we can start unification.
Thu, 04 May 2017 21:47:03 +0200 bundle: handle compression earlier
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 04 May 2017 21:47:03 +0200] rev 32260
bundle: handle compression earlier We can also handle that part before starting any generation.
Thu, 04 May 2017 21:46:02 +0200 bundle: check changegroup version earlier
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 04 May 2017 21:46:02 +0200] rev 32259
bundle: check changegroup version earlier We can check if we know how to bundle this changegroup version before actually starting to generate the changegroup.
Thu, 04 May 2017 21:44:36 +0200 bundle: check lack of revs to bundle before generating the changegroup
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 04 May 2017 21:44:36 +0200] rev 32258
bundle: check lack of revs to bundle before generating the changegroup We already have the information so we can check it earlier.
Sat, 06 May 2017 23:00:57 -0400 extdiff: copy back files to the working directory if the size changed
Matt Harbison <matt_harbison@yahoo.com> [Sat, 06 May 2017 23:00:57 -0400] rev 32257
extdiff: copy back files to the working directory if the size changed In theory, it should be enough to pay attention only to the modification time when detecting if a snapshotted working directory file changed. In practice, BeyondCompare preserves all file attributes when syncing files at the directory level. (If you open the file and sync individual hunks, then mtime does change, and everything was being copied back as desired.) I'm not sure how many other synchronization tools would trigger this issue, but it's annoyingly inconsistent (if a single file is diffed, it isn't snapshotted, so the same BeyondCompare file sync operation _is_ visible, because wdir() is updated in place. I filed a bug with them, and they stated it is on their wish list, but won't be fixed in the near term. This isn't a complete fix (there is still the case of the size not changing), but this seems like a trivial enough change to fix most of the problem. I suppose we could fool around with making files in the other snapshot readonly, and copy back if we see the readonly bit copied. That seems pretty hacky though, and only works if the external tool copies all attributes.
Sat, 06 May 2017 22:48:06 -0400 test-extdiff: enable a previously failing test on Windows
Matt Harbison <matt_harbison@yahoo.com> [Sat, 06 May 2017 22:48:06 -0400] rev 32256
test-extdiff: enable a previously failing test on Windows
Sat, 06 May 2017 19:11:59 -0400 test-extdiff: narrow the range of an '#if execbit' block
Matt Harbison <matt_harbison@yahoo.com> [Sat, 06 May 2017 19:11:59 -0400] rev 32255
test-extdiff: narrow the range of an '#if execbit' block Now that output can be conditionalized, the few `chmod +x` specific outputs can be conditionalized, and the rest of the tests run as normal. Disable one test that is failing on Windows for now.
Sat, 06 May 2017 14:36:26 -0400 test-extdiff: deduplicate tests
Matt Harbison <matt_harbison@yahoo.com> [Sat, 06 May 2017 14:36:26 -0400] rev 32254
test-extdiff: deduplicate tests
Sat, 06 May 2017 13:37:00 -0400 test-extdiff: fill in a missing Windows test
Matt Harbison <matt_harbison@yahoo.com> [Sat, 06 May 2017 13:37:00 -0400] rev 32253
test-extdiff: fill in a missing Windows test
Sat, 13 Aug 2016 17:21:58 +0900 policy: eliminate ".pure." from module name only if marked as dual
Yuya Nishihara <yuya@tcha.org> [Sat, 13 Aug 2016 17:21:58 +0900] rev 32252
policy: eliminate ".pure." from module name only if marked as dual So we can switch cext/pure modules to new layout one by one.
Fri, 12 Aug 2016 11:06:14 +0900 policy: add "cext" package which will host CPython extension modules
Yuya Nishihara <yuya@tcha.org> [Fri, 12 Aug 2016 11:06:14 +0900] rev 32251
policy: add "cext" package which will host CPython extension modules I'm going to restructure cext/pure modules and get rid of our hgimporter hack. C extension modules will be moved to cext/ directory so old and new compiled modules can coexist in development tree. This is necessary to run 'hg bisect' without recompiling. New extension modules will be loaded by an importer function: base85 = policy.importmod('base85') # select pure.base85 or cext.base85 This will also allow us to split cffi from pure modules, which is currently difficult because pure modules can't be imported by name.
Tue, 02 May 2017 18:35:09 +0900 policy: mark all string literals as sysstr or bytes
Yuya Nishihara <yuya@tcha.org> [Tue, 02 May 2017 18:35:09 +0900] rev 32250
policy: mark all string literals as sysstr or bytes The policy module won't be imported early in future, which means string literals will be processed by our Python 3 loader.
(0) -30000 -10000 -3000 -1000 -300 -100 -15 +15 +100 +300 +1000 +3000 +10000 tip