Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==3.3.11
->==4.0.1
Release Notes
pylint-dev/astroid (astroid)
v4.0.1
Compare Source
============================
Release date: 2025-10-11
Suppress
SyntaxWarning
for invalid escape sequences and return in finally onPython 3.14 when parsing modules.
Assign
Import
andImportFrom
nodes to module locals if used withglobal
.Closes pylint-dev/pylint#10632
v4.0.0
Compare Source
============================
Release date: 2025-10-05
Support constraints from ternary expressions in inference.
Closes pylint-dev/pylint#9729
Handle deprecated
bool(NotImplemented)
cast in const nodes.Add support for boolean truthiness constraints (
x
,not x
) in inference.Closes pylint-dev/pylint#9515
Fix false positive
invalid-name
onattrs
classes withClassVar
annotated variables.Closes pylint-dev/pylint#10525
Prevent crash when parsing deeply nested parentheses causing MemoryError in python's built-in ast.
Closes #2643
Fix crash when inferring namedtuple with invalid field name looking like f-string formatting.
Closes #2519
Fix false positive no-member in except * handler.
Closes pylint-dev/pylint#9056
Fix crash when comparing invalid dict literal
Closes #2522
Removed internal functions
infer_numpy_member
,name_looks_like_numpy_member
, andattribute_looks_like_numpy_member
fromastroid.brain.brain_numpy_utils
.To alleviate circular imports, the
manager
argument toAstroidBuilder()
is now required.Constants now have a parent of
nodes.SYNTHETIC_ROOT
.Fix crashes with large positive and negative list multipliers.
Closes #2521
Closes #2523
Fix precedence of
path
arg inmodpath_from_file_with_callback
to be higher thansys.path
Following a deprecation period, the
future
argument was removed fromstatement()
andframe()
.Improve consistency of
JoinedStr
inference by not raisingInferenceError
andreturning either
Uninferable
or a fully resolvedConst
.Closes #2621
Fix crash when typing._alias() call is missing arguments.
Closes #2513
Remove support for Python 3.9 (and constant
PY310_PLUS
).Include subclasses of standard property classes as
property
decoratorsCloses #10377
Modify
astroid.bases
andtests.test_nodes
to reflect thatenum.property
was added in Python 3.11, not 3.10Fix incorrect result in
_get_relative_base_path
when the target directory name starts with the base pathCloses #2608
The brain for nose was dropped. nose has been deprecated for 10 years and the brain required some maintenance.
Refs #2765
Fix a crash when the root of a node is not a module but is unknown.
Closes #2672
Add basic support for
ast.TemplateStr
andast.Interpolation
added in Python 3.14.Refs #2789
Add support for type parameter defaults added in Python 3.13.
Improve
as_string()
representation forTypeVar
,ParamSpec
andTypeVarTuple
nodes, as well astype parameter in
ClassDef
,FuncDef
andTypeAlias
nodes (PEP 695).Astroid now correctly supports the
exceptions
attribute ofExceptionGroup
.Closes pylint-dev/pylint#8985
Closes pylint-dev/pylint#10558
Deprecate importing node classes from
astroid
directly. This will be removed in v5.It's recommended to import them from
astroid.nodes
instead.Refs #2837
Configuration
📅 Schedule: 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 becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.