When support for Python 3.5 was added, AsyncFunctionDef
wasn't handled properly in terms of FunctionDef, which meant
that most of the checks which involved a function were never
called for AsyncFunctionDef. This led to spurious false positives
which occurred when AsyncFunctionDef were analyzed.
Closes#767
This changeset also brings a couple of changes:
* rrheaders and rcheaders are dropped from html_writer.Table's constructor.
They weren't used at all and it was dead code. This simplified some
if statements.
* _is_attribute_property is used to look for a property assignment
instead on relying on a different implementation.
Currently astroid goes into a total revamp, having a couple of development branches with partially
incompatible APIs, which means that pylint can't rely on the exact location of has_known_bases
and safe_infer until astroid reaches a new major release. With this in mind, these two
functions are backported in pylint again.
Also improve a couple of imports and added support for the
old visit_ names. Priority will have the old visit_ names, such
as visit_discard over visit_expr, visit_callfunc over visit_call
etc.