/opt/alt/python37/lib/python3.7/site-packages/libpasteurize/fixes
NameSizeModeActions
__pycache__/-0755rm
feature_base.py17230644editdlrm
fix_add_all_future_builtins.py12690644editdlrm
fix_add_all__future__imports.py6760644editdlrm
fix_add_future_standard_library_import.py6630644editdlrm
fix_annotations.py15810644editdlrm
fix_division.py9040644editdlrm
fix_features.py26750644editdlrm
fix_fullargspec.py4380644editdlrm
fix_future_builtins.py14500644editdlrm
fix_getcwd.py8730644editdlrm
fix_imports.py49440644editdlrm
fix_imports2.py85800644editdlrm
fix_kwargs.py59910644editdlrm
fix_memoryview.py5510644editdlrm
fix_metaclass.py32600644editdlrm
fix_newstyle.py8880644editdlrm
fix_next.py12330644editdlrm
fix_printfunction.py4010644editdlrm
fix_raise.py10990644editdlrm
fix_raise_.py12250644editdlrm
fix_throw.py8350644editdlrm
fix_unpacking.py59460644editdlrm
__init__.py37190644editdlrm
Edit: /opt/alt/python37/lib/python3.7/site-packages/libpasteurize/fixes/fix_future_builtins.py (1450B)
""" Adds this import line: from builtins import XYZ for each of the functions XYZ that is used in the module. """ from __future__ import unicode_literals from lib2to3 import fixer_base from lib2to3.pygram import python_symbols as syms from lib2to3.fixer_util import Name, Call, in_special_context from libfuturize.fixer_util import touch_import_top # All builtins are: # from future.builtins.iterators import (filter, map, zip) # from future.builtins.misc import (ascii, chr, hex, input, isinstance, oct, open, round, super) # from future.types import (bytes, dict, int, range, str) # We don't need isinstance any more. replaced_builtins = '''filter map zip ascii chr hex input next oct open round super bytes dict int range str'''.split() expression = '|'.join(["name='{0}'".format(name) for name in replaced_builtins]) class FixFutureBuiltins(fixer_base.BaseFix): BM_compatible = True run_order = 9 # Currently we only match uses as a function. This doesn't match e.g.: # if isinstance(s, str): # ... PATTERN = """ power< ({0}) trailer< '(' args=[any] ')' > rest=any* > """.format(expression) def transform(self, node, results): name = results["name"] touch_import_top(u'builtins', name.value, node) # name.replace(Name(u"input", prefix=name.prefix))