-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(deps): update dependency astroid to v3 #94
base: main
Are you sure you want to change the base?
Conversation
⚠ Artifact update problemRenovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
The artifact failure details are included below: File name: poetry.lock
|
6368ee3
to
ca2910d
Compare
ca2910d
to
c5e7d74
Compare
c5e7d74
to
43de025
Compare
43de025
to
0a847fb
Compare
0a847fb
to
115273f
Compare
|
115273f
to
d9c93b9
Compare
d9c93b9
to
72331c6
Compare
72331c6
to
8810e2e
Compare
9da9b57
to
cb655a9
Compare
ec93276
to
d2f11fe
Compare
d2f11fe
to
1497d3b
Compare
This PR contains the following updates:
2.15.8
->3.3.5
Release Notes
pylint-dev/astroid (astroid)
v3.3.5
Compare Source
============================
Release date: 2024-10-04
Control setting local nodes outside of the supposed local's constructor.
Closes #1490
Fix Python 3.13 compatibility re:
collections.abc
Closes pylint-dev/pylint#10000
v3.3.4
Compare Source
============================
Release date: 2024-09-23
Fix regression with f-string inference.
Closes pylint-dev/pylint#9947
Fix bug with
manager.clear_cache()
not fully clearing cache.Refs https://github.com/pylint-dev/pylint/pull/9932#issuecomment-2364985551
Fix a crash from inferring empty format specs.
Closes pylint-dev/pylint#9945
v3.3.3
Compare Source
============================
Release date: 2024-09-20
Fix inference regression with property setters.
Closes pylint-dev/pylint#9811
Add annotation-only instance attributes to attrs classes to fix
no-member
false positives.Closes #2514
v3.3.2
Compare Source
============================
Release date: 2024-08-11
Restore support for soft-deprecated members of the
typing
module with python 3.13.Refs pylint-dev/pylint#9852
v3.3.1
Compare Source
============================
Release date: 2024-08-06
Fix a crash introduced in 3.3.0 involving invalid format strings.
Closes #2492
v3.3.0
Compare Source
============================
Release date: 2024-08-04
Add support for Python 3.13.
Remove support for Python 3.8 (and constants
PY38
,PY39_PLUS
, andPYPY_7_3_11_PLUS
).Refs #2443
Add the
__annotations__
attribute to theClassDef
object model.Closes pylint-dev/pylint#7126
Implement inference for JoinedStr and FormattedValue
Add support for
ssl.OP_LEGACY_SERVER_CONNECT
(new in Python 3.12).Closes pylint-dev/pylint#9849
v3.2.4
Compare Source
============================
Release date: 2024-07-20
Avoid reporting unary/binary op type errors when inference is ambiguous.
Closes #2467
v3.2.3
Compare Source
============================
Release date: 2024-07-11
AssertionError
when inferring a property consisting of a partial function.Closes pylint-dev/pylint#9214
v3.2.2
Compare Source
============================
Release date: 2024-05-20
Improve inference for generic classes using the PEP 695 syntax (Python 3.12).
Closes pylint-dev/pylint#9406
v3.2.1
Compare Source
============================
Release date: 2024-05-16
Fix
RecursionError
ininfer_call_result()
for certain__call__
methods.Closes pylint-dev/pylint#9139
Add
AstroidManager.prefer_stubs
attribute to control the astroid 3.2.0 feature that prefers stubs.Refs pylint-dev/pylint#9626
Refs pylint-dev/pylint#9623
v3.2.0
Compare Source
============================
Release date: 2024-05-07
.pyi
stub files are now preferred over.py
files when resolving imports, (except for numpy).Closes pylint-dev/#9185
igetattr()
returns the last same-named function in a class (instead ofthe first). This avoids false positives in pylint with
@overload
.Closes #1015
Refs pylint-dev/pylint#4696
Adds
module_denylist
toAstroidManager
for modules to be skipped during ASTgeneration. Modules in this list will cause an
AstroidImportError
to be raisedwhen an AST for them is requested.
Refs pylint-dev/pylint#9442
Make
astroid.interpreter._import.util.is_namespace
only consider modulesusing a loader set to
NamespaceLoader
orNone
as namespaces.This fixes a problem that
six.moves
brain was not effective ifsix.moves
was already imported.
Closes #1107
v3.1.0
Compare Source
============================
Release date: 2024-02-23
Include PEP 695 (Python 3.12) generic type syntax nodes in
get_children()
,allowing checkers to visit them.
Refs pylint-dev/pylint#9193
Add
__main__
as a possible inferred value for__name__
to improvecontrol flow inference around
if __name__ == "__main__":
guards.Closes #2071
Following a deprecation period, the
names
arg to theImport
constructor andthe
op
arg to theBoolOp
constructor are now required, and thedoc
argsto the
PartialFunction
andProperty
constructors have been removed (callpostinit(doc_node=...)
instead.)Following a deprecation announced in astroid 1.5.0, the alias
AstroidBuildingException
is removed in favor ofAstroidBuildingError
.Include modname in AST warnings. Useful for
invalid escape sequence
warningswith Python 3.12.
RecursionError
is now trapped and logged out asUserWarning
during astroid node transformations with instructions about raising the system recursion limit.Closes pylint-dev/pylint#8842
Suppress
SyntaxWarning
for invalid escape sequences on Python 3.12 when parsing modules.Closes pylint-dev/pylint#9322
v3.0.3
Compare Source
============================
Release date: 2024-02-04
Fix type of
UnicodeDecodeError.object
inferred asstr
instead ofbytes
.Closes pylint-dev/pylint#9342
Fix
no-member
false positives forargs
andkwargs
onParamSpec
under Python 3.12.Closes pylint-dev/pylint#9401
v3.0.2
Compare Source
============================
Release date: 2023-12-12
Avoid duplicate inference results for some uses of
typing.X
constructs likeTuple[Optional[int], ...]
. This was causing pylint to occasionally omitmessages like
deprecated-typing-alias
.Closes pylint-dev/pylint#9220
v3.0.1
Compare Source
============================
Release date: 2023-10-15
Fix crashes linting code using PEP 695 (Python 3.12) generic type syntax.
Closes pylint-dev/pylint#9098
v3.0.0
Compare Source
=============================
Release date: 2023-09-26
Add support for Python 3.12, including PEP 695 type parameter syntax.
Closes #2201
Remove support for Python 3.7.
Refs #2137
Use the global inference cache when inferring, even without an explicit
InferenceContext
. This is a significant performance improvement given howoften methods default to
None
for the context argument. (Lintingastroid
itself now takes ~5% less time on Python 3.12; other projects requiring more
complex inference calculations will see greater speedups.)
Refs #529
Following a deprecation period starting in astroid 2.7.0, the
astroid.node_classes
and
astroid.scoped_nodes
modules have been removed in favor ofastroid.nodes.node_classes
and
astroid.nodes.scoped_nodes
.Closes #1072
Following a deprecation period starting in astroid 2.12.0, the
astroid.mixins
modulehas been removed in favor of
astroid.nodes._base_nodes
(private).Refs #1633
Return all existing arguments when calling
Arguments.arguments()
. This also meansfind_argname
will nowuse the whole list of arguments for its search.
Closes #2213
Exclude class attributes from the
__members__
container of anEnum
class when they arenodes.AnnAssign
nodes with no assigned value.Refs pylint-dev/pylint#7402
Remove
@cached
and@cachedproperty
decorator (just use@cached_property
from the stdlib).Closes #1780
Refs #2140
Remove the
inference
module. Node inference methods are now in the moduledefining the node, rather than being associated to the node afterward.
Closes #679
Move
LookupMixIn
toastroid.nodes._base_nodes
and make it private.Remove the shims for
OperationError
,BinaryOperationError
, andUnaryOperationError
in
exceptions
. They were moved toutil
in astroid 1.5.0.Move
safe_infer()
fromhelpers
toutil
. This avoids some circular imports.Reduce file system access in
ast_from_file()
.Reduce time to
import astroid
by delayingastroid_bootstrapping()
untilthe first instantiation of
AstroidBuilder
.Closes #2161
Make
igetattr()
idempotent. This addresses some reports of varying resultswhen running pylint with
--jobs
.Closes pylint-dev/pylint#4356
Refs #7
Fix incorrect cache keys for inference results, thereby correctly inferring types
for calls instantiating types dynamically.
Closes #1828
Closes pylint-dev/pylint#7464
Closes pylint-dev/pylint#8074
Fix interrupted
InferenceContext
call chains, thereby addressing performanceproblems when linting
sqlalchemy
.Closes pylint-dev/pylint#8150
nodes.FunctionDef
no longer inherits fromnodes.Lambda
.This is a breaking change but considered a bug fix as the nodes did not share the same
API and were not interchangeable.
We have tried to minimize the amount of breaking changes caused by this change
but some are unavoidable.
infer_call_result
now shares the same interface across all implementations. Namely:This is a breaking change for
nodes.FunctionDef
where previouslycaller
had a default ofNone
. PassingNone
again will not create a behaviour change.The breaking change allows us to better type and re-use the method within
astroid
.Improved signature of the
__init__
and__postinit__
methods of most nodes.This includes making
lineno
,col_offset
,end_lineno
,end_col_offset
andparent
required arguments for
nodes.NodeNG
and its subclasses.For most other nodes, arguments of their
__postinit__
methods have been made required to betterrepresent how they would normally be constructed by the standard library
ast
module.The following nodes were changed or updated:
nodes.AnnAssign
nodes.Arguments
nodes.Assign
nodes.AssignAttr
nodes.AssignName
nodes.Attribute
nodes.AugAssign
nodes.Await
nodes.BaseContainer
nodes.BinOp
nodes.Call
nodes.ClassDef
nodes.Compare
nodes.Comprehension
nodes.Decorators
nodes.Delete
nodes.DelAttr
nodes.DelName
nodes.Dict
nodes.DictComp
nodes.ExceptHandler
nodes.Expr
nodes.For
nodes.FunctionDef
nodes.GeneratorExp
nodes.If
nodes.IfExp
nodes.Keyword
nodes.Lambda
nodes.ListComp
nodes.Module
nodes.Name
nodes.NodeNG
nodes.Raise
nodes.Return
nodes.SetComp
nodes.Slice
nodes.Starred
objects.Super
, we also added thecall
parameter to its__init__
method.nodes.Subscript
nodes.UnaryOp
nodes.While
nodes.Yield
These changes involve breaking changes to their API but should be considered bug fixes. We
now make arguments required when they are instead of always providing defaults.
nodes.If.self.is_orelse
has been removed as it was never set correctly and thereforeprovided a false value.
Remove dependency on
wrapt
.Remove dependency on
lazy_object_proxy
. This includes the removalof the associated
lazy_import
,lazy_descriptor
andproxy_alias
utility functions.CallSite._unpack_args
andCallSite._unpack_keywords
now usesafe_infer()
forbetter inference and fewer false positives.
Closes pylint-dev/pylint#8544
Add
attr.Factory
to the recognized class attributes for classes decorated withattrs
.Closes pylint-dev/pylint#4341
infer_property()
now observes the same property-specific workaround asinfer_functiondef
.Refs #1490
Remove unused and / or deprecated constants:
astroid.bases.BOOL_SPECIAL_METHOD
astroid.bases.BUILTINS
astroid.const.BUILTINS
astroid.const.PY38_PLUS
astroid.const.Load
astroid.const.Store
astroid.const.Del
Refs #2141
frame()
raisesParentMissingError
andstatement()
raisesStatementMissing
formissing parents regardless of the value of the
future
argument (which gave this behavioralready).
The
future
argument to each method is deprecated and will be removed in astroid 4.0.Refs #1217
Remove deprecated
Ellipsis
,ExtSlice
,Index
nodes.Refs #2152
Remove deprecated
is_sys_guard
andis_typing_guard
methods.Refs #2153
Remove deprecated
doc
attribute forModule
,ClassDef
, andFunctionDef
.Use the
doc_node
attribute instead.Refs #2154
Add new
nodes.Try
to better match Python AST. Replaces theTryExcept
and
TryFinally
nodes which have been removed.Publicize
NodeNG.repr_name()
to facilitate finding a node's nice name.Refs pylint-dev/pylint#8598
Fix false positives for
no-member
andinvalid-name
when using the_name_
,_value_
and_ignore_
sunders in Enums.Closes pylint-dev/pylint#9015
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.