pygetpapers
pygetpapers copied to clipboard
JOSS Review: Installation feedback
Recommended
- It is not really clear why one needs the Git~Hub~ CLI to be installed
Highly optional
- In the metadata, you indicate support for down to Python 3.4. You just want to note that even Python 3.6 is already end-of-life https://endoflife.date/python
- Alternatively (version 2) you recommend running
python setup.py install
. Note that there might be several alternatives:-
pip install git+https://github.com/petermr/pygetpapers.git
should directly install from the head (but you can also specify the branch) -
pip install .
in the cloned repo --- there are some downsides to runningsetup.py
directly. See, for instance, https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html
-
The instructions refer to the Git CLI, not GitHub. Git is indeed required for method 2, although it is listed for method 1. That looks like a mistake.
As for the variants listed by @kjappelbaum, I think it's a good idea to think first about who the installation instructions are aimed at.
My understanding is that pygetpapers
is both a CLI tool and a Python library. Anyone going for the Python library can be expected to be familiar with Python habits, so "install via pip install pygetpapers
" should be sufficient. That leaves people who want just the CLI tool, and may well know nothing about Python. They would probably appreciate being told just one way to install the package, but a way that works everywhere. I am not sure that this is still possible with Python. Maybe a reference to https://packaging.python.org/en/latest/tutorials/installing-packages/ would be appropriate, although its length and detail can be scary.
Thanks for catching my typo about the git CLI. Typically, I see two use cases:
- default: install the latest stable release from pip
pip install pygetpaper
- developers/... install from the head
pip install git+...
Thanks a lot for pointing this out. I have added two ways, with one directly downloading from the Head. I have also corrected requiring Git CLI for method 1.