Programatically tries to answer the 12 questions from Adam Johnson's blog post https://adamj.eu/tech/2021/11/04/the-well-maintained-test/
Project description
the-well-maintained-test
Programatically tries to answer the 12 questions from Adam Johnson's blog post
Installation
uv (recommended)
The preferred method of installation for this tool is uv.
uv tool install the-well-maintained-test
pipx
Alternatively, you can use pipx.
pipx install the-well-maintained-test
virtual environment
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
Authentication
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.
the-well-maintained-test --help
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
Development
To contribute to this tool, first checkout the code. This project uses uv for modern Python dependency management.
Using uv (recommended)
cd the-well-maintained-test
uv sync --extra test
This will create a virtual environment and install all dependencies including test dependencies.
To run the tests:
uv run pytest
Alternative: Traditional setup
If you prefer not to use uv, you can still use traditional tools:
cd the-well-maintained-test
python3 -m venv venv
source venv/bin/activate
pip install -e '.[test]'
To run the tests:
just test
Development commands
With uv:
# Run the CLI tool
uv run the-well-maintained-test --help
# Run tests
uv run pytest
# Run mypy
uv run mypy src/the_well_maintained_test/*.py --no-strict-optional
# Install development dependencies
uv sync --extra dev
The commands below use the command runner just. If you would rather not use just the raw commands are also listed above.
To run mypy command you'll need to run
mypy --install-types
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file the_well_maintained_test-0.12.0.tar.gz.
File metadata
- Download URL: the_well_maintained_test-0.12.0.tar.gz
- Upload date:
- Size: 87.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
795f5389e515af93c9cdae257c4ee9fd8c32de10620b81edbba255d0f6f1bb14
|
|
| MD5 |
f8bf46bff8caa9d335ef9c03f22b19a1
|
|
| BLAKE2b-256 |
6c5c8b31cc60c458ef60cff985e85834273440f2db428a400cb61708e8f7e5aa
|
Provenance
The following attestation bundles were made for the_well_maintained_test-0.12.0.tar.gz:
Publisher:
release.yml on ryancheley/the-well-maintained-test
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
the_well_maintained_test-0.12.0.tar.gz -
Subject digest:
795f5389e515af93c9cdae257c4ee9fd8c32de10620b81edbba255d0f6f1bb14 - Sigstore transparency entry: 242654739
- Sigstore integration time:
-
Permalink:
ryancheley/the-well-maintained-test@ead53d6fc419f5754e8f92d95d4fe25d02dcd7d3 -
Branch / Tag:
refs/tags/v0.12.0 - Owner: https://github.com/ryancheley
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ead53d6fc419f5754e8f92d95d4fe25d02dcd7d3 -
Trigger Event:
push
-
Statement type:
File details
Details for the file the_well_maintained_test-0.12.0-py3-none-any.whl.
File metadata
- Download URL: the_well_maintained_test-0.12.0-py3-none-any.whl
- Upload date:
- Size: 20.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f410f62daee0b80e16ef1fa10512ab98b18d8f16c3496a67bff5bfa9bfb36721
|
|
| MD5 |
16321892355ed6ee92d209aa6a031ff5
|
|
| BLAKE2b-256 |
852133ae5d3af8ccfb14ef277cc591c563e87d6aeb258ec91cdbfb977197b187
|
Provenance
The following attestation bundles were made for the_well_maintained_test-0.12.0-py3-none-any.whl:
Publisher:
release.yml on ryancheley/the-well-maintained-test
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
the_well_maintained_test-0.12.0-py3-none-any.whl -
Subject digest:
f410f62daee0b80e16ef1fa10512ab98b18d8f16c3496a67bff5bfa9bfb36721 - Sigstore transparency entry: 242654740
- Sigstore integration time:
-
Permalink:
ryancheley/the-well-maintained-test@ead53d6fc419f5754e8f92d95d4fe25d02dcd7d3 -
Branch / Tag:
refs/tags/v0.12.0 - Owner: https://github.com/ryancheley
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ead53d6fc419f5754e8f92d95d4fe25d02dcd7d3 -
Trigger Event:
push
-
Statement type: