New refactoring message consider-using-with. This message is emitted if resource-allocating functions or methods of the
standard library (like open() or threading.Lock.acquire()) that can be used as a context manager are called without
a with block.
Add new extension ConfusingConsecutiveElifChecker. This optional checker emits a refactoring message (R5601 confusing-consecutive-elif)
if if/elif statements with different indentation levels follow directly one after the other.
New option --output=<file> to output result to a file rather than printing to stdout.
Apply const-naming-style to module constants annotated with
typing.Final
The packaging is now done via setuptools exclusively. doc, tests, man, elisp and Changelog are
not packaged anymore - reducing the size of the package by 75%.
__pkginfo__ now only contain __version__ (also accessible with pylint.__version__), other meta-information are still
accessible with import importlib;metadata.metadata('pylint').
COPYING has been renamed to LICENSE for standardization.
Fix false-positive used-before-assignment in function returns.
Add ability to add end_line and end_column to the --msg-template option.
With the standard TextReporter this will add the line and column number of the
end of a node to the output of Pylint. If these numbers are unknown, they are represented
by an empty string.
Introduced primer tests and a configuration tests framework. The helper classes available in
pylint/testutil/ are still unstable and might be modified in the near future.
Fix install graphiz message which isn't needed for puml output format.
MessageTest of the unittest testutil now requires the confidence attribute
to match the expected value. If none is provided it is set to UNDEFINED.
add_message of the unittest testutil now actually handles the col_offset parameter
and allows it to be checked against actual output in a test.
Fix a crash in the check_elif extensions where an undetected if in a comprehension
with an if statement within a f-string resulted in an out of range error. The checker no
longer relies on counting if statements anymore and uses known if statements locations instead.
It should not crash on badly parsed if statements anymore.
Fix simplify-boolean-expression when condition can be inferred as False.
Fix exception when pyreverse parses property function of a class.
The functional testutils now accept end_lineno and end_column. Expected
output files without these will trigger a DeprecationWarning. Expected output files
can be easily updated with the python tests/test_functional.py --update-functional-output command.
The functional testutils now correctly check the distinction betweeen HIGH and
UNDEFINED confidence. Expected output files without defiend confidence levels will now
trigger a DeprecationWarning. Expected output files can be easily updated with the
python tests/test_functional.py --update-functional-output command.
The functional test runner now supports the option min_pyver_end_position to control on which python
versions the end_lineno and end_column attributes should be checked. The default value is 3.8.
Fix accept-no-yields-doc and accept-no-return-doc not allowing missing yield or
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps pylint from 2.6.0 to 2.12.0.
Release notes
Sourced from pylint's releases.
... (truncated)
Changelog
Sourced from pylint's changelog.
... (truncated)
Commits
f6d3d39
Bump pylint to 2.12.0, update changelogf84c069
Add Copyrite configuration for Nick Pesceaa048f7
Add documentation for primer and convert to command line option (#5387)fa7a84f
Addmin_pyver_end_position
option (#5386)be149db
Update functional test expected output (#5349)c056248
Fix checking ofconfidence
in the unittests (#5376)7c3533c
Update reporters to (allow) use ofend_line
andend_column
(#5372)5e9d20d
Primer tests "à la mypy" (#5173)e8fa469
Fix a crash on psycopg2 for elif used (#5369)e3a1e35
Make parallel checker useMessageLocationTuple
forMessage
(#5381)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)