python-astroid/python-astroid.changes
Michal Čihař 74dc46bc9b Accepting request 264405 from home:Nijel:branches:devel:languages:python
- Update to 1.3.2:
    * Fixed a crash with invalid subscript index.
    * Implement proper base class semantics for Python 3, where
      every class derives from object.
    * Allow more fine-grained control over C extension loading
      in the manager.
    * Fixed a crash issue with the pytest brain module.

OBS-URL: https://build.opensuse.org/request/show/264405
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-astroid?expand=0&rev=12
2014-12-08 13:31:44 +00:00

436 lines
19 KiB
Plaintext

-------------------------------------------------------------------
Mon Dec 8 12:11:48 UTC 2014 - mcihar@suse.cz
- Update to 1.3.2:
* Fixed a crash with invalid subscript index.
* Implement proper base class semantics for Python 3, where
every class derives from object.
* Allow more fine-grained control over C extension loading
in the manager.
* Fixed a crash issue with the pytest brain module.
-------------------------------------------------------------------
Fri Nov 21 08:53:09 UTC 2014 - mcihar@suse.cz
- Update to 1.3.0:
* Fix a maximum recursion error occured during the inference,
where statements with the same name weren't filtered properly.
Closes pylint issue #295.
* Check that EmptyNode has an underlying object in
EmptyNode.has_underlying_object.
* Simplify the understanding of enum members.
* Fix an infinite loop with decorator call chain inference,
where the decorator returns itself. Closes issue #50.
* Various speed improvements. Patch by Alex Munroe.
* Add pytest brain plugin. Patch by Robbie Coomber.
* Support for Python versions < 2.7 has been dropped, and the
source has been made compatible with Python 2 and 3. Running
2to3 on installation for Python 3 is not needed anymore.
* astroid now depends on six.
* modutils._module_file opens __init__.py in binary mode.
Closes issues #51 and #13.
* Only C extensions from trusted sources (the standard library)
are loaded into the examining Python process to build an AST
from the live module.
* Path names on case-insensitive filesystems are now properly
handled. This fixes the stdlib detection code on Windows.
* Metaclass-generating functions like six.with_metaclass
are now supported via some explicit detection code.
* astroid.register_module_extender has been added to generalize
the support for module extenders as used by many brain plugins.
* brain plugins can now register hooks to handle failed imports,
as done by the gobject-introspection plugin.
* The modules have been moved to a separate package directory,
`setup.py develop` now works correctly.
-------------------------------------------------------------------
Tue Nov 4 16:24:17 UTC 2014 - mcihar@suse.cz
- Update to 1.2.1:
* Fix a crash occurred when inferring decorator call chain.
Closes issue #42.
* Set the parent of vararg and kwarg nodes when inferring them.
Closes issue #43.
* namedtuple inference knows about '_fields' attribute.
* enum members knows about the methods from the enum class.
* Name inference will lookup in the parent function
of the current scope, in case searching in the current scope
fails.
* Inference of the functional form of the enums takes into
consideration the various inputs that enums accepts.
* The inference engine handles binary operations (add, mul etc.)
between instances.
* Fix an infinite loop in the inference, by returning a copy
of instance attributes, when calling 'instance_attr'.
Closes issue #34 (patch by Emile Anclin).
* Don't crash when trying to infer unbound object.__new__ call.
Closes issue #11.
- Use upstream zip for packaging as .tar.gz is no longer provided
-------------------------------------------------------------------
Tue Aug 12 09:24:19 UTC 2014 - mcihar@suse.com
- Update to 1.2.0
* Function nodes can detect decorator call chain and see if they are
decorated with builtin descriptors (`classmethod` and `staticmethod`).
* infer_call_result called on a subtype of the builtin type will now
return a new `Class` rather than an `Instance`.
* `Class.metaclass()` now handles module-level __metaclass__ declaration
on python 2, and no longer looks at the __metaclass__ class attribute on
python 3.
* Function nodes can detect if they are decorated with subclasses
of builtin descriptors when determining their type
(`classmethod` and `staticmethod`).
* Add `slots` method to `Class` nodes, for retrieving
the list of valid slots it defines.
* Expose function annotation to astroid: `Arguments` node
exposes 'varargannotation', 'kwargannotation' and 'annotations'
attributes, while `Function` node has the 'returns' attribute.
* Backported most of the logilab.common.modutils module there, as
most things there are for pylint/astroid only and we want to be
able to fix them without requiring a new logilab.common release
* Fix names grabed using wildcard import in "absolute import mode"
(ie with absolute_import activated from the __future__ or with
python 3). Fix pylint issue #58.
* Add support in pylint-brain for understanding enum classes.
-------------------------------------------------------------------
Thu Jul 10 13:12:12 UTC 2014 - toddrme2178@gmail.com
- Update to 1.1.1
* `Class.metaclass()` looks in ancestors when the current class
does not define explicitly a metaclass.
* Do not cache modules if a module with the same qname is already
known, and only return cached modules if both name and filepath
match. Fixes pylint Bitbucket issue #136.
- Update to 1.1.0
* All class nodes are marked as new style classes for Py3k.
* Add a `metaclass` function to `Class` nodes to
retrieve their metaclass.
* Add a new YieldFrom node.
* Add support for inferring arguments to namedtuple invocations.
* Make sure that objects returned for namedtuple
inference have parents.
* Don't crash when inferring nodes from `with` clauses
with multiple context managers. Closes #18.
* Don't crash when a class has some __call__ method that is not
inferable. Closes #17.
* Unwrap instances found in `.ancestors()`, by using their _proxied
class.
-------------------------------------------------------------------
Thu Nov 28 14:30:25 UTC 2013 - toddrme2178@gmail.com
- Rename to python-astroid to match new upstream name.
- Initial version 1.0.1
-------------------------------------------------------------------
Wed Jun 19 14:26:57 UTC 2013 - speilicke@suse.com
- Use upstream URL
-------------------------------------------------------------------
Fri May 31 09:26:07 UTC 2013 - dmueller@suse.com
- update to 0.24.3:
* #124360 [py3.3]: Don't crash on 'yield from' nodes
* #123062 [pylint-brain]: Use correct names for keywords for urlparse
* #123056 [pylint-brain]: Add missing methods for hashlib
* #123068: Fix inference for generator methods to correctly handle yields
* #123068: Make sure .as_string() returns valid code for yields in
expressions.
* #47957: Set literals are now correctly treated as inference leaves.
* #123074: Add support for inference of subscript operations on dict
literals.
* pylint-brain: more subprocess.Popen faking (see #46273)
* #109562 [jython]: java modules have no __doc__, causing crash
* #120646 [py3]: fix for python3.3 _ast changes which may cause crash
* #109988 [py3]: test fixes
* #106191: fix __future__ absolute import w/ From node
* #50395: fix function fromlineno when some decorator is splited on
multiple lines (patch by Mark Gius)
* #92362: fix pyreverse crash on relative import
* #104041: fix crash 'module object has no file_encoding attribute'
* #4294 (pylint-brain): bad inference on mechanize.Browser.open
* #46273 (pylint-brain): bad inference subprocess.Popen.communicate
-------------------------------------------------------------------
Thu Apr 26 08:36:47 UTC 2012 - toddrme2178@gmail.com
- Add python 3 package
- Change license to LGPL 2.1+
-------------------------------------------------------------------
Sat Feb 18 16:21:22 UTC 2012 - toganm@opensuse.org
- update to version 0.23.1
* #62295: avoid "OSError: Too many open files" by moving
.file_stream as a Module property opening the file only when
needed
* Lambda nodes should have a `name` attribute
* only call transformers if modname specified
-------------------------------------------------------------------
Thu Oct 6 08:48:58 CEST 2011 - dmueller@suse.de
- make it build on old distros
-------------------------------------------------------------------
Sun Sep 25 12:33:28 UTC 2011 - saschpe@gmx.de
- Don't remove logilab/__init__.py on SLE, where it is not existing.
-------------------------------------------------------------------
Wed Sep 21 10:06:07 UTC 2011 - saschpe@suse.de
- Update to version 0.22.0:
* added column offset information on nodes (patch by fawce)
* #70497: Crash on AttributeError: 'NoneType' object has no attribute '_infer_name'
* #70381: IndendationError in import causes crash
* #70565: absolute imports treated as relative (patch by Jacek Konieczny)
* #70494: fix file encoding detection with python2.x
* py3k: __builtin__ module renamed to builtins, we should consider this to properly
build ast for builtin objects
- Run testsuite
- Removed outdated stuff from spec file (%clean section, authors, ...)
- Set license to GPL-2.0+ (SPDX style)
-------------------------------------------------------------------
Tue Apr 12 16:00:03 CEST 2011 - hpj@urpla.net
- update to 0.21.1:
* python3: handle file encoding; fix a lot of tests
* fix #52006: "True" and "False" can be assigned as variable in Python2x
* fix #8847: pylint doesn't understand function attributes at all
* fix #8774: iterator / generator / next method
-------------------------------------------------------------------
Fri Jan 7 12:00:19 CET 2011 - hpj@urpla.net
- update to 0.21.0:
* python3.x: first python3.x release
* fix #37105: Crash on AttributeError: 'NoneType' object has no attribute '_infer_name'
* python2.4: drop python < 2.4 support
- 0.20.4:
* fix #37868 #37665 #33638 #37909: import problems with absolute_import_activated
* fix #8969: false positive when importing from zip-safe eggs
* fix #46131: minimal class decorator support
* minimal python2.7 support (dict and set comprehension)
* important progress on Py3k compatibility
-------------------------------------------------------------------
Wed Sep 29 10:11:50 CEST 2010 - dmueller@suse.de
- update to 0.20.3:
* fix #45959: AttributeError: 'NoneType' object has no attribute 'frame', due
to handling of __class__ when importing from living object (because of missing
source code or C-compiled object)
* fix astng building bug: we've to set module.package flag at the node
creation time otherwise we'll miss this information when infering relative
import during the build process (this should fix for instance some problems
with numpy)
* added __subclasses__ to special class attribute
* fix Class.interfaces so that no InferenceError raised on empty __implements__
* yield YES on multiplication of tuple/list with non valid operand
* fix licensing to LGPL
* add ALL_NODES_CLASSES constant to nodes module
* nodes redirection cleanup (possible since refactoring)
* bug fix for python < 2.5: add Delete node on Subscript nodes if we are in a
del context
-------------------------------------------------------------------
Wed Apr 7 09:48:56 CEST 2010 - dmueller@suse.de
- update to 0.20.0 (bnc#555993):
* fix #20464: raises “TypeError: '_Yes' object is not iterable” on list inference
* fix #19882: pylint hangs
* fix #20759: crash on pyreverse UNARY_OP_METHOD KeyError '~'
* fix #20760: crash on pyreverse : AttributeError: 'Subscript'
object has no attribute 'infer_lhs'
* fix #21980: [Python-modules-team] Bug#573229 : Pylint hangs;
improving the cache yields a speed improvement on big projects
* major refactoring: rebuild the tree instead of modify / monkey patching
* fix #19641: "maximum recursion depth exceeded" messages w/ python 2.6
this was introduced by a refactoring
* Ned Batchelder patch to properly import eggs with Windows line
endings. This fixes a problem with pylint not being able to
import setuptools.
* Winfried Plapper patches fixing .op attribute value for AugAssign nodes,
visit_ifexp in nodes_as_string
* Edward K. Ream / Tom Fleck patch closes #19641 (maximum recursion depth
exceeded" messages w/ python 2.6), see https://bugs.launchpad.net/pylint/+bug/456870
* fix #18773: inference bug on class member (due to bad handling of instance
/ class nodes "bounded" to method calls)
* fix #9515: strange message for non-class "Class baz has no egg member" (due to
bad inference of function call)
* fix #18953: inference fails with augmented assignment (special case for augmented
assignement in infer_ass method)
* fix #13944: false positive for class/instance attributes (Instance.getattr
should return assign nodes on instance classes as well as instance.
* include spelling fixes provided by Dotan Barak
-------------------------------------------------------------------
Wed Sep 16 22:50:32 CEST 2009 - poeml@suse.de
- fix build on SLE10 by not including %{py_sitedir}/*egg-info in
the filelist there
-------------------------------------------------------------------
Wed Sep 16 22:25:39 CEST 2009 - poeml@suse.de
- update to 0.19.1
2009-08-27 -- 0.19.1
* fix #8771: crash on yield expression
* fix #10024: line numbering bug with try/except/finally
* fix #10020: when building from living object, __name__ may be None
* fix #9891: help(logilab.astng) throws TypeError
* fix #9588: false positive E1101 for augmented assignment
- adjusted sip-c-instance-fix.diff
-------------------------------------------------------------------
Mon Sep 7 09:05:55 CEST 2009 - dmueller@suse.de
- build as noarch
-------------------------------------------------------------------
Sun Aug 9 08:51:16 CEST 2009 - coolo@novell.com
- use new python macros
-------------------------------------------------------------------
Thu Aug 6 22:59:09 CEST 2009 - hpj@urpla.net
- apply fix from Derek Harland to handle python-sip C instance methods
correctly
-------------------------------------------------------------------
Wed Aug 5 15:34:49 CEST 2009 - hpj@urpla.net
- Update to version 0.19.0:
* fixed python 2.6 issue (tests ok w/ 2.4, 2.5, 2.6. Anyone using 2.2 / 2.3
to tell us if it works?)
* some understanding of the __builtin__.property decorator
* inference: introduce UnboundMethod / rename InstanceMethod to BoundMethod
2009-03-19 -- 0.18.0
* major api / tree structure changes to make it works with compiler *and*
python >= 2.5 _ast module
* cleanups and refactoring on the way
2008-11-19 -- 0.17.4
* fix #6015: filter statements bug triggering W0631 false positive in pylint
* fix #5571: Function.is_method() should return False on module level
functions decorated by staticmethod/classmethod (avoid some crash in pylint)
* fix #5010: understand python 2.5 explicit relative imports
-------------------------------------------------------------------
Fri Sep 12 17:58:07 CEST 2008 - garloff@suse.de
- Update to version 0.17.3:
* fix #5889: astng crash on certain pyreverse projects
* fix bug w/ loop assigment in .lookup
* apply Maarten patch fixing a crash on TryFinalaly.block_range and fixing
'else'/'final' block line detection
-------------------------------------------------------------------
Fri Aug 22 18:21:14 CEST 2008 - garloff@suse.de
- Update to version 0.17.2:
* "with" statement support, patch provided by Brian Hawthorne
* fixed recursion arguments in nodes_of_class method as notified
by Dave Borowitz
* new InstanceMethod node introduced to wrap bound method (eg
Function node), patch provided by Dave Borowitz
-------------------------------------------------------------------
Tue Jul 17 01:38:11 CEST 2007 - garloff@suse.de
- update to version 0.17.1:
* fix a few crashes
* lambda has no pytype
- changes from 0.16.3 to 0.17.0
* various bugfixes with inference
* list vs function mixup
* handle setattr class modification
- changes from 0.16.2 to 0.16.3
* fix simple inference for subscription and loop assignments
- changes from 0.16.1 to 0.16.2
* compatibility with python2.3 and logilab-common 0.21
-------------------------------------------------------------------
Tue Sep 26 20:02:09 CEST 2006 - cthiel@suse.de
- update to version 0.16.1
* python 2.5 support, patch provided by Marien Zwart
* fix [Class|Module].block_range method (this fixes pylint's inline
disabling of messages on classes/modules)
* handle class.__bases__ and class.__mro__ (proper metaclass handling
still needed though)
* drop python2.2 support: remove code that was working around python2.2
* fixed generator expression scope bug
* patch transformer to extract correct line information
- changes from 0.15.1 to 0.16.0
* fix living object building to consider classes such as property as a
class instead of a data descriptor
* fix multiple assignment inference which was discarding some solutions
* added some line manipulation methods to handle pylint's block messages
control feature (Node.last_source_line(), None.block_range(lineno)
- changes from 0.15.0 to 0.15.1
* fix avoiding to load everything from living objects...
* fix a possible NameError in Instance.infer_call_result
- changes from 0.14.0 to 0.15.0
* fix possible infinite recursion on global statements and in various
other cases...
* fix locals/globals interactions when the global statement is used
* multiple inference related bug fixes
* associate List, Tuple and Dict and Const nodes to their respective
classes
* new .ass_type method on assignment related node, returning the assigment
type node (Assign, For, ListCompFor, GenExprFor, TryExcept)
* more API refactoring... .resolve method has disappeared, now you have
.ilookup on every nodes and .getattr/.igetattr on node supporting the
attribute protocol
* introduced a YES object that may be returned when there is ambiguity on
an inference path (typically function call when we don't know arguments
value)
* builder try to instantiate builtin exceptions subclasses to get their
instance attribute
-------------------------------------------------------------------
Tue Feb 28 16:46:03 CET 2006 - jmatejek@suse.cz
- updated to reflect python changes due to #149809
-------------------------------------------------------------------
Sat Jan 28 01:32:55 CET 2006 - garloff@suse.de
- Update to version 0.14:
* refactoring and inference improvements, changed API.
* Many new features and bugfixes.
-------------------------------------------------------------------
Wed Jan 25 21:40:49 CET 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
-------------------------------------------------------------------
Thu Dec 22 10:09:45 CET 2005 - garloff@suse.de
- Initial creation of package.
- Version 0.13.1:
* Fixes: Class.ancesotrs(), self_resolve(), local dicts __path__,
python2.2 compatibility.
* .__contains__ .has_key link (speedup)
* GenExpr and GenExprFor support for python 2.4+
- Version 0.13:
* This package has been forked of python-logilab-common 0.12.
* Fixes: lambda, Compare.as_string, manager.astng_from_module_name
* .locals and .globals on scoped node handle now a list of
references to each assigment statements instead of a single
reference to the first assigment statement.
-------------------------------------------------------------------