diff options
author | Benjamin Peterson <benjamin@python.org> | 2008-06-15 02:57:40 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2008-06-15 02:57:40 (GMT) |
commit | df6dc8f10770f92db68c69d87abe7c89774d128c (patch) | |
tree | 3665b0314420c8ae6e7c8931ef89757f44b1ca35 /Lib/lib2to3/fixes/fix_imports.py | |
parent | 979f31172890fcfa45e5e23c461b1517a49dbf3b (diff) | |
download | cpython-df6dc8f10770f92db68c69d87abe7c89774d128c.zip cpython-df6dc8f10770f92db68c69d87abe7c89774d128c.tar.gz cpython-df6dc8f10770f92db68c69d87abe7c89774d128c.tar.bz2 |
Merged revisions 64286 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
................
r64286 | benjamin.peterson | 2008-06-14 21:31:05 -0500 (Sat, 14 Jun 2008) | 49 lines
Merged revisions 63661,63666,63695,63711,63729,63769,63790,63880,63886 via svnmerge from
svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3
........
r63661 | georg.brandl | 2008-05-26 05:26:20 -0500 (Mon, 26 May 2008) | 2 lines
Add import fixes for dbm package.
........
r63666 | georg.brandl | 2008-05-26 05:49:09 -0500 (Mon, 26 May 2008) | 2 lines
Add xmlrpc package fixes.
........
r63695 | georg.brandl | 2008-05-26 10:14:33 -0500 (Mon, 26 May 2008) | 2 lines
Add fixer entries for http package.
........
r63711 | benjamin.peterson | 2008-05-26 13:43:51 -0500 (Mon, 26 May 2008) | 2 lines
add import mapping for test.test_support -> test.support
........
r63729 | benjamin.peterson | 2008-05-26 16:31:03 -0500 (Mon, 26 May 2008) | 2 lines
mapping for commands module -> subprocess
........
r63769 | brett.cannon | 2008-05-29 00:13:13 -0500 (Thu, 29 May 2008) | 1 line
Fixer for UserString.UserString over to the collections module.
........
r63790 | brett.cannon | 2008-05-29 14:13:51 -0500 (Thu, 29 May 2008) | 4 lines
Add a fixer for UserList.
Closes issue #2878. Thanks to Quentin Gallet-Gilles for the patch.
........
r63880 | collin.winter | 2008-06-01 18:09:38 -0500 (Sun, 01 Jun 2008) | 6 lines
Move lib2to3/fixes/{basefix,util}.py down to lib2to3/.
This is step 1 of turning lib2to3/ into a general-purpose refactoring
library, reusable by other projects.
........
r63886 | collin.winter | 2008-06-01 22:15:01 -0500 (Sun, 01 Jun 2008) | 5 lines
Allow refactoring tools to specify a directory for fixer modules.
This is step 2 of turning lib2to3/ into a general-purpose refactoring
library, reusable by other projects. Step 1: r63880.
........
................
Diffstat (limited to 'Lib/lib2to3/fixes/fix_imports.py')
-rw-r--r-- | Lib/lib2to3/fixes/fix_imports.py | 123 |
1 files changed, 120 insertions, 3 deletions
diff --git a/Lib/lib2to3/fixes/fix_imports.py b/Lib/lib2to3/fixes/fix_imports.py index 11512e1..03a27bc 100644 --- a/Lib/lib2to3/fixes/fix_imports.py +++ b/Lib/lib2to3/fixes/fix_imports.py @@ -8,8 +8,8 @@ Fixes: # Author: Collin Winter # Local imports -from . import basefix -from .util import Name, attr_chain, any, set +from .. import fixer_base +from ..fixer_util import Name, attr_chain, any, set import builtins builtin_names = [name for name in dir(builtins) if name not in ("__name__", "__doc__")] @@ -150,6 +150,123 @@ MAPPING = {"StringIO": ("io", ["StringIO"]), 'error', 'exit', 'exit_thread', 'get_ident', 'interrupt_main', 'stack_size', 'start_new', 'start_new_thread']), + 'whichdb': ('dbm', ['whichdb']), + 'anydbm': ('dbm', ['error', 'open']), + 'dbhash': ('dbm.bsd', ['error', 'open']), + 'dumbdbm': ('dbm.dumb', ['error', 'open', '_Database']), + 'dbm': ('dbm.ndbm', ['error', 'open', 'library']), + 'gdbm': ('dbm.gnu', ['error', 'open', 'open_flags']), + 'xmlrpclib': ('xmlrpc.client', + ['Error', 'ProtocolError', 'ResponseError', 'Fault', + 'ServerProxy', 'Boolean', 'DateTime', 'Binary', + 'ExpatParser', 'FastMarshaller', 'FastParser', + 'FastUnmarshaller', 'MultiCall', 'MultiCallIterator', + 'SlowParser', 'Marshaller', 'Unmarshaller', 'Server', + 'Transport', 'SafeTransport', 'SgmlopParser', + 'boolean', 'getparser', 'dumps', 'loads', 'escape', + 'PARSE_ERROR', 'SERVER_ERROR', 'WRAPPERS', + 'APPLICATION_ERROR', 'SYSTEM_ERROR', + 'TRANSPORT_ERROR', 'NOT_WELLFORMED_ERROR', + 'UNSUPPORTED_ENCODING', 'INVALID_ENCODING_CHAR', + 'INVALID_XMLRPC', 'METHOD_NOT_FOUND', + 'INVALID_METHOD_PARAMS', 'INTERNAL_ERROR', + 'MININT', 'MAXINT']), + 'DocXMLRPCServer': ('xmlrpc.server', + ['CGIXMLRPCRequestHandler', + 'DocCGIXMLRPCRequestHandler', + 'DocXMLRPCRequestHandler', 'DocXMLRPCServer', + 'ServerHTMLDoc', 'SimpleXMLRPCRequestHandler', + 'SimpleXMLRPCServer', 'XMLRPCDocGenerator', + 'resolve_dotted_attribute']), + 'SimpleXMLRPCServer': ('xmlrpc.server', + ['CGIXMLRPCRequestHandler', + 'Fault', 'SimpleXMLRPCDispatcher', + 'SimpleXMLRPCRequestHandler', + 'SimpleXMLRPCServer', 'SocketServer', + 'list_public_methods', + 'remove_duplicates', + 'resolve_dotted_attribute']), + 'httplib': ('http.client', + ['ACCEPTED', 'BAD_GATEWAY', 'BAD_REQUEST', + 'BadStatusLine', 'CONFLICT', 'CONTINUE', 'CREATED', + 'CannotSendHeader', 'CannotSendRequest', + 'EXPECTATION_FAILED', 'FAILED_DEPENDENCY', 'FORBIDDEN', + 'FOUND', 'FakeSocket', 'GATEWAY_TIMEOUT', 'GONE', + 'HTTP', 'HTTPConnection', 'HTTPException', + 'HTTPMessage', 'HTTPResponse', 'HTTPS', + 'HTTPSConnection', 'HTTPS_PORT', 'HTTP_PORT', + 'HTTP_VERSION_NOT_SUPPORTED', 'IM_USED', + 'INSUFFICIENT_STORAGE', 'INTERNAL_SERVER_ERROR', + 'ImproperConnectionState', 'IncompleteRead', + 'InvalidURL', 'LENGTH_REQUIRED', 'LOCKED', + 'LineAndFileWrapper', 'MAXAMOUNT', 'METHOD_NOT_ALLOWED', + 'MOVED_PERMANENTLY', 'MULTIPLE_CHOICES', 'MULTI_STATUS', + 'NON_AUTHORITATIVE_INFORMATION', 'NOT_ACCEPTABLE', + 'NOT_EXTENDED', 'NOT_FOUND', 'NOT_IMPLEMENTED', + 'NOT_MODIFIED', 'NO_CONTENT', 'NotConnected', 'OK', + 'PARTIAL_CONTENT', 'PAYMENT_REQUIRED', + 'PRECONDITION_FAILED', 'PROCESSING', + 'PROXY_AUTHENTICATION_REQUIRED', + 'REQUESTED_RANGE_NOT_SATISFIABLE', + 'REQUEST_ENTITY_TOO_LARGE', 'REQUEST_TIMEOUT', + 'REQUEST_URI_TOO_LONG', 'RESET_CONTENT', + 'ResponseNotReady', 'SEE_OTHER', 'SERVICE_UNAVAILABLE', + 'SSLFile', 'SWITCHING_PROTOCOLS', 'SharedSocket', + 'SharedSocketClient', 'StringIO', 'TEMPORARY_REDIRECT', + 'UNAUTHORIZED', 'UNPROCESSABLE_ENTITY', + 'UNSUPPORTED_MEDIA_TYPE', 'UPGRADE_REQUIRED', + 'USE_PROXY', 'UnimplementedFileMode', 'UnknownProtocol', + 'UnknownTransferEncoding', 'error', 'responses']), + 'Cookie': ('http.cookies', + ['BaseCookie', 'Cookie', 'CookieError', 'Morsel', + 'SerialCookie', 'SimpleCookie', 'SmartCookie']), + 'cookielib': ('http.cookiejar', + ['Absent', 'Cookie', 'CookieJar', 'CookiePolicy', + 'DAYS', 'DEFAULT_HTTP_PORT', 'DefaultCookiePolicy', + 'EPOCH_YEAR', 'ESCAPED_CHAR_RE', 'FileCookieJar', + 'HEADER_ESCAPE_RE', 'HEADER_JOIN_ESCAPE_RE', + 'HEADER_QUOTED_VALUE_RE', 'HEADER_TOKEN_RE', + 'HEADER_VALUE_RE', 'HTTP_PATH_SAFE', 'IPV4_RE', + 'ISO_DATE_RE', 'LOOSE_HTTP_DATE_RE', 'LWPCookieJar', + 'LoadError', 'MISSING_FILENAME_TEXT', 'MONTHS', + 'MONTHS_LOWER', 'MozillaCookieJar', 'STRICT_DATE_RE', + 'TIMEZONE_RE', 'UTC_ZONES', 'WEEKDAY_RE', + 'cut_port_re', 'deepvalues', 'domain_match', + 'eff_request_host', 'escape_path', 'http2time', + 'is_HDN', 'is_third_party', 'iso2time', + 'join_header_words', 'liberal_is_HDN', 'logger', + 'lwp_cookie_str', 'month', 'offset_from_tz_string', + 'parse_ns_headers', 'reach', 'request_host', + 'request_path', 'request_port', 'split_header_words', + 'time', 'time2isoz', 'time2netscape', 'unmatched', + 'uppercase_escaped_char', 'urllib', + 'user_domain_match', 'vals_sorted_by_key']), + 'BaseHTTPServer': ('http.server', + ['BaseHTTPRequestHandler', + 'DEFAULT_ERROR_MESSAGE', 'HTTPServer']), + 'SimpleHTTPServer': ('http.server', ['SimpleHTTPRequestHandler']), + 'CGIHTTPServer': ('http.server', + ['CGIHTTPRequestHandler', 'executable', + 'nobody_uid', 'nobody']), + 'test.test_support': ('test.support', + ["Error", "TestFailed", "TestSkipped", "ResourceDenied", + "import_module", "verbose", "use_resources", + "max_memuse", "record_original_stdout", + "get_original_stdout", "unload", "unlink", "rmtree", + "forget", "is_resource_enabled", "requires", + "find_unused_port", "bind_port", + "fcmp", "is_jython", "TESTFN", "HOST", + "FUZZ", "findfile", "verify", "vereq", "sortdict", + "check_syntax_error", "open_urlresource", "WarningMessage", + "catch_warning", "CleanImport", "EnvironmentVarGuard", + "TransientResource", "captured_output", "captured_stdout", + "TransientResource", "transient_internet", "run_with_locale", + "set_memlimit", "bigmemtest", "bigaddrspacetest", + "BasicTestRunner", "run_unittest", "run_doctest", + "threading_setup", "threading_cleanup", "reap_children"]), + 'commands': ('subprocess', ['getstatusoutput', 'getoutput']), + 'UserString' : ('collections', ['UserString']), + 'UserList' : ('collections', ['UserList']), } @@ -180,7 +297,7 @@ def build_pattern(): yield """bare_name=%s""" % alternates(bare) -class FixImports(basefix.BaseFix): +class FixImports(fixer_base.BaseFix): PATTERN = "|".join(build_pattern()) order = "pre" # Pre-order tree traversal |