Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement versioning of DCAS #5

Open
korenmiklos opened this issue Dec 5, 2022 · 6 comments
Open

Implement versioning of DCAS #5

korenmiklos opened this issue Dec 5, 2022 · 6 comments
Labels
documentation Improvements or additions to documentation website

Comments

@korenmiklos
Copy link
Contributor

No description provided.

@larsvilhuber larsvilhuber changed the title Implement versioning for journals Implement versioning of DCAS Dec 6, 2022
@larsvilhuber
Copy link
Contributor

This is not just for journals. It's just good practice ;)

@larsvilhuber
Copy link
Contributor

Suggestion:

  • adopt Semantic versioning https://semver.org/
  • each major version is its own "category", which generates a "subdirectory", e.g, datacodestandard.org/v1
  • creating a new version means creating a new category, and copying all files there.
  • minor versions should be hard-coded (a decision made), and configured in _data/v1.yml or something like that.
  • patches are automatically generated by the converting the date into a string

@larsvilhuber
Copy link
Contributor

Note: we need to separately define what's get versioned. There will be additional endorsers. The endorsement page should likely be included in the archived version, get a patch number - but should it also be archived on Zenodo with a new DOI?

One thought is that endorsements are collected on a quarterly basis, and then archived, but a V1.0 is referenced on Zenodo by the same "master" DOI. Minor versions create a new "master" DOI at Zenodo.

Thoughts?

@korenmiklos
Copy link
Contributor Author

I agree on SemVer. Decide

  1. what gets versioned
  2. what are major, minor, patch revisions
  3. what user see.

Implementation can follow. My suggestions:

  1. Only text of standard: rules.csv. Not journal list, not explainers. So that versions change infrequently and many journals can join 1.0.
  2. Major revision: if you comply with 1.x, you may not comply with 2.x. Basically, where severals journals could say "I did not sign up for this." Minor revision: Changes in rule numbering, clarification etc, but without breaking compliance. Like changing where we talk about omissions or adding a rule that only clarifies existing criteria. 1.0 -> 1.1 may create some small confusion for authors checking the site ("wasn't this rule 16?") but nothing that endangers compliance. Patch: language edits, fixing typos, but holding the structure of rules.csv constant.
  3. The URL https://datacodestandard.org resolves to the lates version. https://datacodestandard.org/v1 or https://datacodestandard.org/v1.0 point to specific versions. Only the most recent patches are not displayed, with maybe a list of version history. Zenodo is updated with minor revisions, not with patches.

@larsvilhuber
Copy link
Contributor

larsvilhuber commented Dec 15, 2022 via email

@korenmiklos
Copy link
Contributor Author

I am happy to work on the plumbing!

@larsvilhuber larsvilhuber added this to the Updates V1.0.1 milestone Jul 8, 2024
@larsvilhuber larsvilhuber added documentation Improvements or additions to documentation website labels Jul 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation website
Projects
None yet
Development

No branches or pull requests

2 participants