Skip to content
Snippets Groups Projects
Commit eac84af0 authored by Pierre-Yves David's avatar Pierre-Yves David :octopus:
Browse files

bundle-spec: properly parse boolean configuration as boolean

Before this changesets "v2;revbranchcache=no" would actually request the
addition for a revbranchcache part as the non-empty string `"0"` is `True`
parent 7752cf4f
No related branches found
No related tags found
2 merge requests!845merge stable into default,!833various bundle-spec fixes
...@@ -179,6 +179,9 @@ ...@@ -179,6 +179,9 @@
b"obsolescence": param_bool, b"obsolescence": param_bool,
b"obsolescence-mandatory": param_bool, b"obsolescence-mandatory": param_bool,
b"phases": param_bool, b"phases": param_bool,
b"changegroup": param_bool,
b"tagsfnodescache": param_bool,
b"revbranchcache": param_bool,
} }
......
...@@ -620,3 +620,93 @@ ...@@ -620,3 +620,93 @@
b9f5f740a8cd76700020e3903ee55ecff78bd3e5 b9f5f740a8cd76700020e3903ee55ecff78bd3e5
$ hg debugbundle ./v2-cg-03.hg --spec $ hg debugbundle ./v2-cg-03.hg --spec
bzip2-v2;cg.version=03 bzip2-v2;cg.version=03
tests controlling bundle contents
=================================
$ hg debugupdatecache -R t1
default content
---------------
$ hg -R t1 bundle --all --quiet --type 'v2' ./v2.hg
$ hg debugbundle ./v2.hg --spec
bzip2-v2
$ hg debugbundle ./v2.hg --quiet
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 7, version: 02} (mandatory: True)
hgtagsfnodes -- {} (mandatory: False)
cache:rev-branch-cache -- {} (mandatory: False)
$ hg -R t1 bundle --all --quiet --type 'v3' ./v3.hg
$ hg debugbundle ./v3.hg --spec
bzip2-v2;cg.version=03
$ hg debugbundle ./v3.hg --quiet
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 7, targetphase: 2, version: 03} (mandatory: True)
hgtagsfnodes -- {} (mandatory: False)
cache:rev-branch-cache -- {} (mandatory: False)
phase-heads -- {} (mandatory: True)
adding extra parts
------------------
We should have a "phase-heads" part here that we did not had in the default content
$ hg -R t1 bundle --all --quiet --type 'v2;phases=1' ./v2-phases.hg
$ hg debugbundle ./v2-phases.hg --spec
bzip2-v2
$ hg debugbundle ./v2-phases.hg --quiet
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 7, targetphase: 2, version: 02} (mandatory: True)
hgtagsfnodes -- {} (mandatory: False)
cache:rev-branch-cache -- {} (mandatory: False)
phase-heads -- {} (mandatory: True)
skipping default inclusion
--------------------------
$ hg -R t1 bundle --all --quiet --type 'v2;tagsfnodescache=false' ./v2-no-tfc.hg
$ hg debugbundle ./v2-no-tfc.hg --spec
bzip2-v2
$ hg debugbundle ./v2-no-tfc.hg --quiet
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 7, version: 02} (mandatory: True)
cache:rev-branch-cache -- {} (mandatory: False)
$ hg -R t1 bundle --all --quiet --type 'v3;phases=0' ./v3-no-phases.hg
$ hg debugbundle ./v3-no-phases.hg --spec
bzip2-v2;cg.version=03
$ hg debugbundle ./v3-no-phases.hg --quiet
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 7, version: 03} (mandatory: True)
hgtagsfnodes -- {} (mandatory: False)
cache:rev-branch-cache -- {} (mandatory: False)
$ hg -R t1 bundle --all --quiet --type 'v3;phases=no;tagsfnodescache=0' ./v3-multi-no.hg
$ hg debugbundle ./v3-multi-no.hg --spec
bzip2-v2;cg.version=03
$ hg debugbundle ./v3-multi-no.hg --quiet
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 7, version: 03} (mandatory: True)
cache:rev-branch-cache -- {} (mandatory: False)
skipping changegroup
--------------------
$ hg -R t1 bundle --all --quiet --type 'v2;changegroup=no' ./v2-no-cg.hg
$ hg debugbundle ./v2-no-cg.hg --spec
bzip2-v2;changegroup=no
$ hg debugbundle ./v2-no-cg.hg --quiet
Stream params: {Compression: BZ}
hgtagsfnodes -- {} (mandatory: False)
cache:rev-branch-cache -- {} (mandatory: False)
$ hg -R t1 bundle --all --quiet --type 'v3;changegroup=0' ./v3-no-cg.hg
$ hg debugbundle ./v3-no-cg.hg --spec
bzip2-v2;changegroup=no
$ hg debugbundle ./v3-no-cg.hg --quiet
Stream params: {Compression: BZ}
hgtagsfnodes -- {} (mandatory: False)
cache:rev-branch-cache -- {} (mandatory: False)
phase-heads -- {} (mandatory: True)
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