Skip to content
Snippets Groups Projects
Commit 0c469df6 authored by Pierre-Yves David's avatar Pierre-Yves David
Browse files

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.
parent de254493
No related branches found
No related tags found
No related merge requests found
......@@ -473,23 +473,7 @@
subset = pullop.heads
pullop.pulledsubset = subset
# Get remote phases data from remote
remotephases = pullop.remote.listkeys('phases')
publishing = bool(remotephases.get('publishing', False))
if remotephases and not publishing:
# remote is new and unpublishing
pheads, _dr = phases.analyzeremotephases(pullop.repo,
pullop.pulledsubset,
remotephases)
phases.advanceboundary(pullop.repo, phases.public, pheads)
phases.advanceboundary(pullop.repo, phases.draft,
pullop.pulledsubset)
else:
# Remote is old or publishing all common changesets
# should be seen as public
phases.advanceboundary(pullop.repo, phases.public,
pullop.pulledsubset)
_pullphase(pullop)
_pullobsolete(pullop)
pullop.closetransaction()
finally:
......@@ -498,6 +482,24 @@
return result
def _pullphase(pullop):
# Get remote phases data from remote
remotephases = pullop.remote.listkeys('phases')
publishing = bool(remotephases.get('publishing', False))
if remotephases and not publishing:
# remote is new and unpublishing
pheads, _dr = phases.analyzeremotephases(pullop.repo,
pullop.pulledsubset,
remotephases)
phases.advanceboundary(pullop.repo, phases.public, pheads)
phases.advanceboundary(pullop.repo, phases.draft,
pullop.pulledsubset)
else:
# Remote is old or publishing all common changesets
# should be seen as public
phases.advanceboundary(pullop.repo, phases.public,
pullop.pulledsubset)
def _pullobsolete(pullop):
"""utility function to pull obsolete markers from a remote
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment