Commit graph

383 commits

Author SHA1 Message Date
Charles-François Natali
6315ffa339 Merge. 2014-06-20 22:41:21 +01:00
Terry Jan Reedy
af9eb9628d Issue #21768: fix NameError in test_pydescr. Patch by Claudiu Popa. 2014-06-20 15:16:35 -04:00
Benjamin Peterson
d51374ed78 PEP 465: a dedicated infix operator for matrix multiplication (closes #21176) 2014-04-09 23:55:56 -04:00
Benjamin Peterson
2a6053468e move SharedKeyTests to test_descr 2014-03-17 16:20:12 -05:00
Benjamin Peterson
df813791db correct the fix for #20637; allow slot descriptor inheritance to take place before creating cached keys 2014-03-17 15:57:17 -05:00
Benjamin Peterson
2626fab4c7 look up __getnewargs__ and __getnewargs_ex__ on the object type (#16251) 2014-02-16 13:49:16 -05:00
Serhiy Storchaka
f28ba369dd Issue #20532: Tests which use _testcapi now are marked as CPython only. 2014-02-07 10:10:55 +02:00
Serhiy Storchaka
5cfc79deae Issue #20532: Tests which use _testcapi now are marked as CPython only. 2014-02-07 10:06:39 +02:00
Antoine Pitrou
7cd9fbe087 Fix whitespace 2013-11-23 19:01:36 +01:00
Antoine Pitrou
c9dc4a2a8a Issue #17810: Implement PEP 3154, pickle protocol 4.
Most of the work is by Alexandre.
2013-11-23 18:59:12 +01:00
Eric Snow
b523f8433a Implement PEP 451 (ModuleSpec). 2013-11-22 09:05:39 -07:00
Serhiy Storchaka
898e976734 Issue #19603: Use specific asserts in test_decr. 2013-11-17 23:39:13 +02:00
Serhiy Storchaka
76edd2110d Issue #19603: Use specific asserts in test_decr. 2013-11-17 23:38:50 +02:00
Benjamin Peterson
6b4f7803f8 cleanup the construction of __qualname__ (closes #19301 again) 2013-10-20 17:50:28 -04:00
Benjamin Peterson
3d9e481ece give explicitly global functions and classes a global __qualname__ (closes #19301) 2013-10-19 16:01:13 -04:00
Antoine Pitrou
796564c27b Issue #18112: PEP 442 implementation (safe object finalization). 2013-07-30 19:59:21 +02:00
Brett Cannon
4c14b5de1c #17115,17116: Have modules initialize the __package__ and __loader__
attributes to None.

The long-term goal is for people to be able to rely on these
attributes existing and checking for None to see if they have been
set. Since import itself sets these attributes when a loader does not
the only instances when the attributes are None are from someone
overloading __import__() and not using a loader or someone creating a
module from scratch.

This patch also unifies module initialization. Before you could have
different attributes with default values depending on how the module
object was created. Now the only way to not get the same default set
of attributes is to circumvent initialization by calling
ModuleType.__new__() directly.
2013-05-04 13:56:58 -04:00
Benjamin Peterson
71557596b2 remove pointless change 2013-04-13 17:20:36 -04:00
Benjamin Peterson
214a7d2674 properly lookup the __round__ special method (closes #17722) 2013-04-13 17:19:01 -04:00
Mark Dickinson
64aafeb4de Issue #16447: Fix potential segfault when setting __name__ on a class. 2013-04-13 15:26:58 +01:00
Benjamin Peterson
2c05a2e01b do safety checks on __qualname__ assignment 2012-10-31 00:01:15 -04:00
Benjamin Peterson
8afa7fa510 don't shadow the __qualname__ descriptor with __qualname__ in the class's __dict__ (closes #16271) 2012-10-30 23:51:03 -04:00
Benjamin Peterson
8fbd295458 merge 3.2 (#14699) 2012-05-01 09:51:46 -04:00
Benjamin Peterson
7295c6a871 fix calling the classmethod descriptor directly (closes #14699) 2012-05-01 09:51:09 -04:00
Benjamin Peterson
42f58818d6 merge 3.2 (#14658) 2012-04-24 11:09:20 -04:00
Benjamin Peterson
7b1668735a don't use a slot wrapper from a different special method (closes #14658)
This also alters the fix to #11603. Specifically, setting __repr__ to
object.__str__ now raises a recursion RuntimeError when str() or repr() is
called instead of silently bypassing the recursion. I believe this behavior is
more correct.
2012-04-24 11:06:25 -04:00
Victor Stinner
0db176f8f6 Issue #14386: Expose the dict_proxy internal type as types.MappingProxyType 2012-04-16 00:16:30 +02:00
Benjamin Peterson
1b1a8e7cb5 correctly lookup __trunc__ in int() constructor 2012-03-20 23:48:11 -04:00
Benjamin Peterson
96384b93aa make extra arguments to object.__init__/__new__ to errors in most cases (finishes #1683368) 2012-03-17 00:05:44 -05:00
Benjamin Peterson
de394543b4 merge 3.2 (#14334) 2012-03-16 09:35:38 -05:00
Benjamin Peterson
16d84ac355 check to make sure the attribute is a string (#14334) 2012-03-16 09:32:59 -05:00
Victor Stinner
d74782b0ac Close #14199: _PyType_Lookup() and super_getattro() keep a strong reference to
the type MRO to avoid a crash if the MRO is changed during the lookup.
2012-03-09 00:39:08 +01:00
Benjamin Peterson
9a6338651e merge 3.2 (#3787e896dbe9) 2012-03-07 18:52:52 -06:00
Benjamin Peterson
52c424343d allow cycles throught the __dict__ slot to be cleared (closes #1469629)
Patch from Armin, test from me.
2012-03-07 18:41:11 -06:00
Victor Stinner
6f73874edd Close #14095: type.__new__() doesn't remove __qualname__ key from the class
dict anymore if the key is present. Reject also non-string qualified names.
And fix reference leaks in type.__new__().
2012-02-25 01:22:36 +01:00
Georg Brandl
c425a94899 Fix use of deprecated assert_ method. 2012-02-20 21:37:22 +01:00
Georg Brandl
09a7c72cad Merge from 3.1: Issue #13703: add a way to randomize the hash values of basic types (str, bytes, datetime)
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.

The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 21:31:46 +01:00
Georg Brandl
2daf6ae249 Issue #13703: add a way to randomize the hash values of basic types (str, bytes, datetime)
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.

The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 19:54:16 +01:00
Benjamin Peterson
b900d6a78c initialize __dict__ if needed 2012-02-19 10:17:30 -05:00
Benjamin Peterson
01d7eba316 allow arbitrary attributes on classmethod and staticmethod (closes #14051) 2012-02-19 01:10:25 -05:00
Antoine Pitrou
9d57481f04 Issue #13577: various kinds of descriptors now have a __qualname__ attribute.
Patch by sbt.
2011-12-12 13:47:25 +01:00
Antoine Pitrou
86a36b500a PEP 3155 / issue #13448: Qualified name for classes and functions. 2011-11-25 18:56:07 +01:00
Nick Coghlan
9715d26305 Merge issue 1294232 patch from 3.2 2011-10-23 22:36:42 +10:00
Nick Coghlan
de31b191e5 Issue 1294232: Fix errors in metaclass calculation affecting some cases of metaclass inheritance. Patch by Daniel Urban. 2011-10-23 22:04:16 +10:00
Benjamin Peterson
01fc6cd056 make __doc__ mutable on heaptypes (closes #12773) 2011-08-17 12:03:47 -05:00
Benjamin Peterson
af3dcd2f98 improve test name 2011-08-17 11:48:23 -05:00
Benjamin Peterson
c4085c8470 complain when a class variable shadows a name in __slots__ (closes #12766) 2011-08-16 18:53:26 -05:00
Raymond Hettinger
66d2be8986 Issue 12647: Add __bool__() method to the None object. 2011-07-28 09:55:13 -07:00
Antoine Pitrou
9b43b6e14e Issue #11603: Fix a crash when __str__ is rebound as __repr__.
Patch by Andreas Stührk.
2011-07-15 21:18:18 +02:00
Antoine Pitrou
ff35050493 Issue #11603: Fix a crash when __str__ is rebound as __repr__.
Patch by Andreas Stührk.
2011-07-15 21:17:14 +02:00