Many Julia packages are starting to use a
CITATION.bib file containing bibTeX citations for the package, as suggested on the Julia Research page.
I think it is a mistake to use a Julia-specific format here — providing code metadata is not a Julia-specific problem, and there is a huge community interested in promoting better metadata formats. BibTeX is very convenient for those of us in mathematical sciences where LaTeX is popular, but it is pretty inconvenient outside of a TeX environment (e.g. its use of TeX-specific escapes for diacritical marks rather than Unicode, among other quirks).
It seems like there are two major (i.e. reasonably popular) proposals in this area:
- Citation File Format (CFF) — a YAML format for encoding citations.
- CodeMeta — a JSON format for encoding various metadata, including citations (usually a DOI URL, but alternatively a CreativeWork schema) but also other metadata like license and programming language.
Of the two formats, my sense is that many people are coalescing around CodeMeta. I see a lot of tools popping up around codemeta for (e.g.) R and Python, increasing adoption of people putting a
codemeta.json file in the root of their github repositories, working groups like RDA and Force11 focusing on CodeMeta, etcetera. On the other hand, CFF is closer to BibTeX in that it is specifically intended to represent citations, and there are tools to convert CFF to BibTeX.
I’m honestly not thrilled about either of them, but it seems crazy to have a Julia-specific format here. There are also plenty of tools to convert a DOI into BibTeX, so a CodeMeta file with a DOI URL for the
citation field would be pretty easy to automatically convert to BibTeX, and I’m hopeful that we’d have a Julia package-to-BibTeX tool relatively quickly.