pepkit / peppy

Project metadata manager for PEPs in Python
https://pep.databio.org/peppy
BSD 2-Clause "Simplified" License
37 stars 13 forks source link

Make PEP representations consistent #493

Closed donaldcampbelljr closed 1 month ago

donaldcampbelljr commented 1 month ago

We currently have 3 ways of representing PEPs:

  1. Schema representations -> see: https://schema.databio.org/?namespace=pep&schema=2.1.0
  2. peppy.Project object -> this is a mutable mapping containing _config and samples attributes.
  3. dict via peppy.Project.to_dict() -> this contains all attributes under the original _config key (but not the _config key!) and the samples.

We would like to ensure that number 3 resembles number 2, so that the data structures have both config and samples attributes.

Finally, in this same process we have decided to rename the config key to project.

In summary: