Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 11 Feb 2014 14:51:38 -0800] rev 20488
pull: move `fetch` subset into the object
Tree discovey use a `fetch` variable to know what is being pulled. We move this
information in the `pulloperation` object. This make it possible to extract the
changeset pulling logic into its own function.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 31 Jan 2014 01:34:00 -0800] rev 20487
pull: make pulled subset a propertycache of the pull object
The computation of the subset is simple operation using two useful pull
information (1) the set of common changeset before the pull (2) the set of
pulled changeset. We move this data into the `pulloperation` object since some
phase will need them. And we turn the pulled subset computation behind a
property case as multiple pull phase will need it.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 31 Jan 2014 01:25:56 -0800] rev 20486
pull: move phases synchronisation in its own function
Now that every necessary information is held in the `pulloperation` object, we
can finally extract the phase synchronisation phase to it's own function.
This changeset is pure code movement only.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 31 Jan 2014 01:21:42 -0800] rev 20485
pull: move pulled subset into the object
We compute the set of local changeset that were target of the pull. This is then
used by phases logic to decide which part of the history should have it phase
updated.
We move this information into the object to allow extraction of phase
synchronisation in its own function.
I expect obsolete marker exchange to use it too in the future.
Lucas Moscovicz <lmoscovicz@fb.com> [Thu, 06 Feb 2014 15:56:25 -0800] rev 20484
revset: added operations to spanset to duck type baseset
Added more operations which are not lazy but only used so far to duck type
baseset.
Lucas Moscovicz <lmoscovicz@fb.com> [Wed, 12 Feb 2014 10:22:43 -0800] rev 20483
revset: added basic operations to spanset
Added methods __add__, __sub__ and __and__ to duck type more methods in
baseset
Lucas Moscovicz <lmoscovicz@fb.com> [Wed, 12 Feb 2014 10:16:21 -0800] rev 20482
revset: added spanset class to represent revision ranges
Lucas Moscovicz <lmoscovicz@fb.com> [Thu, 06 Feb 2014 08:36:11 -0800] rev 20481
revset: added lazyset implementation to extra revset
Lucas Moscovicz <lmoscovicz@fb.com> [Thu, 06 Feb 2014 08:32:40 -0800] rev 20480
revset: added lazyset implementation to converted revset
Lucas Moscovicz <lmoscovicz@fb.com> [Thu, 06 Feb 2014 08:31:55 -0800] rev 20479
revset: added lazyset implementation to closed revset
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 31 Jan 2014 01:12:35 -0800] rev 20478
push: feed pulloperation object to _pullobsolete function
We now have all necessary information in the `pulloperation` object itself.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 31 Jan 2014 01:04:05 -0800] rev 20477
pull: move transaction logic into the pull object
Most local change that occurs during a pull are doing within a `transaction`.
Currently this mean (1) adding new changeset (2) adding obsolescence markers. We
want the two operations to be done in the same transaction. However we do not
want to create a transaction if nothing is added to the repo. Creating an empty
transaction would drop the previous transaction data and confuse tool and people
who are still using rollback.
So the current pull code has some logic to create and handle this transaction on
demand. We are moving this logic in to the `pulloperation` object itself to
simplify this lazy creation logic through all different par of the push.
Note that, in the future, other part of pull (phases, bookmark) will probably
want to be part of the transaction too.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 17:38:41 -0800] rev 20476
pull: move obsolescence marker exchange in the exchange module
The obsolescence marker exchange code was already extracted during a previous
cycle. We are moving the extracted functio in this module. This function will
read and write data in the `pulloperation` object and I prefer to have all core
function collaborating through this object in the same place.
This changeset is pure code movement only. Code change for direct consumption of
the `pulloperation` object will come later.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Sat, 01 Feb 2014 03:49:29 -0800] rev 20475
pull: move `force` argument into pull object
One more step toward a more modular pulh function.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 17:35:55 -0800] rev 20474
pull: move `heads` argument into pull object
One more step toward a more modular pull function.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 17:32:04 -0800] rev 20473
pull: move `remote` argument into pull object
One more step toward a more modular pull function.