Skip to content

Commit 6350dfa

Browse files
Bump pylint to 3.3.0, update changelog
1 parent 78f3dfa commit 6350dfa

25 files changed

+162
-87
lines changed

CONTRIBUTORS.txt

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ contributors:
158158
* Added new useless-return checker,
159159
* Added new try-except-raise checker
160160
- theirix <theirix@gmail.com>
161+
- correctmost <134317971+correctmost@users.noreply.github.com>
161162
- Téo Bouvard <teobouvard@gmail.com>
162163
- Stavros Ntentos <133706+stdedos@users.noreply.github.com>
163164
- Nicolas Boulenguez <nicolas@debian.org>
@@ -210,6 +211,7 @@ contributors:
210211
- wtracy <afishionado@gmail.com>
211212
- jessebrennan <jesse@jesse.computer>
212213
- chohner <mail@chohner.com>
214+
- aatle <168398276+aatle@users.noreply.github.com>
213215
- Tiago Honorato <61059243+tiagohonorato@users.noreply.github.com>
214216
- Steven M. Vascellaro <svascellaro@gmail.com>
215217
- Robin Tweedie <70587124+robin-wayve@users.noreply.github.com>
@@ -264,6 +266,7 @@ contributors:
264266
- Samuel FORESTIER <HorlogeSkynet@users.noreply.github.com>
265267
- Rémi Cardona <remi.cardona@polyconseil.fr>
266268
- Ryan Ozawa <ryan.ozawa21@gmail.com>
269+
- Roger Sheu <78449574+rogersheu@users.noreply.github.com>
267270
- Raphael Gaschignard <raphael@makeleaps.com>
268271
- Ram Rachum <ram@rachum.com> (cool-RR)
269272
- Radostin Stoyanov <rst0git@users.noreply.github.com>
@@ -287,9 +290,11 @@ contributors:
287290
- Justin Li <justinnhli@gmail.com>
288291
- John Kirkham <jakirkham@gmail.com>
289292
- Jens H. Nielsen <Jens.Nielsen@microsoft.com>
293+
- Jake Lishman <jake.lishman@ibm.com>
290294
- Ioana Tagirta <ioana.tagirta@gmail.com>: fix bad thread instantiation check
291295
- Ikraduya Edian <ikraduya@gmail.com>: Added new checks 'consider-using-generator' and 'use-a-generator'.
292296
- Hugues Bruant <hugues.bruant@affirm.com>
297+
- Hashem Nasarat <Hnasar@users.noreply.github.com>
293298
- Harut <yes@harutune.name>
294299
- Grygorii Iermolenko <gyermolenko@gmail.com>
295300
- Grizzly Nyo <grizzly.nyo@gmail.com>
@@ -317,9 +322,11 @@ contributors:
317322
- Ben Green <benhgreen@icloud.com>
318323
- Batuhan Taskaya <batuhanosmantaskaya@gmail.com>
319324
- Alexander Kapshuna <kapsh@kap.sh>
325+
- Akhil Kamat <akhil.kamat@gmail.com>
320326
- Adam Parkin <pzelnip@users.noreply.github.com>
321327
- 谭九鼎 <109224573@qq.com>
322328
- Łukasz Sznuk <ls@rdprojekt.pl>
329+
- zasca <gorstav@gmail.com>
323330
- y2kbugger <y2kbugger@users.noreply.github.com>
324331
- vinnyrose <vinnyrose@users.noreply.github.com>
325332
- ttenhoeve-aa <ttenhoeve@appannie.com>
@@ -382,10 +389,12 @@ contributors:
382389
- Trevor Bekolay <tbekolay@gmail.com>
383390
* Added --list-msgs-enabled command
384391
- Tomer Chachamu <tomer.chachamu@gmail.com>: simplifiable-if-expression
392+
- Tomasz Michalski <tomasz.michalski@rtbhouse.com>
385393
- Tomasz Magulski <tomasz@magullab.io>
386394
- Tom <tsarantis@proton.me>
387395
- Tim Hatch <tim@timhatch.com>
388396
- Tim Gates <tim.gates@iress.com>
397+
- Tianyu Chen <124018391+UTsweetyfish@users.noreply.github.com>
389398
- Théo Battrel <theo.util@protonmail.ch>
390399
- Thomas Benhamou <thomas@lightricks.com>
391400
- Theodore Ni <3806110+tjni@users.noreply.github.com>
@@ -412,6 +421,7 @@ contributors:
412421
- Ryan McGuire <ryan@enigmacurry.com>
413422
- Ry4an Brase <ry4an-hg@ry4an.org>
414423
- Ruro <ruro.ruro@ya.ru>
424+
- Roshan Shetty <roshan.shetty2816@gmail.com>
415425
- Roman Ivanov <me@roivanov.com>
416426
- Robert Schweizer <robert_schweizer@gmx.de>
417427
- Reverb Chu <reverbc@users.noreply.github.com>
@@ -438,6 +448,7 @@ contributors:
438448
- Oisín Moran <OisinMoran@users.noreply.github.com>
439449
- Obscuron <Abscuron@gmail.com>
440450
- Noam Yorav-Raphael <noamraph@gmail.com>
451+
- Noah-Agnel <138210920+Noah-Agnel@users.noreply.github.com>
441452
- Nir Soffer <nirsof@gmail.com>
442453
- Niko Wenselowski <niko@nerdno.de>
443454
- Nikita Sobolev <mail@sobolevn.me>
@@ -515,15 +526,13 @@ contributors:
515526
- James Broadhead <jamesbroadhead@gmail.com>
516527
- Jakub Kulík <Kulikjak@gmail.com>
517528
- Jakob Normark <jakobnormark@gmail.com>
518-
- Jake Lishman <jake@binhbar.com>
519529
- Jacques Kvam <jwkvam@gmail.com>
520530
- Jace Browning <jacebrowning@gmail.com>: updated default report format with clickable paths
521531
- JT Olds <jtolds@xnet5.com>
522532
- Iggy Eom <iggy.eom@sendbird.com>
523533
- Hayden Richards <62866982+SupImDos@users.noreply.github.com>
524534
* Fixed "no-self-use" for async methods
525535
* Fixed "docparams" extension for async functions and methods
526-
- Hashem Nasarat <Hnasar@users.noreply.github.com>
527536
- Harshil <37377066+harshil21@users.noreply.github.com>
528537
- Harry <harrymcwinters@gmail.com>
529538
- Grégoire <96051754+gregoire-mullvad@users.noreply.github.com>
@@ -537,6 +546,7 @@ contributors:
537546
- Eric Froemling <ericfroemling@gmail.com>
538547
- Emmanuel Chaudron <manu.chaud@hotmail.fr>
539548
- Elizabeth Bott <52465744+elizabethbott@users.noreply.github.com>
549+
- Ekin Dursun <ekindursun@gmail.com>
540550
- Eisuke Kawashima <e-kwsm@users.noreply.github.com>
541551
- Edward K. Ream <edreamleo@gmail.com>
542552
- Edgemaster <grand.edgemaster@gmail.com>
@@ -547,6 +557,7 @@ contributors:
547557
- Dmytro Kyrychuk <dmytro.kyrychuck@gmail.com>
548558
- Dionisio E Alonso <baco@users.noreply.github.com>
549559
- DetachHead <57028336+DetachHead@users.noreply.github.com>
560+
- Dennis Keck <26092524+fellhorn@users.noreply.github.com>
550561
- Denis Laxalde <denis.laxalde@logilab.fr>
551562
- David Lawson <dmrlawson@gmail.com>
552563
- David Cain <davidjosephcain@gmail.com>
@@ -582,12 +593,14 @@ contributors:
582593
- Benjamin Graham <benwilliamgraham@gmail.com>
583594
- Benedikt Morbach <benedikt.morbach@googlemail.com>
584595
- Ben Greiner <code@bnavigator.de>
596+
- Barak Shoshany <baraksh@gmail.com>
585597
- Banjamin Freeman <befreeman@users.noreply.github.com>
586598
- Avram Lubkin <avylove@rockhopper.net>
587599
- Athos Ribeiro <athoscr@fedoraproject.org>: Fixed dict-keys-not-iterating false positive for inverse containment checks
588600
- Arun Persaud <arun@nubati.net>
589601
- Arthur Lutz <arthur.lutz@logilab.fr>
590602
- Antonio Ossa <aaossa@uc.cl>
603+
- Antonio Gámiz Delgado <73933988+antoniogamizbadger@users.noreply.github.com>
591604
- Anthony VEREZ <anthony.verez.external@cassidian.com>
592605
- Anthony Tan <tanant@users.noreply.github.com>
593606
- Anthony Foglia <afoglia@users.noreply.github.com> (Google): Added simple string slots check.
@@ -617,6 +630,7 @@ contributors:
617630
- Adrian Chirieac <chirieacam@gmail.com>
618631
- Aditya Gupta <adityagupta1089@users.noreply.github.com> (adityagupta1089)
619632
* Added ignore_signatures to duplicate checker
633+
- Adam Tuft <73994535+adamtuft@users.noreply.github.com>
620634
- Adam Dangoor <adamdangoor@gmail.com>
621635
- 243f6a88 85a308d3 <33170174+243f6a8885a308d313198a2e037@users.noreply.github.com>
622636

