OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
python3
/
dist-packages
/
libpasteurize
/
fixes
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
07/12/2020 04:36:18 PM
rwxr-xr-x
📄
__init__.py
3.63 KB
11/21/2014 11:52:03 AM
rw-r--r--
📁
__pycache__
-
07/12/2020 04:36:18 PM
rwxr-xr-x
📄
feature_base.py
1.69 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_add_all__future__imports.py
677 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_add_all_future_builtins.py
1.24 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_add_future_standard_library_import.py
663 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_annotations.py
1.55 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_division.py
904 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_features.py
2.62 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_fullargspec.py
442 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_future_builtins.py
1.42 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_getcwd.py
873 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_imports.py
4.83 KB
07/25/2015 10:34:42 AM
rw-r--r--
📄
fix_imports2.py
8.38 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_kwargs.py
5.87 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_memoryview.py
551 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_metaclass.py
3.19 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_newstyle.py
888 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_next.py
1.2 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_printfunction.py
401 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_raise.py
1.07 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_raise_.py
1.2 KB
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_throw.py
835 bytes
11/21/2014 11:52:03 AM
rw-r--r--
📄
fix_unpacking.py
5.81 KB
11/21/2014 11:52:03 AM
rw-r--r--
Editing: fix_features.py
Close
u""" Warn about features that are not present in Python 2.5, giving a message that points to the earliest version of Python 2.x (or 3.x, if none) that supports it """ from .feature_base import Feature, Features from lib2to3 import fixer_base FEATURES = [ #(FeatureName, # FeaturePattern, # FeatureMinVersion, #), (u"memoryview", u"power < 'memoryview' trailer < '(' any* ')' > any* >", u"2.7", ), (u"numbers", u"""import_from< 'from' 'numbers' 'import' any* > | import_name< 'import' ('numbers' dotted_as_names< any* 'numbers' any* >) >""", u"2.6", ), (u"abc", u"""import_name< 'import' ('abc' dotted_as_names< any* 'abc' any* >) > | import_from< 'from' 'abc' 'import' any* >""", u"2.6", ), (u"io", u"""import_name< 'import' ('io' dotted_as_names< any* 'io' any* >) > | import_from< 'from' 'io' 'import' any* >""", u"2.6", ), (u"bin", u"power< 'bin' trailer< '(' any* ')' > any* >", u"2.6", ), (u"formatting", u"power< any trailer< '.' 'format' > trailer< '(' any* ')' > >", u"2.6", ), (u"nonlocal", u"global_stmt< 'nonlocal' any* >", u"3.0", ), (u"with_traceback", u"trailer< '.' 'with_traceback' >", u"3.0", ), ] class FixFeatures(fixer_base.BaseFix): run_order = 9 # Wait until all other fixers have run to check for these # To avoid spamming, we only want to warn for each feature once. features_warned = set() # Build features from the list above features = Features([Feature(name, pattern, version) for \ name, pattern, version in FEATURES]) PATTERN = features.PATTERN def match(self, node): to_ret = super(FixFeatures, self).match(node) # We want the mapping only to tell us the node's specific information. try: del to_ret[u'node'] except Exception: # We want it to delete the 'node' from the results # if it's there, so we don't care if it fails for normal reasons. pass return to_ret def transform(self, node, results): for feature_name in results: if feature_name in self.features_warned: continue else: curr_feature = self.features[feature_name] if curr_feature.version >= u"3": fail = self.cannot_convert else: fail = self.warning fail(node, reason=curr_feature.message_text()) self.features_warned.add(feature_name)