Mercurial > hg-stable
view contrib/asv.conf.json @ 39055:ef3d3a2f9aa5
changegroup: refactor delta parent code
We had recently abstracted the delta parent functions to
facilitate extracting code from cgpacker. Now that we're in
a better place, it is time to revisit the design.
Changegroup version 1 requires that the previous node be used as the
delta parent. Later versions allow any available node to be used
as the base.
In the case where an arbitrary parent can be used, the choice of
a delta parent is best left in the hands of the storage backend.
So it makes sense for the delta parent selection to be hidden
away in the storage layer. This means deferring the choice of the
delta parent selection function to as close to delta generation
time as possible.
This commit moves the delta selection logic to essentially just
before delta generation. However, because changegroup version 1
limits what we can do, we have retained the ability to force a
delta against the previous revision.
As part of this, I realized that the ellipsis parent function was
unused! That's because ellipsis mode always sends full revisions
and not deltas.
Differential Revision: https://phab.mercurial-scm.org/D4214
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 08 Aug 2018 20:17:48 -0700 |
parents | cff0f5926797 |
children |
line wrap: on
line source
{ "version": 1, "project": "mercurial", "project_url": "https://mercurial-scm.org/", "repo": "..", "branches": ["default", "stable"], "environment_type": "virtualenv", "show_commit_url": "https://www.mercurial-scm.org/repo/hg/rev/", "benchmark_dir": "benchmarks", "env_dir": "../.asv/env", "results_dir": "../.asv/results", "html_dir": "../.asv/html" }