diff Lib/distutils/command/build_py.py @ 49911:60e775eaaaee

Issue #4073: Add 2to3 support to build_scripts, refactor that support in build_py.
author Martin v. Löwis <martin@v.loewis.de>
date Mon, 01 Dec 2008 04:38:52 +0000
parents d17cfee4f23d
children a3cb812d80f9 46a9b18a1a17
line wrap: on
line diff
--- a/Lib/distutils/command/build_py.py	Sun Nov 30 23:43:36 2008 +0000
+++ b/Lib/distutils/command/build_py.py	Mon Dec 01 04:38:52 2008 +0000
@@ -9,7 +9,7 @@
 
 from distutils.core import Command
 from distutils.errors import *
-from distutils.util import convert_path
+from distutils.util import convert_path, Mixin2to3
 from distutils import log
 
 class build_py (Command):
@@ -384,19 +384,7 @@
             byte_compile(files, optimize=self.optimize,
                          force=self.force, prefix=prefix, dry_run=self.dry_run)
 
-from lib2to3.refactor import RefactoringTool, get_fixers_from_package
-class DistutilsRefactoringTool(RefactoringTool):
-    def log_error(self, msg, *args, **kw):
-        # XXX ignores kw
-        log.error(msg, *args)
-
-    def log_message(self, msg, *args):
-        log.info(msg, *args)
-
-    def log_debug(self, msg, *args):
-        log.debug(msg, *args)
-
-class build_py_2to3(build_py):
+class build_py_2to3(build_py, Mixin2to3):
     def run(self):
         self.updated_files = []
 
@@ -408,12 +396,7 @@
             self.build_package_data()
 
         # 2to3
-        fixers = get_fixers_from_package('lib2to3.fixes')
-        options = dict(fix=[], list_fixes=[],
-                       print_function=False, verbose=False,
-                       write=True)
-        r = DistutilsRefactoringTool(fixers, options)
-        r.refactor(self.updated_files, write=True)
+        self.run_2to3(self.updated_files)
 
         # Remaining base class code
         self.byte_compile(self.get_outputs(include_bytecode=0))