pytest-dev / pytest

The pytest framework makes it easy to write small tests, yet scales to support complex functional testing
https://pytest.org
MIT License
12.11k stars 2.68k forks source link

provide information on citing pytest formally #3402

Closed bsipocz closed 6 years ago

bsipocz commented 6 years ago

I wonder whether there is a way to formally cite pytest, is there a preferred way? Is there a DOI for it somewhere?

pytestbot commented 6 years ago

GitMate.io thinks possibly related issues are https://github.com/pytest-dev/pytest/issues/2838 (Contributing to pytest-dev), https://github.com/pytest-dev/pytest/issues/2008 (docs error pytest.main), https://github.com/pytest-dev/pytest/issues/1602 (pytest.print()), https://github.com/pytest-dev/pytest/issues/1411 (Pytest stops), and https://github.com/pytest-dev/pytest/issues/2258 (Unicode issues with pytest.fail).

RonnyPfannschmidt commented 6 years ago

i would guess if there is a general way to cite opensource projects thats the way to use

obestwalter commented 6 years ago

hypothesis has a CITATION file in the root of their project for that purpose:

https://github.com/HypothesisWorks/hypothesis/blob/387f307b96bdf56a2aaca89260ec74e04108dc36/CITATION#L1-L19

RonnyPfannschmidt commented 6 years ago

@obestwalter good find we should adopt that for pytest as well

orbingol commented 6 years ago

I think you might want to check https://zenodo.org/

caramelomartins commented 6 years ago

Hey,

If help is still wanted on this I can write something up.

Regards, Hugo

nicoddemus commented 6 years ago

Hi @caramelomartins, please go ahead. 👍

caramelomartins commented 6 years ago

Okay, I'll do some research on the above mentioned options.

caramelomartins commented 6 years ago

Using Zenodo or FigShare seems to be unnecessarily complex, in the sense that accounts will need to be managed and someone will have to own them. At the same time, emulating what hypothesis does seems to be fairly accepted throughout the academic community (it seems to also be the standard R way of doing it) [1] [2] [3].

So I'll take the initial suggestion by @obestwalter and create a CITATION for this purpose on the root of the project.

[1] https://www.software.ac.uk/blog/2016-10-06-encouraging-citation-software-introducing-citation-files [2] https://academia.stackexchange.com/questions/9617/how-can-i-cite-software-documentations [3] http://astrostatistics.psu.edu/su07/R/html/utils/html/citation.html

bsipocz commented 6 years ago

@caramelomartins - Yes, but what would you put in a CITATION? Isn't it both really, given a DOI is a more long term thing than the link to the docs/repo.

caramelomartins commented 6 years ago

@bsipocz:

What would you put in a CITATION?

I would use the suggested format in which you create both a formal text-based citation you would like people to use as well as a Bibtex-based entry, so it can be used in reference managers with LaTeX. I would use the original author's name since, even in regards to copyright, his name is the only name that appears in full.

Isn't it both really, given a DOI is a more long term thing than the link to the docs/repo.

While I agree that a DOI is a long term solution, the fact is it is also more complex. You can get a free DOI (by using either Zenodo or FigShare, for example) but AFAIK you need to have an account there to submit upload data.


I'm not sure if it is feasible to have someone be the owner of that account and be responsible for it. The core maintainers (@nicoddemus, for example) should be able to let us know if they wish to use such a service or if having a CITATION, such as the examples I cited, would suffice.

nicoddemus commented 6 years ago

I wouldn't know what is the best option, being years since last I wrote a scientific paper and needed citations.

Given that using the CITATION solution is being used by Hypothesis and is simpler, I would prefer that, unless @bsipocz says this wouldn't be sufficient for her needs.

bsipocz commented 6 years ago

@nicoddemus - Actually, a CITATION would be perfectly fine to cite it in papers. Originally I thought we would need the reference for the astropy v2.0 paper, but then most of the auxiliary work (e.g. our pytest plugins) didn't end up in the paper. So this is mostly for future use on my side.