diff options
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/whatsnew/3.4.rst | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst index d07fa8c..6b65f2e 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 <pep-442>` -* :ref:`PEP 445: Configurable memory allocators <pep-445>` -* :pep:`456` Secure and interchangeable hash algorithm +* :pep:`442`: :ref:`Safe object finalization <whatsnew-pep-442>` +* :pep:`445`: :ref:`Configurable memory allocators <whatsnew-pep-445>` +* :pep:`456`: :ref:`Secure and interchangeable hash algorithm <whatsnew-pep-456>` * 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 ----------------------------- |