Releases: pylint-dev/astroid
v2.9.1
-
NodeNG.frame()
andNodeNG.statement()
will start raisingParentMissingError
instead ofAttributeError
in astroid 3.0. This behaviour can already be triggered
by passingfuture=True
to aframe()
orstatement()
call. -
Prefer the module loader get_source() method in AstroidBuilder's
module_build() when possible to avoid assumptions about source
code being available on a filesystem. Otherwise the source cannot
be found and application behavior changes when running within an
embedded hermetic interpreter environment (pyoxidizer, etc.). -
Require Python 3.6.2 to use astroid.
-
Removed custom
distutils
handling for resolving paths to submodules.Ref #1321
-
Fix
deque.insert()
signature incollections
brain.Closes #1260
-
Fix
Module
nodes not having acol_offset
,end_lineno
, andend_col_offset
attributes. -
Fix typing and update explanation for
Arguments.args
beingNone
. -
Fix crash if a variable named
type
is subscripted in a generator expression.Closes pylint-dev/pylint#5461
-
Enable inference of dataclass import from marshmallow_dataclass.
This allows the dataclasses brain to recognize dataclasses annotated by marshmallow_dataclass. -
Resolve symlinks in the import path
Fixes inference error when the import path includes symlinks (e.g. Python
installed on macOS via Homebrew).Closes #823
Closes pylint-dev/pylint#3499
Closes pylint-dev/pylint#4302
Closes pylint-dev/pylint#4798
Closes pylint-dev/pylint#5081
v2.9.0
v2.8.6
-
Fix crash on inference of subclasses created from
Class().__subclasses__
Closes pylint-dev/pylint#4982
-
Fix bug with Python 3.7.0 / 3.7.1 and
typing.NoReturn
.Closes #1239
v2.8.5
-
Use more permissive versions for the
typed-ast
dependencie (<2.0 instead of <1.5)Closes #1237
-
Fix crash on inference of
__len__
.Closes pylint-dev/pylint#5244
-
Added missing
kind
(forConst
) andconversion
(forFormattedValue
) fields to repr. -
Fix crash with assignment expressions, nested if expressions and filtering of statements
Closes pylint-dev/pylint#5178
-
Fix incorrect filtering of assignment expressions statements
v2.8.4
-
Fix the
scope()
andframe()
methods ofNamedExpr
nodes.
When these nodes occur inArguments
,Keyword
orComprehension
nodes these
methods now correctly point to the outer-scope of theFunctionDef
,
ClassDef
, orComprehension
. -
Fix the
set_local
function forNamedExpr
nodes.
When these nodes occur inArguments
,Keyword
, orComprehension
nodes these
nodes are now correctly added to the locals of theFunctionDef
,
ClassDef
, orComprehension
.
v2.8.3
-
Add support for wrapt 1.13
-
Fixes handling of nested partial functions
Closes pylint-dev/pylint#2462
Closes #1208 -
Fix regression with the import resolver
Closes pylint-dev/pylint#5131
-
Fix crash with invalid dataclass field call
Closes pylint-dev/pylint#5153
v2.8.2
Same content than 2.8.2-dev0 / 2.8.1, released in order to fix a mistake when creating the tag. See #1199 (comment)
v2.8.1-rc1
This is the real 2.8.1 following a mistake when creating the tag for it, see #1199 (comment)
v2.8.1
-
Adds support of type hints inside numpy's brains.
Closes pylint-dev/pylint#4326
-
Enable inference of dataclass import from pydantic.dataclasses.
This allows the dataclasses brain to recognize pydantic dataclasses.Closes pylint-dev/pylint#4899
-
Fix regression on ClassDef inference
Closes pylint-dev/pylint#5030
Closes pylint-dev/pylint#5036 -
Fix regression on Compare node inference
Closes pylint-dev/pylint#5048
-
Extended attrs brain to support the provisional APIs
-
Astroid does not trigger it's own deprecation warning anymore.
-
Improve brain for
typing.Callable
andtyping.Type
. -
Fix bug with importing namespace packages with relative imports
Closes pylint-dev/pylint#5059
-
The
is_typing_guard
andis_sys_guard
functions are deprecated and will
be removed in 3.0.0. They are complex meta-inference functions that are better
suited for pylint. Import them frompylint.checkers.utils
instead
(requires pylint2.12
). -
Suppress the conditional between applied brains and dynamic import authorized
modules. (Revert the "The transforms related to a module are applied only if this
module has not been explicitly authorized to be imported" of version 2.7.3) -
Adds a brain to infer the
numpy.ma.masked_where
function.Closes pylint-dev/pylint#3342
v2.8.0
-
Add additional deprecation warnings in preparation for astroid 3.0
-
Require attributes for some node classes with
__init__
call.name
(str
) forName
,AssignName
,DelName
attrname
(str
) forAttribute
,AssignAttr
,DelAttr
op
(str
) forAugAssign
,BinOp
,BoolOp
,UnaryOp
names
(list[tuple[str, str | None]]
) forImport
-
-
Support pyz imports
Closes pylint-dev/pylint#3887
-
Add
node_ancestors
method toNodeNG
for obtaining the ancestors of nodes. -
It's now possible to infer the value of comparison nodes
Closes #846
-
Fixed bug in inference of dataclass field calls.
Closes pylint-dev/pylint#4963