Add referred parts' hash strings in __buildout_signature__, that invokes...
Add referred parts' hash strings in __buildout_signature__, that invokes rebuild of a part when one of its (recursive) dependencies are modified. Also remove duplicates and sort entries in __buildout_signature__.
... | @@ -2544,7 +2544,7 @@ were created. | ... | @@ -2544,7 +2544,7 @@ were created. |
The ``.installed.cfg`` is only updated for the recipes that ran:: | The ``.installed.cfg`` is only updated for the recipes that ran:: | ||
>>> cat(sample_buildout, '.installed.cfg') | >>> cat(sample_buildout, '.installed.cfg') | ||
... # doctest: +NORMALIZE_WHITESPACE | ... # doctest: +NORMALIZE_WHITESPACE +ELLIPSIS | ||
[buildout] | [buildout] | ||
installed_develop_eggs = /sample-buildout/develop-eggs/recipes.egg-link | installed_develop_eggs = /sample-buildout/develop-eggs/recipes.egg-link | ||
parts = debug d1 d2 d3 d4 | parts = debug d1 d2 d3 d4 | ||
... | @@ -2574,7 +2574,7 @@ The ``.installed.cfg`` is only updated for the recipes that ran:: | ... | @@ -2574,7 +2574,7 @@ The ``.installed.cfg`` is only updated for the recipes that ran:: |
<BLANKLINE> | <BLANKLINE> | ||
[d4] | [d4] | ||
__buildout_installed__ = /sample-buildout/data2-extra | __buildout_installed__ = /sample-buildout/data2-extra | ||
__buildout_signature__ = recipes-PiIFiO8ny5yNZ1S3JfT0xg== | __buildout_signature__ = recipes-PiIFiO8ny5yNZ1S3JfT0xg== d2:... | ||
path = /sample-buildout/data2-extra | path = /sample-buildout/data2-extra | ||
recipe = recipes:mkdir | recipe = recipes:mkdir | ||
... | @@ -2587,6 +2587,7 @@ Now, if we run the buildout without the install command:: | ... | @@ -2587,6 +2587,7 @@ Now, if we run the buildout without the install command:: |
>>> print_(system(buildout), end='') | >>> print_(system(buildout), end='') | ||
Develop: '/sample-buildout/recipes' | Develop: '/sample-buildout/recipes' | ||
Uninstalling d4. | |||
Uninstalling d2. | Uninstalling d2. | ||
Uninstalling d1. | Uninstalling d1. | ||
Uninstalling debug. | Uninstalling debug. | ||
... | @@ -2596,7 +2597,8 @@ Now, if we run the buildout without the install command:: | ... | @@ -2596,7 +2597,8 @@ Now, if we run the buildout without the install command:: |
Installing d2. | Installing d2. | ||
d2: Creating directory data2 | d2: Creating directory data2 | ||
Updating d3. | Updating d3. | ||
Updating d4. | Installing d4. | ||
d4: Creating directory data2-extra | |||
|
|||
We see the output of the debug recipe, and that ``data2`` was created. We | We see the output of the debug recipe, and that ``data2`` was created. We | ||
also see that ``d1`` and ``d2`` have gone away:: | also see that ``d1`` and ``d2`` have gone away:: | ||
... | ... |
... | @@ -97,14 +97,14 @@ of extra requirements to be included in the working set. | ... | @@ -97,14 +97,14 @@ of extra requirements to be included in the working set. |
We can see that the options were augmented with additional data | We can see that the options were augmented with additional data | ||
computed by the egg recipe by looking at .installed.cfg: | computed by the egg recipe by looking at .installed.cfg: | ||
>>> cat(sample_buildout, '.installed.cfg') | >>> cat(sample_buildout, '.installed.cfg') # doctest: +ELLIPSIS | ||
[buildout] | [buildout] | ||
installed_develop_eggs = /sample-buildout/develop-eggs/sample.egg-link | installed_develop_eggs = /sample-buildout/develop-eggs/sample.egg-link | ||
parts = sample-part | parts = sample-part | ||
<BLANKLINE> | <BLANKLINE> | ||
[sample-part] | [sample-part] | ||
__buildout_installed__ = | __buildout_installed__ = | ||
__buildout_signature__ = ... | __buildout_signature__ = sample-... setuptools-...egg zc.buildout-... zc.recipe.egg-... | ||
|
|||
_b = /sample-buildout/bin | _b = /sample-buildout/bin | ||
_d = /sample-buildout/develop-eggs | _d = /sample-buildout/develop-eggs | ||
_e = /sample-buildout/eggs | _e = /sample-buildout/eggs | ||
... | ... |