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) #258

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

Conversation

kevinmatthes
Copy link

Dear maintainers,

Thank you for your software! I encountered bump2version first a few days ago and directly tested it in some of my repositories. Since I frequently set up CFF for other repositories, such as yours today, I offer now not only a valid initial CFF setup but combine it with a basic bump2version configuration, if applicable for the target repositories. Projects which do not have a valid CFF setup usually also lack a bump2version configuration.

CFF is a standard for citing software. With a valid CITATION.cff, any repository can be cited in papers and theses just like a book or an article. GitHub renders a "Cite this repository" blob from CITATION.cff configuration files on the project's landing page. One can copy either an APA citation or a BibTeX entry and paste it as a reference. As an example, here is the APA citation of the CFF project:

Druskat, S., Spaaks, J. H., Chue Hong, N., Haines, R., Baker, J., Bliven, S., Willighagen, E., Pérez-Suárez, D., & Konovalov, A. (2021). Citation File Format (Version 1.2.0) [Computer software]. https://doi.org/10.5281/zenodo.5171937

Some projects, just like obviously theses as well as some papers (or rather the conferences for which they are submitted), require not only the citation of the consulted literature, one sometimes also needs to cite the used software utilities. With CFF, maintainers can set up their preferred citation information for their projects. It also enables the maintenance of a list of contributors like many open source projects provide it.

The suggested initial configuration is derived from the package description of the Python 3 package management system. You are free to expand and adjust the information as you desire. I also added an automatic validation, cffconvert.yml, which ensures you to always have a valid CITATION.cff. I added the CITATION.cff to the existing bump2version configuration. Please note that also a release date is specified in the CITATION.cff.

My major use case for the submitted CFF setup is to cite bump2version appropriately when setting it up -- together with CFF -- for other repositories. It hence helps to ensure and keep a uniform representation of this project.

Regarding the contribution guidelines, the CITATION.cff comes with its own validator which fulfills the requirement of a test case. The validator considers the CITATION.cff valid. The other configured GitHub Actions all succeeded, 16 GitHub Action-based tests were ran. This fulfills, at least in my opinion, the requirement of ensuring the tests to still succeed after making the submitted changes. No Python code was edited, only the CITATION.cff as well as its validation were created. The sole file truly edited is the bump2version configuration file which now also tracks the CITATION.cff. Bumping its version succeeded in a local test.

Please consider to accept this patch in order to ensure bump2version being cited uniformly and in the way you would like to have it cited.

* Create CITATION.cff

* Add CITATION.cff to .bumpversion.cfg

* Set version in CITATION.cff to development version

* Create cffconvert.yml
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.

None yet

1 participant