summaryrefslogtreecommitdiff
path: root/doc/whatsnew/2.9.rst
blob: 932cfcd805412902e25f32342630f6c11f5410f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
**************************
 What's New in Pylint 2.9
**************************

:Release: 2.9
:Date: TBA

Summary -- Release highlights
=============================


New checkers
============

* ``consider-using-dict-items``: Emitted when iterating over dictionary keys and then
  indexing the same dictionary with the key within loop body.

* ``use-maxsplit-arg``: Emitted either when accessing only the first or last
  element of ``str.split()``.

* An ``ignore_signatures`` option has been added to the similarity checker. It will permits  to reduce false positives when multiple functions have the same parameters.

* ``unnecessary-dict-index-lookup``: Emitted when iterating over dictionary items
  (key-value pairs) and accessing the value by index lookup.

* ``consider-using-from-import``: Emitted when a submodule/member of a package is imported and aliased with the same name.

* New checker ``unused-private-member``: Emitted when a private member (i.e., starts with ``__``) of a class is defined but not used.

Other Changes
=============

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

* Fix false-positive ``too-many-ancestors`` when inheriting from builtin classes,
  especially from the ``collections.abc`` module

* The output messages for ``arguments-differ`` error message have been customized based on the different error cases.

* New option ``--fail-on=<msg ids>`` to return non-zero exit codes regardless of ``fail-under`` value.

* A new error called ``arguments-renamed`` has been created, which identifies any changes at the parameter names
  of overridden functions. It aims to separate the functionality of ``arguments-differ``.

* Fix incompatibility with Python 3.6.0 caused by ``typing.Counter`` and ``typing.NoReturn`` usage

* Allow comma-separated list in ``output-format`` and separate output files for
  each specified format.  Each output file can be defined after a semicolon for example : ``--output-format=json:myfile.json,colorized``

* The ``using-constant-test`` checker now detects constant tests consisting of list literals
  like ``[]`` and ``[1, 2, 3]``.