Releases: pylint-dev/astroid
v2.12.8
-
Fixed a crash in the
dataclass
brain forInitVars
without subscript typing.Closes pylint-dev/pylint#7422
-
Fixed parsing of default values in
dataclass
attributes.Closes pylint-dev/pylint#7425
v2.12.7
-
Fixed a crash in the
dataclass
brain for uninferable bases.Closes pylint-dev/pylint#7418
v2.12.6
-
Fix a crash involving
Uninferable
arguments tonamedtuple()
.Closes pylint-dev/pylint#7375
-
The
dataclass
brain now understands thekw_only
keyword in dataclass decorators.Closes pylint-dev/pylint#7290
v2.12.5
-
Prevent first-party imports from being resolved to
site-packages
. -
Fix
astroid.interpreter._import.util.is_namespace()
incorrectly
returningTrue
for frozen stdlib modules on PyPy.Closes #1755
v2.12.4
-
Fixed a crash involving non-standard type comments such as
# type: # any comment
.
v2.12.3
-
Fixed crash in
ExplicitNamespacePackageFinder
involving_SixMetaPathImporter
.Closes #1708
-
Fix unhandled
FutureWarning
from pandas import in cython modulesCloses #1717
-
Fix false positive with inference of type-annotated Enum classes.
-
Fix crash with inference of type-annotated Enum classes where the member has no value.
-
Fix a crash inferring invalid old-style string formatting with
%
.Closes #1737
-
Fix false positive with inference of
http
module when iteratingHTTPStatus
. -
Bumped minimum requirement of
wrapt
to 1.14 on Python 3.11. -
Don't add dataclass fields annotated with
KW_ONLY
to the list of fields.
v2.12.2
v2.12.1
-
Fix a crash when inferring old-style string formatting (
%
) using tuples. -
Fix a crash when
None
(or a value inferred asNone
) participates in a
**
expression. -
Fix a crash involving properties within
if
blocks.
v2.12.0
-
Fix signal has no
connect
member for PySide2 5.15.2+ and PySide6Closes #4040, #5378
-
astroid
now requires Python 3.7.2 to run. -
Avoid setting a Call as a base for classes created using
six.with_metaclass()
. -
Fix detection of builtins on
PyPy
3.9. -
Fix
re
brain on Python3.11
. The flags now come fromre._compile
. -
Build
nodes.Module
for frozen modules which have location information in their
ModuleSpec
.Closes #1512
-
The
astroid.mixins
module has been deprecated and marked for removal in 3.0.0.Closes #1633
-
Capture and log messages emitted by C extensions when importing them.
This prevents contaminating programmatic output, e.g. pylint's JSON reporter.Closes pylint-dev/pylint#3518
-
Calls to
str.format
are now correctly inferred. -
__new__
and__init__
have been added to theObjectModel
and are now
inferred asBoundMethods
. -
Old style string formatting (using
%
operators) is now correctly inferred.Closes #151
-
Adds missing enums from
ssl
module.Closes pylint-dev/pylint#3691
-
Remove dependency on
pkg_resources
fromsetuptools
.Closes #1103
-
Allowed
AstroidManager.clear_cache
to reload necessary brain plugins. -
Fixed incorrect inferences after rebuilding the builtins module, e.g. by calling
AstroidManager.clear_cache
.Closes #1559
-
On Python versions >= 3.9,
astroid
now understands subscripting
builtin classes such asenumerate
orstaticmethod
. -
Fixed inference of
Enums
when they are imported under an alias.Closes pylint-dev/pylint#5776
-
Rename
ModuleSpec
->module_type
constructor parameter to match attribute
name and improve typing. Usetype
instead. -
ObjectModel
andClassModel
now know about their__new__
and__call__
attributes. -
Fixed pylint
not-callable
false positive with nested-tuple assignment in a for-loop. -
Instances of builtins created with
__new__(cls, value)
are now inferred. -
Infer the return value of the
.copy()
method ondict
,list
,set
,
andfrozenset
.Closes #1403
-
Fixed inference of elements of living container objects such as tuples and sets in the
sys
andssl
modules. -
Add
pathlib
brain to handlepathlib.PurePath.parents
inference.Closes pylint-dev/pylint#5783
-
Avoid inferring the results of
**
operations involving values greater than1e5
to avoid expensive computation.Closes pylint-dev/pylint#6745
-
Fix test for Python
3.11
. In some instanceserr.__traceback__
will
be uninferable now. -
Add brain for numpy core module
einsumfunc
.Closes pylint-dev/pylint#5821
-
Infer the
DictUnpack
value forDict.getitem
calls.Closes #1195
-
Fix a crash involving properties within
try ... except
blocks.Closes pylint-dev/pylint#6592
-
Prevent creating
Instance
objects that proxy otherInstance
s when there is
ambiguity (or user error) in calling__new__(cls)
.
v2.11.7
-
Added support for
usedforsecurity
keyword tohashlib
constructors.Closes pylint-dev/pylint#6017
-
Updated the stdlib brain for
subprocess.Popen
to accommodate Python 3.9+.Closes pylint-dev/pylint#7092