citation-cff-current (TN106)#
Group |
Default severity |
|---|---|
Metadata |
Error |
A technote repository can publish its citation to GitHub through a CITATION.cff file, which Documenteer generates from technote.toml (see Generating a CITATION.cff).
That file is fully managed: documenteer technote sync-cff regenerates it from scratch on every run, deterministically.
This rule regenerates it in memory and compares it with the file on disk, so a technote.toml edit that was never synced is caught before the stale citation is published.
The comparison is the one documenteer technote sync-cff --check runs, so the linter and that check never disagree about whether a file is stale.
A repository with no CITATION.cff is not flagged.
Adopting the file is opt-in per repository: an absent file means the repository has not asked for one, not that it is missing something.
A technote Sphinx cannot read is not flagged either. The citation is titled by the technote’s own top-level heading (see Generating a CITATION.cff), so a document that does not read leaves this rule with nothing to compare titles by; the read failure is reported once, as TN203.
Example of a failing technote#
A title is added to technote.toml, but CITATION.cff still carries the old one:
[technote]
id = "SQR-000"
title = "The LSST DM Technical Note Publishing Platform"
[TN106] CITATION.cff is out of date with technote.toml. Run 'documenteer technote sync-cff' to regenerate it.
How to fix it#
Regenerate the file:
documenteer technote sync-cff
Commit the result alongside the technote.toml change that caused it.
Edit technote.toml, never CITATION.cff — a hand-edit to the generated file is what this rule reports, and it is lost on the next sync.
To catch the two drifting apart before a reviewer does, run documenteer technote sync-cff --check in CI; it fails the build with the command to run, and Rubin’s shared technote workflow runs it for you.
If the repository no longer wants a CITATION.cff at all, delete the file: an absent file passes.
Note
Documenteer generates CITATION.cff from a technote’s own metadata, so a finding can also appear after a Documenteer upgrade that changes what is generated.
Running the command resolves it the same way.
See also#
Generating a CITATION.cff — what is generated, and how each field is read from
technote.toml.TN001 —
technote.tomldoes not conform to the schema, which is how adoithat is not a DOI is reported. Such a file cannot be parsed into metadata at all, so this rule stays silent until it is fixed.TN203 — Sphinx cannot read the technote’s document, which is reported instead of this rule.