Skip to content

chore(python-deps): update dependency pylint to v4.1.3 for dev - #1248

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/python-deps/pylint-4.x
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/python-deps/pylint-4.x

Conversation

@renovate

@renovate renovate Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
pylint (changelog) 4.0.9 → 4.1.3 age confidence

Release Notes

pylint-dev/pylint (pylint)

v4.1.3

Compare Source

What's new in Pylint 4.1.3?

Release date: 2026-10-11

False Positives Fixed

  • Fixed a false positive for attribute-defined-outside-init when an
    attribute is assigned inside the setter of an old-style, non-decorator
    property(fget, fset) call. The decorator form (@property /
    @x.setter) was already exempted by the fix for #​409; the classic
    call form was not.

    Closes #​3325

  • Fix a false positive for used-before-assignment when a name bound by an earlier
    target of the same assignment is used by a later target, as in a = b[a] = 0.

    Closes #​5955

  • Fix a no-member false positive in a comprehension inside a branch that
    cannot run, such as if sys.platform == "win32": on Linux. Like the rest of
    the branch, the comprehension is no longer checked for missing members.

    Closes #​7240

  • Fix a false positive for used-before-assignment when a name bound by a tuple
    or list target of a with item is used by a later item of the same with statement.

    Closes #​7545

  • Fix false positives such as not-callable, not-an-iterable,
    unpacking-non-sequence and no-member on the result of a function whose
    body is only ..., like @overload and .pyi stubs. Such calls were
    inferred as returning None. This affected sqlalchemy.func,
    pydantic.Field, and the torch functions wrapped by _add_docstr,
    such as torch.linalg.qr.

    Closes #​8138
    Closes #​9218
    Closes #​9354
    Closes #​10087

  • Fix a false positive for protected-access when a subclass of a subscripted
    generic base, such as class Child(Parent[T]), accesses a protected member
    through that base, such as Parent._foo(self).

    Closes #​8600

  • Avoid emitting unreachable for a yield immediately after raise or
    sys.exit() that marks a function as a generator, matching the existing
    handling of return.

    Closes #​8909

  • Fix a false positive for super-init-not-called in .pyi stub files, where
    every __init__ body is ... and cannot call the parent's __init__.

    Closes #​9096

  • Fix a false positive for possibly-used-before-assignment when a lambda
    uses its parameters, including from a nested lambda, and that name is assigned
    later in the module.

    Closes #​9126

  • Fix a false positive for useless-parent-delegation when a keyword-only
    parameter is passed to the parent under the same keyword but with a different value.

    Closes #​9226

  • Fix a false positive for unused-argument in .pyi stub files, where
    function bodies are ... and cannot use their arguments.

    Closes #​9417

  • Fix a false positive for used-before-assignment when a name assigned with an
    assignment expression in the condition of a comprehension is used in its element,
    for example [y for x in data if (y := f(x))].

    Closes #​9460

  • Fixed false positive arguments-differ and signature-differs for
    typing.overload stubs. Overload stubs in a subclass are no longer compared
    to the overridden method, and an overridden method with overloads is compared
    through its implementation instead of its first stub.

    Closes #​10186
    Closes #​5264

  • Stop emitting redefined-variable-type when the bare _ variable is
    reused to discard values of different types.

    Closes #​10374

  • Allow the __main__ module name in the camelCase, PascalCase and
    UPPER_CASE naming styles without reporting invalid-name.

    Closes #​10442

  • Fixed a false positive for unexpected-keyword-arg when a decorator that
    returns its argument unchanged is stacked above a decorator accepting **kwargs.

    Closes #​10831

  • Fix invalid-name false positives for module-level all-caps aliases that
    preserve the name of an external callable.

    Closes #​11012

  • redefined-builtin no longer warns for method parameters that retain a
    built-in name from an overridden method.

    Closes #​11438

  • Fixed a false positive for useless-suppression of line-too-long when a # inside a string literal comes before the # pylint: disable=line-too-long comment.

    Closes #​11440

  • Fix a false positive for unnecessary-ellipsis when an ellipsis is the
    sole body statement of a Protocol method defined inside a conditional block
    such as if TYPE_CHECKING:.

    Closes #​11459

  • Fix a false positive for unnecessary-negation when negating a comparison
    between instances of a set or frozenset subclass.

    Refs #​11513

Other Bug Fixes

  • Fix pyreverse hanging or crashing with a RecursionError when
    --all-associated (-S) follows an attribute whose inferred class is rebuilt by
    astroid on every inference, such as a numpy array.

    Closes #​3602

  • Fix a crash in pyreverse when a diagram includes a class created by
    namedtuple, or an argparse.Namespace.

    Closes #​10767

  • The "difference" column of the "Messages by category" and "Duplication" reports
    (--reports=y) now shows the change since the previous run instead of repeating
    the previous count.

    Closes #​11520

  • Fixed nested-min-max suggesting a non-equivalent rewrite when an inner
    min/max call had multiple arguments.

    Refs #​11593

  • Using several output formats that all write to stdout (for example --output-format=colorized,no-header)
    now raises an error instead of printing every message more than once.

    Closes #​11597

  • Fixed an IndexError crash in the typecheck checker when an Enum class defines an __init__ method without arguments.

    Closes #​11608

  • Fix a crash in the duplicate-code checker when min-similarity-lines is set to 0.
    The checker is now disabled in that case, as documented.

    Closes #​11625

v4.1.2

Compare Source

What's new in Pylint 4.1.2?

Release date: 2026-10-03

