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

[Documentation] Create CITATION.cff #4752

Merged
merged 3 commits into from Mar 9, 2023
Merged

Conversation

kevinmatthes
Copy link
Contributor

@kevinmatthes kevinmatthes commented Mar 9, 2023

This PR introduces a CITATION.cff (#4750 ), valid according to CFF v1.2.0.

@kevinmatthes
Copy link
Contributor Author

This PR introduces a CITATION.cff, valid according to CFF v1.2.0. There is plenty of tooling related to CFF, including a GitHub Action for validation as well as one for automatically updating the release date. These two, together with a version incrementing solution, make the CITATION.cff self-maintaining. Would some of the extensions to CFF be interesting?

@epage
Copy link
Member

epage commented Mar 9, 2023

There is plenty of tooling related to CFF, including a GitHub Action for validation

It'd be worth trying. My main concern is performance. I assume it shouldn't be too slow

one for automatically updating the release date. These two, together with a version incrementing solution, make the CITATION.cff self-maintaining.

We do this kind of stuff with cargo-release. Could you update the config so that it updates the date and version? You can cargo install cargo-release and then run cargo release replace -v to see what the config will change.

@kevinmatthes
Copy link
Contributor Author

The validation Action usually takes about 10 seconds to succeed, when being a workflow on its own, the total duration is usually about 30 seconds. Giving it a workflow on its own is useful to configure the trigger condition to be changes to CITATION.cff.

I will try introduce the CITATION.cff to cargo-release.

@epage
Copy link
Member

epage commented Mar 9, 2023

Giving it a workflow on its own is useful to configure the trigger condition to be changes to CITATION.cff.

The downside to specialized triggers is you can't block merge on them. 10-30 seconds is fine to add to CI and always run. If its added to ci.yml, then the top-level CI job can depend on it

@kevinmatthes
Copy link
Contributor Author

Okay, I will add it to the CI.

CFF is a technology to make software citable.  Therefore, a file named
CITATION.cff needs to be stored in the repository's root.  GitHub will
then render a "Cite this repository" blob from it on the repository's
landing page.
The regular expression for the release date update is taken from the
GitHub Action `kevinmatthes/cff-release-today@v0.5.2` which uses this
one, too.  License issues should not arise as I am the author of that
GitHub Action.

The regular expression for the version update is designed to also work
with version parts consisting of multiple digits.  It was tested
successfully with the example versions `1.2.3` and `1.2.30` in
CITATION.cff.
The CITATION.cff is validated with the official GitHub Action.
@kevinmatthes
Copy link
Contributor Author

All requested changes are implemented.

@epage
Copy link
Member

epage commented Mar 9, 2023

Thanks!

@epage epage merged commit c7e929e into clap-rs:master Mar 9, 2023
22 checks passed
@kevinmatthes kevinmatthes deleted the feature/cff branch March 9, 2023 16:13
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

2 participants