This commit adds an --enforce-refs option that can be passed into whippet deps validate that will cause it to fail if a dependency in whippet.json is missing a "ref" property.
This will facilitate us in enabling automatic plugin updates, as we'll be able to update our shared whippet validation workflow to fail if references are missing, thereby ensuring that all dependencies have a reference and therefore can't be accidentally updated beyond e.g. a major version tag, or a specific pinned version.
Note that like the other checks in whippet deps validate, this does not check whether the reference provided exists and is valid, it just checks one is provided. An implicit check on the validity of the reference itself happens when whippet deps update or whippet deps install is run.
How to test
Run the automated test suite with ./script/test
Use a symlink or alias so you can run /bin/whippet from this repo (e.g. I have whippet-dev aliased to that file)
This commit adds an
--enforce-refs
option that can be passed intowhippet deps validate
that will cause it to fail if a dependency in whippet.json is missing a "ref" property.This will facilitate us in enabling automatic plugin updates, as we'll be able to update our shared whippet validation workflow to fail if references are missing, thereby ensuring that all dependencies have a reference and therefore can't be accidentally updated beyond e.g. a major version tag, or a specific pinned version.
Note that like the other checks in
whippet deps validate
, this does not check whether the reference provided exists and is valid, it just checks one is provided. An implicit check on the validity of the reference itself happens whenwhippet deps update
orwhippet deps install
is run.How to test
./script/test
/bin/whippet
from this repo (e.g. I havewhippet-dev
aliased to that file)whippet-dev deps validate -r
on that repo. It should failwhippet.json
with:whippet deps update
, then runwhippet-dev deps validate -r
again. Validation should now pass.