Wed, 23 Sep 2015 12:56:12 -0700 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 23 Sep 2015 12:56:12 -0700] rev 26404
bundle2: allow compressed bundle This changeset adds support for a 'compression' parameter in bundle2 streams. When set, it controls the compression algorithm used for the payload part of the bundle2. There is currently no usage of this except in tests.
Mon, 28 Sep 2015 15:01:20 -0700 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 28 Sep 2015 15:01:20 -0700] rev 26403
test-bundle2: dump bundle content using f --hexdump Thanks to Greg Szorc for pointing this out.
Fri, 25 Sep 2015 22:54:46 -0400 treemanifest: rework lazy-copying code (issue4840)
Augie Fackler <augie@google.com> [Fri, 25 Sep 2015 22:54:46 -0400] rev 26402
treemanifest: rework lazy-copying code (issue4840) The old lazy-copy code formed a chain of copied manifests with each copy. Under typical operation, the stack never got more than a couple of manifests deep and was fine. Under conditions like hgsubversion or convert, the stack could get hundreds of manifests deep, and eventually overflow the recursion limit for Python. I was able to consistently reproduce this by converting an hgsubversion clone of svn's history to treemanifests. This may result in fewer manifests staying in memory during operations like convert when treemanifests are in use, and should make those operations faster since there will be significantly fewer noop function calls going on. A previous attempt (never mailed) of mine to fix this problem tried to simply have all treemanifests only have a loadfunc - that caused somewhat weird problems because the gettext() callable passed into read() wasn't idempotent, so the easy solution is to have a loadfunc and a copyfunc.
Fri, 25 Sep 2015 17:18:28 -0400 manifest: rename treemanifest load functions to ease debugging
Augie Fackler <augie@google.com> [Fri, 25 Sep 2015 17:18:28 -0400] rev 26401
manifest: rename treemanifest load functions to ease debugging I'm hunting an infinite recursion bug at the moment, and having both of these methods named just _load is muddying the waters slightly.
Fri, 25 Sep 2015 17:17:36 -0400 manifest: add id(self) to treemanifest __repr__
Augie Fackler <augie@google.com> [Fri, 25 Sep 2015 17:17:36 -0400] rev 26400
manifest: add id(self) to treemanifest __repr__ Also rename __str__ to __repr__ since that's what we really want for pdb.
Mon, 28 Sep 2015 10:27:36 -0700 bundlerepo: let bundle repo look in the _mancache
Durham Goode <durham@fb.com> [Mon, 28 Sep 2015 10:27:36 -0700] rev 26399
bundlerepo: let bundle repo look in the _mancache When looking up a base revision, we were ignoring the contents that were already available in the manifest's _mancache. This patch allows us to use that data instead of reading from the revlog. This is useful in our pushrebase extension (which allows rebasing on the server side during a push) because it allows us to prefetch the bundle base manifest before aquiring the repo lock (1 second saving), which means doing less work inside the lock, which means a 20% higher commit rate.
Sun, 27 Sep 2015 22:19:54 +0900 check-seclevel: wrap entry point by function
Yuya Nishihara <yuya@tcha.org> [Sun, 27 Sep 2015 22:19:54 +0900] rev 26398
check-seclevel: wrap entry point by function This is intended to narrow scope of local variables. The global _verbose flag will be replaced later by ui.verbose.
Sun, 27 Sep 2015 22:16:24 +0900 check-seclevel: set executable bit as it has shebang
Yuya Nishihara <yuya@tcha.org> [Sun, 27 Sep 2015 22:16:24 +0900] rev 26397
check-seclevel: set executable bit as it has shebang
Wed, 23 Sep 2015 12:56:05 -0700 bundle20: extract core payload generation in its own function
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 23 Sep 2015 12:56:05 -0700] rev 26396
bundle20: extract core payload generation in its own function We are about to allow compressing the core of the bundle2. So we extract the generation of this bits in its own parts to make this compression phases easier in a later changesets.
Wed, 23 Sep 2015 14:00:16 -0700 unbundle20: allow registering handlers for stream level parameters
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 23 Sep 2015 14:00:16 -0700] rev 26395
unbundle20: allow registering handlers for stream level parameters As a comment in the code have been asking for, it is now possible to register piece of code that handle parameters for the stream. I've been wondering is such function should be class methods or not. I eventually went for externally decorated methods to stick with the culture of extensibility from an extensions that apply to bundle2.
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 tip