IAMconsortium / nomenclature

A package to work with IAMC-style variable templates
https://nomenclature-iamc.readthedocs.io/
Apache License 2.0
19 stars 14 forks source link

New release #210

Closed danielhuppmann closed 1 year ago

danielhuppmann commented 1 year ago

With a new release of pyam v1.7.0 just out including the new require_data() method, it's time to fix the pyam-pin and then create a new release!

One thing to think about before the release: whether to stick with the method name CodeList.invalid_items() (see here) or call that method validate() for consistency?

So DataStructureDefinition.validate() validates against an entire IamDataFrame, and CodeList.validate() validates against a list of items...

What do you think @phackstock?

phackstock commented 1 year ago

I'm all for consistency so CodeList.validate() sounds like a good idea me. I'll rename it accordingly and remove the pyam version pin. Not sure it's really necessary to go for a full new release of nomenclature yet. The process function does not yet take a RequiredDataValidator yet. I can open a PR for that including docs and then we can create a new release.

danielhuppmann commented 1 year ago

Ok, sounds good, thanks!

phackstock commented 1 year ago

Just wanted to create two small PRs one for the pyam version and one for renaming CodeList.invalid_items to CodeList.validate. Turns out the second one won't work since CodeList inherits from pyam.BaseModel and that already defines a validate method. I could use validate_items instead or just keep it as is since we're not going to get it all aligned then. Alternatively we could also rename the validate method in DataStructureDefinition.

danielhuppmann commented 1 year ago

Good point... I guess validate_items() sounds better than invalid_items()... I would not change the DataStructureDefinition any more unless strictly necessary.

phackstock commented 1 year ago

Closing as release v0.8 is now live.