doc/whatsnew/3/3.3/index.rst

Lines changed: 140 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,148 @@
77
:maxdepth: 2
88

99
:Release:3.3
10-
:Date: TBA
10+
:Date: 2024-09-20
1111

1212
Summary -- Release highlights
1313
=============================
1414

15-
1615
.. towncrier release notes start
16+
17+
What's new in Pylint 3.3.0?
18+
---------------------------
19+
Release date: 2024-09-20
20+
21+
22+
Changes requiring user actions
23+
------------------------------
24+
25+
- We migrated ``symilar`` to argparse, from getopt, so the error and help output changed
26+
(for the better). We exit with 2 instead of sometime 1, sometime 2. The error output
27+
is not captured by the runner anymore. It's not possible to use a value for the
28+
boolean options anymore (``--ignore-comments 1`` should become ``--ignore-comments``).
29+
30+
Refs #9731 (`#9731 <https://github.com/pylint-dev/pylint/issues/9731>`_)
31+
32+
33+
34+
New Features
35+
------------
36+
37+
- Add new `declare-non-slot` error which reports when a class has a `__slots__` member and a type hint on the class is not present in `__slots__`.
38+
39+
Refs #9499 (`#9499 <https://github.com/pylint-dev/pylint/issues/9499>`_)
40+
41+
42+
43+
New Checks
44+
----------
45+
46+
- Added `too-many-positional-arguments` to allow distinguishing the configuration for too many
47+
total arguments (with keyword-only params specified after `*`) from the configuration
48+
for too many positional-or-keyword or positional-only arguments.
49+
50+
As part of evaluating whether this check makes sense for your project, ensure you
51+
adjust the value of `--max-positional-arguments`.
52+
53+
Closes #9099 (`#9099 <https://github.com/pylint-dev/pylint/issues/9099>`_)
54+
55+
- Add `using-exception-group-in-unsupported-version` and
56+
`using-generic-type-syntax-in-unsupported-version` for uses of Python 3.11+ or
57+
3.12+ features on lower supported versions provided with `--py-version`.
58+
59+
Closes #9791 (`#9791 <https://github.com/pylint-dev/pylint/issues/9791>`_)
60+
61+
- Add `using-assignment-expression-in-unsupported-version` for uses of `:=` (walrus operator)
62+
on Python versions below 3.8 provided with `--py-version`.
63+
64+
Closes #9820 (`#9820 <https://github.com/pylint-dev/pylint/issues/9820>`_)
65+
66+
- Add `using-positional-only-args-in-unsupported-version` for uses of positional-only args on
67+
Python versions below 3.8 provided with `--py-version`.
68+
69+
Closes #9823 (`#9823 <https://github.com/pylint-dev/pylint/issues/9823>`_)
70+
71+
- Add ``unnecessary-default-type-args`` to the ``typing`` extension to detect the use
72+
of unnecessary default type args for ``typing.Generator`` and ``typing.AsyncGenerator``.
73+
74+
Refs #9938 (`#9938 <https://github.com/pylint-dev/pylint/issues/9938>`_)
75+
76+
77+
78+
False Negatives Fixed
79+
---------------------
80+
81+
- Fix computation of never-returning function: `Never` is handled in addition to `NoReturn`, and priority is given to the explicit `--never-returning-functions` option.
82+
83+
Closes #7565. (`#7565 <https://github.com/pylint-dev/pylint/issues/7565>`_)
84+
85+
- Fix a false negative for `await-outside-async` when await is inside Lambda.
86+
87+
Refs #9653 (`#9653 <https://github.com/pylint-dev/pylint/issues/9653>`_)
88+
89+
- Fix a false negative for ``duplicate-argument-name`` by including ``positional-only``, ``*args`` and ``**kwargs`` arguments in the check.
90+
91+
Closes #9669 (`#9669 <https://github.com/pylint-dev/pylint/issues/9669>`_)
92+
93+
- Fix false negative for `multiple-statements` when multiple statements are present on `else` and `finally` lines of `try`.
94+
95+
Refs #9759 (`#9759 <https://github.com/pylint-dev/pylint/issues/9759>`_)
96+
97+
- Fix false negatives when `isinstance` does not have exactly two arguments.
98+
pylint now emits a `too-many-function-args` or `no-value-for-parameter`
99+
appropriately for `isinstance` calls.
100+
101+
Closes #9847 (`#9847 <https://github.com/pylint-dev/pylint/issues/9847>`_)
102+
103+
104+
105+
Other Bug Fixes
106+
---------------
107+
108+
- `--enable` with `--disable=all` now produces an error, when an unknown msg code is used. Internal `pylint` messages are no longer affected by `--disable=all`.
109+
110+
Closes #9403 (`#9403 <https://github.com/pylint-dev/pylint/issues/9403>`_)
111+
112+
- Impossible to compile regexes for paths in the configuration or argument given to pylint won't crash anymore but
113+
raise an argparse error and display the error message from ``re.compile`` instead.
114+
115+
Closes #9680 (`#9680 <https://github.com/pylint-dev/pylint/issues/9680>`_)
116+
117+
- Fix a bug where a ``tox.ini`` file with pylint configuration was ignored and it exists in the current directory.
118+
119+
``.cfg`` and ``.ini`` files containing a ``Pylint`` configuration may now use a section named ``[pylint]``. This enhancement impacts the scenario where these file types are used as defaults when they are present and have not been explicitly referred to, using the ``--rcfile`` option.
120+
121+
Closes #9727 (`#9727 <https://github.com/pylint-dev/pylint/issues/9727>`_)
122+
123+
- Improve file discovery for directories that are not python packages.
124+
125+
Closes #9764 (`#9764 <https://github.com/pylint-dev/pylint/issues/9764>`_)
126+
127+
128+
129+
Other Changes
130+
-------------
131+
132+
- Remove support for launching pylint with Python 3.8.
133+
Code that supports Python 3.8 can still be linted with the ``--py-version=3.8`` setting.
134+
135+
Refs #9774 (`#9774 <https://github.com/pylint-dev/pylint/issues/9774>`_)
136+
137+
- Add support for Python 3.13.
138+
139+
Refs #9852 (`#9852 <https://github.com/pylint-dev/pylint/issues/9852>`_)
140+
141+
142+
143+
Internal Changes
144+
----------------
145+
146+
- All variables, classes, functions and file names containing the word 'similar', when it was,
147+
in fact, referring to 'symilar' (the standalone program for the duplicate-code check) were renamed
148+
to 'symilar'.
149+
150+
Closes #9734 (`#9734 <https://github.com/pylint-dev/pylint/issues/9734>`_)
151+
152+
- Remove old-style classes (Python 2) code and remove check for new-style class since everything is new-style in Python 3. Updated doc for exception checker to remove reference to new style class.
153+
154+
Refs #9925 (`#9925 <https://github.com/pylint-dev/pylint/issues/9925>`_)

doc/whatsnew/fragments/7565.false_negative

Lines changed: 0 additions & 3 deletions
This file was deleted.

doc/whatsnew/fragments/9099.new_check

Lines changed: 0 additions & 8 deletions
This file was deleted.

doc/whatsnew/fragments/9403.bugfix

Lines changed: 0 additions & 3 deletions
This file was deleted.

doc/whatsnew/fragments/9499.feature

Lines changed: 0 additions & 3 deletions
This file was deleted.

doc/whatsnew/fragments/9653.false_negative

Lines changed: 0 additions & 3 deletions
This file was deleted.

doc/whatsnew/fragments/9669.false_negative

Lines changed: 0 additions & 3 deletions
This file was deleted.

doc/whatsnew/fragments/9680.bugfix

Lines changed: 0 additions & 4 deletions
This file was deleted.

doc/whatsnew/fragments/9727.bugfix

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)