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

[Enhancement] Create CITATION.cff and Validation (#1) #102

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kevinmatthes
Copy link

Dear maintainers,

First of all, thank you for your editor!

I would like to contribute a set of configuration files with this Pull Request in order to make citing ne easier. GitHub is able to render a "Cite this repository" blob on a project's landing page. In order to offer citation entries for multiple conventions -- APA and BibTeX --, GitHub applies the CFF standard which is developed for software. One can configure a list of references (useful for further readings and used resources) as well as a publication to redirect the citation to, such as an associated paper, thesis or book. If no redirection is configured in preferred-citation, the default values will be used to render the citation information. Furthermore, a list of all contributors can be maintained in the CFF configuration file.

CFF also comes with a set of utility software, such as various validators. This Pull Request adds one of them to this repository. Whenever the CITATION.cff is updated, the validator will ensure that it is still valid without any further effort. The automatic validator is known to succeed in about 10 seconds, the whole validation usually takes 30 seconds.

I configured the CITATION.cff with initial information derived from this repository. If I shall change something, please tell me which information need to be added and / or adjusted. The validator comes with a very restrictive configuration. Just as for the CITATION.cff, I can adjust the settings, if required.

* Create CITATION.cff

* Create cffconvert.yml
@vigna
Copy link
Owner

vigna commented Oct 6, 2022

This is another thing to maintain and update... what's the advantage?

@kevinmatthes
Copy link
Author

The advantages are:

  • The software is now citable in papers.
  • Utilised resources (other projects, books, papers, ...) are summarised centrally and transparently.
  • There is a central list of contributors. Many open source projects maintain such lists.
  • CFF can be converted to various formats. Technically, also deriving package descriptions from it automatically is possible. There is a table with available tools in the main repository.

The maintenance effort is raised as follows:

  • update of line 6 of CITATION.cff (release date)
  • update of line 7 of CITATION.cff (version)
  • optional update of line 17 of cffconvert.yml (version of the called GitHub Action)
  • optional update of line 22 of cffconvert.yml (version of the called GitHub Action)

I can also change the GitHub Actions to update automatically, this would avoid further maintenance. But in fact, they can be kept as they are.

The automatic version increment can be performed by a Python 3 tool named bump2version. I can add a self-maintaining configuration file to the repository and bump2version will increment your version numbers with a single command. It can commit them, as well, at option.

@kevinmatthes
Copy link
Author

I frequently set up CFF for projects -- those projects which I am about to cite in the near future. I am working on a paper, at the moment, for which I might need to also cite the used software utilities. Hence, I would like to make sure that you agree with the way I would cite ne then by submitting a valid initial CFF setup.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants