summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorR David Murray <rdmurray@bitdance.com>2014-01-06 21:32:05 (GMT)
committerR David Murray <rdmurray@bitdance.com>2014-01-06 21:32:05 (GMT)
commita101bdb88c064c77e7322063fac1a2f24a60b32b (patch)
treeb49ce57c2c37f0f7b5cb24baa93561c794da9c34 /Doc
parent983582759366b9135f100e60120678c2dbc00c83 (diff)
downloadcpython-a101bdb88c064c77e7322063fac1a2f24a60b32b.zip
cpython-a101bdb88c064c77e7322063fac1a2f24a60b32b.tar.gz
cpython-a101bdb88c064c77e7322063fac1a2f24a60b32b.tar.bz2
whatsnew: ssl getpeercert/do_handshake raise OSError, weakref __callback__.
Also add a missing word to gc entry, and delete a now-obsolete doc note in the weakref __callback__ docs. (Opened an issue for rewriting the section that compares finalizers and __del__ method.)
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/weakref.rst11
-rw-r--r--Doc/whatsnew/3.4.rst16
2 files changed, 14 insertions, 13 deletions
diff --git a/Doc/library/weakref.rst b/Doc/library/weakref.rst
index e84ac2b..9ca60a9 100644
--- a/Doc/library/weakref.rst
+++ b/Doc/library/weakref.rst
@@ -123,15 +123,6 @@ Extension types can easily be made to support weak references; see
weakref. If there is no callback or if the referent of the weakref is
no longer alive then this attribute will have value ``None``.
- .. note::
-
- Like :meth:`__del__` methods, weak reference callbacks can be
- called during interpreter shutdown when module globals have been
- overwritten with :const:`None`. This can make writing robust
- weak reference callbacks a challenge. Callbacks registered
- using :class:`finalize` do not have to worry about this issue
- because they will not be run after module teardown has begun.
-
.. versionchanged:: 3.4
Added the :attr:`__callback__` attribute.
@@ -247,7 +238,7 @@ These method have the same issues as the and :meth:`keyrefs` method of
.. class:: finalize(obj, func, *args, **kwargs)
Return a callable finalizer object which will be called when *obj*
- is garbage collected. Unlike an ordinary weak reference, a finalizer is
+ is garbage collected. Unlike an ordinary weak reference, a finalizer
will always survive until the reference object is collected, greatly
simplifying lifecycle management.
diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst
index a6dbe8a..bb2c69d 100644
--- a/Doc/whatsnew/3.4.rst
+++ b/Doc/whatsnew/3.4.rst
@@ -657,9 +657,9 @@ available for other implementations to use. (Contributed by Brian Thorne in
gc
--
-New :func:`~gc.get_stats` returns a list of three per-generation dictionaries
-containing the collections statistics since interpreter startup. (Contributed
-by Antoine Pitrou in :issue:`16351`.)
+New function :func:`~gc.get_stats` returns a list of three per-generation
+dictionaries containing the collections statistics since interpreter startup.
+(Contributed by Antoine Pitrou in :issue:`16351`.)
hashlib
@@ -1103,6 +1103,10 @@ to be invoked when an object is garbage collected, without needing to
carefully manage the lifecycle of the weak reference itself. (Contributed by
Richard Oudkerk in :issue:`15528`)
+The callback, if any, associated with a :class:`~weakref.ref` is now
+exposed via the :attr:`~weakref.ref.__callback__` attribute. (Contributed
+by Mark Dickinson in :issue:`17643`.)
+
xml.etree
---------
@@ -1482,6 +1486,12 @@ Changes in the Python API
compliance with the language spec; Jython and PyPy already were.
(:issue:`17434`).
+* :meth:`ssl.SSLSocket.getpeercert` and :meth:`ssl.SSLSocket.do_handshake`
+ now raise an :exc:`OSError` with ``ENOTCONN`` when the ``SSLSocket`` is not
+ connected, instead of the previous behavior of raising an
+ :exc:`AttributError`. In addition, :meth:`~ssl.SSLSocket.getpeercert`
+ will raise a :exc:`ValueError` if the handshake has not yet been done.
+
Changes in the C API
--------------------