Closed sbesson closed 2 years ago
Merging and releasing to assess the impact on the rest of the CI pipeline.
1a549992b223e95d80f368d72e3fb0f6473bc388 pushed (and released) to fix a regression in the bump-version-conda
. I had overlooked the fact that ruamel.yaml
introduced in https://github.com/ome/scc/pull/273 is a complete alternative topyyaml
. There is likely a case for unifying.
Since PyYAML 5.1, calling
yaml.load()
without specifying aLoader
argument is deprecated. With the release of PyYAML 6.0 yesterday, theLoader
is now a mandatory positional argument.This causes
scc
commands loading YAML configurations e.g.merge --repository-config
(see https://merge-ci.openmicroscopy.org/jenkins/job/BIOFORMATS-push/1006/console ) or the newly introducedbump-conda-version
to fail on newly created environments - see also https://github.com/yaml/pyyaml/issues/576This PR adjusts all usages of
yaml.load()
to passLoader=yaml.FullLoader
which is equivalent to the former call. This should make the library compatible with both PyYAML 5.x and PyYAML 6.x. The alternative would be to cap PyYAML to 5.x but this feels like a minimal change to maintain compatibility between both lines. The only open question is around the loader to use. feb2c22 uses theFullLoader
which is identical to the previous call but there might be a case for tightening it toSafeLoader
.To test this PR:
/path/to/venv/bin/pip install scc
- this should installPyYAML 6.0
this should fail with the same error as indicated above
scc
in the same virtual environment/path/to/venv/bin/pip install .
Running the same command as above should now execute the command as expected