Skip to content

Releases: pylint-dev/astroid

v2.6.0

22 Jun 05:54
Compare
Choose a tag to compare
  • Appveyor and travis are no longer used in the continuous integration

  • setuptools_scm has been removed and replaced by tbump in order to not
    have hidden runtime dependencies to setuptools

  • NodeNg, the base node class, is now accessible from astroid or
    astroid.nodes as it can be used for typing.

  • Update enum brain to improve inference of .name and .value dynamic class
    attributes

    Closes pylint-dev/pylint#1932
    Closes pylint-dev/pylint#2062
    Closes pylint-dev/pylint#2306

  • Removed Repr, Exec, and Print nodes as the ast nodes
    they represented have been removed with the change to Python 3

  • Deprecate Ellipsis node. It will be removed with the next minor release.
    Checkers that already support Python 3.8+ work without issues. It's only
    necessary to remove all references to the astroid.Ellipsis node.
    This changes will make development of checkers easier as the resulting tree for Ellipsis
    will no longer depend on the python version. Background: With Python 3.8 the
    ast.Ellipsis node, along with ast.Str, ast.Bytes, ast.Num,
    and ast.NamedConstant were merged into ast.Constant.

  • Deprecated Index and ExtSlice nodes. They will be removed with the
    next minor release. Both are now part of the Subscript node.
    Checkers that already support Python 3.9+ work without issues.
    It's only necessary to remove all references to the astroid.Index and
    astroid.ExtSlice nodes. This change will make development of checkers
    easier as the resulting tree for ast.Subscript nodes will no longer
    depend on the python version. Background: With Python 3.9 ast.Index
    and ast.ExtSlice were merged into the ast.Subscript node.

  • Updated all Match nodes to be internally consistent.

  • Add Pattern base class.

Test for new release workflow without scm_setuptool

15 Jun 19:07
Compare
Choose a tag to compare
v2.6.0-dev0

Bump astroid to 2.6.0-dev0, update changelog

v2.5.8

07 Jun 18:28
1342591
Compare
Choose a tag to compare
  • Improve support for Pattern Matching

  • Add lineno and col_offset for Keyword nodes and Python 3.9+

  • Add global inference cache to speed up inference of long statement blocks

  • Add a limit to the total number of nodes inferred indirectly as a result
    of inferring some node

v2.5.7

29 May 20:34
Compare
Choose a tag to compare
  • Fix six.with_metaclass transformation so it doesn't break user defined transformations.

  • Fix detection of relative imports.
    Closes #930
    Closes pylint-dev/pylint#4186

  • Fix inference of instance attributes defined in base classes

    Closes #932

  • Update infer_named_tuple brain to reject namedtuple definitions
    that would raise ValueError

    Closes #920

  • Do not set instance attributes on builtin object()

Closes #945
Closes pylint-dev/pylint#4232
Closes pylint-dev/pylint#4221
Closes pylint-dev/pylint#3970
Closes pylint-dev/pylint#3595

  • Fix some spurious cycles detected in context.path leading to more cases
    that can now be inferred

    Closes #926

  • Add kind field to Const nodes, matching the structure of the built-in ast Const.
    The kind field is "u" if the literal is a u-prefixed string, and None otherwise.

    Closes #898

  • Fix property inference in class contexts for properties defined on the metaclass

    Closes #940

  • Update enum brain to fix definition of members for subclass-defined Enums

    Closes pylint-dev/pylint#3535
    Closes pylint-dev/pylint#4358

  • Update random brain to fix a crash with inference of some sequence elements

    Closes #922

  • Fix inference of attributes defined in a base class that is an inner class

    Closes #904

  • Allow inferring a return value of None for non-abstract empty functions and
    functions with no return statements (implicitly returning None)

    Closes #485

  • scm_setuptools has been added to the packaging.

  • Astroid's tags are now the standard form vX.Y.Z and not astroid-X.Y.Z anymore.

  • Add initial support for Pattern Matching in Python 3.10

v2.5.6

27 Apr 19:02
Compare
Choose a tag to compare

Semantic tag so scm_setuptools work.

astroid-2.5.6

27 Apr 19:01
Compare
Choose a tag to compare

astroid-2.5.5: Fix discord server invitation

24 Apr 18:56
Compare
Choose a tag to compare

astroid-2.5.4

24 Apr 13:12
Compare
Choose a tag to compare
  • The packaging is now done via setuptools exclusively. doc, tests, and Changelog are
    not packaged anymore - reducing the size of the package greatly.

  • Debian packaging is now (officially) done in https://salsa.debian.org/python-team/packages/astroid.

  • __pkginfo__ now only contain __version__ (also accessible with astroid.__version__),
    other meta-information are still accessible with import importlib;metadata.metadata('astroid').

  • Added inference tip for typing.Tuple alias

  • Fix crash when evaluating typing.NamedTuple

    Closes pylint-dev/pylint#4383

  • COPYING was removed in favor of COPYING.LESSER and the latter was renamed to LICENSE to make more apparent
    that the code is licensed under LGPLv2 or later.

  • Moved from appveyor and travis to Github Actions for continuous integration.

astroid-2.5.3

18 Apr 19:18
Compare
Choose a tag to compare
  • Takes into account the fact that subscript inferring for a ClassDef may involve class_getitem method

  • Reworks the collections and typing brain so that pylint`s acceptance tests are fine.

    Closes pylint-dev/pylint#4206

  • Use inference_tip for typing.TypedDict brain.

  • Fix mro for classes that inherit from typing.Generic

  • Add inference tip for typing.Generic and typing.Annotated with __class_getitem__

    Closes pylint-dev/pylint#2822

astroid-2.5.2

18 Apr 19:18
Compare
Choose a tag to compare