common-workflow-lab / python-cwlgen

Generation of CWL programmatically. Available types: CommandLineTool and DockerRequirement
https://github.com/common-workflow-language/cwl-utils
MIT License
29 stars 13 forks source link

Ruamel update #19

Closed joezuntz closed 5 years ago

joezuntz commented 5 years ago

ruamel.yaml, which is used for the yaml parsing in cwlgen, will not install under python 3.7 because of an error in its setup.py.

This PR moves to the newest version of ruamel.yaml, (0.15.87) which does install okay. The changes made to ruamel in that time do not seem to affect cwlgen, since they only modify cases where a YAML object is created, which is not done here.

The tests all still pass on my machine.

Cheers, Joe

codecov[bot] commented 5 years ago

Codecov Report

Merging #19 into master will not change coverage. The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master      #19   +/-   ##
=======================================
  Coverage   76.28%   76.28%           
=======================================
  Files           6        6           
  Lines         544      544           
=======================================
  Hits          415      415           
  Misses        129      129

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 39a8e51...8753d19. Read the comment docs.

illusional commented 5 years ago

I've had similar problems when playing with my fork and found that CWLTool uses ruamel.yaml >= 0.12.4, <= 0.15.77, it would be cool to sync these up or at least expand the range given they should both generate compatible yaml.

In a previous discussion about CWLTool updating specifically ruamel.yaml, they note the ruamel team recommends pinning to <0.15 for API changes to ruamel, but that CWLTool branch has been merged in.

That being said, the ruamel documentation still recommends:

This is the new (0.15+) interface for ruamel.yaml, it is still in the process of being fleshed out. Please pin your dependency to ruamel.yaml<0.15 for production software.