From dcb0198d164b7f4306f60d854a6bd97ff65a62a4 Mon Sep 17 00:00:00 2001 From: Pierre Sassoulas Date: Wed, 1 Feb 2023 10:34:04 +0100 Subject: [PATCH] Bump pylint to 2.16.0, update changelog --- CONTRIBUTORS.txt | 7 +- doc/user_guide/checkers/features.rst | 2 +- doc/whatsnew/2/2.16/index.rst | 714 +++++++++++++++++++++ doc/whatsnew/fragments/2374.false_negative | 4 - doc/whatsnew/fragments/2876.extension | 4 - doc/whatsnew/fragments/3038.extension | 4 - doc/whatsnew/fragments/3044.bugfix | 3 - doc/whatsnew/fragments/3110.new_check | 4 - doc/whatsnew/fragments/3299.bugfix | 4 - doc/whatsnew/fragments/3299.false_positive | 3 - doc/whatsnew/fragments/3368.false_positive | 3 - doc/whatsnew/fragments/3391.extension | 6 - doc/whatsnew/fragments/3701.bugfix | 3 - doc/whatsnew/fragments/3822.false_positive | 3 - doc/whatsnew/fragments/3899.bugfix | 4 - doc/whatsnew/fragments/4150.false_negative | 3 - doc/whatsnew/fragments/4354.bugfix | 3 - doc/whatsnew/fragments/4562.bugfix | 3 - doc/whatsnew/fragments/4655.bugfix | 3 - doc/whatsnew/fragments/4743.bugfix | 4 - doc/whatsnew/fragments/4792.false_negative | 3 - doc/whatsnew/fragments/4809.false_positive | 3 - doc/whatsnew/fragments/4836.bugfix | 3 - doc/whatsnew/fragments/4836.new_check | 3 - doc/whatsnew/fragments/4857.false_positive | 3 - doc/whatsnew/fragments/4913.false_negative | 3 - doc/whatsnew/fragments/4984.false_positive | 3 - doc/whatsnew/fragments/519.false_negative | 3 - doc/whatsnew/fragments/5327.false_positive | 4 - doc/whatsnew/fragments/5362.feature | 3 - doc/whatsnew/fragments/5401.feature | 4 - doc/whatsnew/fragments/5478.bugfix | 3 - doc/whatsnew/fragments/5636.bugfix | 3 - doc/whatsnew/fragments/5788.false_positive | 3 - doc/whatsnew/fragments/5797.new_check | 4 - doc/whatsnew/fragments/5886.false_positive | 3 - doc/whatsnew/fragments/5920.other | 3 - doc/whatsnew/fragments/6001.false_positive | 3 - doc/whatsnew/fragments/6006.feature | 5 - doc/whatsnew/fragments/6242.bugfix | 4 - doc/whatsnew/fragments/6489.new_check | 4 - doc/whatsnew/fragments/6543.feature | 5 - doc/whatsnew/fragments/6592.false_positive | 3 - doc/whatsnew/fragments/6639.false_negative | 3 - doc/whatsnew/fragments/6795.bugfix | 3 - doc/whatsnew/fragments/6917.new_check | 4 - doc/whatsnew/fragments/7003.bugfix | 4 - doc/whatsnew/fragments/7124.other | 3 - doc/whatsnew/fragments/7169.bugfix | 3 - doc/whatsnew/fragments/7208.user_action | 10 - doc/whatsnew/fragments/7209.false_positive | 3 - doc/whatsnew/fragments/7214.bugfix | 3 - doc/whatsnew/fragments/7264.bugfix | 8 - doc/whatsnew/fragments/7264.internal | 9 - doc/whatsnew/fragments/7281.extension | 4 - doc/whatsnew/fragments/7290.false_positive | 3 - doc/whatsnew/fragments/7311.false_positive | 4 - doc/whatsnew/fragments/7346.other | 4 - doc/whatsnew/fragments/7368.false_positive | 3 - doc/whatsnew/fragments/7380.bugfix | 3 - doc/whatsnew/fragments/7390.bugfix | 3 - doc/whatsnew/fragments/7398.other | 4 - doc/whatsnew/fragments/7401.bugfix | 3 - doc/whatsnew/fragments/7453.bugfix | 3 - doc/whatsnew/fragments/7457.bugfix | 3 - doc/whatsnew/fragments/7461.bugfix | 3 - doc/whatsnew/fragments/7463.other | 3 - doc/whatsnew/fragments/7467.bugfix | 3 - doc/whatsnew/fragments/7471.bugfix | 3 - doc/whatsnew/fragments/7485.other | 3 - doc/whatsnew/fragments/7494.new_check | 4 - doc/whatsnew/fragments/7495.bugfix | 4 - doc/whatsnew/fragments/7501.false_positive | 3 - doc/whatsnew/fragments/7507.bugfix | 4 - doc/whatsnew/fragments/7507.other | 3 - doc/whatsnew/fragments/7522.bugfix | 3 - doc/whatsnew/fragments/7524.bugfix | 4 - doc/whatsnew/fragments/7528.bugfix | 3 - doc/whatsnew/fragments/7529.false_positive | 4 - doc/whatsnew/fragments/7539.false_negative | 7 - doc/whatsnew/fragments/7544.other | 3 - doc/whatsnew/fragments/7546.new_check | 4 - doc/whatsnew/fragments/7547.false_negative | 3 - doc/whatsnew/fragments/7563.false_positive | 3 - doc/whatsnew/fragments/7569.bugfix | 3 - doc/whatsnew/fragments/7570.bugfix | 4 - doc/whatsnew/fragments/7609.false_positive | 4 - doc/whatsnew/fragments/7610.bugfix | 3 - doc/whatsnew/fragments/7626.false_positive | 4 - doc/whatsnew/fragments/7626.other | 3 - doc/whatsnew/fragments/7629.other | 4 - doc/whatsnew/fragments/7635.bugfix | 7 - doc/whatsnew/fragments/7636.extension | 4 - doc/whatsnew/fragments/7655.other | 3 - doc/whatsnew/fragments/7661.bugfix | 3 - doc/whatsnew/fragments/7682.false_positive | 3 - doc/whatsnew/fragments/7690.new_check | 3 - doc/whatsnew/fragments/7699.false_negative | 3 - doc/whatsnew/fragments/7737.other | 5 - doc/whatsnew/fragments/7742.bugfix | 3 - doc/whatsnew/fragments/7760.new_check | 5 - doc/whatsnew/fragments/7762.false_negative | 4 - doc/whatsnew/fragments/7762.new_check | 4 - doc/whatsnew/fragments/7765.false_positive | 3 - doc/whatsnew/fragments/7770.false_negative | 3 - doc/whatsnew/fragments/7779.false_positive | 4 - doc/whatsnew/fragments/7782.bugfix | 4 - doc/whatsnew/fragments/7788.false_negative | 3 - doc/whatsnew/fragments/7818.false_negative | 3 - doc/whatsnew/fragments/7821.bugfix | 3 - doc/whatsnew/fragments/7827.false_positive | 3 - doc/whatsnew/fragments/7828.bugfix | 3 - doc/whatsnew/fragments/7857.false_positive | 3 - doc/whatsnew/fragments/7860.false_positive | 3 - doc/whatsnew/fragments/7882.false_positive | 3 - doc/whatsnew/fragments/7931.bugfix | 3 - doc/whatsnew/fragments/7938.bugfix | 3 - doc/whatsnew/fragments/7957.other | 3 - doc/whatsnew/fragments/7964.false_negative | 3 - doc/whatsnew/fragments/7979.false_positive | 4 - doc/whatsnew/fragments/8015.new_check | 5 - doc/whatsnew/fragments/8051.false_positive | 4 - doc/whatsnew/fragments/8067.bugfix | 3 - doc/whatsnew/fragments/8081.bugfix | 3 - doc/whatsnew/fragments/8089.false_positive | 3 - doc/whatsnew/fragments/8100.false_positive | 3 - doc/whatsnew/fragments/8119.bugfix | 3 - doc/whatsnew/fragments/8120.false_positive | 3 - examples/pylintrc | 3 + examples/pyproject.toml | 3 + pylint/__pkginfo__.py | 2 +- tbump.toml | 2 +- 132 files changed, 727 insertions(+), 455 deletions(-) delete mode 100644 doc/whatsnew/fragments/2374.false_negative delete mode 100644 doc/whatsnew/fragments/2876.extension delete mode 100644 doc/whatsnew/fragments/3038.extension delete mode 100644 doc/whatsnew/fragments/3044.bugfix delete mode 100644 doc/whatsnew/fragments/3110.new_check delete mode 100644 doc/whatsnew/fragments/3299.bugfix delete mode 100644 doc/whatsnew/fragments/3299.false_positive delete mode 100644 doc/whatsnew/fragments/3368.false_positive delete mode 100644 doc/whatsnew/fragments/3391.extension delete mode 100644 doc/whatsnew/fragments/3701.bugfix delete mode 100644 doc/whatsnew/fragments/3822.false_positive delete mode 100644 doc/whatsnew/fragments/3899.bugfix delete mode 100644 doc/whatsnew/fragments/4150.false_negative delete mode 100644 doc/whatsnew/fragments/4354.bugfix delete mode 100644 doc/whatsnew/fragments/4562.bugfix delete mode 100644 doc/whatsnew/fragments/4655.bugfix delete mode 100644 doc/whatsnew/fragments/4743.bugfix delete mode 100644 doc/whatsnew/fragments/4792.false_negative delete mode 100644 doc/whatsnew/fragments/4809.false_positive delete mode 100644 doc/whatsnew/fragments/4836.bugfix delete mode 100644 doc/whatsnew/fragments/4836.new_check delete mode 100644 doc/whatsnew/fragments/4857.false_positive delete mode 100644 doc/whatsnew/fragments/4913.false_negative delete mode 100644 doc/whatsnew/fragments/4984.false_positive delete mode 100644 doc/whatsnew/fragments/519.false_negative delete mode 100644 doc/whatsnew/fragments/5327.false_positive delete mode 100644 doc/whatsnew/fragments/5362.feature delete mode 100644 doc/whatsnew/fragments/5401.feature delete mode 100644 doc/whatsnew/fragments/5478.bugfix delete mode 100644 doc/whatsnew/fragments/5636.bugfix delete mode 100644 doc/whatsnew/fragments/5788.false_positive delete mode 100644 doc/whatsnew/fragments/5797.new_check delete mode 100644 doc/whatsnew/fragments/5886.false_positive delete mode 100644 doc/whatsnew/fragments/5920.other delete mode 100644 doc/whatsnew/fragments/6001.false_positive delete mode 100644 doc/whatsnew/fragments/6006.feature delete mode 100644 doc/whatsnew/fragments/6242.bugfix delete mode 100644 doc/whatsnew/fragments/6489.new_check delete mode 100644 doc/whatsnew/fragments/6543.feature delete mode 100644 doc/whatsnew/fragments/6592.false_positive delete mode 100644 doc/whatsnew/fragments/6639.false_negative delete mode 100644 doc/whatsnew/fragments/6795.bugfix delete mode 100644 doc/whatsnew/fragments/6917.new_check delete mode 100644 doc/whatsnew/fragments/7003.bugfix delete mode 100644 doc/whatsnew/fragments/7124.other delete mode 100644 doc/whatsnew/fragments/7169.bugfix delete mode 100644 doc/whatsnew/fragments/7208.user_action delete mode 100644 doc/whatsnew/fragments/7209.false_positive delete mode 100644 doc/whatsnew/fragments/7214.bugfix delete mode 100644 doc/whatsnew/fragments/7264.bugfix delete mode 100644 doc/whatsnew/fragments/7264.internal delete mode 100644 doc/whatsnew/fragments/7281.extension delete mode 100644 doc/whatsnew/fragments/7290.false_positive delete mode 100644 doc/whatsnew/fragments/7311.false_positive delete mode 100644 doc/whatsnew/fragments/7346.other delete mode 100644 doc/whatsnew/fragments/7368.false_positive delete mode 100644 doc/whatsnew/fragments/7380.bugfix delete mode 100644 doc/whatsnew/fragments/7390.bugfix delete mode 100644 doc/whatsnew/fragments/7398.other delete mode 100644 doc/whatsnew/fragments/7401.bugfix delete mode 100644 doc/whatsnew/fragments/7453.bugfix delete mode 100644 doc/whatsnew/fragments/7457.bugfix delete mode 100644 doc/whatsnew/fragments/7461.bugfix delete mode 100644 doc/whatsnew/fragments/7463.other delete mode 100644 doc/whatsnew/fragments/7467.bugfix delete mode 100644 doc/whatsnew/fragments/7471.bugfix delete mode 100644 doc/whatsnew/fragments/7485.other delete mode 100644 doc/whatsnew/fragments/7494.new_check delete mode 100644 doc/whatsnew/fragments/7495.bugfix delete mode 100644 doc/whatsnew/fragments/7501.false_positive delete mode 100644 doc/whatsnew/fragments/7507.bugfix delete mode 100644 doc/whatsnew/fragments/7507.other delete mode 100644 doc/whatsnew/fragments/7522.bugfix delete mode 100644 doc/whatsnew/fragments/7524.bugfix delete mode 100644 doc/whatsnew/fragments/7528.bugfix delete mode 100644 doc/whatsnew/fragments/7529.false_positive delete mode 100644 doc/whatsnew/fragments/7539.false_negative delete mode 100644 doc/whatsnew/fragments/7544.other delete mode 100644 doc/whatsnew/fragments/7546.new_check delete mode 100644 doc/whatsnew/fragments/7547.false_negative delete mode 100644 doc/whatsnew/fragments/7563.false_positive delete mode 100644 doc/whatsnew/fragments/7569.bugfix delete mode 100644 doc/whatsnew/fragments/7570.bugfix delete mode 100644 doc/whatsnew/fragments/7609.false_positive delete mode 100644 doc/whatsnew/fragments/7610.bugfix delete mode 100644 doc/whatsnew/fragments/7626.false_positive delete mode 100644 doc/whatsnew/fragments/7626.other delete mode 100644 doc/whatsnew/fragments/7629.other delete mode 100644 doc/whatsnew/fragments/7635.bugfix delete mode 100644 doc/whatsnew/fragments/7636.extension delete mode 100644 doc/whatsnew/fragments/7655.other delete mode 100644 doc/whatsnew/fragments/7661.bugfix delete mode 100644 doc/whatsnew/fragments/7682.false_positive delete mode 100644 doc/whatsnew/fragments/7690.new_check delete mode 100644 doc/whatsnew/fragments/7699.false_negative delete mode 100644 doc/whatsnew/fragments/7737.other delete mode 100644 doc/whatsnew/fragments/7742.bugfix delete mode 100644 doc/whatsnew/fragments/7760.new_check delete mode 100644 doc/whatsnew/fragments/7762.false_negative delete mode 100644 doc/whatsnew/fragments/7762.new_check delete mode 100644 doc/whatsnew/fragments/7765.false_positive delete mode 100644 doc/whatsnew/fragments/7770.false_negative delete mode 100644 doc/whatsnew/fragments/7779.false_positive delete mode 100644 doc/whatsnew/fragments/7782.bugfix delete mode 100644 doc/whatsnew/fragments/7788.false_negative delete mode 100644 doc/whatsnew/fragments/7818.false_negative delete mode 100644 doc/whatsnew/fragments/7821.bugfix delete mode 100644 doc/whatsnew/fragments/7827.false_positive delete mode 100644 doc/whatsnew/fragments/7828.bugfix delete mode 100644 doc/whatsnew/fragments/7857.false_positive delete mode 100644 doc/whatsnew/fragments/7860.false_positive delete mode 100644 doc/whatsnew/fragments/7882.false_positive delete mode 100644 doc/whatsnew/fragments/7931.bugfix delete mode 100644 doc/whatsnew/fragments/7938.bugfix delete mode 100644 doc/whatsnew/fragments/7957.other delete mode 100644 doc/whatsnew/fragments/7964.false_negative delete mode 100644 doc/whatsnew/fragments/7979.false_positive delete mode 100644 doc/whatsnew/fragments/8015.new_check delete mode 100644 doc/whatsnew/fragments/8051.false_positive delete mode 100644 doc/whatsnew/fragments/8067.bugfix delete mode 100644 doc/whatsnew/fragments/8081.bugfix delete mode 100644 doc/whatsnew/fragments/8089.false_positive delete mode 100644 doc/whatsnew/fragments/8100.false_positive delete mode 100644 doc/whatsnew/fragments/8119.bugfix delete mode 100644 doc/whatsnew/fragments/8120.false_positive diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 2dbbe3688a..47e3c05c54 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -130,6 +130,7 @@ contributors: - Pavel Roskin - David Gilman - へーさん +- Yilei "Dolee" Yang - Thomas Hisch - Marianna Polatoglou : minor contribution for wildcard import check - Manuel Vázquez Acosta @@ -151,7 +152,6 @@ contributors: * Added new extension which detects comparing integers to zero, * Added new useless-return checker, * Added new try-except-raise checker -- Yilei "Dolee" Yang - Téo Bouvard - Mihai Balint - Mark Bell @@ -176,6 +176,7 @@ contributors: - Paul Lichtenberger - Or Bahari - Mr. Senko +- Mike Frysinger - Martin von Gagern (Google): Added 'raising-format-tuple' warning. - Martin Vielsmaier - Martin Pool (Google): @@ -207,7 +208,6 @@ contributors: - Nicolas Dickreuter - Nick Bastin - Nathaniel Manista : suspicious lambda checking -- Mike Frysinger - Maksym Humetskyi (mhumetskyi) * Fixed ignored empty functions by similarities checker with "ignore-signatures" option enabled * Ignore function decorators signatures as well by similarities checker with "ignore-signatures" option enabled @@ -272,6 +272,7 @@ contributors: - Justin Li - John Kirkham - Jens H. Nielsen +- James Addison <55152140+jayaddison@users.noreply.github.com> - Ioana Tagirta : fix bad thread instantiation check - Ikraduya Edian : Added new checks 'consider-using-generator' and 'use-a-generator'. - Hugues Bruant @@ -471,7 +472,6 @@ contributors: - James M. Allen - James Lingard - James Broadhead -- James Addison <55152140+jayaddison@users.noreply.github.com> - Jakub Kulík - Jakob Normark - Jake Lishman @@ -506,6 +506,7 @@ contributors: - Denis Laxalde - David Lawson - David Cain +- Dave Bunten - Danny Hermes - Daniele Procida - Daniela Plascencia diff --git a/doc/user_guide/checkers/features.rst b/doc/user_guide/checkers/features.rst index 104b8b40ec..1ebf5ca532 100644 --- a/doc/user_guide/checkers/features.rst +++ b/doc/user_guide/checkers/features.rst @@ -643,7 +643,7 @@ See also :ref:`method_args checker's options' documentation `_) + + + +New Features +------------ + +- Added the ``no-header`` output format. If enabled with + ``--output-format=no-header``, it will not include the module name in the + output. + + Closes #5362 (`#5362 `_) + +- Added configuration option ``clear-cache-post-run`` to support server-like + usage. + Use this flag if you expect the linted files to be altered between runs. + + Refs #5401 (`#5401 `_) + +- Add ``--allow-reexport-from-package`` option to configure the + ``useless-import-alias`` check not to emit a warning if a name + is reexported from a package. + + Closes #6006 (`#6006 `_) + +- Update ``pyreverse`` to differentiate between aggregations and compositions. + ``pyreverse`` checks if it's an Instance or a Call of an object via method + parameters (via type hints) + to decide if it's a composition or an aggregation. + + Refs #6543 (`#6543 `_) + + + +New Checks +---------- + +- Adds a ``pointless-exception-statement`` check that emits a warning when an + Exception is created and not assigned, raised or returned. + + Refs #3110 (`#3110 `_) + +- Add a ``shadowed-import`` message for aliased imports. + + Closes #4836 (`#4836 `_) + +- Add new check called ``unbalanced-dict-unpacking`` to check for unbalanced + dict unpacking + in assignment and for loops. + + Closes #5797 (`#5797 `_) + +- Add new checker ``positional-only-arguments-expected`` to check for cases + when + positional-only arguments have been passed as keyword arguments. + + Closes #6489 (`#6489 `_) + +- Added ``singledispatch-method`` which informs that ``@singledispatch`` should + decorate functions and not class/instance methods. + Added ``singledispatchmethod-function`` which informs that + ``@singledispatchmethod`` should decorate class/instance methods and not + functions. + + Closes #6917 (`#6917 `_) + +- Rename ``broad-except`` to ``broad-exception-caught`` and add new checker + ``broad-exception-raised`` + which will warn if general exceptions ``BaseException`` or ``Exception`` are + raised. + + Closes #7494 (`#7494 `_) + +- Added ``nested-min-max`` which flags ``min(1, min(2, 3))`` to simplify to + ``min(1, 2, 3)``. + + Closes #7546 (`#7546 `_) + +- Extended ``use-dict-literal`` to also warn about call to ``dict()`` when + passing keyword arguments. + + Closes #7690 (`#7690 `_) + +- Add ``named-expr-without-context`` check to emit a warning if a named + expression is used outside a context like ``if``, ``for``, ``while``, or + a comprehension. + + Refs #7760 (`#7760 `_) + +- Add ``invalid-slice-step`` check to warn about a slice step value of ``0`` + for common builtin sequences. + + Refs #7762 (`#7762 `_) + +- Add ``consider-refactoring-into-while-condition`` check to recommend + refactoring when + a while loop is defined with a constant condition with an immediate ``if`` + statement to check for ``break`` condition as a first statement. + + Closes #8015 (`#8015 `_) + + + +Extensions +---------- + +- Add new extension checker ``dict-init-mutate`` that flags mutating a + dictionary immediately + after the dictionary was created. + + Closes #2876 (`#2876 `_) + +- Added ``bad-dunder-name`` extension check, which flags bad or misspelled + dunder methods. + You can use the ``good-dunder-names`` option to allow specific dunder names. + + Closes #3038 (`#3038 `_) + +- Added ``consider-using-augmented-assign`` check for ``CodeStyle`` extension + which flags ``x = x + 1`` to simplify to ``x += 1``. + This check is disabled by default. To use it, load the code style extension + with ``load-plugins=pylint.extensions.code_style`` and add + ``consider-using-augmented-assign`` in the ``enable`` option. + + Closes #3391 (`#3391 `_) + +- Add ``magic-number`` plugin checker for comparison with constants instead of + named constants or enums. + You can use it with ``--load-plugins=pylint.extensions.magic_value``. + + Closes #7281 (`#7281 `_) + +- Add ``redundant-typehint-argument`` message for `typing` plugin for duplicate + assign typehints. + Enable the plugin to enable the message with: + ``--load-plugins=pylint.extensions.typing``. + + Closes #7636 (`#7636 `_) + + + +False Positives Fixed +--------------------- + +- Fix false positive for ``unused-variable`` and ``unused-import`` when a name + is only used in a string literal type annotation. + + Closes #3299 (`#3299 `_) + +- Document a known false positive for ``useless-suppression`` when disabling + ``line-too-long`` in a module with only comments and no code. + + Closes #3368 (`#3368 `_) + +- ``trailing-whitespaces`` is no longer reported within strings. + + Closes #3822 (`#3822 `_) + +- Fix false positive for ``global-variable-not-assigned`` when a global + variable is re-assigned via an ``ImportFrom`` node. + + Closes #4809 (`#4809 `_) + +- Fix false positive for ``use-maxsplit-arg`` with custom split method. + + Closes #4857 (`#4857 `_) + +- Fix ``logging-fstring-interpolation`` false positive raised when logging and + f-string with ``%s`` formatting. + + Closes #4984 (`#4984 `_) + +- Fix false-positive for ``used-before-assignment`` in pattern matching + with a guard. + + Closes #5327 (`#5327 `_) + +- Fix ``use-sequence-for-iteration`` when unpacking a set with ``*``. + + Closes #5788 (`#5788 `_) + +- Fix ``deprecated-method`` false positive when alias for method is similar to + name of deprecated method. + + Closes #5886 (`#5886 `_) + +- Fix false positive ``assigning-non-slot`` when a class attribute is + re-assigned. + + Closes #6001 (`#6001 `_) + +- Fix false positive for ``too-many-function-args`` when a function call is + assigned to a class attribute inside the class where the function is defined. + + Closes #6592 (`#6592 `_) + +- Fixes false positive ``abstract-method`` on Protocol classes. + + Closes #7209 (`#7209 `_) + +- Pylint now understands the ``kw_only`` keyword argument for ``dataclass``. + + Closes #7290, closes #6550, closes #5857 (`#7290 + `_) + +- Fix false positive for ``undefined-loop-variable`` in ``for-else`` loops that + use a function + having a return type annotation of ``NoReturn`` or ``Never``. + + Closes #7311 (`#7311 `_) + +- Fix ``used-before-assignment`` for functions/classes defined in type checking + guard. + + Closes #7368 (`#7368 `_) + +- Fix false positive for ``unhashable-member`` when subclassing ``dict`` and + using the subclass as a dictionary key. + + Closes #7501 (`#7501 `_) + +- Fix the message for ``unnecessary-dunder-call`` for ``__aiter__`` and + ``__aneext__``. Also + only emit the warning when ``py-version`` >= 3.10. + + Closes #7529 (`#7529 `_) + +- Fix ``used-before-assignment`` false positive when else branch calls + ``sys.exit`` or similar terminating functions. + + Closes #7563 (`#7563 `_) + +- Fix a false positive for ``used-before-assignment`` for imports guarded by + ``typing.TYPE_CHECKING`` later used in variable annotations. + + Closes #7609 (`#7609 `_) + +- Fix a false positive for ``simplify-boolean-expression`` when multiple values + are inferred for a constant. + + Closes #7626 (`#7626 `_) + +- ``unnecessary-list-index-lookup`` will not be wrongly emitted if + ``enumerate`` is called with ``start``. + + Closes #7682 (`#7682 `_) + +- Don't warn about ``stop-iteration-return`` when using ``next()`` over + ``itertools.cycle``. + + Closes #7765 (`#7765 `_) + +- Fixes ``used-before-assignment`` false positive when the walrus operator + is used in a ternary operator. + + Closes #7779 (`#7779 `_) + +- Fix ``missing-param-doc`` false positive when function parameter has an + escaped underscore. + + Closes #7827 (`#7827 `_) + +- Fixes ``method-cache-max-size-none`` false positive for methods inheriting + from ``Enum``. + + Closes #7857 (`#7857 `_) + +- ``multiple-statements`` no longer triggers for function stubs using inlined + ``...``. + + Closes #7860 (`#7860 `_) + +- Fix a false positive for ``used-before-assignment`` when a name guarded by + ``if TYPE_CHECKING:`` is used as a type annotation in a function body and + later re-imported in the same scope. + + Closes #7882 (`#7882 `_) + +- Prevent ``used-before-assignment`` when imports guarded by ``if + TYPE_CHECKING`` + are guarded again when used. + + Closes #7979 (`#7979 `_) + +- Fixes false positive for ``try-except-raise`` with multiple exceptions in one + except statement if exception are in different namespace. + + Closes #8051 (`#8051 `_) + +- Fix ``invalid-name`` errors for ``typing_extension.TypeVar``. + + Refs #8089 (`#8089 `_) + +- Fix ``no-kwoa`` false positive for context managers. + + Closes #8100 (`#8100 `_) + +- Fix a false positive for ``redefined-variable-type`` when ``async`` methods + are present. + + Closes #8120 (`#8120 `_) + + + +False Negatives Fixed +--------------------- + +- Code following a call to ``quit``, ``exit``, ``sys.exit`` or ``os._exit`` + will be marked as `unreachable`. + + Refs #519 (`#519 `_) + +- Emit ``used-before-assignment`` when function arguments are redefined inside + an inner function and accessed there before assignment. + + Closes #2374 (`#2374 `_) + +- Fix a false negative for ``unused-import`` when one module used an import in + a type annotation that was also used in another module. + + Closes #4150 (`#4150 `_) + +- Flag ``superfluous-parens`` if parentheses are used during string + concatenation. + + Closes #4792 (`#4792 `_) + +- Emit ``used-before-assignment`` when relying on names only defined under + conditions always testing false. + + Closes #4913 (`#4913 `_) + +- ``consider-using-join`` can now be emitted for non-empty string separators. + + Closes #6639 (`#6639 `_) + +- Emit ``used-before-assignment`` for further imports guarded by + ``TYPE_CHECKING`` + + Previously, this message was only emitted for imports guarded directly under + ``TYPE_CHECKING``, not guarded two if-branches deep, nor when + ``TYPE_CHECKING`` + was imported from ``typing`` under an alias. + + Closes #7539 (`#7539 `_) + +- Fix a false negative for ``unused-import`` when a constant inside + ``typing.Annotated`` was treated as a reference to an import. + + Closes #7547 (`#7547 `_) + +- ``consider-using-any-or-all`` message will now be raised in cases when + boolean is initialized, reassigned during loop, and immediately returned. + + Closes #7699 (`#7699 `_) + +- Extend ``invalid-slice-index`` to emit an warning for invalid slice indices + used with string and byte sequences, and range objects. + + Refs #7762 (`#7762 `_) + +- Fixes ``unnecessary-list-index-lookup`` false negative when ``enumerate`` is + called with ``iterable`` as a kwarg. + + Closes #7770 (`#7770 `_) + +- ``no-else-return`` or ``no-else-raise`` will be emitted if ``except`` block + always returns or raises. + + Closes #7788 (`#7788 `_) + +- Fix ``dangerous-default-value`` false negative when ``*`` is used. + + Closes #7818 (`#7818 `_) + +- ``consider-using-with`` now triggers for ``pathlib.Path.open``. + + Closes #7964 (`#7964 `_) + + + +Other Bug Fixes +--------------- + +- Fix bug in detecting ``unused-variable`` when iterating on variable. + + Closes #3044 (`#3044 `_) + +- Fix bug in scanning of names inside arguments to ``typing.Literal``. + See https://peps.python.org/pep-0586/#literals-enums-and-forward-references + for details. + + Refs #3299 (`#3299 `_) + +- Update ``disallowed-name`` check to flag module-level variables. + + Closes #3701 (`#3701 `_) + +- Pylint will no longer deadlock if a parallel job is killed but fail + immediately instead. + + Closes #3899 (`#3899 `_) + +- Fix ignored files being linted when passed on stdin. + + Closes #4354 (`#4354 `_) + +- Fix ``no-member`` false negative when augmented assign is done manually, + without ``+=``. + + Closes #4562 (`#4562 `_) + +- Any assertion on a populated tuple will now receive a ``assert-on-tuple`` + warning. + + Closes #4655 (`#4655 `_) + +- ``missing-return-doc``, ``missing-raises-doc`` and ``missing-yields-doc`` now + respect + the ``no-docstring-rgx`` option. + + Closes #4743 (`#4743 `_) + +- Update ``reimported`` help message for clarity. + + Closes #4836 (`#4836 `_) + +- ``consider-iterating-dictionary`` will no longer be raised if bitwise + operations are used. + + Closes #5478 (`#5478 `_) + +- Using custom braces in ``msg-template`` will now work properly. + + Closes #5636 (`#5636 `_) + +- Pylint will now filter duplicates given to it before linting. The output + should + be the same whether a file is given/discovered multiple times or not. + + Closes #6242, #4053 (`#6242 `_) + +- Remove ``__index__`` dunder method call from ``unnecessary-dunder-call`` + check. + + Closes #6795 (`#6795 `_) + +- Fixed handling of ``--`` as separator between positional arguments and flags. + This was not actually fixed in 2.14.5. + + Closes #7003, Refs #7096 (`#7003 + `_) + +- Don't crash on ``OSError`` in config file discovery. + + Closes #7169 (`#7169 `_) + +- Messages sent to reporter are now copied so a reporter cannot modify the + message sent to other reporters. + + Closes #7214 (`#7214 `_) + +- Fixed a case where custom plugins specified by command line could silently + fail. + + Specifically, if a plugin relies on the ``init-hook`` option changing + ``sys.path`` before + it can be imported, this will now emit a ``bad-plugin-value`` message. Before + this + change, it would silently fail to register the plugin for use, but would load + any configuration, which could have unintended effects. + + Fixes part of #7264. (`#7264 `_) + +- Update ``modified_iterating`` checker to fix a crash with ``for`` loops on + empty list. + + Closes #7380 (`#7380 `_) + +- Update wording for ``arguments-differ`` and ``arguments-renamed`` to clarify + overriding object. + + Closes #7390 (`#7390 `_) + +- ``disable-next`` is now correctly scoped to only the succeeding line. + + Closes #7401 (`#7401 `_) + +- Fixed a crash in the ``unhashable-member`` checker when using a ``lambda`` as + a dict key. + + Closes #7453 (`#7453 `_) + +- Add ``mailcap`` to deprecated modules list. + + Closes #7457 (`#7457 `_) + +- Fix a crash in the ``modified-iterating-dict`` checker involving instance + attributes. + + Closes #7461 (`#7461 `_) + +- ``invalid-class-object`` does not crash anymore when ``__class__`` is + assigned alongside another variable. + + Closes #7467 (`#7467 `_) + +- ``--help-msg`` now accepts a comma-separated list of message IDs again. + + Closes #7471 (`#7471 `_) + +- Allow specifying non-builtin exceptions in the ``overgeneral-exception`` + option + using an exception's qualified name. + + Closes #7495 (`#7495 `_) + +- Report ``no-self-argument`` rather than ``no-method-argument`` for methods + with variadic arguments. + + Closes #7507 (`#7507 `_) + +- Fixed an issue where ``syntax-error`` couldn't be raised on files with + invalid encodings. + + Closes #7522 (`#7522 `_) + +- Fix false positive for ``redefined-outer-name`` when aliasing ``typing`` + e.g. as ``t`` and guarding imports under ``t.TYPE_CHECKING``. + + Closes #7524 (`#7524 `_) + +- Fixed a crash of the ``modified_iterating`` checker when iterating on a set + defined as a class attribute. + + Closes #7528 (`#7528 `_) + +- Use ``py-version`` to determine if a message should be emitted for messages + defined with ``max-version`` or ``min-version``. + + Closes #7569 (`#7569 `_) + +- Improve ``bad-thread-instantiation`` check to warn if ``target`` is not + passed in as a keyword argument + or as a second argument. + + Closes #7570 (`#7570 `_) + +- Fixes edge case of custom method named ``next`` raised an astroid error. + + Closes #7610 (`#7610 `_) + +- Fixed a multi-processing crash that prevents using any more than 1 thread on + MacOS. + + The returned module objects and errors that were cached by the linter plugin + loader + cannot be reliably pickled. This means that ``dill`` would throw an error + when + attempting to serialise the linter object for multi-processing use. + + Closes #7635. (`#7635 `_) + +- Fix crash that happened when parsing files with unexpected encoding starting + with 'utf' like ``utf13``. + + Closes #7661 (`#7661 `_) + +- Fix a crash when a child class with an ``__init__`` method inherits from a + parent class with an ``__init__`` class attribute. + + Closes #7742 (`#7742 `_) + +- Fix ``valid-metaclass-classmethod-first-arg`` default config value from "cls" + to "mcs" + which would cause both a false-positive and false-negative. + + Closes #7782 (`#7782 `_) + +- Fixes a crash in the ``unnecessary_list_index_lookup`` check when using + ``enumerate`` with ``start`` and a class attribute. + + Closes #7821 (`#7821 `_) + +- Fixes a crash in ``stop-iteration-return`` when the ``next`` builtin is + called without arguments. + + Closes #7828 (`#7828 `_) + +- When pylint exit due to bad arguments being provided the exit code will now + be the expected ``32``. + + Refs #7931 (`#7931 `_) + +- Fixes a ``ModuleNotFound`` exception when running pylint on a Django project + with the ``pylint_django`` plugin enabled. + + Closes #7938 (`#7938 `_) + +- Fixed a crash when inferring a value and using its qname on a slice that was + being incorrectly called. + + Closes #8067 (`#8067 `_) + +- Use better regex to check for private attributes. + + Refs #8081 (`#8081 `_) + +- Fix issue with new typing Union syntax in runtime context for Python 3.10+. + + Closes #8119 (`#8119 `_) + + + +Other Changes +------------- + +- Pylint now provides basic support for Python 3.11. + + Closes #5920 (`#5920 `_) + +- Update message for ``abstract-method`` to include child class name. + + Closes #7124 (`#7124 `_) + +- Update Pyreverse's dot and plantuml printers to detect when class methods are + abstract and show them with italic font. + For the dot printer update the label to use html-like syntax. + + Closes #7346 (`#7346 `_) + +- The ``docparams`` extension now considers typing in Numpy style docstrings + as "documentation" for the ``missing-param-doc`` message. + + Refs #7398 (`#7398 `_) + +- Relevant ``DeprecationWarnings`` are now raised with ``stacklevel=2``, so + they have the callsite attached in the message. + + Closes #7463 (`#7463 `_) + +- Add a ``minimal`` option to ``pylint-config`` and its toml generator. + + Closes #7485 (`#7485 `_) + +- Add method name to the error messages of ``no-method-argument`` and + ``no-self-argument``. + + Closes #7507 (`#7507 `_) + +- Prevent leaving the pip install cache in the Docker image. + + Refs #7544 (`#7544 `_) + +- Add a keyword-only ``compare_constants`` argument to ``safe_infer``. + + Refs #7626 (`#7626 `_) + +- Add ``default_enabled`` option to optional message dict. Provides an option + to disable a checker message by default. + To use a disabled message, the user must enable it explicitly by adding the + message to the ``enable`` option. + + Refs #7629 (`#7629 `_) + +- Sort ``--generated-rcfile`` output. + + Refs #7655 (`#7655 `_) + +- epylint is now deprecated and will be removed in pylint 3.0.0. All emacs and + flymake related + files were removed and their support will now happen in an external + repository : + https://github.com/emacsorphanage/pylint. + + Closes #7737 (`#7737 `_) + +- Adds test for existing preferred-modules configuration functionality. + + Refs #7957 (`#7957 `_) + + + +Internal Changes +---------------- + +- Add and fix regression tests for plugin loading. + + This shores up the tests that cover the loading of custom plugins as affected + by any changes made to the ``sys.path`` during execution of an ``init-hook``. + Given the existing contract of allowing plugins to be loaded by fiddling with + the path in this way, this is now the last bit of work needed to close Github + issue #7264. + + Closes #7264 (`#7264 `_) diff --git a/doc/whatsnew/fragments/2374.false_negative b/doc/whatsnew/fragments/2374.false_negative deleted file mode 100644 index 251ffc396c..0000000000 --- a/doc/whatsnew/fragments/2374.false_negative +++ /dev/null @@ -1,4 +0,0 @@ -Emit ``used-before-assignment`` when function arguments are redefined inside -an inner function and accessed there before assignment. - -Closes #2374 diff --git a/doc/whatsnew/fragments/2876.extension b/doc/whatsnew/fragments/2876.extension deleted file mode 100644 index a8353a32ef..0000000000 --- a/doc/whatsnew/fragments/2876.extension +++ /dev/null @@ -1,4 +0,0 @@ -Add new extension checker ``dict-init-mutate`` that flags mutating a dictionary immediately -after the dictionary was created. - -Closes #2876 diff --git a/doc/whatsnew/fragments/3038.extension b/doc/whatsnew/fragments/3038.extension deleted file mode 100644 index 8e61147fc3..0000000000 --- a/doc/whatsnew/fragments/3038.extension +++ /dev/null @@ -1,4 +0,0 @@ -Added ``bad-dunder-name`` extension check, which flags bad or misspelled dunder methods. -You can use the ``good-dunder-names`` option to allow specific dunder names. - -Closes #3038 diff --git a/doc/whatsnew/fragments/3044.bugfix b/doc/whatsnew/fragments/3044.bugfix deleted file mode 100644 index 9f764ca4b5..0000000000 --- a/doc/whatsnew/fragments/3044.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fix bug in detecting ``unused-variable`` when iterating on variable. - -Closes #3044 diff --git a/doc/whatsnew/fragments/3110.new_check b/doc/whatsnew/fragments/3110.new_check deleted file mode 100644 index f4ae365ed1..0000000000 --- a/doc/whatsnew/fragments/3110.new_check +++ /dev/null @@ -1,4 +0,0 @@ -Adds a ``pointless-exception-statement`` check that emits a warning when an -Exception is created and not assigned, raised or returned. - -Refs #3110 diff --git a/doc/whatsnew/fragments/3299.bugfix b/doc/whatsnew/fragments/3299.bugfix deleted file mode 100644 index e97057cf71..0000000000 --- a/doc/whatsnew/fragments/3299.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Fix bug in scanning of names inside arguments to ``typing.Literal``. -See https://peps.python.org/pep-0586/#literals-enums-and-forward-references for details. - -Refs #3299 diff --git a/doc/whatsnew/fragments/3299.false_positive b/doc/whatsnew/fragments/3299.false_positive deleted file mode 100644 index b1e61c9313..0000000000 --- a/doc/whatsnew/fragments/3299.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix false positive for ``unused-variable`` and ``unused-import`` when a name is only used in a string literal type annotation. - -Closes #3299 diff --git a/doc/whatsnew/fragments/3368.false_positive b/doc/whatsnew/fragments/3368.false_positive deleted file mode 100644 index bdfa7de6c7..0000000000 --- a/doc/whatsnew/fragments/3368.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Document a known false positive for ``useless-suppression`` when disabling ``line-too-long`` in a module with only comments and no code. - -Closes #3368 diff --git a/doc/whatsnew/fragments/3391.extension b/doc/whatsnew/fragments/3391.extension deleted file mode 100644 index 8879610b20..0000000000 --- a/doc/whatsnew/fragments/3391.extension +++ /dev/null @@ -1,6 +0,0 @@ -Added ``consider-using-augmented-assign`` check for ``CodeStyle`` extension -which flags ``x = x + 1`` to simplify to ``x += 1``. -This check is disabled by default. To use it, load the code style extension -with ``load-plugins=pylint.extensions.code_style`` and add ``consider-using-augmented-assign`` in the ``enable`` option. - -Closes #3391 diff --git a/doc/whatsnew/fragments/3701.bugfix b/doc/whatsnew/fragments/3701.bugfix deleted file mode 100644 index fafcc00941..0000000000 --- a/doc/whatsnew/fragments/3701.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Update ``disallowed-name`` check to flag module-level variables. - -Closes #3701 diff --git a/doc/whatsnew/fragments/3822.false_positive b/doc/whatsnew/fragments/3822.false_positive deleted file mode 100644 index 00a2143cfb..0000000000 --- a/doc/whatsnew/fragments/3822.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -``trailing-whitespaces`` is no longer reported within strings. - -Closes #3822 diff --git a/doc/whatsnew/fragments/3899.bugfix b/doc/whatsnew/fragments/3899.bugfix deleted file mode 100644 index ed0ad38594..0000000000 --- a/doc/whatsnew/fragments/3899.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Pylint will no longer deadlock if a parallel job is killed but fail -immediately instead. - -Closes #3899 diff --git a/doc/whatsnew/fragments/4150.false_negative b/doc/whatsnew/fragments/4150.false_negative deleted file mode 100644 index f4b18d814e..0000000000 --- a/doc/whatsnew/fragments/4150.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -Fix a false negative for ``unused-import`` when one module used an import in a type annotation that was also used in another module. - -Closes #4150 diff --git a/doc/whatsnew/fragments/4354.bugfix b/doc/whatsnew/fragments/4354.bugfix deleted file mode 100644 index 09caf8d139..0000000000 --- a/doc/whatsnew/fragments/4354.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fix ignored files being linted when passed on stdin. - -Closes #4354 diff --git a/doc/whatsnew/fragments/4562.bugfix b/doc/whatsnew/fragments/4562.bugfix deleted file mode 100644 index 4e153d4876..0000000000 --- a/doc/whatsnew/fragments/4562.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``no-member`` false negative when augmented assign is done manually, without ``+=``. - -Closes #4562 diff --git a/doc/whatsnew/fragments/4655.bugfix b/doc/whatsnew/fragments/4655.bugfix deleted file mode 100644 index e30433d479..0000000000 --- a/doc/whatsnew/fragments/4655.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Any assertion on a populated tuple will now receive a ``assert-on-tuple`` warning. - -Closes #4655 diff --git a/doc/whatsnew/fragments/4743.bugfix b/doc/whatsnew/fragments/4743.bugfix deleted file mode 100644 index 1f8c30f1a7..0000000000 --- a/doc/whatsnew/fragments/4743.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -``missing-return-doc``, ``missing-raises-doc`` and ``missing-yields-doc`` now respect -the ``no-docstring-rgx`` option. - -Closes #4743 diff --git a/doc/whatsnew/fragments/4792.false_negative b/doc/whatsnew/fragments/4792.false_negative deleted file mode 100644 index 6d05ef565a..0000000000 --- a/doc/whatsnew/fragments/4792.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -Flag ``superfluous-parens`` if parentheses are used during string concatenation. - -Closes #4792 diff --git a/doc/whatsnew/fragments/4809.false_positive b/doc/whatsnew/fragments/4809.false_positive deleted file mode 100644 index a33be0ea50..0000000000 --- a/doc/whatsnew/fragments/4809.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix false positive for ``global-variable-not-assigned`` when a global variable is re-assigned via an ``ImportFrom`` node. - -Closes #4809 diff --git a/doc/whatsnew/fragments/4836.bugfix b/doc/whatsnew/fragments/4836.bugfix deleted file mode 100644 index 1257ebe7b6..0000000000 --- a/doc/whatsnew/fragments/4836.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Update ``reimported`` help message for clarity. - -Closes #4836 diff --git a/doc/whatsnew/fragments/4836.new_check b/doc/whatsnew/fragments/4836.new_check deleted file mode 100644 index ba14251afd..0000000000 --- a/doc/whatsnew/fragments/4836.new_check +++ /dev/null @@ -1,3 +0,0 @@ -Add a ``shadowed-import`` message for aliased imports. - -Closes #4836 diff --git a/doc/whatsnew/fragments/4857.false_positive b/doc/whatsnew/fragments/4857.false_positive deleted file mode 100644 index a244b83ef7..0000000000 --- a/doc/whatsnew/fragments/4857.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix false positive for ``use-maxsplit-arg`` with custom split method. - -Closes #4857 diff --git a/doc/whatsnew/fragments/4913.false_negative b/doc/whatsnew/fragments/4913.false_negative deleted file mode 100644 index bb8686347e..0000000000 --- a/doc/whatsnew/fragments/4913.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -Emit ``used-before-assignment`` when relying on names only defined under conditions always testing false. - -Closes #4913 diff --git a/doc/whatsnew/fragments/4984.false_positive b/doc/whatsnew/fragments/4984.false_positive deleted file mode 100644 index b319205641..0000000000 --- a/doc/whatsnew/fragments/4984.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``logging-fstring-interpolation`` false positive raised when logging and f-string with ``%s`` formatting. - -Closes #4984 diff --git a/doc/whatsnew/fragments/519.false_negative b/doc/whatsnew/fragments/519.false_negative deleted file mode 100644 index 7c8a0f45ce..0000000000 --- a/doc/whatsnew/fragments/519.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -Code following a call to ``quit``, ``exit``, ``sys.exit`` or ``os._exit`` will be marked as `unreachable`. - -Refs #519 diff --git a/doc/whatsnew/fragments/5327.false_positive b/doc/whatsnew/fragments/5327.false_positive deleted file mode 100644 index 0cac649f80..0000000000 --- a/doc/whatsnew/fragments/5327.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Fix false-positive for ``used-before-assignment`` in pattern matching -with a guard. - -Closes #5327 diff --git a/doc/whatsnew/fragments/5362.feature b/doc/whatsnew/fragments/5362.feature deleted file mode 100644 index b83d9397de..0000000000 --- a/doc/whatsnew/fragments/5362.feature +++ /dev/null @@ -1,3 +0,0 @@ -Added the ``no-header`` output format. If enabled with ``--output-format=no-header``, it will not include the module name in the output. - -Closes #5362 diff --git a/doc/whatsnew/fragments/5401.feature b/doc/whatsnew/fragments/5401.feature deleted file mode 100644 index 0fa34a8646..0000000000 --- a/doc/whatsnew/fragments/5401.feature +++ /dev/null @@ -1,4 +0,0 @@ -Added configuration option ``clear-cache-post-run`` to support server-like usage. -Use this flag if you expect the linted files to be altered between runs. - -Refs #5401 diff --git a/doc/whatsnew/fragments/5478.bugfix b/doc/whatsnew/fragments/5478.bugfix deleted file mode 100644 index 8cadb729c6..0000000000 --- a/doc/whatsnew/fragments/5478.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -``consider-iterating-dictionary`` will no longer be raised if bitwise operations are used. - -Closes #5478 diff --git a/doc/whatsnew/fragments/5636.bugfix b/doc/whatsnew/fragments/5636.bugfix deleted file mode 100644 index efa6d5452d..0000000000 --- a/doc/whatsnew/fragments/5636.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Using custom braces in ``msg-template`` will now work properly. - -Closes #5636 diff --git a/doc/whatsnew/fragments/5788.false_positive b/doc/whatsnew/fragments/5788.false_positive deleted file mode 100644 index 65fc29fe4d..0000000000 --- a/doc/whatsnew/fragments/5788.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``use-sequence-for-iteration`` when unpacking a set with ``*``. - -Closes #5788 diff --git a/doc/whatsnew/fragments/5797.new_check b/doc/whatsnew/fragments/5797.new_check deleted file mode 100644 index f82abe09d0..0000000000 --- a/doc/whatsnew/fragments/5797.new_check +++ /dev/null @@ -1,4 +0,0 @@ -Add new check called ``unbalanced-dict-unpacking`` to check for unbalanced dict unpacking -in assignment and for loops. - -Closes #5797 diff --git a/doc/whatsnew/fragments/5886.false_positive b/doc/whatsnew/fragments/5886.false_positive deleted file mode 100644 index d6ab03940b..0000000000 --- a/doc/whatsnew/fragments/5886.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``deprecated-method`` false positive when alias for method is similar to name of deprecated method. - -Closes #5886 diff --git a/doc/whatsnew/fragments/5920.other b/doc/whatsnew/fragments/5920.other deleted file mode 100644 index 5bd356a9cc..0000000000 --- a/doc/whatsnew/fragments/5920.other +++ /dev/null @@ -1,3 +0,0 @@ -Pylint now provides basic support for Python 3.11. - -Closes #5920 diff --git a/doc/whatsnew/fragments/6001.false_positive b/doc/whatsnew/fragments/6001.false_positive deleted file mode 100644 index 384ef7fbd8..0000000000 --- a/doc/whatsnew/fragments/6001.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix false positive ``assigning-non-slot`` when a class attribute is re-assigned. - -Closes #6001 diff --git a/doc/whatsnew/fragments/6006.feature b/doc/whatsnew/fragments/6006.feature deleted file mode 100644 index 4d89e80b9e..0000000000 --- a/doc/whatsnew/fragments/6006.feature +++ /dev/null @@ -1,5 +0,0 @@ -Add ``--allow-reexport-from-package`` option to configure the -``useless-import-alias`` check not to emit a warning if a name -is reexported from a package. - -Closes #6006 diff --git a/doc/whatsnew/fragments/6242.bugfix b/doc/whatsnew/fragments/6242.bugfix deleted file mode 100644 index 25d323e7e7..0000000000 --- a/doc/whatsnew/fragments/6242.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Pylint will now filter duplicates given to it before linting. The output should -be the same whether a file is given/discovered multiple times or not. - -Closes #6242, #4053 diff --git a/doc/whatsnew/fragments/6489.new_check b/doc/whatsnew/fragments/6489.new_check deleted file mode 100644 index 03036c57f0..0000000000 --- a/doc/whatsnew/fragments/6489.new_check +++ /dev/null @@ -1,4 +0,0 @@ -Add new checker ``positional-only-arguments-expected`` to check for cases when -positional-only arguments have been passed as keyword arguments. - -Closes #6489 diff --git a/doc/whatsnew/fragments/6543.feature b/doc/whatsnew/fragments/6543.feature deleted file mode 100644 index 0ebb9b19f4..0000000000 --- a/doc/whatsnew/fragments/6543.feature +++ /dev/null @@ -1,5 +0,0 @@ -Update ``pyreverse`` to differentiate between aggregations and compositions. -``pyreverse`` checks if it's an Instance or a Call of an object via method parameters (via type hints) -to decide if it's a composition or an aggregation. - -Refs #6543 diff --git a/doc/whatsnew/fragments/6592.false_positive b/doc/whatsnew/fragments/6592.false_positive deleted file mode 100644 index 846ddce961..0000000000 --- a/doc/whatsnew/fragments/6592.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix false positive for ``too-many-function-args`` when a function call is assigned to a class attribute inside the class where the function is defined. - -Closes #6592 diff --git a/doc/whatsnew/fragments/6639.false_negative b/doc/whatsnew/fragments/6639.false_negative deleted file mode 100644 index 7735c8536f..0000000000 --- a/doc/whatsnew/fragments/6639.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -``consider-using-join`` can now be emitted for non-empty string separators. - -Closes #6639 diff --git a/doc/whatsnew/fragments/6795.bugfix b/doc/whatsnew/fragments/6795.bugfix deleted file mode 100644 index 20a29da356..0000000000 --- a/doc/whatsnew/fragments/6795.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Remove ``__index__`` dunder method call from ``unnecessary-dunder-call`` check. - -Closes #6795 diff --git a/doc/whatsnew/fragments/6917.new_check b/doc/whatsnew/fragments/6917.new_check deleted file mode 100644 index d36aa2c59b..0000000000 --- a/doc/whatsnew/fragments/6917.new_check +++ /dev/null @@ -1,4 +0,0 @@ -Added ``singledispatch-method`` which informs that ``@singledispatch`` should decorate functions and not class/instance methods. -Added ``singledispatchmethod-function`` which informs that ``@singledispatchmethod`` should decorate class/instance methods and not functions. - -Closes #6917 diff --git a/doc/whatsnew/fragments/7003.bugfix b/doc/whatsnew/fragments/7003.bugfix deleted file mode 100644 index 3e2806f6f9..0000000000 --- a/doc/whatsnew/fragments/7003.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Fixed handling of ``--`` as separator between positional arguments and flags. -This was not actually fixed in 2.14.5. - -Closes #7003, Refs #7096 diff --git a/doc/whatsnew/fragments/7124.other b/doc/whatsnew/fragments/7124.other deleted file mode 100644 index 684cf2dc00..0000000000 --- a/doc/whatsnew/fragments/7124.other +++ /dev/null @@ -1,3 +0,0 @@ -Update message for ``abstract-method`` to include child class name. - -Closes #7124 diff --git a/doc/whatsnew/fragments/7169.bugfix b/doc/whatsnew/fragments/7169.bugfix deleted file mode 100644 index 6ddf1a498e..0000000000 --- a/doc/whatsnew/fragments/7169.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Don't crash on ``OSError`` in config file discovery. - -Closes #7169 diff --git a/doc/whatsnew/fragments/7208.user_action b/doc/whatsnew/fragments/7208.user_action deleted file mode 100644 index 0492676b39..0000000000 --- a/doc/whatsnew/fragments/7208.user_action +++ /dev/null @@ -1,10 +0,0 @@ -The ``accept-no-raise-doc`` option related to ``missing-raises-doc`` will now -be correctly taken into account all the time. - -Pylint will no longer raise missing-raises-doc (W9006) when no exceptions are -documented and accept-no-raise-doc is true (issue #7208). -If you were expecting missing-raises-doc errors to be raised in that case, you -will now have to add ``accept-no-raise-doc=no`` in your configuration to keep -the same behavior. - -Closes #7208 diff --git a/doc/whatsnew/fragments/7209.false_positive b/doc/whatsnew/fragments/7209.false_positive deleted file mode 100644 index a1ba0c5d8a..0000000000 --- a/doc/whatsnew/fragments/7209.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fixes false positive ``abstract-method`` on Protocol classes. - -Closes #7209 diff --git a/doc/whatsnew/fragments/7214.bugfix b/doc/whatsnew/fragments/7214.bugfix deleted file mode 100644 index 016d3dc3e4..0000000000 --- a/doc/whatsnew/fragments/7214.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Messages sent to reporter are now copied so a reporter cannot modify the message sent to other reporters. - -Closes #7214 diff --git a/doc/whatsnew/fragments/7264.bugfix b/doc/whatsnew/fragments/7264.bugfix deleted file mode 100644 index dc2aa5d401..0000000000 --- a/doc/whatsnew/fragments/7264.bugfix +++ /dev/null @@ -1,8 +0,0 @@ -Fixed a case where custom plugins specified by command line could silently fail. - -Specifically, if a plugin relies on the ``init-hook`` option changing ``sys.path`` before -it can be imported, this will now emit a ``bad-plugin-value`` message. Before this -change, it would silently fail to register the plugin for use, but would load -any configuration, which could have unintended effects. - -Fixes part of #7264. diff --git a/doc/whatsnew/fragments/7264.internal b/doc/whatsnew/fragments/7264.internal deleted file mode 100644 index 2bd3337bd7..0000000000 --- a/doc/whatsnew/fragments/7264.internal +++ /dev/null @@ -1,9 +0,0 @@ -Add and fix regression tests for plugin loading. - -This shores up the tests that cover the loading of custom plugins as affected -by any changes made to the ``sys.path`` during execution of an ``init-hook``. -Given the existing contract of allowing plugins to be loaded by fiddling with -the path in this way, this is now the last bit of work needed to close Github -issue #7264. - -Closes #7264 diff --git a/doc/whatsnew/fragments/7281.extension b/doc/whatsnew/fragments/7281.extension deleted file mode 100644 index 46c2f05518..0000000000 --- a/doc/whatsnew/fragments/7281.extension +++ /dev/null @@ -1,4 +0,0 @@ -Add ``magic-number`` plugin checker for comparison with constants instead of named constants or enums. -You can use it with ``--load-plugins=pylint.extensions.magic_value``. - -Closes #7281 diff --git a/doc/whatsnew/fragments/7290.false_positive b/doc/whatsnew/fragments/7290.false_positive deleted file mode 100644 index cfb6a13b5d..0000000000 --- a/doc/whatsnew/fragments/7290.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Pylint now understands the ``kw_only`` keyword argument for ``dataclass``. - -Closes #7290, closes #6550, closes #5857 diff --git a/doc/whatsnew/fragments/7311.false_positive b/doc/whatsnew/fragments/7311.false_positive deleted file mode 100644 index 84d57502b4..0000000000 --- a/doc/whatsnew/fragments/7311.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Fix false positive for ``undefined-loop-variable`` in ``for-else`` loops that use a function -having a return type annotation of ``NoReturn`` or ``Never``. - -Closes #7311 diff --git a/doc/whatsnew/fragments/7346.other b/doc/whatsnew/fragments/7346.other deleted file mode 100644 index 01d1a26d9f..0000000000 --- a/doc/whatsnew/fragments/7346.other +++ /dev/null @@ -1,4 +0,0 @@ -Update Pyreverse's dot and plantuml printers to detect when class methods are abstract and show them with italic font. -For the dot printer update the label to use html-like syntax. - -Closes #7346 diff --git a/doc/whatsnew/fragments/7368.false_positive b/doc/whatsnew/fragments/7368.false_positive deleted file mode 100644 index 4e9551a321..0000000000 --- a/doc/whatsnew/fragments/7368.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``used-before-assignment`` for functions/classes defined in type checking guard. - -Closes #7368 diff --git a/doc/whatsnew/fragments/7380.bugfix b/doc/whatsnew/fragments/7380.bugfix deleted file mode 100644 index dc5ea5fa6b..0000000000 --- a/doc/whatsnew/fragments/7380.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Update ``modified_iterating`` checker to fix a crash with ``for`` loops on empty list. - -Closes #7380 diff --git a/doc/whatsnew/fragments/7390.bugfix b/doc/whatsnew/fragments/7390.bugfix deleted file mode 100644 index c1808eec03..0000000000 --- a/doc/whatsnew/fragments/7390.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Update wording for ``arguments-differ`` and ``arguments-renamed`` to clarify overriding object. - -Closes #7390 diff --git a/doc/whatsnew/fragments/7398.other b/doc/whatsnew/fragments/7398.other deleted file mode 100644 index e83974ccfc..0000000000 --- a/doc/whatsnew/fragments/7398.other +++ /dev/null @@ -1,4 +0,0 @@ -The ``docparams`` extension now considers typing in Numpy style docstrings -as "documentation" for the ``missing-param-doc`` message. - -Refs #7398 diff --git a/doc/whatsnew/fragments/7401.bugfix b/doc/whatsnew/fragments/7401.bugfix deleted file mode 100644 index 8b0f0e2a84..0000000000 --- a/doc/whatsnew/fragments/7401.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -``disable-next`` is now correctly scoped to only the succeeding line. - -Closes #7401 diff --git a/doc/whatsnew/fragments/7453.bugfix b/doc/whatsnew/fragments/7453.bugfix deleted file mode 100644 index 94b5240dd4..0000000000 --- a/doc/whatsnew/fragments/7453.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixed a crash in the ``unhashable-member`` checker when using a ``lambda`` as a dict key. - -Closes #7453 diff --git a/doc/whatsnew/fragments/7457.bugfix b/doc/whatsnew/fragments/7457.bugfix deleted file mode 100644 index 63b93939b2..0000000000 --- a/doc/whatsnew/fragments/7457.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Add ``mailcap`` to deprecated modules list. - -Closes #7457 diff --git a/doc/whatsnew/fragments/7461.bugfix b/doc/whatsnew/fragments/7461.bugfix deleted file mode 100644 index 1fb503c9ab..0000000000 --- a/doc/whatsnew/fragments/7461.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fix a crash in the ``modified-iterating-dict`` checker involving instance attributes. - -Closes #7461 diff --git a/doc/whatsnew/fragments/7463.other b/doc/whatsnew/fragments/7463.other deleted file mode 100644 index 6cfde5d09a..0000000000 --- a/doc/whatsnew/fragments/7463.other +++ /dev/null @@ -1,3 +0,0 @@ -Relevant ``DeprecationWarnings`` are now raised with ``stacklevel=2``, so they have the callsite attached in the message. - -Closes #7463 diff --git a/doc/whatsnew/fragments/7467.bugfix b/doc/whatsnew/fragments/7467.bugfix deleted file mode 100644 index 7e76f86a07..0000000000 --- a/doc/whatsnew/fragments/7467.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -``invalid-class-object`` does not crash anymore when ``__class__`` is assigned alongside another variable. - -Closes #7467 diff --git a/doc/whatsnew/fragments/7471.bugfix b/doc/whatsnew/fragments/7471.bugfix deleted file mode 100644 index b1b6f369c9..0000000000 --- a/doc/whatsnew/fragments/7471.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -``--help-msg`` now accepts a comma-separated list of message IDs again. - -Closes #7471 diff --git a/doc/whatsnew/fragments/7485.other b/doc/whatsnew/fragments/7485.other deleted file mode 100644 index e2f3d36d3d..0000000000 --- a/doc/whatsnew/fragments/7485.other +++ /dev/null @@ -1,3 +0,0 @@ -Add a ``minimal`` option to ``pylint-config`` and its toml generator. - -Closes #7485 diff --git a/doc/whatsnew/fragments/7494.new_check b/doc/whatsnew/fragments/7494.new_check deleted file mode 100644 index fe62e14839..0000000000 --- a/doc/whatsnew/fragments/7494.new_check +++ /dev/null @@ -1,4 +0,0 @@ -Rename ``broad-except`` to ``broad-exception-caught`` and add new checker ``broad-exception-raised`` -which will warn if general exceptions ``BaseException`` or ``Exception`` are raised. - -Closes #7494 diff --git a/doc/whatsnew/fragments/7495.bugfix b/doc/whatsnew/fragments/7495.bugfix deleted file mode 100644 index cec2bcf535..0000000000 --- a/doc/whatsnew/fragments/7495.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Allow specifying non-builtin exceptions in the ``overgeneral-exception`` option -using an exception's qualified name. - -Closes #7495 diff --git a/doc/whatsnew/fragments/7501.false_positive b/doc/whatsnew/fragments/7501.false_positive deleted file mode 100644 index 0c2d33a075..0000000000 --- a/doc/whatsnew/fragments/7501.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix false positive for ``unhashable-member`` when subclassing ``dict`` and using the subclass as a dictionary key. - -Closes #7501 diff --git a/doc/whatsnew/fragments/7507.bugfix b/doc/whatsnew/fragments/7507.bugfix deleted file mode 100644 index 5ce05c6589..0000000000 --- a/doc/whatsnew/fragments/7507.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Report ``no-self-argument`` rather than ``no-method-argument`` for methods -with variadic arguments. - -Closes #7507 diff --git a/doc/whatsnew/fragments/7507.other b/doc/whatsnew/fragments/7507.other deleted file mode 100644 index 3cdca7465d..0000000000 --- a/doc/whatsnew/fragments/7507.other +++ /dev/null @@ -1,3 +0,0 @@ -Add method name to the error messages of ``no-method-argument`` and ``no-self-argument``. - -Closes #7507 diff --git a/doc/whatsnew/fragments/7522.bugfix b/doc/whatsnew/fragments/7522.bugfix deleted file mode 100644 index f4fa9da1af..0000000000 --- a/doc/whatsnew/fragments/7522.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixed an issue where ``syntax-error`` couldn't be raised on files with invalid encodings. - -Closes #7522 diff --git a/doc/whatsnew/fragments/7524.bugfix b/doc/whatsnew/fragments/7524.bugfix deleted file mode 100644 index 8a9c5fc79b..0000000000 --- a/doc/whatsnew/fragments/7524.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Fix false positive for ``redefined-outer-name`` when aliasing ``typing`` -e.g. as ``t`` and guarding imports under ``t.TYPE_CHECKING``. - -Closes #7524 diff --git a/doc/whatsnew/fragments/7528.bugfix b/doc/whatsnew/fragments/7528.bugfix deleted file mode 100644 index b06bf1570d..0000000000 --- a/doc/whatsnew/fragments/7528.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixed a crash of the ``modified_iterating`` checker when iterating on a set defined as a class attribute. - -Closes #7528 diff --git a/doc/whatsnew/fragments/7529.false_positive b/doc/whatsnew/fragments/7529.false_positive deleted file mode 100644 index 7775d90862..0000000000 --- a/doc/whatsnew/fragments/7529.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Fix the message for ``unnecessary-dunder-call`` for ``__aiter__`` and ``__aneext__``. Also -only emit the warning when ``py-version`` >= 3.10. - -Closes #7529 diff --git a/doc/whatsnew/fragments/7539.false_negative b/doc/whatsnew/fragments/7539.false_negative deleted file mode 100644 index fc314a9194..0000000000 --- a/doc/whatsnew/fragments/7539.false_negative +++ /dev/null @@ -1,7 +0,0 @@ -Emit ``used-before-assignment`` for further imports guarded by ``TYPE_CHECKING`` - -Previously, this message was only emitted for imports guarded directly under -``TYPE_CHECKING``, not guarded two if-branches deep, nor when ``TYPE_CHECKING`` -was imported from ``typing`` under an alias. - -Closes #7539 diff --git a/doc/whatsnew/fragments/7544.other b/doc/whatsnew/fragments/7544.other deleted file mode 100644 index b868f1265c..0000000000 --- a/doc/whatsnew/fragments/7544.other +++ /dev/null @@ -1,3 +0,0 @@ -Prevent leaving the pip install cache in the Docker image. - -Refs #7544 diff --git a/doc/whatsnew/fragments/7546.new_check b/doc/whatsnew/fragments/7546.new_check deleted file mode 100644 index 5b1f5a3273..0000000000 --- a/doc/whatsnew/fragments/7546.new_check +++ /dev/null @@ -1,4 +0,0 @@ -Added ``nested-min-max`` which flags ``min(1, min(2, 3))`` to simplify to -``min(1, 2, 3)``. - -Closes #7546 diff --git a/doc/whatsnew/fragments/7547.false_negative b/doc/whatsnew/fragments/7547.false_negative deleted file mode 100644 index 97abdf100c..0000000000 --- a/doc/whatsnew/fragments/7547.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -Fix a false negative for ``unused-import`` when a constant inside ``typing.Annotated`` was treated as a reference to an import. - -Closes #7547 diff --git a/doc/whatsnew/fragments/7563.false_positive b/doc/whatsnew/fragments/7563.false_positive deleted file mode 100644 index 1a3252f353..0000000000 --- a/doc/whatsnew/fragments/7563.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``used-before-assignment`` false positive when else branch calls ``sys.exit`` or similar terminating functions. - -Closes #7563 diff --git a/doc/whatsnew/fragments/7569.bugfix b/doc/whatsnew/fragments/7569.bugfix deleted file mode 100644 index c6a84fc64c..0000000000 --- a/doc/whatsnew/fragments/7569.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Use ``py-version`` to determine if a message should be emitted for messages defined with ``max-version`` or ``min-version``. - -Closes #7569 diff --git a/doc/whatsnew/fragments/7570.bugfix b/doc/whatsnew/fragments/7570.bugfix deleted file mode 100644 index 13cbc29168..0000000000 --- a/doc/whatsnew/fragments/7570.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Improve ``bad-thread-instantiation`` check to warn if ``target`` is not passed in as a keyword argument -or as a second argument. - -Closes #7570 diff --git a/doc/whatsnew/fragments/7609.false_positive b/doc/whatsnew/fragments/7609.false_positive deleted file mode 100644 index 5c91f396ee..0000000000 --- a/doc/whatsnew/fragments/7609.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Fix a false positive for ``used-before-assignment`` for imports guarded by -``typing.TYPE_CHECKING`` later used in variable annotations. - -Closes #7609 diff --git a/doc/whatsnew/fragments/7610.bugfix b/doc/whatsnew/fragments/7610.bugfix deleted file mode 100644 index 3eb49fcbb4..0000000000 --- a/doc/whatsnew/fragments/7610.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixes edge case of custom method named ``next`` raised an astroid error. - -Closes #7610 diff --git a/doc/whatsnew/fragments/7626.false_positive b/doc/whatsnew/fragments/7626.false_positive deleted file mode 100644 index bfa56c1072..0000000000 --- a/doc/whatsnew/fragments/7626.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Fix a false positive for ``simplify-boolean-expression`` when multiple values -are inferred for a constant. - -Closes #7626 diff --git a/doc/whatsnew/fragments/7626.other b/doc/whatsnew/fragments/7626.other deleted file mode 100644 index 8020fc83f3..0000000000 --- a/doc/whatsnew/fragments/7626.other +++ /dev/null @@ -1,3 +0,0 @@ -Add a keyword-only ``compare_constants`` argument to ``safe_infer``. - -Refs #7626 diff --git a/doc/whatsnew/fragments/7629.other b/doc/whatsnew/fragments/7629.other deleted file mode 100644 index bac156ee57..0000000000 --- a/doc/whatsnew/fragments/7629.other +++ /dev/null @@ -1,4 +0,0 @@ -Add ``default_enabled`` option to optional message dict. Provides an option to disable a checker message by default. -To use a disabled message, the user must enable it explicitly by adding the message to the ``enable`` option. - -Refs #7629 diff --git a/doc/whatsnew/fragments/7635.bugfix b/doc/whatsnew/fragments/7635.bugfix deleted file mode 100644 index 72085e0291..0000000000 --- a/doc/whatsnew/fragments/7635.bugfix +++ /dev/null @@ -1,7 +0,0 @@ -Fixed a multi-processing crash that prevents using any more than 1 thread on MacOS. - -The returned module objects and errors that were cached by the linter plugin loader -cannot be reliably pickled. This means that ``dill`` would throw an error when -attempting to serialise the linter object for multi-processing use. - -Closes #7635. diff --git a/doc/whatsnew/fragments/7636.extension b/doc/whatsnew/fragments/7636.extension deleted file mode 100644 index b00028c31a..0000000000 --- a/doc/whatsnew/fragments/7636.extension +++ /dev/null @@ -1,4 +0,0 @@ -Add ``redundant-typehint-argument`` message for `typing` plugin for duplicate assign typehints. -Enable the plugin to enable the message with: ``--load-plugins=pylint.extensions.typing``. - -Closes #7636 diff --git a/doc/whatsnew/fragments/7655.other b/doc/whatsnew/fragments/7655.other deleted file mode 100644 index 9024fe38e8..0000000000 --- a/doc/whatsnew/fragments/7655.other +++ /dev/null @@ -1,3 +0,0 @@ -Sort ``--generated-rcfile`` output. - -Refs #7655 diff --git a/doc/whatsnew/fragments/7661.bugfix b/doc/whatsnew/fragments/7661.bugfix deleted file mode 100644 index 2e58c861bb..0000000000 --- a/doc/whatsnew/fragments/7661.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fix crash that happened when parsing files with unexpected encoding starting with 'utf' like ``utf13``. - -Closes #7661 diff --git a/doc/whatsnew/fragments/7682.false_positive b/doc/whatsnew/fragments/7682.false_positive deleted file mode 100644 index 3f94f447fd..0000000000 --- a/doc/whatsnew/fragments/7682.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -``unnecessary-list-index-lookup`` will not be wrongly emitted if ``enumerate`` is called with ``start``. - -Closes #7682 diff --git a/doc/whatsnew/fragments/7690.new_check b/doc/whatsnew/fragments/7690.new_check deleted file mode 100644 index 2969428edd..0000000000 --- a/doc/whatsnew/fragments/7690.new_check +++ /dev/null @@ -1,3 +0,0 @@ -Extended ``use-dict-literal`` to also warn about call to ``dict()`` when passing keyword arguments. - -Closes #7690 diff --git a/doc/whatsnew/fragments/7699.false_negative b/doc/whatsnew/fragments/7699.false_negative deleted file mode 100644 index 128aeff29c..0000000000 --- a/doc/whatsnew/fragments/7699.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -``consider-using-any-or-all`` message will now be raised in cases when boolean is initialized, reassigned during loop, and immediately returned. - -Closes #7699 diff --git a/doc/whatsnew/fragments/7737.other b/doc/whatsnew/fragments/7737.other deleted file mode 100644 index 7b79887597..0000000000 --- a/doc/whatsnew/fragments/7737.other +++ /dev/null @@ -1,5 +0,0 @@ -epylint is now deprecated and will be removed in pylint 3.0.0. All emacs and flymake related -files were removed and their support will now happen in an external repository : -https://github.com/emacsorphanage/pylint. - -Closes #7737 diff --git a/doc/whatsnew/fragments/7742.bugfix b/doc/whatsnew/fragments/7742.bugfix deleted file mode 100644 index 7e3c930899..0000000000 --- a/doc/whatsnew/fragments/7742.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fix a crash when a child class with an ``__init__`` method inherits from a parent class with an ``__init__`` class attribute. - -Closes #7742 diff --git a/doc/whatsnew/fragments/7760.new_check b/doc/whatsnew/fragments/7760.new_check deleted file mode 100644 index 89cdf29f97..0000000000 --- a/doc/whatsnew/fragments/7760.new_check +++ /dev/null @@ -1,5 +0,0 @@ -Add ``named-expr-without-context`` check to emit a warning if a named -expression is used outside a context like ``if``, ``for``, ``while``, or -a comprehension. - -Refs #7760 diff --git a/doc/whatsnew/fragments/7762.false_negative b/doc/whatsnew/fragments/7762.false_negative deleted file mode 100644 index 6b4083ff61..0000000000 --- a/doc/whatsnew/fragments/7762.false_negative +++ /dev/null @@ -1,4 +0,0 @@ -Extend ``invalid-slice-index`` to emit an warning for invalid slice indices -used with string and byte sequences, and range objects. - -Refs #7762 diff --git a/doc/whatsnew/fragments/7762.new_check b/doc/whatsnew/fragments/7762.new_check deleted file mode 100644 index 4ff67326bd..0000000000 --- a/doc/whatsnew/fragments/7762.new_check +++ /dev/null @@ -1,4 +0,0 @@ -Add ``invalid-slice-step`` check to warn about a slice step value of ``0`` -for common builtin sequences. - -Refs #7762 diff --git a/doc/whatsnew/fragments/7765.false_positive b/doc/whatsnew/fragments/7765.false_positive deleted file mode 100644 index de7c44c5af..0000000000 --- a/doc/whatsnew/fragments/7765.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Don't warn about ``stop-iteration-return`` when using ``next()`` over ``itertools.cycle``. - -Closes #7765 diff --git a/doc/whatsnew/fragments/7770.false_negative b/doc/whatsnew/fragments/7770.false_negative deleted file mode 100644 index d9a165390d..0000000000 --- a/doc/whatsnew/fragments/7770.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -Fixes ``unnecessary-list-index-lookup`` false negative when ``enumerate`` is called with ``iterable`` as a kwarg. - -Closes #7770 diff --git a/doc/whatsnew/fragments/7779.false_positive b/doc/whatsnew/fragments/7779.false_positive deleted file mode 100644 index 2591f17a4c..0000000000 --- a/doc/whatsnew/fragments/7779.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Fixes ``used-before-assignment`` false positive when the walrus operator -is used in a ternary operator. - -Closes #7779 diff --git a/doc/whatsnew/fragments/7782.bugfix b/doc/whatsnew/fragments/7782.bugfix deleted file mode 100644 index e4c1498c41..0000000000 --- a/doc/whatsnew/fragments/7782.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -Fix ``valid-metaclass-classmethod-first-arg`` default config value from "cls" to "mcs" -which would cause both a false-positive and false-negative. - -Closes #7782 diff --git a/doc/whatsnew/fragments/7788.false_negative b/doc/whatsnew/fragments/7788.false_negative deleted file mode 100644 index f04311a6bc..0000000000 --- a/doc/whatsnew/fragments/7788.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -``no-else-return`` or ``no-else-raise`` will be emitted if ``except`` block always returns or raises. - -Closes #7788 diff --git a/doc/whatsnew/fragments/7818.false_negative b/doc/whatsnew/fragments/7818.false_negative deleted file mode 100644 index 76d118a0df..0000000000 --- a/doc/whatsnew/fragments/7818.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``dangerous-default-value`` false negative when ``*`` is used. - -Closes #7818 diff --git a/doc/whatsnew/fragments/7821.bugfix b/doc/whatsnew/fragments/7821.bugfix deleted file mode 100644 index af48814db7..0000000000 --- a/doc/whatsnew/fragments/7821.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixes a crash in the ``unnecessary_list_index_lookup`` check when using ``enumerate`` with ``start`` and a class attribute. - -Closes #7821 diff --git a/doc/whatsnew/fragments/7827.false_positive b/doc/whatsnew/fragments/7827.false_positive deleted file mode 100644 index e981fa45f1..0000000000 --- a/doc/whatsnew/fragments/7827.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``missing-param-doc`` false positive when function parameter has an escaped underscore. - -Closes #7827 diff --git a/doc/whatsnew/fragments/7828.bugfix b/doc/whatsnew/fragments/7828.bugfix deleted file mode 100644 index f47cc3cc95..0000000000 --- a/doc/whatsnew/fragments/7828.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixes a crash in ``stop-iteration-return`` when the ``next`` builtin is called without arguments. - -Closes #7828 diff --git a/doc/whatsnew/fragments/7857.false_positive b/doc/whatsnew/fragments/7857.false_positive deleted file mode 100644 index 6dffed9d69..0000000000 --- a/doc/whatsnew/fragments/7857.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fixes ``method-cache-max-size-none`` false positive for methods inheriting from ``Enum``. - -Closes #7857 diff --git a/doc/whatsnew/fragments/7860.false_positive b/doc/whatsnew/fragments/7860.false_positive deleted file mode 100644 index c76425c54b..0000000000 --- a/doc/whatsnew/fragments/7860.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -``multiple-statements`` no longer triggers for function stubs using inlined ``...``. - -Closes #7860 diff --git a/doc/whatsnew/fragments/7882.false_positive b/doc/whatsnew/fragments/7882.false_positive deleted file mode 100644 index 7c405fa41b..0000000000 --- a/doc/whatsnew/fragments/7882.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix a false positive for ``used-before-assignment`` when a name guarded by ``if TYPE_CHECKING:`` is used as a type annotation in a function body and later re-imported in the same scope. - -Closes #7882 diff --git a/doc/whatsnew/fragments/7931.bugfix b/doc/whatsnew/fragments/7931.bugfix deleted file mode 100644 index fe42346f43..0000000000 --- a/doc/whatsnew/fragments/7931.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -When pylint exit due to bad arguments being provided the exit code will now be the expected ``32``. - -Refs #7931 diff --git a/doc/whatsnew/fragments/7938.bugfix b/doc/whatsnew/fragments/7938.bugfix deleted file mode 100644 index 1cffb9d1f4..0000000000 --- a/doc/whatsnew/fragments/7938.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixes a ``ModuleNotFound`` exception when running pylint on a Django project with the ``pylint_django`` plugin enabled. - -Closes #7938 diff --git a/doc/whatsnew/fragments/7957.other b/doc/whatsnew/fragments/7957.other deleted file mode 100644 index 80731209ef..0000000000 --- a/doc/whatsnew/fragments/7957.other +++ /dev/null @@ -1,3 +0,0 @@ -Adds test for existing preferred-modules configuration functionality. - -Refs #7957 diff --git a/doc/whatsnew/fragments/7964.false_negative b/doc/whatsnew/fragments/7964.false_negative deleted file mode 100644 index 9f9ae104ad..0000000000 --- a/doc/whatsnew/fragments/7964.false_negative +++ /dev/null @@ -1,3 +0,0 @@ -``consider-using-with`` now triggers for ``pathlib.Path.open``. - -Closes #7964 diff --git a/doc/whatsnew/fragments/7979.false_positive b/doc/whatsnew/fragments/7979.false_positive deleted file mode 100644 index 1c10641aeb..0000000000 --- a/doc/whatsnew/fragments/7979.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Prevent ``used-before-assignment`` when imports guarded by ``if TYPE_CHECKING`` -are guarded again when used. - -Closes #7979 diff --git a/doc/whatsnew/fragments/8015.new_check b/doc/whatsnew/fragments/8015.new_check deleted file mode 100644 index b32832154b..0000000000 --- a/doc/whatsnew/fragments/8015.new_check +++ /dev/null @@ -1,5 +0,0 @@ -Add ``consider-refactoring-into-while-condition`` check to recommend refactoring when -a while loop is defined with a constant condition with an immediate ``if`` -statement to check for ``break`` condition as a first statement. - -Closes #8015 diff --git a/doc/whatsnew/fragments/8051.false_positive b/doc/whatsnew/fragments/8051.false_positive deleted file mode 100644 index 9fc6c2274a..0000000000 --- a/doc/whatsnew/fragments/8051.false_positive +++ /dev/null @@ -1,4 +0,0 @@ -Fixes false positive for ``try-except-raise`` with multiple exceptions in one -except statement if exception are in different namespace. - -Closes #8051 diff --git a/doc/whatsnew/fragments/8067.bugfix b/doc/whatsnew/fragments/8067.bugfix deleted file mode 100644 index ea2dc0e471..0000000000 --- a/doc/whatsnew/fragments/8067.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fixed a crash when inferring a value and using its qname on a slice that was being incorrectly called. - -Closes #8067 diff --git a/doc/whatsnew/fragments/8081.bugfix b/doc/whatsnew/fragments/8081.bugfix deleted file mode 100644 index 163a9e1082..0000000000 --- a/doc/whatsnew/fragments/8081.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Use better regex to check for private attributes. - -Refs #8081 diff --git a/doc/whatsnew/fragments/8089.false_positive b/doc/whatsnew/fragments/8089.false_positive deleted file mode 100644 index 905b140d1e..0000000000 --- a/doc/whatsnew/fragments/8089.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``invalid-name`` errors for ``typing_extension.TypeVar``. - -Refs #8089 diff --git a/doc/whatsnew/fragments/8100.false_positive b/doc/whatsnew/fragments/8100.false_positive deleted file mode 100644 index 5503e83033..0000000000 --- a/doc/whatsnew/fragments/8100.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``no-kwoa`` false positive for context managers. - -Closes #8100 diff --git a/doc/whatsnew/fragments/8119.bugfix b/doc/whatsnew/fragments/8119.bugfix deleted file mode 100644 index 8e5ff0878a..0000000000 --- a/doc/whatsnew/fragments/8119.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -Fix issue with new typing Union syntax in runtime context for Python 3.10+. - -Closes #8119 diff --git a/doc/whatsnew/fragments/8120.false_positive b/doc/whatsnew/fragments/8120.false_positive deleted file mode 100644 index 6c0f3c0d03..0000000000 --- a/doc/whatsnew/fragments/8120.false_positive +++ /dev/null @@ -1,3 +0,0 @@ -Fix a false positive for ``redefined-variable-type`` when ``async`` methods are present. - -Closes #8120 diff --git a/examples/pylintrc b/examples/pylintrc index a69f915752..1cf9639a13 100644 --- a/examples/pylintrc +++ b/examples/pylintrc @@ -350,6 +350,9 @@ single-line-if-stmt=no # one. allow-any-import-level= +# Allow explicit reexports by alias from a package __init__. +allow-reexport-from-package=no + # Allow wildcard imports from modules that define __all__. allow-wildcard-with-all=no diff --git a/examples/pyproject.toml b/examples/pyproject.toml index d3b8b90525..71490d860d 100644 --- a/examples/pyproject.toml +++ b/examples/pyproject.toml @@ -301,6 +301,9 @@ max-module-lines = 1000 # List of modules that can be imported at any level, not just the top level one. # allow-any-import-level = +# Allow explicit reexports by alias from a package __init__. +# allow-reexport-from-package = + # Allow wildcard imports from modules that define __all__. # allow-wildcard-with-all = diff --git a/pylint/__pkginfo__.py b/pylint/__pkginfo__.py index 443e50922e..fb5ae7e935 100644 --- a/pylint/__pkginfo__.py +++ b/pylint/__pkginfo__.py @@ -9,7 +9,7 @@ from __future__ import annotations -__version__ = "2.16.0b1" +__version__ = "2.16.0" def get_numversion_from_version(v: str) -> tuple[int, int, int]: diff --git a/tbump.toml b/tbump.toml index d05ba8893d..141a3b1960 100644 --- a/tbump.toml +++ b/tbump.toml @@ -1,7 +1,7 @@ github_url = "https://github.com/PyCQA/pylint" [version] -current = "2.16.0b1" +current = "2.16.0" regex = ''' ^(?P0|[1-9]\d*) \.