eth-cscs / DLA-Future

DLA-Future
https://eth-cscs.github.io/DLA-Future/master/
BSD 3-Clause "New" or "Revised" License
64 stars 14 forks source link

Add zenodo DOI to README and `CITATION.cff` #1082

Closed msimberg closed 8 months ago

msimberg commented 9 months ago

This only adds a badge that points to the "concept" DOI, but we could think about adding a "Citing" section and possibly links to specific versions.

See https://zenodo.org/help/versioning for a bit of background on how the zenodo's DOIs work. https://zenodo.org/records/10518289 is the DOI specific to 0.4.0. https://zenodo.org/records/10518288 is a "concept" DOI, meaning it represents all versions, and will always resolve to the latest version if you try to actually view it. Note that it's possible to edit the metadata that zenodo scrapes from github after the release is created, e.g. usernames.

Preview of the README is here: https://github.com/msimberg/DLA-Future/blob/649b136cb31f2c7ff3e6e8f881a6a50d28f55938/README.md.

rasolca commented 9 months ago

Note that it's possible to edit the metadata that zenodo scrapes from github after the release is created, e.g. usernames.

It would be nice to fix the author names and the affiliations if possible.

RMeli commented 9 months ago

Big fan of Zenodo!

Note that it's possible to edit the metadata that zenodo scrapes from github after the release is created, e.g. usernames.

Maybe out of scope for this PR, but it's also possible to add a .zeondo.json file in the repo with the metadata we would like to use (names, affiliation, ORCIDs, ...).

but we could think about adding a "Citing" section and possibly links to specific versions

GitHub also supports citation.cff files now, but I'm not sure if they support multiple versions.

RMeli commented 9 months ago

Apparently, citation.cff files is now also supported by Zenodo too:

When you have a CITATION.cff file in your GitHub repository, make a release and publish it on Zenodo via the Zenodo-GitHub integration, Zenodo will use the citation information you’ve provided to populate the publication entry! This makes it easier for software developers and maintainers to publish their software with complete and correct metadata.

From Zenodo FAQ:

When we find a CITATION.cff file in your GitHub repository's root folder, we make a best-effort attempt at parsing Zenodo-compatible metadata from it.

For backwards-compatibility, if you have a .zenodo.json file in the repository, only the .zenodo.json's metadata will be taken into account. Of course, any existing valid CITATION.cff file will still be used to display the citation box on the GitHub repository page, but will not affect in any way the metadata we extract for your published release Zenodo record.

msimberg commented 9 months ago

@RMeli thanks for the pointers! I think I can definitely add the .zenodo.json file (in this PR as well). Since it sounds like you may have more experience with this (or at least have read more about it), do you know if there's a reason to prefer .zenodo.json or CITATION.cff? It seems like zenodo will only use the former if both are available.

RMeli commented 9 months ago

@msimberg I only ever used .zenodo.json but mainly because I did not know about citation.cff, and it was not supported. Now that is supported, I suspect citation.cff would be the best way forward, since it is also compatibile with GitHub and seems a more widely accepted format (supported by Zotero too). There is also a preferred-citation: field that can eventually be added to point to a reference paper (instead of just the GitHub repo).

RMeli commented 9 months ago

It seems like zenodo will only use the former if both are available.

From the FAQ I suspect the fact that .zenodo.json has precedence is mainly for backward compatibility. I think it has a few more fields, for Zenodo-specific meta data.

msimberg commented 9 months ago

I've generated an initial CITATION.cff file. I've included all the authors who were on the autogenerated list of authors (which I think is simply everyone who has committed something on GitHub). They seem to be sorted (roughly) in order of number of commits, or something in that direction. I would at least propose that we move @rasolca up to first place. I have no opinion on the order of other authors (can also be alphabetical).

I've added orcids for those I could find one for. If there's none, it's either because I didn't find you on orcid, or because there were multiple people with the same name. If you'd like to have your id included please comment.

It's also possible to add affiliation and email for each author. I left them out initially since they have a tendency to become out of date (and orcid is more likely to be up to date), but will happily include them as well for whoever wants it there.

msimberg commented 9 months ago

Just in case you want to see the GitHub integration into action, you can go to https://github.com/msimberg/DLA-Future/tree/zenodo and see the newly added "Cite this repository" dropdown in the "About" box on the right. This gives you directly a formatted citation or a link to the CITATION.cff file.

msimberg commented 8 months ago

Unless there are further comments this is now ready to be merged.