]> granicus.if.org Git - python/commitdiff
Remove the exceptions builtin module, all the exceptions are already builtin.
authorNeal Norwitz <nnorwitz@gmail.com>
Mon, 26 Feb 2007 22:22:47 +0000 (22:22 +0000)
committerNeal Norwitz <nnorwitz@gmail.com>
Mon, 26 Feb 2007 22:22:47 +0000 (22:22 +0000)
15 files changed:
Lib/ctypes/test/test_structures.py
Lib/test/output/test_logging
Lib/test/test_exceptions.py
Lib/test/test_generators.py
Lib/test/test_modulefinder.py
Lib/test/test_weakref.py
Lib/traceback.py
Lib/weakref.py
Misc/NEWS
Objects/exceptions.c
PC/config.c
PC/os2emx/config.c
Python/errors.c
Python/pythonrun.c
RISCOS/Modules/config.c

index 097e1da56a4a7e654566e0dfc661d470dd421803..389f9379930958bcb01e3b1ae151bc5294ef8e17 100644 (file)
@@ -294,20 +294,20 @@ class StructureTestCase(unittest.TestCase):
         # In Python 2.5, Exception is a new-style class, and the repr changed
         if issubclass(Exception, object):
             self.failUnlessEqual(msg,
-                                 "(Phone) <type 'exceptions.TypeError'>: "
+                                 "(Phone) <type 'TypeError'>: "
                                  "expected string or Unicode object, int found")
         else:
             self.failUnlessEqual(msg,
-                                 "(Phone) exceptions.TypeError: "
+                                 "(Phone) TypeError: "
                                  "expected string or Unicode object, int found")
 
         cls, msg = self.get_except(Person, "Someone", ("a", "b", "c"))
         self.failUnlessEqual(cls, RuntimeError)
         if issubclass(Exception, object):
             self.failUnlessEqual(msg,
-                                 "(Phone) <type 'exceptions.ValueError'>: too many initializers")
+                                 "(Phone) <type 'ValueError'>: too many initializers")
         else:
-            self.failUnlessEqual(msg, "(Phone) exceptions.ValueError: too many initializers")
+            self.failUnlessEqual(msg, "(Phone) ValueError: too many initializers")
 
 
     def get_except(self, func, *args):
index c0d6e0645121322e8486b523c19f43d582bfbc35..ebf40c54526c6489d207992d487a11c716cd56e3 100644 (file)
@@ -488,12 +488,12 @@ INFO:a.b.c.d:Info 5
 -- log_test4  begin  ---------------------------------------------------
 config0: ok.
 config1: ok.
-config2: <type 'exceptions.AttributeError'>
-config3: <type 'exceptions.KeyError'>
+config2: <type 'AttributeError'>
+config3: <type 'KeyError'>
 -- log_test4  end    ---------------------------------------------------
 -- log_test5  begin  ---------------------------------------------------
 ERROR:root:just testing
-<type 'exceptions.KeyError'>... Don't panic!
+<type 'KeyError'>... Don't panic!
 -- log_test5  end    ---------------------------------------------------
 -- logrecv output begin  ---------------------------------------------------
 ERR -> CRITICAL: Message 0 (via logrecv.tcp.ERR)
index 4891f4be50c732006f8ba71981d67d98829df6f1..0ff3b10dd97b204eb0edc237f7309511a1571747 100644 (file)
@@ -15,15 +15,6 @@ from test.test_support import TESTFN, unlink, run_unittest
 
 class ExceptionTests(unittest.TestCase):
 
-    def testReload(self):
-        # Reloading the built-in exceptions module failed prior to Py2.2, while it
-        # should act the same as reloading built-in sys.
-        try:
-            import exceptions
-            reload(exceptions)
-        except ImportError as e:
-            self.fail("reloading exceptions: %s" % e)
-
     def raise_catch(self, exc, excname):
         try:
             raise exc, "spam"
@@ -289,7 +280,7 @@ class ExceptionTests(unittest.TestCase):
                 if type(e) is not exc:
                     raise
                 # Verify module name
-                self.assertEquals(type(e).__module__, 'exceptions')
+                self.assertEquals(type(e).__module__, '__builtin__')
                 # Verify no ref leaks in Exc_str()
                 s = str(e)
                 for checkArgName in expected:
index edfcb6560415c7f986a50d827b1e2f452b8258c5..7999034fe7eb2d780fee2dac8a5f6233ff90f742 100644 (file)
@@ -1691,7 +1691,7 @@ Our ill-behaved code should be invoked during GC:
 >>> g.next()
 >>> del g
 >>> sys.stderr.getvalue().startswith(
-...     "Exception exceptions.RuntimeError: 'generator ignored GeneratorExit' in "
+...     "Exception RuntimeError: 'generator ignored GeneratorExit' in "
 ... )
 True
 >>> sys.stderr = old
