Skip to content

Conversation

@pyup-bot
Copy link
Contributor

This PR updates pylint from 2.5.3 to 2.8.2.

Changelog

2.8.2

===========================
Release date: 2021-04-26

..
Put new features and bugfixes here and also in 'doc/whatsnew/2.9.rst'

* Keep ``__pkginfo__.numversion`` a tuple to avoid breaking pylint-django.

Closes 4405

* scm_setuptools has been added to the packaging.

* Pylint's tags are now the standard form ``vX.Y.Z`` and not ``pylint-X.Y.Z`` anymore.

2.8.1

===========================
Release date: 2021-04-25

..
Put new features and bugfixes here and also in 'doc/whatsnew/2.9.rst'

* Add numversion back (temporarily) in ``__pkginfo__`` because it broke Pylama and revert the unnecessary
``pylint.version`` breaking change.

Closes 4399

2.8.0

===========================
Release date: 2021-04-24

* 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.

Closes 3413

* Resolve false positives on unused variables in decorator functions

Closes 4252

* 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.

Closes 1070

* Use a prescriptive message for ``unidiomatic-typecheck``

Closes 3891

* 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%.

* Debian packaging is now  (officially) done in https://salsa.debian.org/python-team/packages/pylint.

* The 'doc' extra-require has been removed.

* ``__pkginfo__`` now only contain ``__version__`` (also accessible with ``pylint.__version__``), other meta-information are still
accessible with ``from importlib import metadata;metadata.metadata('pylint')``.

* COPYING has been renamed to LICENSE for standardization.

* Fix false-positive ``used-before-assignment`` in function returns.

Closes 4301

* Updated ``astroid`` to 2.5.3

Closes 2822, 4206, 4284

* Add ``consider-using-min-max-builtin`` check for if statement which could be replaced by Python builtin min or max

Closes 3406

* Don't auto-enable postponed evaluation of type annotations with Python 3.10

* Update ``astroid`` to 2.5.4

* Add new extension ``TypingChecker``. This optional checker can detect the use of deprecated typing aliases
and can suggest the use of the alternative union syntax where possible.
(For example, 'typing.Dict' can be replaced by 'dict', and 'typing.Unions' by '|', etc.)
Make sure to check the config options if you plan on using it!

* Reactivates old counts in report mode.

Closes 3819

* During detection of ``inconsistent-return-statements`` consider that ``assert False`` is a return node.

Closes 4019

* Run will not fail if score exactly equals ``config.fail_under``.

* Functions that never returns may declare ``NoReturn`` as type hints, so that
``inconsistent-return-statements`` is not emitted.

Closes 4122, 4188

* Improved protected access checks to allow access inside class methods

Closes 1159

* Fix issue with PEP 585 syntax and the use of ``collections.abc.Set``

* Fix issue that caused class variables annotated with ``typing.ClassVar`` to be
identified as class constants. Now, class variables annotated with
``typing.Final`` are identified as such.

Closes 4277

* Continuous integration with read the doc has been added.

Closes 3850

* Don't show ``DuplicateBasesError`` for attribute access

* Fix crash when checking ``setup.cfg`` for pylint config when there are non-ascii characters in there

Closes 4328

* Allow code flanked in backticks to be skipped by spellchecker

Closes 4319

* Allow Python tool directives (for black, flake8, zimports, isort, mypy, bandit, pycharm) at beginning of comments to be skipped by spellchecker

Closes 4320

* Fix issue that caused emacs pylint to fail when used with tramp

* Improve check for invalid PEP 585 syntax inside functions
if postponed evaluation of type annotations is enabled

* Improve check for invalid PEP 585 syntax as default function arguments

2.7.4

===========================
Release date: 2021-03-30


* Fix a problem with disabled msgid not being ignored

Closes 4265

* Fix issue with annotated class constants

Closes 4264

2.7.3

===========================
Release date: 2021-03-29

* Introduce logic for checking deprecated attributes in DeprecationMixin.

* Reduce usage of blacklist/whitelist terminology. Notably, ``extension-pkg-allow-list`` is an
alternative to ``extension-pkg-whitelist`` and the message ``blacklisted-name`` is now emitted as
``disallowed-name``. The previous names are accepted to maintain backward compatibility.

* Move deprecated checker to ``DeprecatedMixin``

Closes 4086

* Bump ``astroid`` version to ``2.5.2``

* Fix false positive for ``method-hidden`` when using private attribute and method

