Path to this page:
Subject: CVS commit: pkgsrc/devel/py-astroid
From: Adam Ciarcinski
Date: 2019-10-01 13:34:56
Message id: 20191001113456.2A987FBF4@cvs.NetBSD.org
Log Message:
py-astroid: updated to 2.3.1
What's New in astroid 2.3.1?
* A transform for the builtin `dataclasses` module was added.
This should address various `dataclasses` issues that were surfaced
even more after the release of pylint 2.4.0.
In the previous versions of `astroid`, annotated assign nodes were
allowed to be retrieved via `getattr()` but that no longer happens
with the latest `astroid` release, as those attribute are not actual
attributes, but rather virtual ones, thus an operation such as `getattr()`
does not make sense for them.
* Update attr brain to partly understand annotated attributes
What's New in astroid 2.3.0?
* Add a brain tip for ``subprocess.check_output``
* Remove NodeNG.nearest method because of lack of usage in astroid and pylint.
* Allow importing wheel files.
* Annotated AST follows PEP8 coding style when converted to string.
* Fix a bug where defining a class using type() could cause a DuplicateBasesError.
* Dropped support for Python 3.4.
* Numpy brain support is improved.
Numpy's fundamental type ``numpy.ndarray`` has its own brain : \
``brain_numpy_ndarray`` and
each numpy module that necessitates brain action has now its own numpy brain :
- ``numpy.core.numeric``
- ``numpy.core.function_base``
- ``numpy.core.multiarray``
- ``numpy.core.numeric``
- ``numpy.core.numerictypes``
- ``numpy.core.umath``
- ``numpy.random.mtrand``
* ``assert`` only functions are properly inferred as returning ``None``
* Add support for Python 3.8's `NamedExpr` nodes, which is part of assignment \
expressions.
* Added support for inferring `IfExp` nodes.
* Instances of exceptions are inferred as such when inferring in non-exception \
context
This allows special inference support for exception attributes such as `.args`.
* Drop a superfluous and wrong callcontext when inferring the result of a \
context manager
* ``igetattr`` raises ``InferenceError`` on re-inference of the same object
This prevents ``StopIteration`` from leaking when we encounter the same
object in the current context, which could result in various ``RuntimeErrors``
leaking in other parts of the inference.
Until we get a global context per inference, the solution is sort of a hack,
as with the suggested global context improvement, we could theoretically
reuse the same inference object.
* Variable annotations can no longer be retrieved with `ClassDef.getattr`
Unless they have an attached value, class variable annotations can no longer
be retrieved with `ClassDef.getattr.`
* Improved builtin inference for ``tuple``, ``set``, ``frozenset``, ``list`` and \
``dict``
We were properly inferring these callables *only* if they had consts as
values, but that is not the case most of the time. Instead we try to infer
the values that their arguments can be and use them instead of assuming
Const nodes all the time.
* The last except handler wins when inferring variables bound in an except handler.
* ``threading.Lock.locked()`` is properly recognized as a member of \
``threading.Lock``
* Fix recursion error involving ``len`` and self referential attributes
* Can access per argument type comments through new \
``Arguments.type_comment_args`` attribute.
* Fix being unable to access class attributes on a NamedTuple.
* Fixed being unable to find distutils submodules by name when in a virtualenv.
Files: