From: R David Murray Date: Sat, 21 Dec 2013 17:32:10 +0000 (-0500) Subject: Make CPython PEP summary entry links consistent, add pep 456 discussion. X-Git-Tag: v3.4.0b2~138 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c16dfe18376791b3118ef42d39a3afd25ac6e306;p=python Make CPython PEP summary entry links consistent, add pep 456 discussion. --- diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst index d07fa8c1a6..6b65f2ec99 100644 --- a/Doc/whatsnew/3.4.rst +++ b/Doc/whatsnew/3.4.rst @@ -123,9 +123,9 @@ Significantly Improved Library Modules: CPython implementation improvements: -* :ref:`PEP 442: Safe object finalization ` -* :ref:`PEP 445: Configurable memory allocators ` -* :pep:`456` Secure and interchangeable hash algorithm +* :pep:`442`: :ref:`Safe object finalization ` +* :pep:`445`: :ref:`Configurable memory allocators ` +* :pep:`456`: :ref:`Secure and interchangeable hash algorithm ` * Improve finalization of Python modules to avoid setting their globals to None, in most cases (:issue:`18214`). * A more efficient :mod:`marshal` format (:issue:`16475`). @@ -909,7 +909,7 @@ CPython Implementation Changes ============================== -.. _pep-445: +.. _whatsnew-pep-445: PEP 445: Customization of CPython memory allocators --------------------------------------------------- @@ -923,7 +923,7 @@ the CPython interpreter. PEP written and implemented by Victor Stinner. -.. _pep-442: +.. _whatsnew-pep-442: PEP 442: Safe object finalization --------------------------------- @@ -943,6 +943,25 @@ on the normal operation of the cyclic garbage collector. 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 -----------------------------