cpython/Objects
Nick Coghlan 19d246745d Issue #23722: improve __classcell__ compatibility
Handling zero-argument super() in __init_subclass__ and
__set_name__ involved moving __class__ initialisation to
type.__new__. This requires cooperation from custom
metaclasses to ensure that the new __classcell__ entry
is passed along appropriately.

The initial implementation of that change resulted in abruptly
broken zero-argument super() support in metaclasses that didn't
adhere to the new requirements (such as Django's metaclass for
Model definitions).

The updated approach adopted here instead emits a deprecation
warning for those cases, and makes them work the same way they
did in Python 3.5.

This patch also improves the related class machinery documentation
to cover these details and to include more reader-friendly
cross-references and index entries.
2016-12-05 16:47:55 +10:00
..
clinic Issue #27810: Rerun Argument Clinic on all modules 2016-09-09 20:00:13 -07:00
stringlib Issue #28561: Clean up UTF-8 encoder: remove dead code, update comments, etc. 2016-10-30 18:25:27 +02:00
abstract.c Issue #28410: Added _PyErr_FormatFromCause() -- the helper for raising 2016-10-21 17:09:17 +03:00
accu.c
boolobject.c
bytearrayobject.c Issue #27895: Spelling fixes (Contributed by Ville Skyttä). 2016-09-07 12:03:06 +00:00
bytes_methods.c remove all usage of Py_LOCAL 2016-09-09 13:54:34 -07:00
bytesobject.c Issue 28128: Print out better error/warning messages for invalid string escapes. Backport to 3.6. 2016-10-31 14:46:26 -04:00
capsule.c
cellobject.c fix indentation of comments in cellobject.c (closes #27011) 2016-05-12 23:12:21 -07:00
classobject.c method_call() and slot_tp_new() now uses fast call 2016-08-25 01:04:14 +02:00
codeobject.c Merge 3.5 (issue #27942) 2016-11-09 09:43:08 -05:00
complexobject.c Issue #28203: Merge from 3.5 2016-09-24 15:28:34 +01:00
descrobject.c replace Py_(u)intptr_t with the c99 standard types 2016-09-06 13:47:26 -07:00
dict-common.h Add _PyDict_CheckConsistency() 2016-09-14 15:02:01 +02:00
dictnotes.txt Issue #15055: update dictnotes.txt. Patch by Mark Shannon. 2012-06-24 21:03:45 +02:00
dictobject.c Issue #28123: _PyDict_GetItem_KnownHash() now can raise an exception as 2016-11-06 13:18:24 +02:00
enumobject.c Anti-registration of various ABC methods. 2016-08-18 09:22:23 -07:00
exceptions.c Issue #21578: Fixed misleading error message when ImportError called with 2016-09-27 20:51:04 +03:00
fileobject.c Rename _PyObject_FastCall() to _PyObject_FastCallDict() 2016-08-22 22:48:54 +02:00
floatobject.c Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize 2016-11-20 09:13:07 +02:00
frameobject.c Issue #27129: Replaced wordcode related magic constants with macros. 2016-09-11 13:48:15 +03:00
funcobject.c Issue #28139: Merge indentation fixes from 3.5 into 3.6 2016-09-17 07:59:14 +00:00
genobject.c Fix _PyGen_yf() 2016-11-24 22:33:01 +01:00
iterobject.c Rename _PyObject_FastCall() to _PyObject_FastCallDict() 2016-08-22 22:48:54 +02:00
listobject.c replace PY_SIZE_MAX with SIZE_MAX 2016-09-07 09:26:18 -07:00
listsort.txt Issue #27895: Spelling fixes (Contributed by Ville Skyttä). 2016-09-07 12:03:06 +00:00
lnotab_notes.txt Issue #26107: Fix typo in Objects/lnotab_notes.txt 2016-01-21 18:12:29 +01:00
longobject.c Issue #28701: Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString. 2016-11-16 10:19:20 +02:00
memoryobject.c use static inline instead of Py_LOCAL_INLINE 2016-09-08 11:56:06 -07:00
methodobject.c Fix warning in _PyCFunction_FastCallKeywords() 2016-09-12 15:33:26 -04:00
moduleobject.c Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize 2016-11-20 09:13:07 +02:00
namespaceobject.c use c++ style comments 2016-09-07 14:12:36 -07:00
object.c Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize 2016-11-20 09:13:07 +02:00
obmalloc.c correct silly spelling problem 2016-09-18 19:24:52 -07:00
odictobject.c Merge from 3.5. 2016-10-30 17:25:45 +02:00
rangeobject.c Issue #28376: Creating instances of range_iterator by calling range_iterator 2016-10-08 21:50:45 +03:00
README Issue #18093: Factor out the programs that embed the runtime 2014-07-25 21:52:14 +10:00
setobject.c Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize 2016-11-20 09:13:07 +02:00
sliceobject.c fix slice cache finalization to use gc del 2016-04-16 15:12:29 -07:00
structseq.c Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize 2016-11-20 09:13:07 +02:00
tupleobject.c Issue #1621: Avoid signed overflow in list and tuple operations 2016-07-25 02:39:20 +00:00
typeobject.c Issue #23722: improve __classcell__ compatibility 2016-12-05 16:47:55 +10:00
typeslots.inc add Py_tp_finalize slot (closes #24345) 2015-06-01 10:12:48 -05:00
typeslots.py Issue #26662: Set PYTHON_FOR_GEN in configure 2016-07-26 12:48:08 +02:00
unicodectype.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
unicodeobject.c Issue #28760: Clean up and fix comments in PyUnicode_AsUnicodeEscapeString(). 2016-11-21 11:46:51 +02:00
unicodetype_db.h Unicode 9.0.0 2016-09-14 23:53:47 -07:00
weakrefobject.c Avoid calling functions with an empty string as format string 2016-09-05 18:16:01 -07:00

Source files for various builtin objects