-
Notifications
You must be signed in to change notification settings - Fork 3
Description
It is likely that your CITATION.cff currently doesn't pass validation. The error messages you get from the cffconvert GitHub Action are unfortunately a bit cryptic, but doing the following helps:
- Check if the
given-nameandfamily-namekeys need updating. If your family name has a name particle likevonorvanorde, use thename-particlekey; if your name has a suffix likeSrorIV, usename-suffix. For details, refer to the schema description: https://github.com/citation-file-format/citation-file-format - Update the value of the
orcidkey. If you do not have an orcid yet, you can get one here https://orcid.org/. - Add more authors if needed
- Update
date-releasedusing the YYYY-MM-DD format. - Update the
doikey with the conceptDOI for your repository (see https://help.zenodo.org for more information on what a conceptDOI is). If your project doesn't have a DOI yet, you can use the string10.0000/FIXMEto pass validation. - Verify that the
keywordsarray accurately describes your project.
Once you do all the steps above, the cffconvert workflow will tell you what content it expected to see in .zenodo.json. Copy-paste from the GitHub Action log into a new file .zenodo.json. Afterwards, the cffconvert GitHub Action should be green.
To help you keep the citation metadata up to date and synchronized, the cffconvert GitHub Action checks the following 6 aspects:
-
Whether your repository includes a
CITATION.cfffile.By including this file, authors of the software can receive credit for the work they put in.
-
Whether your
CITATION.cffis valid YAML.Visit http://www.yamllint.com/ to see if the contents of your CITATION.cff are valid YAML.
-
Whether your
CITATION.cffadheres to the schema (as listed in theCITATION.cfffile itself under keycff-version).The Citation File Format schema can be found here, along with an explanation of all the keys. You're advised to use the latest available schema version.
-
Whether your repository includes a
.zenodo.jsonfile.With this file, you can control what metadata should be associated with any future releases of your software on Zenodo: things like the author names, along with their affiliations and their ORCIDs, the license under which the software has been released, as well as the name of your software and a short description. If your repository doesn't have a .zenodo.json file, Zenodo will take a somewhat crude guess to assign these metadata.
The
cffconvertGitHub action will tell you what it expects to find in.zenodo.json, just copy and paste it to a new file named.zenodo.json. The suggested text ignores CITATION.cff'sversion,commit, anddate-released.cffconvertconsiders these keyssuspectin the sense that they are often out of date, and there is little purpose to telling Zenodo about these properties: Zenodo already knows. -
Whether
.zenodo.jsonis valid JSON.Currently unimplemented, but you can check for yourself on https://jsonlint.com/.
-
Whether
CITATION.cffand.zenodo.jsoncontain equivalent data.This final check verifies that the two files are in sync. The check ignores CITATION.cff's
version,commit, anddate-released.