<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/astroid.git/astroid/node_classes.py, branch fix-python3-tests</title>
<subtitle>bitbucket.org: Obsolete (use python-packages/astroid-git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/'/>
<entry>
<title>Fix pylint warnings over astroid, update the list of disabled messages in pylintrc.</title>
<updated>2015-05-19T20:40:27+00:00</updated>
<author>
<name>Claudiu Popa</name>
<email>cpopa@cloudbasesolutions.com</email>
</author>
<published>2015-05-19T20:40:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=3407b755555f5ee16b72b64d8a844072cf86d021'/>
<id>3407b755555f5ee16b72b64d8a844072cf86d021</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove redundant if, astroid is 2.7+ only.</title>
<updated>2015-05-19T18:17:54+00:00</updated>
<author>
<name>Claudiu Popa</name>
<email>cpopa@cloudbasesolutions.com</email>
</author>
<published>2015-05-19T18:17:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=3f6fa8e817f2785da1e844107e517cb2976aa950'/>
<id>3f6fa8e817f2785da1e844107e517cb2976aa950</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Protect against a TypeError in Arguments.fromlineno.</title>
<updated>2015-03-12T15:51:36+00:00</updated>
<author>
<name>Claudiu Popa</name>
<email>cpopa@cloudbasesolutions.com</email>
</author>
<published>2015-03-12T15:51:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=20562e62cc6912a5df9a9cb4c8207b5b4f6a95ad'/>
<id>20562e62cc6912a5df9a9cb4c8207b5b4f6a95ad</id>
<content type='text'>
The parent's fromlineno can be None when the parent
is a function retrieved from the builtins module,
which will not have the source code at hand.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The parent's fromlineno can be None when the parent
is a function retrieved from the builtins module,
which will not have the source code at hand.
</pre>
</div>
</content>
</entry>
<entry>
<title>Change the way how context caching and scoping is done.</title>
<updated>2015-03-11T11:47:04+00:00</updated>
<author>
<name>Claudiu Popa</name>
<email>cpopa@cloudbasesolutions.com</email>
</author>
<published>2015-03-11T11:47:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=9b5d9598574f593485a7e2ddff6a5a0e995b62f0'/>
<id>9b5d9598574f593485a7e2ddff6a5a0e995b62f0</id>
<content type='text'>
This patch reverts some changes added by a couple of changesets, making
the context caching and scoping to work as before.
The changesets in question are:

 * 41b3bd589da0549ac061bc4c4b5d379cdbb1e10c
   Replace copy_context with some dynamic scoping.

 * 8d3c601
   Remove context.lookupname; make it an argument to infer() when appropriate.

 * partially reverts  048a42c.
   Fix some deep recursion problems.


There were some problems with these changes, which led to horrendous
performance when dealing with multiple inference paths of the same names,
as seen in these Pylint issues:

* https://bitbucket.org/logilab/pylint/issue/395/horrible-performance-related-to-inspect
* https://bitbucket.org/logilab/pylint/issue/465/pylint-hangs-when-using-inspectsignature
* https://bitbucket.org/logilab/pylint/issue/430/pylint-140-execution-time-and-memory

The reverted changes assumed that a context it's only passed to callees
and then destroyed, thus InferenceContext.push always returned another inference context,
with the updated inference path so far. This is wrong, since contexts are sometimes
reused, so the original context, the one before the .push call need to have the same
cache key in its path (this is actually what's happening in these mentioned issues,
the same object is inferred over and over again, but with different contexts).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch reverts some changes added by a couple of changesets, making
the context caching and scoping to work as before.
The changesets in question are:

 * 41b3bd589da0549ac061bc4c4b5d379cdbb1e10c
   Replace copy_context with some dynamic scoping.

 * 8d3c601
   Remove context.lookupname; make it an argument to infer() when appropriate.

 * partially reverts  048a42c.
   Fix some deep recursion problems.


There were some problems with these changes, which led to horrendous
performance when dealing with multiple inference paths of the same names,
as seen in these Pylint issues:

* https://bitbucket.org/logilab/pylint/issue/395/horrible-performance-related-to-inspect
* https://bitbucket.org/logilab/pylint/issue/465/pylint-hangs-when-using-inspectsignature
* https://bitbucket.org/logilab/pylint/issue/430/pylint-140-execution-time-and-memory

The reverted changes assumed that a context it's only passed to callees
and then destroyed, thus InferenceContext.push always returned another inference context,
with the updated inference path so far. This is wrong, since contexts are sometimes
reused, so the original context, the one before the .push call need to have the same
cache key in its path (this is actually what's happening in these mentioned issues,
the same object is inferred over and over again, but with different contexts).
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix all unused imports in the code base.</title>
<updated>2015-01-29T14:18:37+00:00</updated>
<author>
<name>Claudiu Popa</name>
<email>cpopa@cloudbasesolutions.com</email>
</author>
<published>2015-01-29T14:18:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=bcf8335ba863e4bb1f61c6ee7236492437dfef93'/>
<id>bcf8335ba863e4bb1f61c6ee7236492437dfef93</id>
<content type='text'>
Also, this patch adds a new rule in the pylintrc for the CI gate.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also, this patch adds a new rule in the pylintrc for the CI gate.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove all trailing whitespaces.</title>
<updated>2015-01-10T17:56:08+00:00</updated>
<author>
<name>Claudiu Popa</name>
<email>cpopa@cloudbasesolutions.com</email>
</author>
<published>2015-01-10T17:56:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=b87ccb5a644c7405448e5abf2827ab2c8d0e65c1'/>
<id>b87ccb5a644c7405448e5abf2827ab2c8d0e65c1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add inference tips for 'tuple', 'set' and 'list' builtins.</title>
<updated>2014-11-28T16:37:48+00:00</updated>
<author>
<name>Claudiu Popa</name>
<email>cpopa@cloudbasesolutions.com</email>
</author>
<published>2014-11-28T16:37:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=3de8d78fa93140639a06d7d4dcc47d8d77990ab5'/>
<id>3de8d78fa93140639a06d7d4dcc47d8d77990ab5</id>
<content type='text'>
This patch adds some inference tips for the mentioned builtins,
making calls such as 'list([4, 5, 6])` be inferred the same as `[4, 5, 6]`.
Previosly, inferring those objects resulted in an Instance of the given builtin,
without having access to their elements. This is useful, for instance, when trying
to infer slots defined with set, list of tuple calls (instead of their syntactic equivalents).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds some inference tips for the mentioned builtins,
making calls such as 'list([4, 5, 6])` be inferred the same as `[4, 5, 6]`.
Previosly, inferring those objects resulted in an Instance of the given builtin,
without having access to their elements. This is useful, for instance, when trying
to infer slots defined with set, list of tuple calls (instead of their syntactic equivalents).
</pre>
</div>
</content>
</entry>
<entry>
<title>Move all astroid modules into a its own directory, which is now the package.</title>
<updated>2014-11-08T22:47:14+00:00</updated>
<author>
<name>Torsten Marek</name>
<email>shlomme@gmail.com</email>
</author>
<published>2014-11-08T22:47:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/astroid.git/commit/?id=0c7327e7599c69843ffdb884d313863ec36cb6dd'/>
<id>0c7327e7599c69843ffdb884d313863ec36cb6dd</id>
<content type='text'>
python setup.py develop now works.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
python setup.py develop now works.
</pre>
</div>
</content>
</entry>
</feed>
