- May 28, 2018
-
- May 26, 2018
-
-
Claudiu Popa authored
In some cases the _proxied object points to another Instance, not to the Class of an Instance node (usually this happens with enum and with our hardcoded inference support for this library). Instead of getting a TypeError, we check before if the _proxied matches what we expect. Found by #2080
-
- May 24, 2018
-
-
Claudiu Popa authored
-
Claudiu Popa authored
-
Claudiu Popa authored
-
- May 23, 2018
-
-
Claudiu Popa authored
-
- May 22, 2018
-
-
Anthony Sottile authored
-
- May 21, 2018
-
- May 20, 2018
-
-
Claudiu Popa authored
-
Claudiu Popa authored
-
Claudiu Popa authored
-
Claudiu Popa authored
typing.Namedtuple are collections.namedtuple in disguise. We do quite a lot of work around understanding namedtuples, but we weren't doing the same for typing.NamedTuple. In order to get a consistent experience, we moved typing.NamedTuple inference support in the brain file corresponding to collections's namedtuple, and there we can leverage the namedtuple inference rewriting functions. Now a new capability that typing.NamedTuple has is to understand that we can define methods on the class, so that they can be used on the instance when instantiated. Another small bug that was fixed was to put Name nodes in .bases when building a namedtuple, instead of putting the class node itself. Close PyCQA/pylint#1628
-
- May 19, 2018
-
-
Claudiu Popa authored
This reverts commit 2df7ce47. cached was already used in scoped_nodes, but my search didn't find it.
-
Claudiu Popa authored
-
- May 17, 2018
-
-
Ashley Whetter authored
-
- May 15, 2018
-
-
Mario Corchero authored
Makes load_module_from_file able to import files within the path that are just a symlink to a file outside of the path. modutils is using realpath at the moment which will resolve the symlink and don't allow the import as the file is detected outside of the available paths. By checking both abspath and realpath this patches add support for such scenarios.
-
- May 14, 2018
-
-
Claudiu Popa authored
-
Łukasz Rogalski authored
-
- May 13, 2018
-
-
Claudiu Popa authored
Get rid of the astpeephole (it's not an actual peephole and it's optimized just for once single use case
-
- May 07, 2018
-
-
Claudiu Popa authored
Close PyCQA/pylint#2055
-
- May 05, 2018
-
-
Ashley Whetter authored
-
Ashley Whetter authored
52e67656 introduced a new type of child iteration. Some classes started yielding children in the incorrect order, which was causing test failures in pylint. This change corrects the ordering to match the _astroid_fields of the class. Relates to a change from #497
-
- Apr 25, 2018
-
-
Claudiu Popa authored
-
Claudiu Popa authored
Some nodes such as the ExceptHandler has a name object but that is an AST node, not a string. This fix prevents a crash when trying to repr() an ExceptHandler.
-
- Apr 24, 2018
-
-
HoverHell authored
Because we don't support Python 2 any longer in the master branch, we can return values from generators to signal that we want to throw a StopIteration, without actually raising the StopIteration itself.
-
- Apr 19, 2018
-
-
Bryce Guinta authored
Super objects in python have a __qualname__ attribute so super nodes should have an equivalent qname method. Prevents an error in upstream pylint Close #533
-
- Apr 12, 2018
-
-
Claudiu Popa authored
-
- Apr 05, 2018
-
-
Claudiu Popa authored
-
Claudiu Popa authored
-
- Apr 03, 2018
-
-
Bryce Guinta authored
Probably the result of 3192f786
-
- Apr 02, 2018
-
-
Chris Philip authored
-
- Mar 31, 2018
-
-
Bryce Guinta authored
-
Bryce Guinta authored
-
Bryce Guinta authored
-
Bryce Guinta authored
This allows inference of function arguments to be different than the inference of the function body Currently this is only used for object.__new__(cls) calls but can be expanded later
-
Bryce Guinta authored
The typing module is not available on Python3.4
-
- Mar 30, 2018
-
-
Claudiu Popa authored
-
Claudiu Popa authored
It used to be a string containing the path, but it doesn't reflect the situation on Python, where it is actually a list. Also fix a bug with namespace package's __path__ attribute, which wasn't using the module's __path__, but its file attribute, which is None for namespace packages. Close #528
-
Nick Drozd authored
`_multi_line_block_fields` is a list of strings indicating which fields contain multi-line blocks. `_get_multi_line_blocks` dynamically accesses these attributes the first time it is called and then caches the resulting references so as to avoid repeated expensive attribute lookups.
-
Nick Drozd authored
Yield statements can only appear in multiline bodies (like function definitions) and in lambdas, so there is no need to check other nodes for them.
-