Skip to content

Releases: pylint-dev/astroid

v4.0.1

11 Oct 15:14
9f17568
Compare
Choose a tag to compare

What's New in astroid 4.0.1?

Release date: 2025-10-11

  • Suppress SyntaxWarning for invalid escape sequences and return in finally on
    Python 3.14 when parsing modules.

  • Assign Import and ImportFrom nodes to module locals if used with global.

    Closes pylint-dev/pylint#10632

v4.0.0

05 Oct 15:36
Compare
Choose a tag to compare

What's New in astroid 4.0.0?

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 on attrs classes with ClassVar 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, and
    attribute_looks_like_numpy_member from astroid.brain.brain_numpy_utils.

  • To alleviate circular imports, the manager argument to AstroidBuilder() 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 in modpath_from_file_with_callback to be higher than sys.path

  • Following a deprecation period, the future argument was removed from statement() and frame().

  • Improve consistency of JoinedStr inference by not raising InferenceError and
    returning either Uninferable or a fully resolved Const.

    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 decorators

    Closes #10377

  • Modify astroid.bases and tests.test_nodes to reflect that enum.property was added in Python 3.11, not 3.10

  • Fix incorrect result in _get_relative_base_path when the target directory name starts with the base path

    Closes #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 and ast.Interpolationadded in Python 3.14.

    Refs #2789

  • Add support for type parameter defaults added in Python 3.13.

  • Improve as_string() representation for TypeVar, ParamSpec and TypeVarTuple nodes, as well as
    type parameter in ClassDef, FuncDef and TypeAlias nodes (PEP 695).

  • Astroid now correctly supports the exceptions attribute of ExceptionGroup.

    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

v4.0.0rc0

29 Sep 13:18
Compare
Choose a tag to compare
v4.0.0rc0 Pre-release
Pre-release
Bump astroid to 4.0.0rc0

v4.0.0b3

22 Sep 19:41
Compare
Choose a tag to compare
v4.0.0b3 Pre-release
Pre-release

v4.0.0b3

v4.0.0b2

07 Aug 09:48
0f60c1f
Compare
Choose a tag to compare
v4.0.0b2 Pre-release
Pre-release
v4.0.0b2

v4.0.0b1

06 Aug 15:37
Compare
Choose a tag to compare
v4.0.0b1 Pre-release
Pre-release
Bump astroid to 4.0.0b1, update changelog

v4.0.0b0

27 Jul 15:45
Compare
Choose a tag to compare
v4.0.0b0 Pre-release
Pre-release
  • Removed internal functions infer_numpy_member, name_looks_like_numpy_member, and
    attribute_looks_like_numpy_member from astroid.brain.brain_numpy_utils.

  • To alleviate circular imports, the manager argument to AstroidBuilder() 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 in modpath_from_file_with_callback to be higher than sys.path

  • Following a deprecation period, the future argument was removed from statement() and frame().

  • Improve consistency of JoinedStr inference by not raising InferenceError and
    returning either Uninferable or a fully resolved Const.

    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 decorators

    Closes pylint-dev/pylint#10377

  • Modify astroid.bases and tests.test_nodes to reflect that enum.property was added in Python 3.11, not 3.10

  • Fix incorrect result in _get_relative_base_path when the target directory name starts with the base path

    Closes #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

v3.3.11

13 Jul 18:03
fbea510
Compare
Choose a tag to compare
  • Fix a crash when parsing an empty arbitrary expression with extract_node (extract_node("__()")).

    Closes #2734

  • Fix a crash when parsing a slice called in a decorator on a function that is also decorated with
    a known six decorator.

    Closes #2721

v3.3.10

10 May 13:32
a362368
Compare
Choose a tag to compare
  • Avoid importing submodules sharing names with standard library modules.

    Closes #2684

  • Fix bug where pylint code.custom_extension would analyze code.py or code.pyi instead if they existed.

    Closes pylint-dev/pylint#3631

v3.3.9

09 Mar 11:53
Compare
Choose a tag to compare

What's New in astroid 3.3.9?

Release date: 2025-03-09