Integrate with citeas
If you're not aware http://citeas.org/ lets you enter some sort of metadata (a DOI, various kinds or other URLs) and it returns the preferred citation method. It supports lots of different standards for specifying preferred citation methods. Using it would avoid needing to add __citation__ attributes to the whole ecosystem.
@ngoldbaum - Thanks for pointing that out, indeed we could use their API (I'm not sure any of us run into that page, so it hasn't come up). Yet, I see value in having the citation information available in the installed package, it seems more convenient than going to 3rd party webpages etc.
Agreed, more suggesting as an (optional) fallback.
or source for inspiration / wholesale copying
Yes, I think having the citation data with the package makes a ton of sense. All CiteAs needs to help is to know where to look, once it find a repository on the web. In the R ecosystem their citation command reads metadata from the DESCRIPTION file. Since it's easy for us to look for the DESCRIPTION file in the repositories, it's easy for us to reuse that infrastructure. With the package.citation approach would we have to install the packages to find the requests?
Oh, I think about these two approaches as being complementary to each other.
makecite assumes that packages that are used in a stack is in fact installed for that given stack. But, it can fall back to a more holistic database or use the CiteAs API if the package is either not installed, or the citation info is not found within the installed version.
I don't know much about CiteAs, so this may be super naive. Either it could also keep a local database that a cron job on travis tries to keep up-to-date (or whenever users use the API).
But if there is no database, then presumably one way with python packages to get the most up-to-date info is to look into the source distro on pypi then as the last resort the github/etc repository.
That makes sense. I'm involved with CiteAs, could you guide me a little more on what "look into the source distro on pypi" looks like? And if we were looking in github, is there a consistent place that one would look to find the citation call? Sorry, I don't know much about the details of python packaging!
Are you coming to the URSSI meeting next months? It would be a great opportunity to work on citation tools, or at least hash out a roadmap of concrete steps needs to be implemented as I may very well say nonsenses above (as hasn't followed what the current guidelines prefer beyond having a CITATION file).
The source distro is basically a tarball, so a CITATION file can be found in it. Check for __citation__ attributes is also possible from the source, but I'm not sure it's the safest option rather than installing the package.