Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions doc/whatsnew/3/3.3/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,45 @@ Summary -- Release highlights

.. towncrier release notes start

What's new in Pylint 3.3.9?
---------------------------
Release date: 2025-10-05


False Positives Fixed
---------------------

- Fix used-before-assignment for PEP 695 type aliases and parameters.

Closes #9815 (`#9815 <https://github.com/pylint-dev/pylint/issues/9815>`_)

- No longer flag undeprecated functions in ``importlib.resources`` as deprecated.

Closes #10593 (`#10593 <https://github.com/pylint-dev/pylint/issues/10593>`_)

- Fix false positive ``inconsistent-return-statements`` when using ``quit()`` or ``exit()`` functions.

Closes #10508 (`#10508 <https://github.com/pylint-dev/pylint/issues/10508>`_)

- Fix false positive ``undefined-variable`` (E0602) for for-loop variable shadowing patterns like ``for item in item:`` when the variable was previously defined.

Closes #10562 (`#10562 <https://github.com/pylint-dev/pylint/issues/10562>`_)



Other Bug Fixes
---------------

- Fixed crash in ``unnecessary-list-index-lookup`` when starting an enumeration using
minus the length of an iterable inside a dict comprehension when the len call was only
made in this dict comprehension, and not elsewhere. Also changed the approach,
to use inference in all cases but the simple ones, so we don't have to fix crashes
one by one for arbitrarily complex expressions in enumerate.

Closes #10510 (`#10510 <https://github.com/pylint-dev/pylint/issues/10510>`_)



What's new in Pylint 3.3.8?
---------------------------
Release date: 2025-08-09
Expand Down
3 changes: 0 additions & 3 deletions doc/whatsnew/fragments/10508.bugfix

This file was deleted.

7 changes: 0 additions & 7 deletions doc/whatsnew/fragments/10510.bugfix

This file was deleted.

3 changes: 0 additions & 3 deletions doc/whatsnew/fragments/10562.bugfix

This file was deleted.

3 changes: 0 additions & 3 deletions doc/whatsnew/fragments/10593.false_positive

This file was deleted.

3 changes: 0 additions & 3 deletions doc/whatsnew/fragments/9815.false_positive

This file was deleted.

4 changes: 2 additions & 2 deletions examples/pylintrc
Original file line number Diff line number Diff line change
Expand Up @@ -436,9 +436,9 @@ disable=raw-checker-failed,
suppressed-message,
useless-suppression,
deprecated-pragma,
use-symbolic-message-instead,
use-implicit-booleaness-not-comparison-to-string,
use-implicit-booleaness-not-comparison-to-zero,
use-symbolic-message-instead
use-implicit-booleaness-not-comparison-to-zero

# Enable the message, report, category or checker with the given id(s). You can
# either give multiple identifier separated by comma (,) or put this option
Expand Down
2 changes: 1 addition & 1 deletion examples/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -381,9 +381,9 @@ disable = [
"suppressed-message",
"useless-suppression",
"deprecated-pragma",
"use-symbolic-message-instead",
"use-implicit-booleaness-not-comparison-to-string",
"use-implicit-booleaness-not-comparison-to-zero",
"use-symbolic-message-instead",
]

# Enable the message, report, category or checker with the given id(s). You can
Expand Down
2 changes: 1 addition & 1 deletion pylint/__pkginfo__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

from __future__ import annotations

__version__ = "3.3.8"
__version__ = "3.3.9"


def get_numversion_from_version(v: str) -> tuple[int, int, int]:
Expand Down
3 changes: 2 additions & 1 deletion script/.contributors_aliases.json
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,8 @@
"66853113+pre-commit-ci[bot]@users.noreply.github.com",
"49699333+dependabot[bot]@users.noreply.github.com",
"212256041+pylint-backport-bot[bot]@users.noreply.github.com",
"41898282+github-actions[bot]@users.noreply.github.com"
"41898282+github-actions[bot]@users.noreply.github.com",
"212256041+pylint-backport[bot]@users.noreply.github.com"
],
"name": "bot"
},
Expand Down
2 changes: 1 addition & 1 deletion tbump.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
github_url = "https://github.com/pylint-dev/pylint"

[version]
current = "3.3.8"
current = "3.3.9"
regex = '''
^(?P<major>0|[1-9]\d*)
\.
Expand Down
2 changes: 1 addition & 1 deletion towncrier.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[tool.towncrier]
version = "3.3.8"
version = "3.3.9"
directory = "doc/whatsnew/fragments"
filename = "doc/whatsnew/3/3.3/index.rst"
template = "doc/whatsnew/fragments/_template.rst"
Expand Down