pylint scripts under sky, remove dead scripts under sky/tools/roll (#38334)
diff --git a/ci/licenses_golden/excluded_files b/ci/licenses_golden/excluded_files index 2ab9d44..ec6f5f0 100644 --- a/ci/licenses_golden/excluded_files +++ b/ci/licenses_golden/excluded_files
@@ -343,9 +343,6 @@ ../../../flutter/sky/tools/dist_dart_pkg.py ../../../flutter/sky/tools/install_framework_headers.py ../../../flutter/sky/tools/objcopy.py -../../../flutter/sky/tools/roll/patch.py -../../../flutter/sky/tools/roll/roll.py -../../../flutter/sky/tools/roll/utils.py ../../../flutter/testing ../../../flutter/third_party/accessibility/README.md ../../../flutter/third_party/accessibility/ax/ax_enum_util_unittest.cc
diff --git a/ci/licenses_golden/licenses_flutter b/ci/licenses_golden/licenses_flutter index 5b7ab49..578c924 100644 --- a/ci/licenses_golden/licenses_flutter +++ b/ci/licenses_golden/licenses_flutter
@@ -5571,7 +5571,6 @@ FILE: ../../../flutter/shell/version/version.cc FILE: ../../../flutter/shell/version/version.h FILE: ../../../flutter/shell/vmservice/empty.dart -FILE: ../../../flutter/sky/tools/roll/patches/chromium/android_build.patch FILE: ../../../flutter/third_party/accessibility/base/color_utils.h FILE: ../../../flutter/third_party/accessibility/base/compiler_specific.h FILE: ../../../flutter/third_party/accessibility/base/container_utils.h
diff --git a/ci/lint.sh b/ci/lint.sh index 05c6d94..adfc2be 100755 --- a/ci/lint.sh +++ b/ci/lint.sh
@@ -74,6 +74,7 @@ "build/" \ "ci/" \ "impeller/" \ + "sky/" \ "tools/gn" \ "testing/"
diff --git a/sky/tools/create_full_ios_framework.py b/sky/tools/create_full_ios_framework.py index 3d46fc4..6594b0f 100644 --- a/sky/tools/create_full_ios_framework.py +++ b/sky/tools/create_full_ios_framework.py
@@ -13,7 +13,7 @@ import subprocess import sys -from create_xcframework import create_xcframework +from create_xcframework import create_xcframework # pylint: disable=import-error DSYMUTIL = os.path.join( os.path.dirname(__file__), '..', '..', '..', 'buildtools', 'mac-x64', @@ -39,8 +39,8 @@ parser.add_argument('--arm64-out-dir', type=str, required=True) parser.add_argument('--simulator-x64-out-dir', type=str, required=True) parser.add_argument('--simulator-arm64-out-dir', type=str, required=False) - parser.add_argument('--strip', action="store_true", default=False) - parser.add_argument('--dsym', action="store_true", default=False) + parser.add_argument('--strip', action='store_true', default=False) + parser.add_argument('--dsym', action='store_true', default=False) args = parser.parse_args() @@ -108,9 +108,10 @@ process_framework(args, dst, framework, framework_binary) generate_gen_snapshot(args, dst, x64_out_dir, arm64_out_dir) zip_archive(dst) + return 0 -def create_framework( +def create_framework( # pylint: disable=too-many-arguments args, dst, framework, arm64_framework, simulator_framework, simulator_x64_framework, simulator_arm64_framework ): @@ -122,7 +123,7 @@ return 1 if not os.path.isfile(simulator_x64_dylib): - print('Cannot find iOS simulator dylib at %s' % simulator_dylib) + print('Cannot find iOS simulator dylib at %s' % simulator_x64_dylib) return 1 shutil.rmtree(framework, True) @@ -143,12 +144,12 @@ process_framework( args, dst, simulator_framework, simulator_framework_binary ) - simulator_framework = simulator_framework else: simulator_framework = simulator_x64_framework - # Create XCFramework from the arm-only fat framework and the arm64/x64 simulator frameworks, or just the - # x64 simulator framework if only that one exists. + # Create XCFramework from the arm-only fat framework and the arm64/x64 + # simulator frameworks, or just the x64 simulator framework if only that one + # exists. xcframeworks = [simulator_framework, framework] create_xcframework(location=dst, name='Flutter', frameworks=xcframeworks) @@ -158,10 +159,12 @@ framework_binary ]) + return 0 + def embed_codesign_configuration(config_path, contents): - with open(config_path, 'w') as f: - f.write('\n'.join(contents) + '\n') + with open(config_path, 'w') as file: + file.write('\n'.join(contents) + '\n') def zip_archive(dst): @@ -189,7 +192,7 @@ 'without_entitlements.txt', ], cwd=dst) - if (os.path.exists(os.path.join(dst, 'Flutter.dSYM'))): + if os.path.exists(os.path.join(dst, 'Flutter.dSYM')): subprocess.check_call(['zip', '-r', 'Flutter.dSYM.zip', 'Flutter.dSYM'], cwd=dst) @@ -204,7 +207,7 @@ unstripped_out = os.path.join(dst, 'Flutter.unstripped') shutil.copyfile(framework_binary, unstripped_out) - subprocess.check_call(["strip", "-x", "-S", framework_binary]) + subprocess.check_call(['strip', '-x', '-S', framework_binary]) def generate_gen_snapshot(args, dst, x64_out_dir, arm64_out_dir):
diff --git a/sky/tools/create_ios_framework.py b/sky/tools/create_ios_framework.py index e20c010..f0815df 100755 --- a/sky/tools/create_ios_framework.py +++ b/sky/tools/create_ios_framework.py
@@ -10,7 +10,7 @@ import sys import os -from create_xcframework import create_xcframework +from create_xcframework import create_xcframework # pylint: disable=import-error DSYMUTIL = os.path.join( os.path.dirname(__file__), '..', '..', '..', 'buildtools', 'mac-x64', @@ -31,8 +31,8 @@ '--simulator-x64-out-dir', '--simulator-out-dir', type=str, required=True ) parser.add_argument('--simulator-arm64-out-dir', type=str, required=False) - parser.add_argument('--strip', action="store_true", default=False) - parser.add_argument('--dsym', action="store_true", default=False) + parser.add_argument('--strip', action='store_true', default=False) + parser.add_argument('--dsym', action='store_true', default=False) args = parser.parse_args() @@ -64,7 +64,7 @@ return 1 if not os.path.isfile(simulator_x64_dylib): - print('Cannot find iOS simulator dylib at %s' % simulator_dylib) + print('Cannot find iOS simulator dylib at %s' % simulator_x64_dylib) return 1 if not os.path.isfile(DSYMUTIL): @@ -88,12 +88,12 @@ '-output', simulator_framework_binary ]) process_framework(args, simulator_framework, simulator_framework_binary) - simulator_framework = simulator_framework else: simulator_framework = simulator_x64_framework - # Create XCFramework from the arm-only fat framework and the arm64/x64 simulator frameworks, or just the - # x64 simulator framework if only that one exists. + # Create XCFramework from the arm-only fat framework and the arm64/x64 + # simulator frameworks, or just the x64 simulator framework if only that one + # exists. xcframeworks = [simulator_framework, framework] create_xcframework(location=args.dst, name='Flutter', frameworks=xcframeworks) @@ -104,6 +104,7 @@ ]) process_framework(args, framework, framework_binary) + return 0 def process_framework(args, framework, framework_binary): @@ -116,7 +117,7 @@ unstripped_out = os.path.join(args.dst, 'Flutter.unstripped') shutil.copyfile(framework_binary, unstripped_out) - subprocess.check_call(["strip", "-x", "-S", framework_binary]) + subprocess.check_call(['strip', '-x', '-S', framework_binary]) if __name__ == '__main__':
diff --git a/sky/tools/create_macos_framework.py b/sky/tools/create_macos_framework.py index dedd2d7..a354626 100755 --- a/sky/tools/create_macos_framework.py +++ b/sky/tools/create_macos_framework.py
@@ -10,8 +10,6 @@ import sys import os -from create_xcframework import create_xcframework - buildroot_dir = os.path.abspath( os.path.join(os.path.realpath(__file__), '..', '..', '..', '..') ) @@ -32,10 +30,10 @@ parser.add_argument('--dst', type=str, required=True) parser.add_argument('--arm64-out-dir', type=str, required=True) parser.add_argument('--x64-out-dir', type=str, required=True) - parser.add_argument('--strip', action="store_true", default=False) - parser.add_argument('--dsym', action="store_true", default=False) + parser.add_argument('--strip', action='store_true', default=False) + parser.add_argument('--dsym', action='store_true', default=False) # TODO(godofredoc): Remove after recipes v2 have landed. - parser.add_argument('--zip', action="store_true", default=False) + parser.add_argument('--zip', action='store_true', default=False) args = parser.parse_args() @@ -93,6 +91,8 @@ ]) process_framework(dst, args, fat_framework, fat_framework_binary) + return 0 + def regenerate_symlinks(fat_framework): """Regenerates the symlinks structure. @@ -142,7 +142,7 @@ unstripped_out = os.path.join(dst, 'FlutterMacOS.unstripped') shutil.copyfile(fat_framework_binary, unstripped_out) - subprocess.check_call(["strip", "-x", "-S", fat_framework_binary]) + subprocess.check_call(['strip', '-x', '-S', fat_framework_binary]) # Zip FlutterMacOS.framework. if args.zip:
diff --git a/sky/tools/create_macos_gen_snapshots.py b/sky/tools/create_macos_gen_snapshots.py index 4603bcd..7bd1c6d 100755 --- a/sky/tools/create_macos_gen_snapshots.py +++ b/sky/tools/create_macos_gen_snapshots.py
@@ -24,7 +24,7 @@ parser.add_argument('--x64-out-dir', type=str) parser.add_argument('--arm64-out-dir', type=str) parser.add_argument('--armv7-out-dir', type=str) - parser.add_argument('--zip', action="store_true", default=False) + parser.add_argument('--zip', action='store_true', default=False) args = parser.parse_args()
diff --git a/sky/tools/create_xcframework.py b/sky/tools/create_xcframework.py index 889dea3..cfc389c 100755 --- a/sky/tools/create_xcframework.py +++ b/sky/tools/create_xcframework.py
@@ -5,7 +5,6 @@ # found in the LICENSE file. import argparse -import errno import os import shutil import subprocess @@ -46,7 +45,8 @@ # Remove old xcframework. shutil.rmtree(output_xcframework) - # xcrun xcodebuild -create-xcframework -framework foo/baz.framework -framework bar/baz.framework -output output/ + # xcrun xcodebuild -create-xcframework -framework foo/baz.framework \ + # -framework bar/baz.framework -output output/ command = ['xcrun', 'xcodebuild', '-quiet', '-create-xcframework'] for framework in frameworks:
diff --git a/sky/tools/install_framework_headers.py b/sky/tools/install_framework_headers.py index 4cc631d..ab59393 100755 --- a/sky/tools/install_framework_headers.py +++ b/sky/tools/install_framework_headers.py
@@ -8,7 +8,6 @@ import errno import os import shutil -import subprocess import sys @@ -31,10 +30,10 @@ # Remove old headers. try: shutil.rmtree(os.path.normpath(args.location)) - except OSError as e: + except OSError as err: # Ignore only "not found" errors. - if e.errno != errno.ENOENT: - raise e + if err.errno != errno.ENOENT: + raise err # Create the directory to copy the files to. if not os.path.isdir(args.location):
diff --git a/sky/tools/roll/patch.py b/sky/tools/roll/patch.py deleted file mode 100755 index 651f187..0000000 --- a/sky/tools/roll/patch.py +++ /dev/null
@@ -1,46 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright 2013 The Flutter Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import os -import subprocess -import utils - - -def patch_and_filter(dest_dir, relative_patches_dir): - os.chdir(dest_dir) - - utils.filter_file( - "build/landmines.py", lambda line: not "gyp_environment" in line - ) - utils.commit("filter gyp_environment out of build/landmines.py") - - patch(dest_dir, relative_patches_dir) - - -def patch(dest_dir, relative_patches_dir=os.curdir): - """Applies the *.patch files in |relative_patches_dir|. - - Args: - relative_patches_dir: A directory path relative to the current directory. - Defaults to the directory of this file. - - Raises: - subprocess.CalledProcessError if the patch couldn't be applied. - """ - patches_dir = os.path.join( - os.path.dirname(os.path.realpath(__file__)), relative_patches_dir - ) - assert os.path.isdir(patches_dir) - - os.chdir(dest_dir) - for p in utils.find(["*.patch"], patches_dir): - print("applying patch %s" % os.path.basename(p)) - try: - utils.system(["git", "apply", p]) - utils.commit("applied patch %s" % os.path.basename(p)) - except subprocess.CalledProcessError: - print("ERROR: patch %s failed to apply" % os.path.basename(p)) - raise
diff --git a/sky/tools/roll/patches/chromium/android_build.patch b/sky/tools/roll/patches/chromium/android_build.patch deleted file mode 100644 index bd73b9e..0000000 --- a/sky/tools/roll/patches/chromium/android_build.patch +++ /dev/null
@@ -1,33 +0,0 @@ ---- a/build/android/pylib/constants/__init__.py -+++ b/build/android/pylib/constants/__init__.py -@@ -184,7 +184,7 @@ class ANDROID_SDK_VERSION_CODES(object): - LOLLIPOP_MR1 = 22 - - ANDROID_SDK_VERSION = ANDROID_SDK_VERSION_CODES.LOLLIPOP_MR1 --ANDROID_SDK_BUILD_TOOLS_VERSION = '22.0.0' -+ANDROID_SDK_BUILD_TOOLS_VERSION = '22.0.1' - ANDROID_SDK_ROOT = os.path.join(DIR_SOURCE_ROOT, - 'third_party/android_tools/sdk') - ANDROID_SDK_TOOLS = os.path.join(ANDROID_SDK_ROOT, ---- a/build/common.gypi -+++ b/build/common.gypi -@@ -1682,7 +1682,7 @@ - 'android_host_arch%': '<!(uname -m)', - # Android API-level of the SDK used for compilation. - 'android_sdk_version%': '22', -- 'android_sdk_build_tools_version%': '22.0.0', -+ 'android_sdk_build_tools_version%': '22.0.1', - 'host_os%': "<!(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/')", - }, - # Copy conditionally-set variables out one scope. ---- a/build/config/android/config.gni -+++ b/build/config/android/config.gni -@@ -17,7 +17,7 @@ if (is_android) { - if (!defined(default_android_sdk_root)) { - default_android_sdk_root = "//third_party/android_tools/sdk" - default_android_sdk_version = "22" -- default_android_sdk_build_tools_version = "22.0.0" -+ default_android_sdk_build_tools_version = "22.0.1" - } - - if (!defined(google_play_services_library)) {
diff --git a/sky/tools/roll/roll.py b/sky/tools/roll/roll.py deleted file mode 100755 index 0c0f754..0000000 --- a/sky/tools/roll/roll.py +++ /dev/null
@@ -1,173 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright 2013 The Flutter Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import argparse -import json -import os -import subprocess -import sys -import urllib.request, urllib.error, urllib.parse -from utils import commit -from utils import system -import patch - -# //base and its dependencies -_base_deps = [ - 'base', - 'testing', - 'third_party/ashmem', - 'third_party/libevent', - 'third_party/tcmalloc', -] - -# //build and its dependencies -_build_deps = [ - 'build', - 'third_party/android_testrunner', - 'third_party/binutils', - 'third_party/instrumented_libraries', - 'third_party/pymock', - 'tools/android', - 'tools/clang', - 'tools/generate_library_loader', - 'tools/gritsettings', - 'tools/valgrind', -] - -_third_party_deps = [ - 'third_party/android_platform', - 'third_party/apple_apsl', - 'third_party/expat', - 'third_party/freetype-android', - 'third_party/harfbuzz-ng', - 'third_party/iccjpeg', - 'third_party/jinja2', - 'third_party/jsr-305', - 'third_party/junit', - 'third_party/libjpeg', - 'third_party/libpng', - 'third_party/markupsafe', - 'third_party/mesa', - 'third_party/mockito', - 'third_party/ply', - 'third_party/qcms', - 'third_party/robolectric', - 'third_party/zlib', -] - -dirs_from_chromium = _base_deps + _build_deps + _third_party_deps - -dirs_from_mojo = [ - 'mojo/android', - 'mojo/application', - 'mojo/common', - ('mojo/dart/embedder', ['embedder.gni']), - 'mojo/dart/packages/mojo', - 'mojo/data_pipe_utils', - 'mojo/edk', - 'mojo/environment', - 'mojo/java', - 'mojo/message_pump', - 'mojo/services', - 'mojo/skia', - 'services/sensors', -] - -# The contents of these files before the roll will be preserved after the roll, -# even though they live in directories rolled in from Chromium. -files_not_to_roll = [ - 'build/config/ui.gni', - 'build/ls.py', - 'build/module_args/mojo.gni', - 'tools/android/download_android_tools.py', - 'tools/android/VERSION_LINUX_NDK', - 'tools/android/VERSION_LINUX_SDK', - 'tools/android/VERSION_MACOSX_NDK', - 'tools/android/VERSION_MACOSX_SDK', -] - - -def rev(source_dir, dest_dir, dirs_to_rev, name, revision_file=None): - for dir_to_rev in dirs_to_rev: - if type(dir_to_rev) is tuple: - d, file_subset = dir_to_rev - else: - d = dir_to_rev - file_subset = None - print("removing directory %s" % d) - try: - system(["git", "rm", "-r", d], cwd=dest_dir) - except subprocess.CalledProcessError: - print("Could not remove %s" % d) - print("cloning directory %s" % d) - - if file_subset is None: - files = system(["git", "ls-files", d], cwd=source_dir).splitlines() - else: - files = [os.path.join(d, f) for f in file_subset] - - for f in files: - source_path = os.path.join(source_dir, f) - if not os.path.isfile(source_path): - continue - dest_path = os.path.join(dest_dir, f) - system(["mkdir", "-p", os.path.dirname(dest_path)], cwd=source_dir) - system(["cp", source_path, dest_path], cwd=source_dir) - system(["git", "add", d], cwd=dest_dir) - - for f in files_not_to_roll: - system(["git", "checkout", "HEAD", f], cwd=dest_dir) - - src_commit = system(["git", "rev-parse", "HEAD"], cwd=source_dir).strip() - - if revision_file: - with open(revision_file, 'w') as f: - f.write(src_commit) - - system(["git", "add", "."], cwd=dest_dir) - commit("Update to %s %s" % (name, src_commit), cwd=dest_dir) - - -def main(): - parser = argparse.ArgumentParser( - description="Update the mojo repo's " + - "snapshot of things imported from chromium." - ) - parser.add_argument("--mojo-dir", type=str) - parser.add_argument("--chromium-dir", type=str) - parser.add_argument("--dest-dir", type=str) - - args = parser.parse_args() - - dest_dir = os.path.abspath(args.dest_dir) - - if args.mojo_dir: - rev( - os.path.abspath(args.mojo_dir), - dest_dir, - dirs_from_mojo, - 'mojo', - revision_file='mojo/VERSION' - ) - - if args.chromium_dir: - rev( - os.path.abspath(args.chromium_dir), dest_dir, dirs_from_chromium, - 'chromium' - ) - - try: - patch.patch_and_filter(dest_dir, os.path.join('patches', 'chromium')) - except subprocess.CalledProcessError: - print("ERROR: Roll failed due to a patch not applying") - print("Fix the patch to apply, commit the result, and re-run this script") - return 1 - - return 0 - - -if __name__ == "__main__": - sys.exit(main())
diff --git a/sky/tools/roll/utils.py b/sky/tools/roll/utils.py deleted file mode 100755 index a5234d3..0000000 --- a/sky/tools/roll/utils.py +++ /dev/null
@@ -1,34 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright 2013 The Flutter Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import fnmatch -import os -import subprocess - - -def commit(message, cwd=None): - subprocess.call(['git', 'commit', '-a', '-m', message], cwd=cwd) - - -def system(command, cwd=None): - return subprocess.check_output(command, cwd=cwd) - - -def find(patterns, start='.'): - for path, dirs, files in os.walk(start): - for basename in files + dirs: - if any([fnmatch.fnmatch(basename, pattern) for pattern in patterns]): - filename = os.path.join(path, basename) - yield filename - - -def filter_file(path, predicate): - with open(path, 'r+') as f: - lines = f.readlines() - new_lines = [line for line in lines if predicate(line)] - f.seek(0) - f.truncate() - f.write(''.join(new_lines))