diff options
author | Eric Snow <ericsnowcurrently@gmail.com> | 2016-09-09 18:22:14 (GMT) |
---|---|---|
committer | Eric Snow <ericsnowcurrently@gmail.com> | 2016-09-09 18:22:14 (GMT) |
commit | 68f4dd8b01b1d2b961f51cf07b785366ceb139e4 (patch) | |
tree | e13e40fd7e9b353a0c8a8261d197bbc1d8f3df94 | |
parent | 6982a4f8f0339434fd8b8b0792f34f1426e70dfd (diff) | |
download | cpython-68f4dd8b01b1d2b961f51cf07b785366ceb139e4.zip cpython-68f4dd8b01b1d2b961f51cf07b785366ceb139e4.tar.gz cpython-68f4dd8b01b1d2b961f51cf07b785366ceb139e4.tar.bz2 |
Doc updates for PEPs 520 and 468.
-rw-r--r-- | Doc/reference/datamodel.rst | 6 | ||||
-rw-r--r-- | Doc/whatsnew/3.6.rst | 28 |
2 files changed, 22 insertions, 12 deletions
diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index 3d581a5..246e2e3 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -1801,9 +1801,9 @@ included in the class definition (if any) and the resulting object is bound in the local namespace as the defined class. When a new class is created by ``type.__new__``, the object provided as the -namespace parameter is copied to a standard Python dictionary and the original -object is discarded. The new copy becomes the :attr:`~object.__dict__` attribute -of the class object. +namespace parameter is copied to a new ordered mapping and the original +object is discarded. The new copy is wrapped in a read-only proxy, which +becomes the :attr:`~object.__dict__` attribute of the class object. .. seealso:: diff --git a/Doc/whatsnew/3.6.rst b/Doc/whatsnew/3.6.rst index e14125a..480459a 100644 --- a/Doc/whatsnew/3.6.rst +++ b/Doc/whatsnew/3.6.rst @@ -116,7 +116,10 @@ Windows improvements: :pep:`4XX` - Python Virtual Environments PEP written by Carl Meyer -.. XXX PEP 520: :ref:`Preserving Class Attribute Definition Order<whatsnew-deforder>` +* PEP 520: :ref:`Preserving Class Attribute Definition Order<whatsnew-deforder>` + +* PEP 468: :ref:`Preserving Keyword Argument Order<whatsnew-kwargs>` + New Features ============ @@ -380,17 +383,10 @@ PEP 520: Preserving Class Attribute Definition Order Attributes in a class definition body have a natural ordering: the same order in which the names appear in the source. This order is now -preserved in the new class's ``__definition_order__`` attribute. It is -a tuple of the attribute names, in the order in which they appear in -the class definition body. - -For types that don't have a definition (e.g. builtins), or the attribute -order could not be determined, ``__definition_order__`` is ``None``. +preserved in the new class's ``__dict__`` attribute. Also, the effective default class *execution* namespace (returned from ``type.__prepare__()``) is now an insertion-order-preserving mapping. -For CPython, it is now ``collections.OrderedDict``. Note that the -class namespace, ``cls.__dict__``, is unchanged. .. seealso:: @@ -398,6 +394,20 @@ class namespace, ``cls.__dict__``, is unchanged. PEP written and implemented by Eric Snow. +.. _whatsnew-kwargs: + +PEP 468: Preserving Keyword Argument Order +========================================== + +``**kwargs`` in a function signature is now guaranteed to be an +insertion-order-preserving mapping. + +.. seealso:: + + :pep:`468` - Preserving Keyword Argument Order + PEP written and implemented by Eric Snow. + + PEP 509: Add a private version to dict -------------------------------------- |