@@ -1808,7 +1808,7 @@ to test.
 ...     del l
 ...     err = sys.stderr.getvalue().strip()
 ...     err.startswith(
-...         "Exception exceptions.RuntimeError: RuntimeError() in <"
+...         "Exception RuntimeError: RuntimeError() in <"
 ...     )
 ...     err.endswith("> ignored")
 ...     len(err.splitlines())
index 7da241bf75aecee8e4dc125f7e21c5cb06ea573b..3bc22ab59ef120d0667e3d3614ca47787ed802e1 100644 (file)
@@ -87,7 +87,7 @@ absolute_import_test = [
     "a.module",
     ["a", "a.module",
      "b", "b.x", "b.y", "b.z",
-     "__future__", "sys", "exceptions"],
+     "__future__", "sys", "gc"],
     ["blahblah", "z"], [],
     """\
 mymodule.py
@@ -96,11 +96,11 @@ a/module.py
                                 from __future__ import absolute_import
                                 import sys # sys
                                 import blahblah # fails
-                                import exceptions # exceptions
+                                import gc # gc
                                 import b.x # b.x
                                 from b import y # b.y
                                 from b.z import * # b.z.*
-a/exceptions.py
+a/gc.py
 a/sys.py
                                 import mymodule
 a/b/__init__.py
@@ -123,7 +123,7 @@ relative_import_test = [
      "a.b.c", "a.b.c.moduleC",
      "a.b.c.d", "a.b.c.e",
      "a.b.x",
-     "exceptions"],
+     "gc"],
     [], [],
     """\
 mymodule.py
@@ -131,8 +131,8 @@ a/__init__.py
                                 from .b import y, z # a.b.y, a.b.z
 a/module.py
                                 from __future__ import absolute_import # __future__
-                                import exceptions # exceptions
-a/exceptions.py
+                                import gc # gc
+a/gc.py
 a/sys.py
 a/b/__init__.py
                                 from ..b import x # a.b.x
@@ -170,7 +170,7 @@ a/__init__.py
 a/another.py
 a/module.py
                                 from .b import y, z # a.b.y, a.b.z
-a/exceptions.py
+a/gc.py
 a/sys.py
 a/b/__init__.py
                                 from .c import moduleC # a.b.c.moduleC
index 642af107c2ee0036edcb16a767637dc8247b186f..46dd5ff3a48d8b7e15f7ef3f2f78d063cf24f03b 100644 (file)
@@ -104,9 +104,9 @@ class ReferencesTestCase(TestBase):
         def check(proxy):
             proxy.bar
 
-        self.assertRaises(weakref.ReferenceError, check, ref1)
-        self.assertRaises(weakref.ReferenceError, check, ref2)
-        self.assertRaises(weakref.ReferenceError, bool, weakref.proxy(C()))
+        self.assertRaises(ReferenceError, check, ref1)
+        self.assertRaises(ReferenceError, check, ref2)
+        self.assertRaises(ReferenceError, bool, weakref.proxy(C()))
         self.assert_(self.cbcalled == 2)
 
     def check_basic_ref(self, factory):
index e395ad77d6713e17f69c4142bc7f5eda1e4d9562..a0d2dcc732b0afe654af5239df5b485195ea2d5a 100644 (file)
@@ -169,7 +169,7 @@ def format_exception_only(etype, value):
 
     stype = etype.__name__
     smod = etype.__module__
-    if smod not in ("exceptions", "__main__", "__builtin__"):
+    if smod not in ("__main__", "__builtin__"):
         stype = smod + '.' + stype
 
     if not issubclass(etype, SyntaxError):
index c20d1b6000af0356737e472302fd3be8a85e9ed1..33896f5f601d43fa7a02b712be5b0d1ab6ed9d59 100644 (file)
@@ -20,8 +20,6 @@ from _weakref import (
      ProxyType,
      ReferenceType)
 
-from exceptions import ReferenceError
-
 
 ProxyTypes = (ProxyType, CallableProxyType)
 
index 8ffbe4500036be6405d863726fd0148f04a2eadf..ed921e79c007d5c75c30b11a9b28b5c235ff721d 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -28,6 +28,8 @@ TO DO
 Core and Builtins
 -----------------
 
+- Remove the exceptions module, all the exceptions are already builtin.
+
 - input() becomes raw_input(): the name input() now implements the
   functionality formerly known as raw_input(); the name raw_input()
   is no longer defined.
