<div dir="ltr">Obviously the commit message is a little misleading since changes I was about to stage accidentally went in on this change. Sorry about that. Same basic concept of the changes, just to more modules.</div><div class="gmail_extra">

<br><br><div class="gmail_quote">On Wed, Jun 12, 2013 at 8:12 PM, brett.cannon <span dir="ltr"><<a href="mailto:python-checkins@python.org" target="_blank">python-checkins@python.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<a href="http://hg.python.org/cpython/rev/c4d7228421df" target="_blank">http://hg.python.org/cpython/rev/c4d7228421df</a><br>
changeset:   84106:c4d7228421df<br>
user:        Brett Cannon <<a href="mailto:brett@python.org">brett@python.org</a>><br>
date:        Wed Jun 12 20:12:30 2013 -0400<br>
summary:<br>
  Move test___all__ over to unittest.main() and use ModuleNotFoundError<br>
<br>
files:<br>
  Lib/test/regrtest.py     |  16 ++++++++--------<br>
  Lib/test/support.py      |  14 +++++++-------<br>
  Lib/test/test___all__.py |   7 ++-----<br>
  Lib/xmlrpc/server.py     |   2 +-<br>
  Lib/zipfile.py           |   6 +++---<br>
  5 files changed, 21 insertions(+), 24 deletions(-)<br>
<br>
<br>
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py<br>
--- a/Lib/test/regrtest.py<br>
+++ b/Lib/test/regrtest.py<br>
@@ -146,11 +146,11 @@<br>
<br>
 try:<br>
     import threading<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     threading = None<br>
 try:<br>
     import multiprocessing.process<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     multiprocessing = None<br>
<br>
<br>
@@ -180,7 +180,7 @@<br>
 if sys.platform == 'darwin':<br>
     try:<br>
         import resource<br>
-    except ImportError:<br>
+    except ModuleNotFoundError:<br>
         pass<br>
     else:<br>
         soft, hard = resource.getrlimit(resource.RLIMIT_STACK)<br>
@@ -571,7 +571,7 @@<br>
     if findleaks:<br>
         try:<br>
             import gc<br>
-        except ImportError:<br>
+        except ModuleNotFoundError:<br>
             print('No GC available, disabling findleaks.')<br>
             findleaks = False<br>
         else:<br>
@@ -692,7 +692,7 @@<br>
     if use_mp:<br>
         try:<br>
             from threading import Thread<br>
-        except ImportError:<br>
+        except ModuleNotFoundError:<br>
             print("Multiprocess option requires thread support")<br>
             sys.exit(2)<br>
         from queue import Queue<br>
@@ -1396,7 +1396,7 @@<br>
     pic = sys.path_importer_cache.copy()<br>
     try:<br>
         import zipimport<br>
-    except ImportError:<br>
+    except ModuleNotFoundError:<br>
         zdc = None # Run unmodified on platforms without zipimport support<br>
     else:<br>
         zdc = zipimport._zip_directory_cache.copy()<br>
@@ -1473,7 +1473,7 @@<br>
     sys.path_importer_cache.update(pic)<br>
     try:<br>
         import zipimport<br>
-    except ImportError:<br>
+    except ModuleNotFoundError:<br>
         pass # Run unmodified on platforms without zipimport support<br>
     else:<br>
         zipimport._zip_directory_cache.clear()<br>
@@ -1510,7 +1510,7 @@<br>
     doctest.master = None<br>
     try:<br>
         import ctypes<br>
-    except ImportError:<br>
+    except ModuleNotFoundError:<br>
         # Don't worry about resetting the cache if ctypes is not supported<br>
         pass<br>
     else:<br>
diff --git a/Lib/test/support.py b/Lib/test/support.py<br>
--- a/Lib/test/support.py<br>
+++ b/Lib/test/support.py<br>
@@ -29,27 +29,27 @@<br>
<br>
 try:<br>
     import _thread, threading<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     _thread = None<br>
     threading = None<br>
 try:<br>
     import multiprocessing.process<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     multiprocessing = None<br>
<br>
 try:<br>
     import zlib<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     zlib = None<br>
<br>
 try:<br>
     import bz2<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     bz2 = None<br>
<br>
 try:<br>
     import lzma<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     lzma = None<br>
<br>
 __all__ = [<br>
@@ -116,7 +116,7 @@<br>
     with _ignore_deprecated_imports(deprecated):<br>
         try:<br>
             return importlib.import_module(name)<br>
-        except ImportError as msg:<br>
+        except ModuleNotFoundError as msg:<br>
             if sys.platform.startswith(tuple(required_on)):<br>
                 raise<br>
             raise unittest.SkipTest(str(msg))<br>
@@ -188,7 +188,7 @@<br>
                 if not _save_and_block_module(blocked_name, orig_modules):<br>
                     names_to_remove.append(blocked_name)<br>
             fresh_module = importlib.import_module(name)<br>
-        except ImportError:<br>
+        except ModuleNotFoundError:<br>
             fresh_module = None<br>
         finally:<br>
             for orig_name, module in orig_modules.items():<br>
diff --git a/Lib/test/test___all__.py b/Lib/test/test___all__.py<br>
--- a/Lib/test/test___all__.py<br>
+++ b/Lib/test/test___all__.py<br>
@@ -75,7 +75,7 @@<br>
         try:<br>
             import rlcompleter<br>
             import locale<br>
-        except ImportError:<br>
+        except ModuleNotFoundError:<br>
             pass<br>
         else:<br>
             locale.setlocale(locale.LC_CTYPE, 'C')<br>
@@ -113,8 +113,5 @@<br>
             print('Following modules failed to be imported:', failed_imports)<br>
<br>
<br>
-def test_main():<br>
-    support.run_unittest(AllTest)<br>
-<br>
 if __name__ == "__main__":<br>
-    test_main()<br>
+    unittest.main()<br>
diff --git a/Lib/xmlrpc/server.py b/Lib/xmlrpc/server.py<br>
--- a/Lib/xmlrpc/server.py<br>
+++ b/Lib/xmlrpc/server.py<br>
@@ -116,7 +116,7 @@<br>
 import traceback<br>
 try:<br>
     import fcntl<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     fcntl = None<br>
<br>
 def resolve_dotted_attribute(obj, attr, allow_dotted_names=True):<br>
diff --git a/Lib/zipfile.py b/Lib/zipfile.py<br>
--- a/Lib/zipfile.py<br>
+++ b/Lib/zipfile.py<br>
@@ -18,18 +18,18 @@<br>
 try:<br>
     import zlib # We may need its compression method<br>
     crc32 = zlib.crc32<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     zlib = None<br>
     crc32 = binascii.crc32<br>
<br>
 try:<br>
     import bz2 # We may need its compression method<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     bz2 = None<br>
<br>
 try:<br>
     import lzma # We may need its compression method<br>
-except ImportError:<br>
+except ModuleNotFoundError:<br>
     lzma = None<br>
<br>
 __all__ = ["BadZipFile", "BadZipfile", "error",<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Repository URL: <a href="http://hg.python.org/cpython" target="_blank">http://hg.python.org/cpython</a><br>
</font></span><br>_______________________________________________<br>
Python-checkins mailing list<br>
<a href="mailto:Python-checkins@python.org">Python-checkins@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/python-checkins" target="_blank">http://mail.python.org/mailman/listinfo/python-checkins</a><br>
<br></blockquote></div><br></div>