From 766f5d9d736ae37167534fbb2484b6dbcb70bd34 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Sun, 4 Jul 2010 16:44:15 +0000 Subject: [PATCH] Merged revisions 81478,82530-82531 via svnmerge from svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3 ........ r81478 | benjamin.peterson | 2010-05-22 13:47:39 -0500 (Sat, 22 May 2010) | 1 line ensure doctests have some future_features ........ r82530 | benjamin.peterson | 2010-07-04 11:11:41 -0500 (Sun, 04 Jul 2010) | 1 line simplify ignore star imports from itertools #8892 ........ r82531 | benjamin.peterson | 2010-07-04 11:13:20 -0500 (Sun, 04 Jul 2010) | 1 line wrap with parenthesis not \ ........ --- Lib/lib2to3/fixes/fix_itertools_imports.py | 7 +++++-- Lib/lib2to3/tests/test_fixers.py | 4 ++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Lib/lib2to3/fixes/fix_itertools_imports.py b/Lib/lib2to3/fixes/fix_itertools_imports.py index 1897e3647f8..f4b4ead5fea 100644 --- a/Lib/lib2to3/fixes/fix_itertools_imports.py +++ b/Lib/lib2to3/fixes/fix_itertools_imports.py @@ -20,6 +20,9 @@ class FixItertoolsImports(fixer_base.BaseFix): if child.type == token.NAME: member = child.value name_node = child + elif child.type == token.STAR: + # Just leave the import as is. + return else: assert child.type == syms.import_as_name name_node = child.children[0] @@ -44,8 +47,8 @@ class FixItertoolsImports(fixer_base.BaseFix): children[-1].remove() # If there are no imports left, just get rid of the entire statement - if not (imports.children or getattr(imports, 'value', None)) or \ - imports.parent is None: + if (not (imports.children or getattr(imports, 'value', None)) or + imports.parent is None): p = node.prefix node = BlankLine() node.prefix = p diff --git a/Lib/lib2to3/tests/test_fixers.py b/Lib/lib2to3/tests/test_fixers.py index 855b4bb71f6..91853a4a127 100644 --- a/Lib/lib2to3/tests/test_fixers.py +++ b/Lib/lib2to3/tests/test_fixers.py @@ -3670,6 +3670,10 @@ class Test_itertools_imports(FixerTestCase): a = "from itertools import bar, filterfalse, foo" self.check(b, a) + def test_import_star(self): + s = "from itertools import *" + self.unchanged(s) + def test_unchanged(self): s = "from itertools import foo"