Skip to content

Commit 4126794

Browse files
committed
Add test to list of top-level modules to pre-import if we're in the python-future source folder
We now pre-import these from both future.moves and future.backports
1 parent 913ade1 commit 4126794

File tree

4 files changed

+20
-8
lines changed

4 files changed

+20
-8
lines changed

future/backports/__init__.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# future.backports package
2+
from __future__ import absolute_import
3+
import sys
4+
__future_module__ = True
5+
6+
from future.moves import import_top_level_modules
7+
8+
if sys.version_info[0] == 3:
9+
import_top_level_modules()

future/backports/test/support.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
from future import utils
1010
from future.builtins import str, range, open, int, map, list
1111

12-
1312
# if __name__ != 'test.support':
1413
# raise ImportError('support must be imported from the test package')
1514

future/moves/__init__.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
'queue',
1212
'reprlib',
1313
'socketserver',
14+
'test',
1415
'tkinter',
1516
'winreg',
1617
'xmlrpc',
@@ -19,11 +20,14 @@
1920
'_thread',
2021
]
2122

22-
if sys.version_info[0] == 3:
23+
def import_top_level_modules():
2324
from future.standard_library import exclude_local_folder_imports
2425
with exclude_local_folder_imports(*TOP_LEVEL_MODULES):
2526
for m in TOP_LEVEL_MODULES:
2627
try:
2728
__import__(m)
2829
except ImportError: # e.g. winreg
2930
pass
31+
32+
if sys.version_info[0] == 3:
33+
import_top_level_modules()

future/standard_library/__init__.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -766,12 +766,12 @@ def __enter__(self):
766766
# Ensure we import the system module:
767767
for m in self.module_names:
768768
# Delete the module and any submodules from sys.modules:
769-
for key in list(sys.modules):
770-
if key == m or key.startswith(m + '.'):
771-
try:
772-
del sys.modules[key]
773-
except KeyError:
774-
pass
769+
# for key in list(sys.modules):
770+
# if key == m or key.startswith(m + '.'):
771+
# try:
772+
# del sys.modules[key]
773+
# except KeyError:
774+
# pass
775775
try:
776776
module = __import__(m, level=0)
777777
except ImportError:

0 commit comments

Comments
 (0)