index 402bcecfde97677ba560b8a99fc292583e696fad..cea41f8953a8f8b43bdcf0d2537b4f4a405eced8 100644 (file)
 #include "osdefs.h"
 
 #define MAKE_IT_NONE(x) (x) = Py_None; Py_INCREF(Py_None);
-#define EXC_MODULE_NAME "exceptions."
 
 /* NOTE: If the exception class hierarchy changes, don't forget to update
  * Lib/test/exception_hierarchy.txt
  */
 
-PyDoc_STRVAR(exceptions_doc, "Python's standard exception class hierarchy.\n\
-\n\
-Exceptions found here are defined both in the exceptions module and the\n\
-built-in namespace.  It is recommended that user-defined exceptions\n\
-inherit from Exception.  See the documentation for the exception\n\
-inheritance hierarchy.\n\
-");
-
 /*
  *    BaseException
  */
@@ -282,7 +273,7 @@ static PyGetSetDef BaseException_getset[] = {
 static PyTypeObject _PyExc_BaseException = {
     PyObject_HEAD_INIT(NULL)
     0,                          /*ob_size*/
-    EXC_MODULE_NAME "BaseException", /*tp_name*/
+    "BaseException", /*tp_name*/
     sizeof(PyBaseExceptionObject), /*tp_basicsize*/
     0,                          /*tp_itemsize*/
     (destructor)BaseException_dealloc, /*tp_dealloc*/
@@ -333,7 +324,7 @@ PyObject *PyExc_BaseException = (PyObject *)&_PyExc_BaseException;
 static PyTypeObject _PyExc_ ## EXCNAME = { \
     PyObject_HEAD_INIT(NULL) \
     0, \
-    EXC_MODULE_NAME # EXCNAME, \
+    # EXCNAME, \
     sizeof(PyBaseExceptionObject), \
     0, (destructor)BaseException_dealloc, 0, 0, 0, 0, 0, 0, 0, \
     0, 0, 0, 0, 0, 0, 0, \
@@ -349,7 +340,7 @@ PyObject *PyExc_ ## EXCNAME = (PyObject *)&_PyExc_ ## EXCNAME
 static PyTypeObject _PyExc_ ## EXCNAME = { \
     PyObject_HEAD_INIT(NULL) \
     0, \
-    EXC_MODULE_NAME # EXCNAME, \
+    # EXCNAME, \
     sizeof(Py ## EXCSTORE ## Object), \
     0, (destructor)EXCSTORE ## _dealloc, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
     0, 0, 0, 0, 0, \
@@ -365,7 +356,7 @@ PyObject *PyExc_ ## EXCNAME = (PyObject *)&_PyExc_ ## EXCNAME
 static PyTypeObject _PyExc_ ## EXCNAME = { \
     PyObject_HEAD_INIT(NULL) \
     0, \
-    EXC_MODULE_NAME # EXCNAME, \
+    # EXCNAME, \
     sizeof(Py ## EXCSTORE ## Object), 0, \
     (destructor)EXCSTORE ## _dealloc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
     (reprfunc)EXCSTR, 0, 0, 0, \
@@ -1632,7 +1623,7 @@ UnicodeEncodeError_str(PyObject *self)
 static PyTypeObject _PyExc_UnicodeEncodeError = {
     PyObject_HEAD_INIT(NULL)
     0,
-    EXC_MODULE_NAME "UnicodeEncodeError",
+    "UnicodeEncodeError",
     sizeof(PyUnicodeErrorObject), 0,
     (destructor)UnicodeError_dealloc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     (reprfunc)UnicodeEncodeError_str, 0, 0, 0,
@@ -1704,7 +1695,7 @@ UnicodeDecodeError_str(PyObject *self)
 static PyTypeObject _PyExc_UnicodeDecodeError = {
     PyObject_HEAD_INIT(NULL)
     0,
-    EXC_MODULE_NAME "UnicodeDecodeError",
+    "UnicodeDecodeError",
     sizeof(PyUnicodeErrorObject), 0,
     (destructor)UnicodeError_dealloc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     (reprfunc)UnicodeDecodeError_str, 0, 0, 0,
@@ -1802,7 +1793,7 @@ UnicodeTranslateError_str(PyObject *self)
 static PyTypeObject _PyExc_UnicodeTranslateError = {
     PyObject_HEAD_INIT(NULL)
     0,
-    EXC_MODULE_NAME "UnicodeTranslateError",
+    "UnicodeTranslateError",
     sizeof(PyUnicodeErrorObject), 0,
     (destructor)UnicodeError_dealloc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     (reprfunc)UnicodeTranslateError_str, 0, 0, 0,
@@ -1956,17 +1947,10 @@ SimpleExtendsException(PyExc_Warning, UnicodeWarning,
  */
 PyObject *PyExc_MemoryErrorInst=NULL;
 
-/* module global functions */
-static PyMethodDef functions[] = {
-    /* Sentinel */
-    {NULL, NULL}
-};
-
 #define PRE_INIT(TYPE) if (PyType_Ready(&_PyExc_ ## TYPE) < 0) \
     Py_FatalError("exceptions bootstrapping error.");
 
 #define POST_INIT(TYPE) Py_INCREF(PyExc_ ## TYPE); \
-    PyModule_AddObject(m, # TYPE, PyExc_ ## TYPE); \
     if (PyDict_SetItemString(bdict, # TYPE, PyExc_ ## TYPE)) \
         Py_FatalError("Module dictionary insertion problem.");
 
@@ -1996,7 +1980,7 @@ InvalidParameterHandler(
 PyMODINIT_FUNC
 _PyExc_Init(void)
 {
-    PyObject *m, *bltinmod, *bdict;
+    PyObject *bltinmod, *bdict;
 
     PRE_INIT(BaseException)
     PRE_INIT(Exception)
@@ -2053,10 +2037,6 @@ _PyExc_Init(void)
     PRE_INIT(ImportWarning)
     PRE_INIT(UnicodeWarning)
 
-    m = Py_InitModule4("exceptions", functions, exceptions_doc,
-        (PyObject *)NULL, PYTHON_API_VERSION);
-    if (m == NULL) return;
-
     bltinmod = PyImport_ImportModule("__builtin__");
     if (bltinmod == NULL)
         Py_FatalError("exceptions bootstrapping error.");
index a9a280ded1058dd058dbba268199ffdfc880fb4f..1d142b560814036cce5c21aebf1af926c33b5788 100644 (file)
@@ -161,7 +161,6 @@ struct _inittab _PyImport_Inittab[] = {
         {"__main__", NULL},
         {"__builtin__", NULL},
         {"sys", NULL},
-       {"exceptions", NULL},
         
         {"_types", init_types},
 
index 696c3bbc40aae6895d68870d6f09bbf182642bb1..07c1783c49f60301e6aa3bbb9ce1f5c2ae71b186 100644 (file)
@@ -172,7 +172,6 @@ struct _inittab _PyImport_Inittab[] = {
        {"__main__", NULL},
        {"__builtin__", NULL},
        {"sys", NULL},
-       {"exceptions", NULL},
 
        /* This lives in gcmodule.c */
        {"gc", initgc},
index 0e565c1cc0556251679b7436b41069bb787b4154..e00d3ec16fa995304e490f9d572ed53e96f95559 100644 (file)
@@ -612,7 +612,8 @@ PyErr_WriteUnraisable(PyObject *obj)
                                PyFile_WriteString("<unknown>", f);
                        else {
                                char* modstr = PyString_AsString(moduleName);
-                               if (modstr)
+                               if (modstr &&
+                                   strcmp(modstr, "__builtin__") != 0)
                                {
                                        PyFile_WriteString(modstr, f);
                                        PyFile_WriteString(".", f);
index ec1bc4292d0fdfddefb0f546228b5e75673dc994..7501456ca8713deb121781a2a2e2546fbf64138b 100644 (file)
@@ -221,7 +221,6 @@ Py_InitializeEx(int install_sigs)
 
        /* initialize builtin exceptions */
        _PyExc_Init();
-       _PyImport_FixupExtension("exceptions", "exceptions");
 
        /* phase 2 of builtins */
        _PyImport_FixupExtension("__builtin__", "__builtin__");
@@ -1168,7 +1167,7 @@ PyErr_Display(PyObject *exception, PyObject *value, PyObject *tb)
                                err = PyFile_WriteString("<unknown>", f);
                        else {
                                char* modstr = PyString_AsString(moduleName);
-                               if (modstr && strcmp(modstr, "exceptions"))
+                               if (modstr && strcmp(modstr, "__builtin__"))
                                {
                                        err = PyFile_WriteString(modstr, f);
                                        err += PyFile_WriteString(".", f);
index 54fbc7909cddc75427a4ccab3e3b41197fb0588d..d4ef205de8468fc273c7c6b70742e9ca8f392a5a 100644 (file)
@@ -63,7 +63,6 @@ struct _inittab _PyImport_Inittab[] = {
        {"__main__", NULL},
        {"__builtin__", NULL},
        {"sys", NULL},
-       {"exceptions", NULL},
 
        /* This lives in gcmodule.c */
        {"gc", initgc},