Simon Heimberg <simohe@besonet.ch> [Fri, 17 Jan 2014 21:13:20 +0100] rev 20494
tests: killdaemons.py for windows waits for killed process to terminate
After kill, wait for the process to terminate. When it does not in time,
write a debug message similar as in other os. But no 2nd forceful attempt
is done.
Simon Heimberg <simohe@besonet.ch> [Fri, 17 Jan 2014 21:13:08 +0100] rev 20493
tests: kill for windows in killdaemons.py checks return values
The return values of the windll calls are checked and when an error is
indicated, it is raised. The handle is still closed properly.
Matt Mackall <mpm@selenic.com> [Thu, 13 Feb 2014 15:33:24 -0600] rev 20492
merge with crew
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 13 Feb 2014 13:08:50 +0100] rev 20491
merge with stable
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 13 Feb 2014 13:05:09 +0100] rev 20490
help: new SHA-1 fingerprint of hg.intevation.org in hostfingerprints example
The certificate was updated in February 2014.
You can verify the certificate by using the Root CA certificate downloadable
from https://ssl.intevation.de/
The intermediate CA is sent by https://hg.intevation.org/
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 31 Jan 2014 01:39:59 -0800] rev 20489
pull: move changeset pulling in its own function
pull: move changeset pulling in its own function
Now that every necessary information is held in the `pulloperation` object, we
can finally extract the changeset pulling to it's own function.
This changeset is pure code movement only.
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.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 17:24:49 -0800] rev 20472
pull: introduce a pulloperation object
This object will hold all data and state gathered through the pull. This will
allow us to split the long function into multiple small one. Smaller function
will be easier to maintains and wrap. The idea is to blindly store all
information related to the pull in this object so that each step and extension
can use them if necessary.
We start by putting the `repo` variable in the object. More migration in other
function.
Simon Heimberg <simohe@besonet.ch> [Mon, 27 Jan 2014 21:39:25 +0100] rev 20471
tests: lines with largefile .* file://$TESTTMP also match on windows
on windows, largefile paths are written as "file:///C:/temp/...", corresponding
to "file:///$TESTTMP/..." (all three slashes shown).
But on posix systems they are written as "file:///tmp/..." corresponding to
"file://$TESTTMP/..." (only two slashes shown).
Write the glob "file:/*/" to match both versions.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 11 Feb 2014 16:30:23 -0800] rev 20470
debugobsolete: extract marker display in a dedicated function
We want to be able to reuse and extend it from other function or
extension while working on markers exchange.
This changeset is pure core movement.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 16:12:49 -0800] rev 20469
exchange: extract pull function from localrepo
The localrepo class if far too big. Push and pull logic are extracted and
reworked to better fit with the fact we exchange more than bundle now.
This changeset extract the pulh code. later changeset will slowly slice it into
smaller brick.
The localrepo.pull method is kept for now to limit impact on user code. But it
will be ultimately removed, now that the public API is hold by peer.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 23:12:03 -0800] rev 20468
push: extract new common set computation from phase synchronisation
Now that every necessary information is held in the `pushoperation` object, we
can extract the new common set computation to it's own function.
This changeset is pure code movement only.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 23:16:43 -0800] rev 20467
push: move `commonheads` into the push object
The phase synchronisation start by computing the new set of common head between
local and remote and then do the phase synchronisation on this set. This new
common set logic will eventually be used by the obsolescence markers exchange.
So we are going to split the long phase synchronisation in two.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 21:05:29 -0800] rev 20466
push: move discovery in its own function
Now that every necessary information is held in the `pushoperation` object, we
can extract the discovery logic to it's own function.
This changeset is pure code movement only.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 30 Jan 2014 21:01:21 -0800] rev 20465
push: move outgoing check logic in its own function
Now that every necessary information is held in the `pushoperation` object, we
can extract the part responsible of aborting the push to it's own function.
This changeset is mostly pure code movement. the exception is the fact this
function returns a value to decide if changeset bundle should be pushed.