-
Notifications
You must be signed in to change notification settings - Fork 17
Description
In our software (https://github.com/dandi/dandi-schema/) we used a particular "version" of the https://github.com/datacite/schema/blob/master/source/json/kernel-4.3/datacite_4.3_schema.json file and later discovered that no further changes to that file are provided and as https://github.com/datacite/schema/tree/master/source/json#readme announced (BTW - thanks for adding that information) -- the resultant newer files moved to another 3rd party repository https://github.com/inveniosoftware/datacite/tree/master/datacite/schemas .
Unfortunately neither that README nor the commits which added that file describe the reasoning. And it is not obvious in the target repo how and when those json serializations are updated. And it seems that is not automated either since e.g. there is only 1 commit for https://github.com/inveniosoftware/datacite/commits/master/datacite/schemas/datacite-v4.5.json whenever there were a number of 4.5 patch releases:
❯ git tag | grep '^4.5'
4.5.0
4.5.1
4.5.2
4.5.3I would appreciate if json serializations of the schema were
- generated along with the new schema releases in this repository
- ideally, automatically as a part of the release process
- distributed from under https://github.com/datacite/ organization, and I do not see why it cannot just be the https://github.com/datacite/schema/tree/master/source/json which was already used before.
An example, for possibly ideas on how to orchestrate, of similar automation is e.g. our dandischema:
- https://github.com/dandi/dandi-schema/ is the "source" of schema (only current version, released or not) as coded in pydantic
- in https://github.com/dandi/dandi-schema/blob/master/.github/workflows/release.yml#L76 we are upon release making a copy of the schema and jsonschema export added to corresponding new versioned folder of https://github.com/dandi/schema/tree/master/releases which provides a collection of all releases
So I think it would be great if (and let me know if you need help in preparing such one) a CI workflow would have automatically exported new (updated MAJOR.MINOR) versions of jsonschema and have canonical single location under /datacite/ organization.