I will add that to the metacello chapter!
Le 19/12/14 19:00, Dale Henrichs a écrit :
With classic Metacello (using the `(ConfigurationOfxxx project
version: 'xxx') load` pattern) you can only downgrade via an explicit
load of a particular version of the project. When loading projects
indirectly via a project reference from another project Metacello is
biased towards upgrade.
With the Metacello Scripting API[1], you may include an
#onDowngradeUseIncoming: clause to selectively permit downgrades:
Metacello new
configuration: 'DummyParser';
version: '1.0';
repository: '???';
onDowngradeUseIncoming: #('PetitParser');
load.
For additional downgrade options see[2].
Since you are interested in using a specific version of a project you
may also be interested in locking the project[3][4]. With a `lock`
Metacello will not upgrade or downgrade the project but always `honor`
the lock unless an #onLock: clause is used ...
Note that for `locking` to work, you must use the Metacello Scripting
API to do all of your project loads ...
Dale
[1]
https://github.com/dalehenrich/metacello-work/blob/master/docs/MetacelloUserGuide.md#metacello-user-guide
[2]
https://github.com/dalehenrich/metacello-work/blob/master/docs/MetacelloUserGuide.md#downgrade
[3]
https://github.com/dalehenrich/metacello-work/blob/master/docs/MetacelloUserGuide.md#locking
[4]
https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-command-reference