2021-03-01 09:49:11 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-astroid: updated to 2.5.1
What's New in astroid 2.5.1?
* The ``context.path`` is reverted to a set because otherwise it leads to false \
positives
for non `numpy` functions.
* Don't transform dataclass ClassVars
* Improve typing.TypedDict inference
* Fix the `Duplicates found in MROs` false positive.
|
2021-02-22 10:22:05 by Adam Ciarcinski | Files touched by this commit (4) | |
Log message:
py-astroid: updated to 2.5
What's New in astroid 2.5?
* Adds `attr_fset` in the `PropertyModel` class.
* Remove support for Python 3.5.
* Remove the runtime dependency on ``six``. The ``six`` brain remains in
astroid.
* Enrich the ``brain_collection`` module so that ``__class_getitem__`` method is \
added to `deque` for
``python`` version above 3.9.
* The ``context.path`` is now a ``dict`` and the ``context.push`` method
returns ``True`` if the node has been visited a certain amount of times.
* Adds a brain for type object so that it is possible to write `type[int]` in \
annotation.
* Add ``__class_getitem__`` method to ``subprocess.Popen`` brain under Python \
3.9 so that it is seen as subscriptable by pylint.
* Adds `degrees`, `radians`, which are `numpy ufunc` functions, in the \
`numpy` brain. Adds `random` function in the `numpy.random` brain.
* Fix deprecated importlib methods
* Fix a crash in inference caused by `Uninferable` container elements
* Add `python 3.9` support.
* The flat attribute of ``numpy.ndarray`` is now inferred as an \
``numpy.ndarray`` itself.
It should be a ``numpy.flatiter`` instance, but this class is not yet \
available in the numpy brain.
* Fix a bug for dunder methods inference of function objects
* Fixes a bug in the signature of the ``ndarray.__or__`` method,
in the ``brain_numpy_ndarray.py`` module.
* Fixes a to-list cast bug in ``starred_assigned_stmts`` method,
in the ``protocols.py` module.
* Added a brain for ``hypothesis.strategies.composite``
* The transpose of a ``numpy.ndarray`` is also a ``numpy.ndarray``
* Added a brain for ``sqlalchemy.orm.session``
* Separate string and bytes classes patching
* Prevent recursion error for self referential length calls
* Added missing methods to the brain for ``mechanize``, to fix pylint false positives
* Added more supported parameters to ``subprocess.check_output``
* Fix recursion errors with pandas
* Added exception inference for `UnicodeDecodeError`
* `FunctionDef.is_generator` properly handles `yield` nodes in `If` tests
* Fixed exception-chaining error messages.
* Fix failure to infer base class type with multiple inheritance and qualified names
* Fix interpretation of ``six.with_metaclass`` class definitions.
* Reduce memory usage of astroid's module cache.
* Remove dependency on `imp`.
* Do not crash when encountering starred assignments in enums.
* Fix a crash in functools.partial inference when the arguments cannot be determined
* Fix a crash caused by a lookup of a monkey-patched method
* ``is_generator`` correctly considers `Yield` nodes in `AugAssign` nodes
This fixes a false positive with the `assignment-from-no-return` pylint check.
* Corrected the parent of function type comment nodes.
These nodes used to be parented to their original ast.FunctionDef parent
but are now correctly parented to their astroid.FunctionDef parent.
|
2020-07-15 11:19:05 by Adam Ciarcinski | Files touched by this commit (2) |
Log message:
py-astroid: allow newer lazy_object_proxy
|
2020-06-08 18:08:01 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-astroid: updated to 2.4.2
What's New in astroid 2.4.2?
* `FunctionDef.is_generator` properly handles `yield` nodes in `While` tests
* Properly construct the arguments of infered property descriptors
|
2020-05-05 20:18:55 by Adam Ciarcinski | Files touched by this commit (4) | |
Log message:
py-astroid: updated to 2.4.1
What's New in astroid 2.4.1?
* Handle the case where the raw builder fails to retrieve the ``__all__`` attribute
* Restructure the AST parsing heuristic to always pick the same module
* Changed setup.py to work with [distlib](https://pypi.org/project/distlib)
* Do not crash with SyntaxError when parsing namedtuples with invalid label
* Protect against ``infer_call_result`` failing with `InferenceError` in \
`Super.getattr()`
What's New in astroid 2.4.0?
* Expose a ast_from_string method in AstroidManager, which will accept
source code as a string and return the corresponding astroid object
* ``BoundMethod.implicit_parameters`` returns a proper value for ``__new__``
* Allow slots added dynamically to a class to still be inferred
* Allow `FunctionDef.getattr` to look into both instance attrs and special attributes
* Infer qualified ``classmethod`` as a classmethod.
* Prevent a recursion error to happen when inferring the declared metaclass of a \
class
* Raise ``AttributeInferenceError`` when ``getattr()`` receives an empty name
* Prevent a recursion error for self reference variables and `type()` calls.
* Do not infer the first argument of a staticmethod in a metaclass as the class \
itself
* ``NodeNG.bool_value()`` gained an optional ``context`` parameter
We need to pass an inference context downstream when inferring the boolean
value of a node in order to prevent recursion errors and double inference.
This fix prevents a recursion error with dask library.
* Pass a context argument to ``astroid.Arguments`` to prevent recursion errors
* Better inference of class and static methods decorated with custom methods
* Reverse the order of decorators for `infer_subscript`
`path_wrapper` needs to come first, followed by `raise_if_nothing_inferred`,
otherwise we won't handle `StopIteration` correctly.
* Prevent a recursion error when inferring self-referential variables without \
definition
* Numpy `datetime64.astype` return value is inferred as a `ndarray`.
* Skip non ``Assign`` and ``AnnAssign`` nodes from enum reinterpretation
* Numpy ``ndarray`` attributes ``imag`` and ``real`` are now inferred as ``ndarray``.
* Added a call to ``register_transform`` for all functions of the \
``brain_numpy_core_multiarray``
module in case the current node is an instance of ``astroid.Name``
* Use the parent of the node when inferring aug assign nodes instead of the statement
* Added some functions to the ``brain_numpy_core_umath`` module
* Added some functions of the ``numpy.core.multiarray`` module
* All the ``numpy ufunc`` functions derived now from a common class that
implements the specific ``reduce``, ``accumulate``, ``reduceat``,
``outer`` and ``at`` methods.
* ``nodes.Const.itered`` returns a list of ``Const`` nodes, not strings
* The ``shape`` attribute of a ``numpy ndarray`` is now a ``ndarray``
* Don't ignore special methods when inspecting gi classes
* Added transform for ``scipy.gaussian``
* Add suport for inferring properties.
* Added a brain for ``responses``
* Allow inferring positional only arguments.
* Retry parsing a module that has invalid type comments
It is possible for a module to use comments that might be interpreted
as type comments by the `ast` library. We do not want to completely crash on those
invalid type comments.
* Scope the inference to the current bound node when inferring instances of classes
When inferring instances of classes from arguments, such as ``self``
in a bound method, we could use as a hint the context's ``boundnode``,
which indicates the instance from which the inference originated.
As an example, a subclass that uses a parent's method which returns
``self``, will override the ``self`` to point to it instead of pointing
to the parent class.
* Add support for inferring exception instances in all contexts
We were able to infer exception instances as ``ExceptionInstance``
only for a handful of cases, but not all. ``ExceptionInstance`` has
support for better inference of `.args` and other exception related
attributes that normal instances do not have.
This additional support should remove certain false positives related
to ``.args`` and other exception attributes in ``pylint``.
* Add more supported parameters to ``subprocess.check_output``
* Infer args unpacking of ``self``
Certain stdlib modules use ``*args`` to encapsulate
the ``self`` parameter, which results in uninferable
instances given we rely on the presence of the ``self``
argument to figure out the instance where we should be
setting attributes.
* Clean up setup.py
Make pytest-runner a requirement only if running tests, similar to what was
done with McCabe.
Clean up the setup.py file, resolving a handful of minor warnings with it.
* Handle StopIteration error in infer_int.
* Can access per argument type comments for positional only and keyword only \
arguments.
The comments are accessed through through the new
``Arguments.type_comment_posonlyargs`` and
``Arguments.type_comment_kwonlyargs`` attributes respectively.
* Relax upper bound on `wrapt`
* Properly analyze CFFI compiled extensions.
|
2020-04-23 10:44:26 by Adam Ciarcinski | Files touched by this commit (2) |
Log message:
py-astroid: relax wrapt version requirement
|
2019-11-07 11:56:42 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-astroid: updated to 2.3.3
What's New in astroid 2.3.3?
* Relaxed `six` dependency.
|
2019-11-06 13:46:40 by Adam Ciarcinski | Files touched by this commit (3) |
Log message:
py-astroid: allow newer version of lang/py-six
|
2019-10-19 08:31:25 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-astroid: updated to 2.3.2
What's New in astroid 2.3.2?
* All type comments have as parent the corresponding `astroid` node
Until now they had as parent the builtin `ast` node which meant
we were operating with primitive objects instead of our own.
* Pass an inference context to `metaclass()` when inferring an object type
This should prevent a bunch of recursion errors happening in pylint.
Also refactor the inference of `IfExp` nodes to use separate contexts
for each potential branch.
|
2019-10-15 10:00:22 by Adam Ciarcinski | Files touched by this commit (1) |
Log message:
py-astroid: requires newer py-lazy-object-proxy
|