summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorGregory P. Smith <greg@mad-scientist.com>2007-09-09 23:36:46 (GMT)
committerGregory P. Smith <greg@mad-scientist.com>2007-09-09 23:36:46 (GMT)
commite9fef694b4929d535a7c12480b5adae28d394d79 (patch)
treedf0768f00f9ca6050ced7890b20f32175d488546 /Doc
parentf80578548d46dbe6dad87b8b8f1ac0002bf6aef8 (diff)
downloadcpython-e9fef694b4929d535a7c12480b5adae28d394d79.zip
cpython-e9fef694b4929d535a7c12480b5adae28d394d79.tar.gz
cpython-e9fef694b4929d535a7c12480b5adae28d394d79.tar.bz2
Change socket.error to inherit from IOError rather than being a stand
alone class. This addresses the primary concern in http://bugs.python.org/issue1706815 python-dev discussion here: http://mail.python.org/pipermail/python-dev/2007-July/073749.html I chose IOError rather than EnvironmentError as the base class since socket objects are often used as transparent duck typed file objects in code already prepared to deal with IOError exceptions. also a minor fix: urllib2 - fix a couple places where IOError was raised rather than URLError. for better or worse, URLError already inherits from IOError so this won't break any existing code. test_urllib2net - replace bad ftp urls.
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/exceptions.rst3
-rw-r--r--Doc/library/socket.rst3
-rw-r--r--Doc/whatsnew/2.6.rst3
3 files changed, 8 insertions, 1 deletions
diff --git a/Doc/library/exceptions.rst b/Doc/library/exceptions.rst
index 9081cf7..623d73b 100644
--- a/Doc/library/exceptions.rst
+++ b/Doc/library/exceptions.rst
@@ -170,6 +170,9 @@ The following exceptions are the exceptions that are actually raised.
This class is derived from :exc:`EnvironmentError`. See the discussion above
for more information on exception instance attributes.
+ .. versionchanged:: 2.6
+ Changed :exc:`socket.error` to use this as a base class.
+
.. exception:: ImportError
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index ca4515f..dbe7e66 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -86,6 +86,9 @@ The module :mod:`socket` exports the following constants and functions:
accompanying :exc:`os.error`. See the module :mod:`errno`, which contains names
for the error codes defined by the underlying operating system.
+ .. versionchanged:: 2.6
+ :exc:`socket.error` is now a child class of :exc:`IOError`.
+
.. exception:: herror
diff --git a/Doc/whatsnew/2.6.rst b/Doc/whatsnew/2.6.rst
index a5ed869..6c799fd 100644
--- a/Doc/whatsnew/2.6.rst
+++ b/Doc/whatsnew/2.6.rst
@@ -282,7 +282,8 @@ Porting to Python 2.6
This section lists previously described changes that may require changes to your
code:
-* Everything is all in the details!
+* The :mod:`socket` module exception :exc:`socket.error` now inherits from
+ :exc:`IOError`.
.. % ======================================================================