mewbot-dev-tools
Tools to aid with mewbot development.
Purpose
While developing mewbot we built a number of tools to assist with development. This mostly consist of tool chains for
- running the linters
- building dev venvs (still forthcoming)
- building the docs (still forthcoming)
- gather and run the tests
The aim of these tools is that, if you run them on a code base, you should end up with something which conforms to mewbot's guidelines.
Usage
The dev tools uses path based auto-discovery to locate the relevant code.
Python modules will be discovered in ./src and ./plugins/*/src.
Test cases will be discovered in ./tests and ./plugins/*/tests.
If your project is in that src-dir layout, you can install the dev tools
and then run any of the toolchains.
pip install mewbot-dev-tools
mewbot-install-deps # Install dependencies from discovered requirements.txt
mewbot-preflight # Run all of the toolchains below
mewbot-lint # Code style and type linting, using black/flake/ruff/mypy/pylint
mewbot-reuse # Licensing information check, using reuse
mewbot-test # Run discovered test suites, using pytest
mewbot-security-analysis # Discover potential security bugs using badnit
mewbot-annotate # Convert output data into GitHub annotations
We also recommend that you setup mewbot-prefilght as a
pre-commit or pre-push hook.
Future Work
- Ability to opt-out for some linters in pyproject.toml
- Work to discover locations based on pyproject.toml
Metadata
Release files for mewbot-dev-tools 0.0.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mewbot_dev_tools-0.0.20.tar.gz | 40.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mewbot_dev_tools-0.0.20-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 86.2 kB
Release files / mewbot_dev_tools-0.0.20.tar.gz
| Download URL | mewbot_dev_tools-0.0.20.tar.gz |
|---|---|
| Size | 40.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5de132210758bb2734ebf080419437432ea0f41be68ab3b91e9b13568224c1bf
|
|
BLAKE2b-256 checksum How to use checksums |
9032dac3966ab18f1e57133a81510ae940def2a0554cb8f004caa9de61ab68f9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|
Release files / mewbot_dev_tools-0.0.20-py3-none-any.whl
| Download URL | mewbot_dev_tools-0.0.20-py3-none-any.whl |
|---|---|
| Size | 46.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d09642db2467f7b9c13c4471a547f77ac860e40cfc309549c442a7596c26d416
|
|
BLAKE2b-256 checksum How to use checksums |
1190013bc391938418f8d6f183d514bbaf110da15c10f9acea274c65ae1aac1f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|