galaxyproject / ephemeris

Library for managing Galaxy plugins - tools, index data, and workflows.
https://ephemeris.readthedocs.org/
Other
28 stars 38 forks source link

PyYAML load() function requires Loader argument for new release 6.0 #182

Open loraine-gueguen opened 2 years ago

loraine-gueguen commented 2 years ago

With release 0.8 of ephemeris (used in https://github.com/galaxyproject/ansible-galaxy-tools), we have the following issue:

File \"/tmp/data_manager_tmp/venv/lib/python3.6/site-packages/ephemeris/shed_tools.py\", line 743, in main", "    install_tool_manager = get_install_repository_manager(options)", "  File \"/tmp/data_manager_tmp/venv/lib/python3.6/site-packages/ephemeris/shed_tools.py\", line 492, in get_install_repository_manager", "    repositories = [yaml.load(options.tool_yaml)]", "TypeError: load() missing 1 required positional argument: 'Loader'"]

Probably due to recent changes in the required parameters of the load() function in the release 6.0 of PyYAML: https://github.com/yaml/pyyaml/blob/8cdff2c80573b8be8e8ad28929264a913a63aa33/CHANGES#L17

Needs to update all instances of load() function, replace by the safe_load() function or set a frozen version of Pyyaml (PyYAML==5.4.1) ?