[Python-checkins] r59200 - in python/trunk: Demo/newmetaclasses/Eiffel.py Lib/compiler/pyassem.py Lib/doctest.py Lib/modulefinder.py Lib/test/test_descr.py Lib/test/test_doctest.py Lib/test/test_funcattrs.py Lib/test/test_getopt.py Lib/test/test_inspect.py Lib/test/test_unittest.py
christian.heimes
python-checkins at python.org
Tue Nov 27 22:34:03 CET 2007
Author: christian.heimes
Date: Tue Nov 27 22:34:01 2007
New Revision: 59200
Modified:
python/trunk/Demo/newmetaclasses/Eiffel.py
python/trunk/Lib/compiler/pyassem.py
python/trunk/Lib/doctest.py
python/trunk/Lib/modulefinder.py
python/trunk/Lib/test/test_descr.py
python/trunk/Lib/test/test_doctest.py
python/trunk/Lib/test/test_funcattrs.py
python/trunk/Lib/test/test_getopt.py
python/trunk/Lib/test/test_inspect.py
python/trunk/Lib/test/test_unittest.py
Log:
Replaced import of the 'new' module with 'types' module and added a deprecation warning to the 'new' module.
Modified: python/trunk/Demo/newmetaclasses/Eiffel.py
==============================================================================
--- python/trunk/Demo/newmetaclasses/Eiffel.py (original)
+++ python/trunk/Demo/newmetaclasses/Eiffel.py Tue Nov 27 22:34:01 2007
@@ -1,6 +1,6 @@
"""Support Eiffel-style preconditions and postconditions."""
-from new import function
+from types import FunctionType as function
class EiffelBaseMetaClass(type):
Modified: python/trunk/Lib/compiler/pyassem.py
==============================================================================
--- python/trunk/Lib/compiler/pyassem.py (original)
+++ python/trunk/Lib/compiler/pyassem.py Tue Nov 27 22:34:01 2007
@@ -1,7 +1,7 @@
"""A flow graph representation for Python bytecode"""
import dis
-import new
+import types
import sys
from compiler import misc
@@ -595,7 +595,7 @@
argcount = self.argcount
if self.flags & CO_VARKEYWORDS:
argcount = argcount - 1
- return new.code(argcount, nlocals, self.stacksize, self.flags,
+ return types.CodeType(argcount, nlocals, self.stacksize, self.flags,
self.lnotab.getCode(), self.getConsts(),
tuple(self.names), tuple(self.varnames),
self.filename, self.name, self.lnotab.firstline,
Modified: python/trunk/Lib/doctest.py
==============================================================================
--- python/trunk/Lib/doctest.py (original)
+++ python/trunk/Lib/doctest.py Tue Nov 27 22:34:01 2007
@@ -2016,16 +2016,16 @@
return (f,t)
def rundict(self, d, name, module=None):
- import new
- m = new.module(name)
+ import types
+ m = types.ModuleType(name)
m.__dict__.update(d)
if module is None:
module = False
return self.rundoc(m, name, module)
def run__test__(self, d, name):
- import new
- m = new.module(name)
+ import types
+ m = types.ModuleType(name)
m.__test__ = d
return self.rundoc(m, name)
Modified: python/trunk/Lib/modulefinder.py
==============================================================================
--- python/trunk/Lib/modulefinder.py (original)
+++ python/trunk/Lib/modulefinder.py Tue Nov 27 22:34:01 2007
@@ -7,7 +7,7 @@
import marshal
import os
import sys
-import new
+import types
import struct
if hasattr(sys.__stdout__, "newlines"):
@@ -594,7 +594,7 @@
if isinstance(consts[i], type(co)):
consts[i] = self.replace_paths_in_code(consts[i])
- return new.code(co.co_argcount, co.co_nlocals, co.co_stacksize,
+ return types.CodeType(co.co_argcount, co.co_nlocals, co.co_stacksize,
co.co_flags, co.co_code, tuple(consts), co.co_names,
co.co_varnames, new_filename, co.co_name,
co.co_firstlineno, co.co_lnotab,
Modified: python/trunk/Lib/test/test_descr.py
==============================================================================
--- python/trunk/Lib/test/test_descr.py (original)
+++ python/trunk/Lib/test/test_descr.py Tue Nov 27 22:34:01 2007
@@ -4,7 +4,6 @@
from copy import deepcopy
import warnings
import types
-import new
warnings.filterwarnings("ignore",
r'complex divmod\(\), // and % are deprecated$',
Modified: python/trunk/Lib/test/test_doctest.py
==============================================================================
--- python/trunk/Lib/test/test_doctest.py (original)
+++ python/trunk/Lib/test/test_doctest.py Tue Nov 27 22:34:01 2007
@@ -448,8 +448,8 @@
functions, classes, and the `__test__` dictionary, if it exists:
>>> # A module
- >>> import new
- >>> m = new.module('some_module')
+ >>> import types
+ >>> m = types.ModuleType('some_module')
>>> def triple(val):
... '''
... >>> print triple(11)
@@ -1937,11 +1937,11 @@
If DocFileSuite is used from an interactive session, then files
are resolved relative to the directory of sys.argv[0]:
- >>> import new, os.path, test.test_doctest
+ >>> import types, os.path, test.test_doctest
>>> save_argv = sys.argv
>>> sys.argv = [test.test_doctest.__file__]
>>> suite = doctest.DocFileSuite('test_doctest.txt',
- ... package=new.module('__main__'))
+ ... package=types.ModuleType('__main__'))
>>> sys.argv = save_argv
By setting `module_relative=False`, os-specific paths may be
@@ -2366,9 +2366,9 @@
"""
def old_test4(): """
- >>> import new
- >>> m1 = new.module('_m1')
- >>> m2 = new.module('_m2')
+ >>> import types
+ >>> m1 = types.ModuleType('_m1')
+ >>> m2 = types.ModuleType('_m2')
>>> test_data = \"""
... def _f():
... '''>>> assert 1 == 1
Modified: python/trunk/Lib/test/test_funcattrs.py
==============================================================================
--- python/trunk/Lib/test/test_funcattrs.py (original)
+++ python/trunk/Lib/test/test_funcattrs.py Tue Nov 27 22:34:01 2007
@@ -132,8 +132,8 @@
raise TestFailed
# im_func may not be a Python method!
-import new
-F.id = new.instancemethod(id, None, F)
+import types
+F.id = types.MethodType(id, None, F)
eff = F()
if eff.id() <> id(eff):
Modified: python/trunk/Lib/test/test_getopt.py
==============================================================================
--- python/trunk/Lib/test/test_getopt.py (original)
+++ python/trunk/Lib/test/test_getopt.py Tue Nov 27 22:34:01 2007
@@ -167,8 +167,8 @@
['a1', 'a2']
"""
- import new
- m = new.module("libreftest", s)
+ import types
+ m = types.ModuleType("libreftest", s)
run_doctest(m, verbose)
Modified: python/trunk/Lib/test/test_inspect.py
==============================================================================
--- python/trunk/Lib/test/test_inspect.py (original)
+++ python/trunk/Lib/test/test_inspect.py Tue Nov 27 22:34:01 2007
@@ -203,9 +203,9 @@
self.assertEqual(inspect.getfile(mod.StupidGit), mod.__file__)
def test_getmodule_recursion(self):
- from new import module
+ from types import ModuleType
name = '__inspect_dummy'
- m = sys.modules[name] = module(name)
+ m = sys.modules[name] = ModuleType(name)
m.__file__ = "<string>" # hopefully not a real filename...
m.__loader__ = "dummy" # pretend the filename is understood by a loader
exec "def x(): pass" in m.__dict__
Modified: python/trunk/Lib/test/test_unittest.py
==============================================================================
--- python/trunk/Lib/test/test_unittest.py (original)
+++ python/trunk/Lib/test/test_unittest.py Tue Nov 27 22:34:01 2007
@@ -9,6 +9,7 @@
from test import test_support
import unittest
from unittest import TestCase
+import types
### Support code
################################################################
@@ -153,8 +154,7 @@
# "This method searches `module` for classes derived from TestCase"
def test_loadTestsFromModule__TestCase_subclass(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -171,8 +171,7 @@
#
# What happens if no tests are found (no TestCase instances)?
def test_loadTestsFromModule__no_TestCase_instances(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
loader = unittest.TestLoader()
suite = loader.loadTestsFromModule(m)
@@ -183,8 +182,7 @@
#
# What happens if no tests are found (TestCases instances, but no tests)?
def test_loadTestsFromModule__no_TestCase_tests(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
pass
m.testcase_1 = MyTestCase
@@ -381,8 +379,7 @@
# Does it raise an exception if the name resolves to an invalid
# object?
def test_loadTestsFromName__relative_bad_object(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
m.testcase_1 = object()
loader = unittest.TestLoader()
@@ -396,8 +393,7 @@
# "The specifier name is a ``dotted name'' that may
# resolve either to ... a test case class"
def test_loadTestsFromName__relative_TestCase_subclass(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -413,8 +409,7 @@
# within a test case class, or a callable object which returns a
# TestCase or TestSuite instance."
def test_loadTestsFromName__relative_TestSuite(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -429,8 +424,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to
# ... a test method within a test case class"
def test_loadTestsFromName__relative_testmethod(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -451,8 +445,7 @@
# resolve "a test method within a test case class" that doesn't exist
# for the given name (relative to a provided module)?
def test_loadTestsFromName__relative_invalid_testmethod(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -469,8 +462,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to
# ... a callable object which returns a ... TestSuite instance"
def test_loadTestsFromName__callable__TestSuite(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
testcase_1 = unittest.FunctionTestCase(lambda: None)
testcase_2 = unittest.FunctionTestCase(lambda: None)
def return_TestSuite():
@@ -485,8 +477,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to
# ... a callable object which returns a TestCase ... instance"
def test_loadTestsFromName__callable__TestCase_instance(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
testcase_1 = unittest.FunctionTestCase(lambda: None)
def return_TestCase():
return testcase_1
@@ -502,8 +493,7 @@
#
# What happens if the callable returns something else?
def test_loadTestsFromName__callable__wrong_type(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
def return_wrong():
return 6
m.return_wrong = return_wrong
@@ -751,8 +741,7 @@
# Does it raise an exception if the name resolves to an invalid
# object?
def test_loadTestsFromNames__relative_bad_object(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
m.testcase_1 = object()
loader = unittest.TestLoader()
@@ -766,8 +755,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to
# ... a test case class"
def test_loadTestsFromNames__relative_TestCase_subclass(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -783,8 +771,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to
# ... a TestSuite instance"
def test_loadTestsFromNames__relative_TestSuite(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -799,8 +786,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to ... a
# test method within a test case class"
def test_loadTestsFromNames__relative_testmethod(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -819,8 +805,7 @@
# Does the method gracefully handle names that initially look like they
# resolve to "a test method within a test case class" but don't?
def test_loadTestsFromNames__relative_invalid_testmethod(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class MyTestCase(unittest.TestCase):
def test(self):
pass
@@ -837,8 +822,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to
# ... a callable object which returns a ... TestSuite instance"
def test_loadTestsFromNames__callable__TestSuite(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
testcase_1 = unittest.FunctionTestCase(lambda: None)
testcase_2 = unittest.FunctionTestCase(lambda: None)
def return_TestSuite():
@@ -855,8 +839,7 @@
# "The specifier name is a ``dotted name'' that may resolve ... to
# ... a callable object which returns a TestCase ... instance"
def test_loadTestsFromNames__callable__TestCase_instance(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
testcase_1 = unittest.FunctionTestCase(lambda: None)
def return_TestCase():
return testcase_1
@@ -874,8 +857,7 @@
#
# Are staticmethods handled correctly?
def test_loadTestsFromNames__callable__call_staticmethod(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Test1(unittest.TestCase):
def test(self):
pass
@@ -899,8 +881,7 @@
#
# What happens when the callable returns something else?
def test_loadTestsFromNames__callable__wrong_type(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
def return_wrong():
return 6
m.return_wrong = return_wrong
@@ -1043,8 +1024,7 @@
# Implicit in the documentation is that testMethodPrefix is respected by
# all loadTestsFrom* methods.
def test_testMethodPrefix__loadTestsFromModule(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1067,8 +1047,7 @@
# Implicit in the documentation is that testMethodPrefix is respected by
# all loadTestsFrom* methods.
def test_testMethodPrefix__loadTestsFromName(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1091,8 +1070,7 @@
# Implicit in the documentation is that testMethodPrefix is respected by
# all loadTestsFrom* methods.
def test_testMethodPrefix__loadTestsFromNames(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1143,8 +1121,7 @@
def reversed_cmp(x, y):
return -cmp(x, y)
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1162,8 +1139,7 @@
def reversed_cmp(x, y):
return -cmp(x, y)
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1181,8 +1157,7 @@
def reversed_cmp(x, y):
return -cmp(x, y)
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1254,8 +1229,7 @@
# It is implicit in the documentation for TestLoader.suiteClass that
# all TestLoader.loadTestsFrom* methods respect it. Let's make sure
def test_suiteClass__loadTestsFromModule(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1271,8 +1245,7 @@
# It is implicit in the documentation for TestLoader.suiteClass that
# all TestLoader.loadTestsFrom* methods respect it. Let's make sure
def test_suiteClass__loadTestsFromName(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
@@ -1288,8 +1261,7 @@
# It is implicit in the documentation for TestLoader.suiteClass that
# all TestLoader.loadTestsFrom* methods respect it. Let's make sure
def test_suiteClass__loadTestsFromNames(self):
- import new
- m = new.module('m')
+ m = types.ModuleType('m')
class Foo(unittest.TestCase):
def test_1(self): pass
def test_2(self): pass
More information about the Python-checkins
mailing list