pytest plugin to check source code with pylint
Run pylint with pytest and have configurable rule types (i.e. Convention, Warn, and Error) fail the build. You can also specify a pylintrc file.
would be the most simple usage and would run pylint for all error messages.
py.test --pylint --pylint-rcfile=/my/pyrc --pylint-error-types=EF --pylint-jobs=4
This would use the pylintrc file at /my/pyrc, only error on pylint Errors and Failures, and use 4 cores for running pylint.
You can restrict your test run to only perform pylint checks and not any other tests by typing:
py.test --pylint -m pylint
This code is heavily based on pytest-flakes
If you want to help development, there is overview documentation
Dropped support for pytest < 7.0 in preparation for pytest 8.0 (should work with it when it comes out)
Dropped support for pylint < 2.15 to work better with Python 3.11 and drop backwards compatibility code
Use baked in TOML support with fallback to newer tomli library thanks to mgorny
Corrected issues introduced by deprecations in pylint
Added support for Python 3.12 and dropped support for Python 3.7
Last version that will support pytest < 7 and pylint < 2.6
Added support for creating missing folders when using --pylint-output-file
Now when pylint’s ignore_patterns is blank, we don’t ignore all files
Added cache invalidation when your pylintrc changes
Verified support for latest pytest and Python 3.9
Corrected badly named nodes (duplicated path) thanks to yanqd0
Added tests to source distribution thanks to sbraz
Added support for latest pylint API >=2.5.1
Corrected documentation and correctly pinned dependencies properly
Made –no-pylint functional again
Corrected pytest-pylint to properly support -p no:cacheprovider thanks to yanqd0
Python 3.7 compatibility verified
Ignore paths no longer match partial names thanks to heoga
jamur2 corrected issue where file paths where not being output properly on lint failures.
Corrected a bug preventing this plugin from working with py.test >= 3.7.0.
jwkvam added progress output during linting.
Added option --no-pylint to override --pylint for cases when it’s turned on by default.
jwkvam provided support for pylint 2.0
noisecapella added an option to run pylint with multiple processes
bdrung corrected inconsistent returns in a function
Dropped Python 3.3 support
Corrected path issue reported by Kargathia
Linting is performed before tests which enables code duplication checks to work along with a performance boost, thanks to @heoga
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for pytest_pylint-0.21.0-py3-none-any.whl