Tue, 01 Apr 2014 23:41:32 -0700 bundle2: allow pulling changegroups using bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 01 Apr 2014 23:41:32 -0700] rev 20955
bundle2: allow pulling changegroups using bundle2 This changeset refactors the pull code to use a bundle2 when available. We keep bundle2 disabled by default. The current code is not ready for prime time. Ultimately we'll want to unify the API of `bunde10` and `bundle20` to have less different code. But for now, testing the bundle2 exchange flow is an higher priority.
Fri, 04 Apr 2014 01:51:54 -0700 bundle2: add an exchange.getbundle function
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 04 Apr 2014 01:51:54 -0700] rev 20954
bundle2: add an exchange.getbundle function This function can return a `HG10` or `HG20` bundle. It uses the `bundlecaps` parameters to decides which one to return. This is a distinct function from `changegroup.getbundle` for two reasons. First the APIs of `bundle10` and `bundle20` are not compatible yet. The two functions may be reunited in the future. Second `exchange.getbundle` will grow parameters for all kinds of data (phases, obsmarkers, ...) so it's better to keep the changegroup generation in its own function for now. This function will be used it in the next changesets.
Fri, 04 Apr 2014 01:33:20 -0700 localpeer: propagate bundlecaps in getbundle call
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 04 Apr 2014 01:33:20 -0700] rev 20953
localpeer: propagate bundlecaps in getbundle call Best arguments are the ones in use...
Wed, 02 Apr 2014 23:56:49 -0700 bundle2: make it possible have a global transaction for the unbundling
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 02 Apr 2014 23:56:49 -0700] rev 20952
bundle2: make it possible have a global transaction for the unbundling We use the `gettransaction` method approach already used for pull. We need this because we do not know beforehand if the bundle needs a transaction to be created. And (1) we do not want to create a transaction for nothing. (2) Some bundle2 bundles may be read-only and do not require any lock or transaction to be held.
Fri, 04 Apr 2014 17:47:19 -0500 tests: fix test output typo
Matt Mackall <mpm@selenic.com> [Fri, 04 Apr 2014 17:47:19 -0500] rev 20951
tests: fix test output typo
Mon, 24 Mar 2014 19:37:59 -0700 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 24 Mar 2014 19:37:59 -0700] rev 20950
bundle2: first crude version of bundling changeset with bundle2 The current changegroup format is put in a "changegroup" part and processed by an appropriate handlers. This is not production ready code, but let us start smoke testing.
Wed, 02 Apr 2014 22:37:50 -0700 bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 02 Apr 2014 22:37:50 -0700] rev 20949
bundle2: record processing results in the bundleoperation object Part handlers can now add records to the `bundleoperation` object. This can be used to help other parts or to let the caller of the unbundling process react to the results.
Wed, 02 Apr 2014 22:24:44 -0700 bundle2: introduce a bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 02 Apr 2014 22:24:44 -0700] rev 20948
bundle2: introduce a bundleoperation object This object will hold all data and state gathered through the processing of a bundle. This will allow: - each handler to be aware of the things unbundled so far - the caller to retrieve data about the execution - bear useful object and logic (like repo, transaction) - bear possible bundle2 reply triggered by the unbundling. For now the object is very simple but it will grow at the same time as the bundle2 implementation.
Wed, 02 Apr 2014 13:50:57 -0700 bundle2: feed a unbundle20 to the `processbundle` function
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 02 Apr 2014 13:50:57 -0700] rev 20947
bundle2: feed a unbundle20 to the `processbundle` function The unbundle can comes from multiple sources. (on disk file, peer, etc) and (ultimately) of multiple type (bundle10, bundle20). The `processbundle` is no longer in charge of creating the bundle.
Thu, 03 Apr 2014 17:25:47 -0700 bundle2: lock the repo during unbundle test
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 03 Apr 2014 17:25:47 -0700] rev 20946
bundle2: lock the repo during unbundle test We forgot the lock the repo. It's not too bad during tests, but the lock also still carry some transaction logic. (yes we need to get rid of this)
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 +30000 tip