[Python-checkins] cpython: Move other improvements and optimization sections above deprecated.
r.david.murray
python-checkins at python.org
Tue Dec 24 17:13:07 CET 2013
http://hg.python.org/cpython/rev/4e257ae4dbe6
changeset: 88164:4e257ae4dbe6
user: R David Murray <rdmurray at bitdance.com>
date: Mon Dec 23 21:23:36 2013 -0500
summary:
Move other improvements and optimization sections above deprecated.
This arrangement means the sections that have summaries come
first, and everything else comes after those.
files:
Doc/whatsnew/3.4.rst | 177 +++++++++++++++---------------
1 files changed, 89 insertions(+), 88 deletions(-)
diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst
--- a/Doc/whatsnew/3.4.rst
+++ b/Doc/whatsnew/3.4.rst
@@ -937,6 +937,94 @@
(Contributed by Christian Tismer in :issue:`19274`.)
+CPython Implementation Changes
+==============================
+
+
+.. _whatsnew-pep-445:
+
+PEP 445: Customization of CPython memory allocators
+---------------------------------------------------
+
+:pep:`445` adds new C level interfaces to customize memory allocation in
+the CPython interpreter.
+
+.. seealso::
+
+ :pep:`445` - Add new APIs to customize Python memory allocators
+ PEP written and implemented by Victor Stinner.
+
+
+.. _whatsnew-pep-442:
+
+PEP 442: Safe object finalization
+---------------------------------
+
+:pep:`442` removes the current limitations and quirks of object finalization
+in CPython. With it, objects with :meth:`__del__` methods, as well as
+generators with :keyword:`finally` clauses, can be finalized when they are
+part of a reference cycle.
+
+As part of this change, module globals are no longer forcibly set to
+:const:`None` during interpreter shutdown in most cases, instead relying
+on the normal operation of the cyclic garbage collector. This avoids a
+whole class of interpreter-shutdown-time errors, usually involving
+``__del__`` methods, that have plagued Python since the cyclic GC
+was first introduced.
+
+.. seealso::
+
+ :pep:`442` - Safe object finalization
+ PEP written and implemented by Antoine Pitrou.
+
+
+.. _whatsnew-pep-456:
+
+PEP 456: Secure and Interchangeable Hash Algorithm
+--------------------------------------------------
+
+:pep:`456` follows up on earlier security fix work done on Python's hash
+algorithm to address certain DOS attacks to which public facing APIs backed by
+dictionary lookups may be subject. (See :issue:`14621` for the start of the
+current round of improvements.) The PEP unifies CPython's hash code to make it
+easier for a packager to substitute a different hash algorithm, and switches
+Python's default implementation to a SipHash implementation on platforms that
+have a 64 bit data type. Any performance differences in comparison with the
+older FNV algorithm are trivial.
+
+The PEP adds additional fields to the :func:`sys.hash_info` struct sequence to
+describe the hash algorithm in use by the currently executing binary. Otherwise,
+the PEP does not alter any existing CPython APIs.
+
+
+Other build and C API changes
+-----------------------------
+
+Changes to Python's build process and to the C API include:
+
+* The new :c:func:`Py_SetStandardStreamEncoding` pre-initialization API
+ allows applications embedding the CPython interpreter to reliably force
+ a particular encoding and error handler for the standard streams
+ (Contributed by Bastien Montagne and Nick Coghlan in :issue:`16129`)
+
+* Most Python C APIs that don't mutate string arguments are now correctly
+ marked as accepting ``const char *`` rather than ``char *`` (Contributed
+ by Serhiy Storchaka in :issue:`1772673`).
+
+.. _whatsnew-pep-436:
+
+* "Argument Clinic" (:pep:`436`) is now part of the CPython build process
+ and can be used to simplify the process of defining and maintaining
+ accurate signatures for builtins and standard library extension modules
+ implemented in C.
+
+ .. note::
+ The Argument Clinic PEP is not fully up to date with the state of the
+ implementation. This has been deemed acceptable by the release manager
+ and core development team in this case, as Argument Clinic will not
+ be made available as a public API for third party use in Python 3.4.
+
+
Other improvements
==================
@@ -948,6 +1036,7 @@
were made to :mod:`argparse` (:issue:`18920`) and other modules that have
script-like invocation capabilities (:issue:`18922`).
+
Optimizations
=============
@@ -979,94 +1068,6 @@
:issue:`9548`)
-CPython Implementation Changes
-==============================
-
-
-.. _whatsnew-pep-445:
-
-PEP 445: Customization of CPython memory allocators
----------------------------------------------------
-
-:pep:`445` adds new C level interfaces to customize memory allocation in
-the CPython interpreter.
-
-.. seealso::
-
- :pep:`445` - Add new APIs to customize Python memory allocators
- PEP written and implemented by Victor Stinner.
-
-
-.. _whatsnew-pep-442:
-
-PEP 442: Safe object finalization
----------------------------------
-
-:pep:`442` removes the current limitations and quirks of object finalization
-in CPython. With it, objects with :meth:`__del__` methods, as well as
-generators with :keyword:`finally` clauses, can be finalized when they are
-part of a reference cycle.
-
-As part of this change, module globals are no longer forcibly set to
-:const:`None` during interpreter shutdown in most cases, instead relying
-on the normal operation of the cyclic garbage collector. This avoids a
-whole class of interpreter-shutdown-time errors, usually involving
-``__del__`` methods, that have plagued Python since the cyclic GC
-was first introduced.
-
-.. seealso::
-
- :pep:`442` - Safe object finalization
- PEP written and implemented by Antoine Pitrou.
-
-
-.. _whatsnew-pep-456:
-
-PEP 456: Secure and Interchangeable Hash Algorithm
---------------------------------------------------
-
-:pep:`456` follows up on earlier security fix work done on Python's hash
-algorithm to address certain DOS attacks to which public facing APIs backed by
-dictionary lookups may be subject. (See :issue:`14621` for the start of the
-current round of improvements.) The PEP unifies CPython's hash code to make it
-easier for a packager to substitute a different hash algorithm, and switches
-Python's default implementation to a SipHash implementation on platforms that
-have a 64 bit data type. Any performance differences in comparison with the
-older FNV algorithm are trivial.
-
-The PEP adds additional fields to the :func:`sys.hash_info` struct sequence to
-describe the hash algorithm in use by the currently executing binary. Otherwise,
-the PEP does not alter any existing CPython APIs.
-
-
-Other build and C API changes
------------------------------
-
-Changes to Python's build process and to the C API include:
-
-* The new :c:func:`Py_SetStandardStreamEncoding` pre-initialization API
- allows applications embedding the CPython interpreter to reliably force
- a particular encoding and error handler for the standard streams
- (Contributed by Bastien Montagne and Nick Coghlan in :issue:`16129`)
-
-* Most Python C APIs that don't mutate string arguments are now correctly
- marked as accepting ``const char *`` rather than ``char *`` (Contributed
- by Serhiy Storchaka in :issue:`1772673`).
-
-.. _whatsnew-pep-436:
-
-* "Argument Clinic" (:pep:`436`) is now part of the CPython build process
- and can be used to simplify the process of defining and maintaining
- accurate signatures for builtins and standard library extension modules
- implemented in C.
-
- .. note::
- The Argument Clinic PEP is not fully up to date with the state of the
- implementation. This has been deemed acceptable by the release manager
- and core development team in this case, as Argument Clinic will not
- be made available as a public API for third party use in Python 3.4.
-
-
Deprecated
==========
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list