Bonus Click - bonus_click
Convenience wrappers around helpful click patterns.
Getting Started
Install with pip:
pip install bonus-click
Developer Guide
The following is documentation for developers that would like to contribute to Bonus Click.
Python Dependencies
Poetry is required to manage Python dependencies. You can install it easily by following the operating system specific instructions here.
pyproject.toml contains dependencies for required Python modules for building, testing, and
developing. They can all be installed in a virtual environment
using the follow commands:
python3.10 -m venv .venv
source ./.venv/bin/activate
poetry install
There's also a bin script to do this, and will install poetry if you don't already have it:
./tools/create_venv.sh
Testing
This project uses pytest to manage and run unit tests. Unit tests located in the test directory
are automatically run during the CI build. You can run them manually with:
./tools/run_tests.sh
Local Linting
There are a few linters/code checks included with this project to speed up the development process:
- Black - An automatic code formatter, never think about python style again.
- Isort - Automatically organizes imports in your modules.
- Pylint - Check your code against many of the python style guide rules.
- Mypy - Check your code to make sure it is properly typed.
You can run these tools automatically in check mode, meaning you will get an error if any of them would not pass with:
./tools/run_checks.sh
Or actually automatically apply the fixes with:
./tools/apply_linters.sh
There are also scripts in ./tools/ that include run/check for each individual tool.
Using pre-commit
Upon cloning the repo, to use pre-commit, you'll need to install the hooks with:
pre-commit install --hook-type pre-commit --hook-type pre-push
By default:
- black
- pylint
- isort
- mypy
Are all run in apply-mode and must pass in order to actually make the commit.
Also by default, pytest needs to pass before you can push.
If you'd like skip these checks you can commit with:
git commit --no-verify
If you'd like to quickly run these pre-commit checks on all files (not just the staged ones) you can run:
pre-commit run --all-files
Metadata
Release files for bonus-click 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bonus_click-0.5.0.tar.gz | 6.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bonus_click-0.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.3 kB
Release files / bonus_click-0.5.0.tar.gz
| Download URL | bonus_click-0.5.0.tar.gz |
|---|---|
| Size | 6.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5cf7313f98d4253e5aac32ef5308f40791656c111f66e31ea466e54bbe511552
|
|
BLAKE2b-256 checksum How to use checksums |
5bbcf6333eaea59fe10aa626ef57621f6a8ed7414733c1d02c2fed04d37a246d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.22
|
Release files / bonus_click-0.5.0-py3-none-any.whl
| Download URL | bonus_click-0.5.0-py3-none-any.whl |
|---|---|
| Size | 8.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7f62a4d8b286a842d6d3a3fc356f73b63ad7b3c3d184ebf759377950940f7c55
|
|
BLAKE2b-256 checksum How to use checksums |
2064b7d123c749563f8551adc6aeea9d56c0548a728a129abd47e2701693d32d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.22
|