Current Path: > > opt > alt > python37 > lib > python3.7 > > site-packages > libfuturize > fixes
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__pycache__ | Directory | - | - | |
__init__.py | File | 5141 bytes | October 25 2018 22:21:01. | |
fix_UserDict.py | File | 3840 bytes | October 25 2018 22:21:01. | |
fix_absolute_import.py | File | 3140 bytes | October 25 2018 22:21:01. | |
fix_add__future__imports_except_unicode_literals.py | File | 662 bytes | October 25 2018 22:21:01. | |
fix_basestring.py | File | 394 bytes | October 25 2018 22:21:01. | |
fix_bytes.py | File | 685 bytes | October 25 2018 22:21:01. | |
fix_cmp.py | File | 701 bytes | October 25 2018 22:21:01. | |
fix_division.py | File | 228 bytes | October 25 2018 22:21:01. | |
fix_division_safe.py | File | 3460 bytes | October 25 2018 22:21:01. | |
fix_execfile.py | File | 921 bytes | October 25 2018 22:21:01. | |
fix_future_builtins.py | File | 2027 bytes | October 25 2018 22:21:01. | |
fix_future_standard_library.py | File | 733 bytes | October 25 2018 22:21:01. | |
fix_future_standard_library_urllib.py | File | 1001 bytes | October 25 2018 22:21:01. | |
fix_metaclass.py | File | 9568 bytes | October 25 2018 22:21:01. | |
fix_next_call.py | File | 3158 bytes | October 25 2018 22:21:01. | |
fix_object.py | File | 407 bytes | October 25 2018 22:21:01. | |
fix_oldstr_wrap.py | File | 1214 bytes | October 25 2018 22:21:01. | |
fix_order___future__imports.py | File | 829 bytes | October 25 2018 22:21:01. | |
fix_print.py | File | 3384 bytes | October 25 2018 22:21:01. | |
fix_print_with_import.py | File | 735 bytes | October 25 2018 22:21:01. | |
fix_raise.py | File | 2167 bytes | October 25 2018 22:21:01. | |
fix_remove_old__future__imports.py | File | 851 bytes | October 25 2018 22:21:01. | |
fix_unicode_keep_u.py | File | 779 bytes | October 25 2018 22:21:01. | |
fix_unicode_literals_import.py | File | 367 bytes | October 25 2018 22:21:01. | |
fix_xrange_with_import.py | File | 479 bytes | October 25 2018 22:21:01. |
""" Fixer for import statements, with a __future__ import line. Based on lib2to3/fixes/fix_import.py, but extended slightly so it also supports Cython modules. If spam is being imported from the local directory, this import: from spam import eggs becomes: from __future__ import absolute_import from .spam import eggs and this import: import spam becomes: from __future__ import absolute_import from . import spam """ from os.path import dirname, join, exists, sep from lib2to3.fixes.fix_import import FixImport from lib2to3.fixer_util import FromImport, syms from lib2to3.fixes.fix_import import traverse_imports from libfuturize.fixer_util import future_import class FixAbsoluteImport(FixImport): run_order = 9 def transform(self, node, results): """ Copied from FixImport.transform(), but with this line added in any modules that had implicit relative imports changed: from __future__ import absolute_import" """ if self.skip: return imp = results['imp'] if node.type == syms.import_from: # Some imps are top-level (eg: 'import ham') # some are first level (eg: 'import ham.eggs') # some are third level (eg: 'import ham.eggs as spam') # Hence, the loop while not hasattr(imp, 'value'): imp = imp.children[0] if self.probably_a_local_import(imp.value): imp.value = u"." + imp.value imp.changed() future_import(u"absolute_import", node) else: have_local = False have_absolute = False for mod_name in traverse_imports(imp): if self.probably_a_local_import(mod_name): have_local = True else: have_absolute = True if have_absolute: if have_local: # We won't handle both sibling and absolute imports in the # same statement at the moment. self.warning(node, "absolute and local imports together") return new = FromImport(u".", [imp]) new.prefix = node.prefix future_import(u"absolute_import", node) return new def probably_a_local_import(self, imp_name): """ Like the corresponding method in the base class, but this also supports Cython modules. """ if imp_name.startswith(u"."): # Relative imports are certainly not local imports. return False imp_name = imp_name.split(u".", 1)[0] base_path = dirname(self.filename) base_path = join(base_path, imp_name) # If there is no __init__.py next to the file its not in a package # so can't be a relative import. if not exists(join(dirname(base_path), "__init__.py")): return False for ext in [".py", sep, ".pyc", ".so", ".sl", ".pyd", ".pyx"]: if exists(base_path + ext): return True return False
SILENT KILLER Tool