pepkit / pipestat

Pipeline results reporting package
https://pep.databio.org/pipestat/
BSD 2-Clause "Simplified" License
4 stars 2 forks source link

Both PyYAML and oyaml in requirements #144

Closed vreuter closed 5 months ago

vreuter commented 8 months ago

oyaml is billed as a drop-in replacement for PyYAML, but both are listed in the requirements. Would just one suffice? If both are needed, could a note be added to the requirements declaration about why that is?

donaldcampbelljr commented 8 months ago

Excellent. Thanks for the catch. You are correct; it was redundant. I've made the changes to Dev.

nsheff commented 8 months ago

is oyaml still needed or does pyyaml preserve ordering now that dicts are ordered by default?

See here:

https://stackoverflow.com/questions/13297744/pyyaml-control-ordering-of-items-called-by-yaml-load

But OrderedDict should no longer be necessary.

nsheff commented 8 months ago

In Python 3.7, the items-ordered feature of dict objects was declared an official part of the Python language specification. So, from that point on, developers could rely on dict when they needed a dictionary that keeps its items ordered.

https://realpython.com/python-ordereddict/

As long as we're not supporting python 3.6...

nsheff commented 6 months ago

It looks like we're still relying on oyaml, so this is not solved.

donaldcampbelljr commented 6 months ago

Ok, this should now be completed. I removed oyaml in favor of pyyaml per the above reading.