Closes 3936

* ``use-symbolic-message-instead`` now also works on legacy messages like ``C0111`` (``missing-docstring``).

* Remove unwanted print to stdout from ``_emit_no_member``

* Introduce a command-line option to specify pyreverse output directory

Closes 4159

* Fix issue with Enums and ``class-attribute-naming-style=snake_case``

Closes 4149

* Add ``allowed-redefined-builtins`` option for fine tuning ``redefined-builtin`` check.

Close 3263

* Fix issue when executing with ``python -m pylint``

Closes 4161

* Exempt ``typing.TypedDict`` from ``too-few-public-methods`` check.

Closes 4180

* Fix false-positive ``no-member`` for typed annotations without default value.

Closes 3167

* Add ``--class-const-naming-style`` for Enum constants and class variables annotated
with ``typing.ClassVar``

Closes 4181

* Fix astroid.Inference error for undefined-variables with ``len()

Closes 4215

* Fix column index on FIXME warning messages

Closes 4218

* Improve handling of assignment expressions, better edge case handling

Closes 3763, 4238

* Improve check if class is subscriptable PEP585

* Fix documentation and filename handling of --import-graph

* Fix false-positive for ``unused-import`` on class keyword arguments

Closes 3202

* Fix regression with plugins on PYTHONPATH if latter is cwd

Closes 4252

2.7.2

===========================
Release date: 2021-02-28

* Fix False Positive on ``Enum.__members__.items()``, ``Enum.__members__.values``, and ``Enum.__members__.keys``
Closes 4123

* Properly strip dangerous sys.path entries (not just the first one)

Closes 3636

* Workflow and packaging improvements

2.7.1

===========================
Release date: 2021-02-23

* Expose ``UnittestLinter`` in pylint.testutils

* Don't check directories starting with '.' when using register_plugins

Closes 4119

2.7.0

===========================
Release date: 2021-02-21

* Introduce DeprecationMixin for reusable deprecation checks.

Closes 4049

* Fix false positive for ``builtin-not-iterating`` when ``map`` receives iterable

Closes 4078

* Python 3.6+ is now required.

* Fix false positive for ``builtin-not-iterating`` when ``zip`` receives iterable

* Add ``nan-comparison`` check for NaN comparisons

* Bug fix for empty-comment message line number.

Closes 4009

* Only emit ``bad-reversed-sequence`` on dictionaries if below py3.8

Closes 3940

* Handle class decorators applied to function.

Closes 3882

* Add check for empty comments

* Fix minor documentation issue in contribute.rst

* Enums are now required to be named in UPPER_CASE by ``invalid-name``.

Close 3834

* Add missing checks for deprecated functions.

* Postponed evaluation of annotations are now recognized by default if python version is above 3.10

Closes 3992

* Fix column metadata for anomalous backslash lints

* Drop support for Python 3.5

* Add support for pep585 with postponed evaluation

Closes 3320

* Check alternative union syntax - PEP 604

Closes 4065

* Fix multiple false positives with assignment expressions

Closes 3347, 3953, 3865, 3275

* Fix TypedDict inherit-non-class false-positive Python 3.9+

Closes 1927

* Fix issue with nested PEP 585 syntax

* Fix issue with nested PEP 604 syntax

* Fix a crash in ``undefined-variable`` caused by chained attributes in metaclass

Close 3742

* Fix false positive for ``not-async-context-manager`` when ``contextlib.asynccontextmanager`` is used

Close 3862

* Fix linter multiprocessing pool shutdown (triggered warnings when runned in parallels with other pytest plugins)

Closes 3779

* Fix a false-positive emission of ``no-self-use`` and ``unused-argument`` for methods
of generic structural types (`Protocol[T]`)

Closes 3885

* Fix bug that lead to duplicate messages when using ``--jobs 2`` or more.

Close 3584

* Adds option ``check-protected-access-in-special-methods`` in the ClassChecker to activate/deactivate
``protected-access`` message emission for single underscore prefixed attribute in special methods.

Close 3120

* Fix vulnerable regular expressions in ``pyreverse``

Close 3811

* ``inconsistent-return-statements`` message is now emitted if one of ``try/except`` statement
is not returning explicitly while the other do.

Closes 3468

* Fix ``useless-super-delegation`` false positive when default keyword argument is a dictionnary.

Close 3773

* Fix a crash when a specified config file does not exist

