Programatically tries to answer the 12 questions from Adam Johnson's blog post
The preferred method of installation for this tool is pipx.
pipx install the-well-maintained-test
This tool can be installed in a virtual environment using pip:
Create your virtual environment
python3 -m venv venv
source venv/bin/activate
Install with pip
python -m pip install the-well-maintained-test
The GitHub API will rate limit anonymous calls. You can authenticate yourself with a personal token (documentation on how to generate is here)
Run this command and paste in your new token:
the-well-maintained-test auth
This will create a file called auth.json in your current directory containing the required value. To save the file at a different path or filename, use the --auth=myauth.json
option.
Usage: the-well-maintained-test [OPTIONS] COMMAND [ARGS]...
Programatically tries to answer the 12 questions from Adam Johnson's blog post
https://adamj.eu/tech/2021/11/04/the-well-maintained-test/
package is a package on pypi you'd like to check:
the-well-maintained-test package the-well-maintained-test
Options:
--version Show the version and exit.
--help Show this message and exit.
Commands:
auth Generates a json file with your GitHub Personal Token so...
check Check your GitHub API Usage Stats
package Name of a package on PyPi you'd like to check
questions List of questions tested
requirements Loop over a requirements.txt file
To contribute to this tool, first checkout the code. Then create a new virtual environment:
cd the-well-maintained-test
python3 -m venv venv
source venv/bin/activate
Or if you are using pipenv
:
pipenv shell
Now install the dependencies and test dependencies:
pip install -e '.[test]'
To run the tests:
just test
To run mypy
command you'll need to run
mypy --install-types
The commands below use the command runner just. If you would rather not use just
the raw commands are also listed below
Then, to run mypy:
just mypy
OR the raw command is
mypy src/the_well_maintained_test/*.py --no-strict-optional
You can also do a pre-commit check on the files by running
just check
OR the raw commands are
pre-commit run --all-files
mypy src/the_well_maintained_test/*.py --no-strict-optional
This will run several pre-commit hooks, but before that it will run mypy