title: pylint 1.4 reports E1101(no-member) on all C extensions
body: <p>We've been long-time fans of <code>pylint</code>. Its static analysis has become a critical part of all our python projects and has saved tons of time chasing obscure bugs.  But after upgrading from 1.3 -> 1.4, almost all compiled c extensions result in E1101(no-member) errors.  </p>
  
  <p>Projects that previously run perfectly clean through <code>pylint</code> 1.3 now complain about almost every C extension member with E1101. We've been forced to disable E1101 errors, but this materially detracts from the usefulness of <code>pylint</code>.</p>
  
  <p>For example, this perfectly valid use of the <code>lxml</code> package</p>
  
  <pre><code>r"""valid.py: demonstrate pylint 1.4 error"""
  from lxml import etree
  print etree.Element('mydoc')
  </code></pre>
  
  <p>Run this through <code>pylint</code>, and it reports:</p>
  
  <pre><code>$ pylint -rn valid.py
  No config file found, using default configuration
  ************* Module valid
  E:  3, 6: Module 'lxml.etree' has no 'Element' member (no-member)
  </code></pre>
  
  <p>But it is perfectly valid:</p>
  
  <pre><code>$ python valid.py
  &lt;Element mydoc at 7fddf67b1ba8&gt;
  </code></pre>
  
  <p>Here's where it gets really weird. A very small handful of C extensions seem to work just fine through <code>pylint</code>, e.g.:</p>
  
  <pre><code>r"""valid2.py: this one works fine"""
  import sqlite3
  print sqlite3.version
  
  $ pylint -rn valid2.py
  No config file found, using default configuration
  </code></pre>
  
  <p>My question is, has anyone else witnessed this? And if so, would you be willing to share your workaround/solution?</p>
  
  <p>We've experimented with trying to create plugins to suppress these warnings
  (<a href="http://docs.pylint.org/plugins.html#enter-plugin">http://docs.pylint.org/plugins.html#enter-plugin</a>), but we're having difficulty making heads or tails of the docs -- and the <code>astroid</code> base class is uber-complex and has defied our attempts to grok it.</p>
  
  <p>For real bonus points (and our eternal gratitude) we'd love to understand what changed in <code>pylint</code>.  We'd be happy to fix the code (or at least publish a best practice document for C extension authors) that would satisfy <code>pylint</code>. </p>
  
  <p>Platform details</p>
  
  <pre><code>$ pylint --version
  No config file found, using default configuration
  pylint 1.4.0,
  astroid 1.3.2, common 0.63.2
  Python 2.7.5 (default, Jul  1 2013, 18:09:11)
  [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]
  </code></pre>