* Add support to ``ignored-argument-names`` in DocstringParameterChecker and adds ``useless-param-doc`` and ``useless-type-doc`` messages.

Close 3800

* Enforce docparams consistently when docstring is not present

Close 2738

* Fix ``duplicate-code`` false positive when lines only contain whitespace and non-alphanumeric characters (e.g. parentheses, bracket, comma, etc.)

* Improve lint message for ``singleton-comparison`` with bools

* Fix spell-checker crash on indented docstring lines that look like  comments

Close 3786

* Fix AttributeError in checkers/refactoring.py

* Improve sphinx directives spelling filter

* Fix a bug with postponed evaluation when using aliases for annotations.

Close 3798

* Fix minor documentation issues

* Improve the performance of the line length check.

* Removed incorrect deprecation of ``inspect.getfullargspec``

* Fix ``signature-differs`` false positive for functions with variadics

Close 3737

* Fix a crash in ``consider-using-enumerate`` when encountering ``range()`` without arguments

Close 3735

* ``len-as-conditions`` is now triggered only for classes that are inheriting directly from list, dict, or set and not implementing the ``__bool__`` function, or from generators like range or list/dict/set comprehension. This should reduce the false positives for other classes, like pandas's DataFrame or numpy's Array.

Close 1879

* Fixes duplicate-errors not working with -j2+

Close 3314

* ``generated-members`` now matches the qualified name of members

Close 2498

* Add check for bool function to ``len-as-condition``

* Add ``simplifiable-condition`` check for extraneous constants in conditionals using and/or.

* Add ``condition-evals-to-constant`` check for conditionals using and/or that evaluate to a constant.

Close 3407

* Changed setup.py to work with [distlib](https://pypi.org/project/distlib)

Close 3555

* New check: ``consider-using-generator``

This check warns when a comprehension is used inside an ``any`` or ``all`` function,
since it is unnecessary and should be replaced by a generator instead.
Using a generator would be less code and way faster.

Close 3165

* Add Github Actions to replace Travis and AppVeyor in the future

2.6.1

===========================

* Astroid version has been set as < 2.5

Close 4093

2.6.0

===========================

Release date: 2020-08-20

* Fix various scope-related bugs in ``undefined-variable`` checker

Close 1082, 3434, 3461

* bad-continuation and bad-whitespace have been removed, black or another formatter can help you with this better than Pylint

Close 246, 289, 638, 747, 1148, 1179, 1943, 2041, 2301, 2304, 2944, 3565

* The no-space-check option has been removed. It's no longer possible to consider empty line like a ``trailing-whitespace`` by using clever options

Close 1368

* ``missing-kwoa`` is no longer emitted when dealing with overload functions

Close 3655

* mixed-indentation has been removed, it is no longer useful since TabError is included directly in python3

Close 2984 3573

* Add ``super-with-arguments`` check for flagging instances of Python 2 style super calls.

* Add an faq detailing which messages to disable to avoid duplicates w/ other popular linters

* Fix superfluous-parens false-positive for the walrus operator

Close 3383

* Fix ``fail-under`` not accepting floats

* Fix a bug with ``ignore-docstrings`` ignoring all lines in a module

* Fix ``pre-commit`` config that could lead to undetected duplicate lines of code

* Fix a crash in parallel mode when the module's filepath is not set

Close 3564

* Add ``raise-missing-from`` check for exceptions that should have a cause.

* Support both isort 4 and isort 5. If you have pinned isort 4 in your projet requirements, nothing changes. If you use isort 5, though, note that the ``known-standard-library`` option is not interpreted the same in isort 4 and isort 5 (see the migration guide in isort documentation for further details). For compatibility's sake for most pylint users, the ``known-standard-library`` option in pylint now maps to ``extra-standard-library`` in isort 5. If you really want what ``known-standard-library`` now means in isort 5, you must disable the ``wrong-import-order`` check in pylint and run isort manually with a proper isort configuration file.

Close 3722

2.5.4

===========================

* Fix a crash caused by not guarding against ``InferenceError`` when calling ``infer_call_result``

Close 3690

* Fix a crash in parallel mode when the module's filepath is not set

Close 3564
Links

@pyup-bot pyup-bot mentioned this pull request Apr 27, 2021
@looztra looztra merged commit a97d102 into master Apr 28, 2021
@looztra looztra deleted the pyup-update-pylint-2.5.3-to-2.8.2 branch April 28, 2021 07:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants