Run multiple python linters easily
Project description
multilint
Run multiple python linters easily.
Installation and Usage
Install with pip:
pip install multilint
Run with:
multilint
How it works
I like to keep my projects tidy with a standard set of linters. Running them all turned out to be easier with a wrapper script, which I ended up copy-pasting between them all. This project stops me needing to copy/paste, centralizing running all these neat tools.
In order, it will is these linters are installed, and if so, run them:
Run flake8, for code quality
Run isort in ‘diff’ mode, for import sorting
Run modernize in ‘diff’ mode, for python 2/3 compatibility
Run python setup.py check, to ensure that your setup.py is well configured. This will require docutils, and maybe Pygments if your long_description uses any code highlighting.
If any of them fail, multilint stops and dies with a non-zero exit code. Otherwise it succeeds!
You need to configure the paths that will be linted (by default, only setup.py is linted). Put a section in your setup.cfg like:
[multilint]
paths = my_package
tests
setup.py
Usage with tox
I normally run my tests with tox. An example tox.ini to use multilint to do all your linting would be:
[tox]
envlist =
py{27,35},
py{27,35}-codestyle
[testenv]
deps = -rrequirements.txt
commands = py.test
[testenv:py27-codestyle]
commands = multilint
[testenv:py35-codestyle]
commands = multilint
Just put multilint, flake8, etc. in your requirements.txt and they’ll automatically run.
History
1.0.0 (2016-06-18)
First release on PyPI.
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
Hashes for multilint-1.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e23ef7998793744be3688c078cb7d7c4992b681e1dc80efcb0831a01a82ec851 |
|
MD5 | 95f86eeec1a7507c9b3e824aec8706bc |
|
BLAKE2b-256 | 68cfa0363d6672c7ee0422d5f515e8f514fc30e5c2f955535745b9b4c4b558c9 |