Releases: pylint-dev/astroid
v2.6.5
-
Fix a crash when there would be a 'TypeError object does not support
item assignment' in the code we parse.Closes pylint-dev/pylint#4439
-
Fix a crash when a AttributeInferenceError was raised when
failing to find the real name in infer_import_from.Closes pylint-dev/pylint#4692
v2.6.4
-
Fix a crash when a StopIteration was raised when inferring
a faulty function in a context manager.Closes pylint-dev/pylint#4723
v2.6.3
-
Added
If.is_sys_guardandIf.is_typing_guardhelper methods -
Fix a bad inferenece type for yield values inside of a derived class.
Closes #1090
-
Fix a crash when the node is a 'Module' in the brain builtin inference
Closes pylint-dev/pylint#4671
-
Fix issues when inferring match variables
Closes pylint-dev/pylint#4685
-
Fix lookup for nested non-function scopes
-
Fix issue that
TypedDictinstance wasn't callable.Closes pylint-dev/pylint#4715
-
Add dependency on setuptools and a guard to prevent related exceptions.
v2.6.2
-
Fix a crash when the inference of the length of a node failed
Closes pylint-dev/pylint#4633
-
Fix unhandled StopIteration during inference, following the implementation
of PEP479 in python 3.7+Closes pylint-dev/pylint#4631
Closes #1080
v2.6.1
-
Fix issue with
TypedDictfor Python 3.9+Closes pylint-dev/pylint#4610
v2.6.0
-
Appveyor and travis are no longer used in the continuous integration
-
setuptools_scmhas been removed and replaced bytbumpin order to not
have hidden runtime dependencies to setuptools -
NodeNg, the base node class, is now accessible fromastroidor
astroid.nodesas it can be used for typing. -
Update enum brain to improve inference of .name and .value dynamic class
attributesCloses pylint-dev/pylint#1932
Closes pylint-dev/pylint#2062
Closes pylint-dev/pylint#2306 -
Removed
Repr,Exec, andPrintnodes as theastnodes
they represented have been removed with the change to Python 3 -
Deprecate
Ellipsisnode. 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 theastroid.Ellipsisnode.
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.Ellipsisnode, along withast.Str,ast.Bytes,ast.Num,
andast.NamedConstantwere merged intoast.Constant. -
Deprecated
IndexandExtSlicenodes. They will be removed with the
next minor release. Both are now part of theSubscriptnode.
Checkers that already support Python 3.9+ work without issues.
It's only necessary to remove all references to theastroid.Indexand
astroid.ExtSlicenodes. This change will make development of checkers
easier as the resulting tree forast.Subscriptnodes will no longer
depend on the python version. Background: With Python 3.9ast.Index
andast.ExtSlicewere merged into theast.Subscriptnode. -
Updated all Match nodes to be internally consistent.
-
Add
Patternbase class.
Test for new release workflow without scm_setuptool
v2.6.0-dev0 Bump astroid to 2.6.0-dev0, update changelog
v2.5.8
-
Improve support for Pattern Matching
-
Add lineno and col_offset for
Keywordnodes 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
-
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_tuplebrain to reject namedtuple definitions
that would raise ValueErrorCloses #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.pathleading to more cases
that can now be inferredCloses #926
-
Add
kindfield toConstnodes, matching the structure of the built-in ast Const.
The kind field is "u" if the literal is a u-prefixed string, andNoneotherwise.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.Zand notastroid-X.Y.Zanymore. -
Add initial support for Pattern Matching in Python 3.10
v2.5.6
Semantic tag so scm_setuptools work.