False Positives Fixed

  • Fixed a false positive unbalanced-tuple-unpacking when unpacking a tuple
    concatenation whose elements have several possible values.

    Fixed by upgrading astroid to 4.3.3.

    Closes #​2621

Other Bug Fixes

  • Fixed a crash when calling __bases__ on a class.

    Fixed by upgrading astroid to 4.3.3.

    Closes #​11491

  • Fix a crash (astroid-error) when the class of a called attribute cannot
    be fully inferred, for example when the attribute is used as a with
    statement target or inside a comprehension.

    Closes #​11492

  • Fix a crash when a name bound by a type statement (a TypeVar) is used in a with statement.

    Closes #​11510

  • Fixed a crash (TypeError) in the variables checker when checking a class
    whose metaclass name binding has no line number, for example a class defined
    with metaclass=__annotations__.

    Closes #​11511

  • Fix a crash in the using-final-decorator-in-unsupported-version check
    when import final is used.

    Closes #​11521

  • Fix a crash when a plugin passes confidence=None to add_message, as
    pylint-pytest does, for a message that is disabled. confidence=None is
    accepted again and means UNDEFINED, like in pylint 4.0. Passing it
    explicitly to add_message, add_ignored_message or Message now emits a
    DeprecationWarning: it will raise an error in pylint 5.0.

    Closes #​11530

v4.1.1

Compare Source

What's new in Pylint 4.1.1?

Release date: 2026-09-29

Other Changes

  • Pylint 4.1.0 could not be uploaded to PyPI, because it required an unreleased
    version of dill on Python 3.15, and PyPI refuses such a dependency. 4.1.1 is
    the first 4.1 release available on PyPI, see the 4.1.0 changes below.

    Refs #​11495

v4.0.10

Compare Source

What's new in Pylint 4.0.10?

Release date: 2026-09-29

False Positives Fixed

  • Fix false positives for :ref:unnecessary-lambda when a variable referenced in
    the called expression is assigned, reassigned, or deleted later in the same scope.

    Closes #​8192

  • Fix a false positive for unused-argument in dataclass __new__ methods
    when the arguments are consumed by a generated __init__ method.

    Closes #​9843

  • Fix a false positive for missing-kwoa when keyword-only arguments are passed
    through a **kwargs dictionary that is not a literal at the call site, for
    example one filled with options["key"] = value after its creation.

    Closes #​10029

  • ungrouped-imports no longer reports imports inside mutually exclusive
    OS guard branches (if os.name == "nt": / if sys.platform == "win32":),
    matching the existing behavior for sys.version_info guards.

    Closes #​10460

Other Bug Fixes

  • A TypeError crash could occur when checking a for loop that
    iterates over a subscript with non-numeric constant bounds or a zero
    step, e.g. for a, b in {"k": [][0: ""]}.values():.

    Closes #​11472

  • Fix a crash (AttributeError: 'ClassDef' object has no attribute 'expr') in the
    import-private-name extension when an annotated assignment's value is an
    attribute access on a call rooted at a non-Name node, e.g. x: str = ''().a.

    Closes #​11479


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies label Oct 5, 2026
@renovate
renovate Bot requested a review from a team as a code owner October 5, 2026 00:55
nfelt14
nfelt14 previously approved these changes Oct 5, 2026
@nfelt14
nfelt14 enabled auto-merge (squash) October 5, 2026 15:03
@renovate
renovate Bot force-pushed the renovate/python-deps/pylint-4.x branch from 4bd72bf to 4c19b37 Compare October 5, 2026 15:04
@codecov

codecov Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (06d18d7) to head (8f038c3).

Additional details and impacted files
@@            Coverage Diff            @@
##              main     #1248   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            4         4           
  Lines          233       233           
  Branches        32        32           
=========================================
  Hits           233       233           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@renovate
renovate Bot force-pushed the renovate/python-deps/pylint-4.x branch from 4c19b37 to b72aa5b Compare October 8, 2026 00:52
@renovate renovate Bot changed the title chore(python-deps): update dependency pylint to v4.1.1 for dev chore(python-deps): update dependency pylint to v4.1.2 for dev Oct 8, 2026
nfelt14
nfelt14 previously approved these changes Oct 12, 2026
@renovate renovate Bot changed the title chore(python-deps): update dependency pylint to v4.1.2 for dev chore(python-deps): update dependency pylint to v4.1.3 for dev Oct 16, 2026
@renovate
renovate Bot force-pushed the renovate/python-deps/pylint-4.x branch from b72aa5b to 8f038c3 Compare October 16, 2026 10:03
@github-actions

github-actions Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Test Results (macos)

path passed subtotal
tests/test_bump_version_in_files.py 5 5
tests/test_create_unique_testpypi_version.py 7 7
tests/test_find_unreleased_changelog_items.py 6 6
tests/test_update_development_dependencies.py 13 13
TOTAL 31 31

Link to workflow run

@github-actions

github-actions Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Test Results (windows)

path passed subtotal
tests\test_bump_version_in_files.py 5 5
tests\test_create_unique_testpypi_version.py 7 7
tests\test_find_unreleased_changelog_items.py 6 6
tests\test_update_development_dependencies.py 13 13
TOTAL 31 31

Link to workflow run

@github-actions

github-actions Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Test Results (ubuntu)

path passed subtotal
tests/test_bump_version_in_files.py 5 5
tests/test_create_unique_testpypi_version.py 7 7
tests/test_find_unreleased_changelog_items.py 6 6
tests/test_update_development_dependencies.py 13 13
TOTAL 31 31

Link to workflow run

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant