Linters composer
Project description
🔫 pystolint 🔫
Yet another python linter?
No. It's just a runner for ruff + mypy with these settings
Why?
I'm fed up with:
- Having to copy settings for every single project. (at least until "parent pyproject.toml" is not invented)
- Not being able to apply checks only to git diffs, which makes it hard to add linters to large projects
- Not being able to deprecate certain things and preventing them in new code.
Install
Simple:
pip install pystolint
or
pip install git+ssh://git@github.com/hhru/pystolint.git@master
Dev:
- Clone repo
git clone git@github.com:hhru/pystolint.git ~/projects/pystolint
cd ~/projects/pystolint
python -m venv .venv
source .venv/bin/activate
pip install -e .
- Create global shortcut (/usr/local/bin/pys):
#!/path/to/your/pystolint/.venv/bin/python
import sys
from pystolint.main import main
if __name__ == '__main__':
sys.exit(main())
- Make executable:
chmod +x /usr/local/bin/pys
Usage
Check code:
pys check .
pys check path1 path2
pys check --diff
Format code:
pys format .
pys format path1 path2
Settings
Can be specified from cli or pyproject.toml. Cli settings have bigger priority
example toml:
[tool.pystolint]
base_toml_path = "/path/to/shared/config.toml"
base_branch_name = "develop"
cli:
--base_toml_path- path or link for replace pystolint default settings--base_branch_name- branch name from which to get diff (default is master)--config- specify path to local toml configs (default ispyproject.tomlin current dir)
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
pystolint-0.2.7.tar.gz
(23.6 kB
view details)
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
pystolint-0.2.7-py3-none-any.whl
(21.8 kB
view details)
File details
Details for the file pystolint-0.2.7.tar.gz.
File metadata
- Download URL: pystolint-0.2.7.tar.gz
- Upload date:
- Size: 23.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b8389ca71a4604271a81390f06651078149f8a3792f28a4b4dfaf5ce1667c9cb
|
|
| MD5 |
ce5caceb354e14f8f7c6751d51d18cd2
|
|
| BLAKE2b-256 |
e1b9a6f35e742b87a132349829023f6dc8646e61649f736776100d6fb14f9869
|
File details
Details for the file pystolint-0.2.7-py3-none-any.whl.
File metadata
- Download URL: pystolint-0.2.7-py3-none-any.whl
- Upload date:
- Size: 21.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
250bd325998808c6c2ef91250550438aacf6c87cf9e48d956a159d8256c3c785
|
|
| MD5 |
1a940783dbebd0c1e5dad66eacc54f1a
|
|
| BLAKE2b-256 |
75001863a705e54ef56113f802bef8fbfff7365ca66c11bf49a5fef23aaef353
|