From 89d9c25b5cbdb5c262ccf923baac7e7cbc66d2ed Mon Sep 17 00:00:00 2001 From: Lisa Roach Date: Mon, 14 Mar 2022 12:44:46 -0700 Subject: [PATCH] Fbandroid profilo to Python 3. Summary: Converts to Python 3. Generated by running the 2to3 tool over all files that have a py2 pin, and used sed to remove all py2 pins. 2to3.par --nofix print --nofix future And then did a separate search for print " statements and ran the print fix on them. This was done to prevent the double paren wrapping of print statements to fixer usually puts in (eg. print(("hello")) NOTE:This is a codemod. I know nothing about this code, I manually touched only a handful of these files. If you have questions about how specific code works, please find an author of the code. run_all_fbandroid_tests run_all_fbandroid_tests_at_diff_time #nocancel Reviewed By: jiawei-lyu Differential Revision: D34773781 fbshipit-source-id: 9b60f7955086b40ddac14dc5fd441d95f82a2cd6 --- cpp/codegen/BUCK | 1 - cpp/codegen/codegen.py | 8 ++------ cpp/codegen/codegen_program.py | 6 +++++- cpp/codegen/cpp/entry_structs.py | 4 ++-- cpp/codegen/cpp/parser.py | 6 ++++-- cpp/codegen/cpp/type_converters.py | 10 +++------- cpp/codegen/types.py | 18 +++++------------- python/profilo/model/tests/BUCK | 1 - 8 files changed, 21 insertions(+), 33 deletions(-) diff --git a/cpp/codegen/BUCK b/cpp/codegen/BUCK index 7f7fa64fa..444593b53 100644 --- a/cpp/codegen/BUCK +++ b/cpp/codegen/BUCK @@ -10,7 +10,6 @@ fb_python_library( fb_python_binary( name = "codegen", main_module = "profilo.codegen", - platform = "py2", deps = [ ":codegen-lib", ], diff --git a/cpp/codegen/codegen.py b/cpp/codegen/codegen.py index eadeb00dc..899719bd8 100644 --- a/cpp/codegen/codegen.py +++ b/cpp/codegen/codegen.py @@ -26,12 +26,10 @@ SIGNED_SOURCE = "".join(["@", "generated", " ", "SignedSource", "<<>>"]) -class Language(object): +class Language(object, metaclass=abc.ABCMeta): CPP = 1 JAVA = 2 - __metaclass__ = abc.ABCMeta - @staticmethod def is_valid(num): return num in [Language.CPP, Language.JAVA] @@ -70,9 +68,7 @@ def __init__(self, **kwargs): raise ValueError("memory_format must be a MemoryDescription") -class Codegen(object): - __metaclass__ = abc.ABCMeta - +class Codegen(object, metaclass=abc.ABCMeta): @abc.abstractmethod def generate(self): pass diff --git a/cpp/codegen/codegen_program.py b/cpp/codegen/codegen_program.py index 13ec8c255..becf559f7 100644 --- a/cpp/codegen/codegen_program.py +++ b/cpp/codegen/codegen_program.py @@ -62,7 +62,11 @@ class CodegenProgram(object): def __init__(self, lang, mode, entries): known_codegen = set( - [y for x in CodegenProgram.SUPPORTED_CODEGEN.values() for y in x.keys()] + [ + y + for x in list(CodegenProgram.SUPPORTED_CODEGEN.values()) + for y in list(x.keys()) + ] ) if mode not in known_codegen: diff --git a/cpp/codegen/cpp/entry_structs.py b/cpp/codegen/cpp/entry_structs.py index 692b70b82..d8ee3a6da 100644 --- a/cpp/codegen/cpp/entry_structs.py +++ b/cpp/codegen/cpp/entry_structs.py @@ -68,7 +68,7 @@ def generate(self): def _generate_entries_structs(self): structs = [ - self._generate_entry_struct(fmt) for fmt in self.unique_types.values() + self._generate_entry_struct(fmt) for fmt in list(self.unique_types.values()) ] structs = "\n".join(structs) @@ -148,7 +148,7 @@ def generate(self): def _generate_entries_code(self): structs = [ - self._generate_entry_struct(fmt) for fmt in self.unique_types.values() + self._generate_entry_struct(fmt) for fmt in list(self.unique_types.values()) ] structs = "\n".join(structs) diff --git a/cpp/codegen/cpp/parser.py b/cpp/codegen/cpp/parser.py index 70b15afa5..d7ef38c24 100644 --- a/cpp/codegen/cpp/parser.py +++ b/cpp/codegen/cpp/parser.py @@ -82,7 +82,9 @@ class EntryParser { def _generate_entry_visitor_methods(self): template = "virtual void visit(const %%TYPE%%& entry) = 0;" - methods = [template.replace("%%TYPE%%", x) for x in self.unique_types.keys()] + methods = [ + template.replace("%%TYPE%%", x) for x in list(self.unique_types.keys()) + ] return "\n".join(methods) @@ -109,7 +111,7 @@ def _generate_parse_method(self): case_template.replace("%%ID%%", str(x.type_id)).replace( "%%TYPE%%", x.typename ) - for x in self.unique_types.values() + for x in list(self.unique_types.values()) ] cases = "\n".join(cases) cases = Codegen.indent(cases) diff --git a/cpp/codegen/cpp/type_converters.py b/cpp/codegen/cpp/type_converters.py index 53158cc23..1b4785ad5 100644 --- a/cpp/codegen/cpp/type_converters.py +++ b/cpp/codegen/cpp/type_converters.py @@ -30,9 +30,7 @@ from ..types import PointerType -class CppTypeConverter(object): - __metaclass__ = abc.ABCMeta - +class CppTypeConverter(object, metaclass=abc.ABCMeta): def __init__(self, abstract_type): self.abstract_type = abstract_type @@ -61,9 +59,7 @@ def generate_runtime_size_code( ) -class PrimitiveTypeConverter(CppTypeConverter): - __metaclass__ = abc.ABCMeta - +class PrimitiveTypeConverter(CppTypeConverter, metaclass=abc.ABCMeta): def generate_pack_code(self, from_expression, to_expression, offset_expr): return """ std::memcpy(({to}) + {offset}, &({from_}), sizeof(({from_}))); @@ -222,7 +218,7 @@ def generate_declaration(self, name): }} {name};""" field_declarations = [] - for field_name, field_type in self.abstract_type.members.items(): + for field_name, field_type in list(self.abstract_type.members.items()): decl = CONVERTERS[field_type.__class__](field_type).generate_declaration( field_name ) diff --git a/cpp/codegen/types.py b/cpp/codegen/types.py index e49545c9e..ac51b8f97 100644 --- a/cpp/codegen/types.py +++ b/cpp/codegen/types.py @@ -22,17 +22,13 @@ import abc -class Type(object): - __metaclass__ = abc.ABCMeta - +class Type(object, metaclass=abc.ABCMeta): @abc.abstractproperty def constant_size(self): pass -class PrimitiveType(Type): - __metaclass__ = abc.ABCMeta - +class PrimitiveType(Type, metaclass=abc.ABCMeta): @abc.abstractmethod def __init__(self, size): super(PrimitiveType, self).__init__() @@ -72,9 +68,7 @@ def __init__(self, pointed_to_type): self.pointed_to_type = pointed_to_type -class CompoundType(Type): - __metaclass__ = abc.ABCMeta - +class CompoundType(Type, metaclass=abc.ABCMeta): @abc.abstractmethod def __init__(self, members): super(CompoundType, self).__init__() @@ -83,7 +77,7 @@ def __init__(self, members): @property def constant_size(self): - return sum([member.constant_size for member in self.members.values()]) + return sum([member.constant_size for member in list(self.members.values())]) class DynamicArrayType(CompoundType): @@ -101,9 +95,7 @@ def __init__(self, member_type): self.member_type = member_type -class Types(object): - __metaclass__ = abc.ABCMeta - +class Types(object, metaclass=abc.ABCMeta): int8 = IntegerType(size=1, signed=True) int16 = IntegerType(size=2, signed=True) int32 = IntegerType(size=4, signed=True) diff --git a/python/profilo/model/tests/BUCK b/python/profilo/model/tests/BUCK index a40c48fd7..4f04bf454 100644 --- a/python/profilo/model/tests/BUCK +++ b/python/profilo/model/tests/BUCK @@ -6,7 +6,6 @@ fb_python_test( srcs = glob(["*.py"]), base_module = "profilo.model.tests", contacts = ["oncall+test_ownership_2020@xmail.facebook.com"], - platform = "py2", deps = [ profilo_path("python/profilo/model:model"), ],