Revert "Prepare release scripts for new JDK-11 desugared library variants" This reverts commit b1d4edfb04e63d31e54b618c105ec914842a296f. Reason for revert: Failing archive bot. Change-Id: I102382691137fddd5f89a9ffca34105189629636
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java index c4ef343..c9c9a31 100644 --- a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java +++ b/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java
@@ -16,7 +16,6 @@ import java.nio.file.Files; import java.nio.file.OpenOption; import java.nio.file.Path; -import java.nio.file.Paths; import java.nio.file.StandardOpenOption; import java.util.Map; import java.util.zip.ZipEntry; @@ -39,16 +38,6 @@ .put("wrapper/adapter/HybridFileTypeDetector", "java/adapter/HybridFileTypeDetector") .build(); - public static void main(String[] args) { - if (!Files.exists(Paths.get(args[0]))) { - throw new RuntimeException("Undesugarer source not found"); - } - if (Files.exists(Paths.get(args[1]))) { - throw new RuntimeException("Undesugarer destination already exists"); - } - generateUndesugaredJar(Paths.get(args[0]), Paths.get(args[1])); - } - public static Path undesugaredJarJDK11(Path undesugarFolder, Path jdk11Jar) { String fileName = jdk11Jar.getFileName().toString(); String newFileName = fileName.substring(0, fileName.length() - 4) + "_undesugared.jar";
diff --git a/tools/archive.py b/tools/archive.py index bfd3a1b..652fbe9 100755 --- a/tools/archive.py +++ b/tools/archive.py
@@ -169,23 +169,6 @@ utils.DESUGAR_IMPLEMENTATION_JDK11, utils.LIBRARY_DESUGAR_CONVERSIONS_LEGACY_ZIP) - ### THIS IS MISSING CONVERTING OF THE JSON ### - create_maven_release.generate_desugar_configuration_maven_zip( - utils.DESUGAR_CONFIGURATION_JDK11_MINIMAL_MAVEN_ZIP, - utils.DESUGAR_CONFIGURATION_JDK11_MINIMAL, - utils.DESUGAR_IMPLEMENTATION_JDK11, - utils.LIBRARY_DESUGAR_CONVERSIONS_ZIP) - create_maven_release.generate_desugar_configuration_maven_zip( - utils.DESUGAR_CONFIGURATION_JDK11_MAVEN_ZIP, - utils.DESUGAR_CONFIGURATION_JDK11, - utils.DESUGAR_IMPLEMENTATION_JDK11, - utils.LIBRARY_DESUGAR_CONVERSIONS_ZIP) - create_maven_release.generate_desugar_configuration_maven_zip( - utils.DESUGAR_CONFIGURATION_JDK11_NIO_MAVEN_ZIP, - utils.DESUGAR_CONFIGURATION_JDK11_NIO, - utils.DESUGAR_IMPLEMENTATION_JDK11, - utils.LIBRARY_DESUGAR_CONVERSIONS_ZIP) - version = GetVersion() is_main = IsMain(version) if is_main:
diff --git a/tools/archive_desugar_jdk_libs.py b/tools/archive_desugar_jdk_libs.py index 2aa841c..5298435 100755 --- a/tools/archive_desugar_jdk_libs.py +++ b/tools/archive_desugar_jdk_libs.py
@@ -19,10 +19,7 @@ # repository to fetch the artifact com.android.tools:desugar_jdk_libs:1.0.0 import archive -import defines import git_utils -import gradle -import hashlib import jdk import optparse import os @@ -31,56 +28,16 @@ import subprocess import sys import utils -import zipfile VERSION_FILE_JDK8 = 'VERSION.txt' -VERSION_FILE_JDK11_LEGACY = 'VERSION_JDK11_LEGACY.txt' -VERSION_FILE_JDK11_MINIMAL = 'VERSION_JDK11_MINIMAL.txt' VERSION_FILE_JDK11 = 'VERSION_JDK11.txt' -VERSION_FILE_JDK11_NIO = 'VERSION_JDK11_NIO.txt' - -VERSION_MAP = { - 'jdk8': VERSION_FILE_JDK8, - 'jdk11_legacy': VERSION_FILE_JDK11_LEGACY, - 'jdk11_minimal': VERSION_FILE_JDK11_MINIMAL, - 'jdk11': VERSION_FILE_JDK11, - 'jdk11_nio': VERSION_FILE_JDK11_NIO -} - -GITHUB_REPRO = 'desugar_jdk_libs' - -BASE_LIBRARY_NAME = 'desugar_jdk_libs' - -LIBRARY_NAME_MAP = { - 'jdk8': BASE_LIBRARY_NAME, - 'jdk11_legacy': BASE_LIBRARY_NAME, - 'jdk11_minimal': BASE_LIBRARY_NAME + '_minimal', - 'jdk11': BASE_LIBRARY_NAME, - 'jdk11_nio': BASE_LIBRARY_NAME + '_nio' -} - -MAVEN_RELEASE_TARGET_MAP = { - 'jdk8': 'maven_release', - 'jdk11_legacy': 'maven_release_jdk11_legacy', - 'jdk11_minimal': 'maven_release_jdk11_minimal', - 'jdk11': 'maven_release_jdk11', - 'jdk11_nio': 'maven_release_jdk11_nio' -} - -MAVEN_RELEASE_ZIP = { - 'jdk8': BASE_LIBRARY_NAME + '.zip', - 'jdk11_legacy': BASE_LIBRARY_NAME + '_jdk11_legacy.zip', - 'jdk11_minimal': BASE_LIBRARY_NAME + '_jdk11_minimal.zip', - 'jdk11': BASE_LIBRARY_NAME + '_jdk11.zip', - 'jdk11_nio': BASE_LIBRARY_NAME + '_jdk11_nio.zip' -} - +LIBRARY_NAME = 'desugar_jdk_libs' def ParseOptions(argv): result = optparse.OptionParser() result.add_option('--variant', - help="Variant to build", - choices=['jdk8', 'jdk11_legacy', 'jdk11_minimal', 'jdk11', 'jdk11_nio'], + help='.', + choices = ['jdk8', 'jdk11'], default='jdk11') result.add_option('--dry-run', '--dry_run', help='Running on bot, use third_party dependency.', @@ -132,7 +89,7 @@ def CloneDesugaredLibrary(github_account, checkout_dir): git_utils.GitClone( 'https://github.com/' - + github_account + '/' + GITHUB_REPRO, checkout_dir) + + github_account + '/' + LIBRARY_NAME, checkout_dir) def GetJavaEnv(): java_env = dict(os.environ, JAVA_HOME = jdk.GetJdk11Home()) @@ -141,11 +98,9 @@ return java_env -def BuildDesugaredLibrary(checkout_dir, variant, version = None): - if not variant in MAVEN_RELEASE_TARGET_MAP: - raise Exception('Variant ' + variant + ' is not supported') - if variant != 'jdk8' and variant != 'jdk11_legacy' and version is None: - raise Exception('Variant ' + variant + ' require version for undesugaring') +def BuildDesugaredLibrary(checkout_dir, variant): + if (variant != 'jdk8' and variant != 'jdk11'): + raise Exception('Variant ' + variant + 'is not supported') with utils.ChangedWorkingDirectory(checkout_dir): bazel = os.path.join(utils.BAZEL_TOOL, 'lib', 'bazel', 'bin', 'bazel') cmd = [ @@ -154,7 +109,7 @@ 'build', '--spawn_strategy=local', '--verbose_failures', - MAVEN_RELEASE_TARGET_MAP[variant]] + 'maven_release' + ('_jdk11' if variant == 'jdk11' else '')] utils.PrintCmd(cmd) subprocess.check_call(cmd, env=GetJavaEnv()) cmd = [bazel, 'shutdown'] @@ -167,81 +122,14 @@ library_jar = os.path.join( checkout_dir, 'bazel-bin', 'src', 'share', 'classes', 'java', 'libjava.jar') else: - # All JDK11 variants use the same library code. library_jar = os.path.join( checkout_dir, 'bazel-bin', 'jdk11', 'src', 'd8_java_base_selected_with_addon.jar') maven_zip = os.path.join( checkout_dir, 'bazel-bin', - MAVEN_RELEASE_ZIP[variant]) + LIBRARY_NAME + ('_jdk11' if variant == 'jdk11' else '') +'.zip') + return (library_jar, maven_zip) - if variant != 'jdk8' and variant != 'jdk11_legacy': - # The undesugaring is temporary... - undesugared_maven_zip = os.path.join(checkout_dir, 'undesugared_maven') - Undesugar(variant, maven_zip, version, undesugared_maven_zip) - undesugared_maven_zip = os.path.join(checkout_dir, 'undesugared_maven.zip') - return (library_jar, undesugared_maven_zip) - else: - return (library_jar, maven_zip) - -def hash_for(file, hash): - with open(file, 'rb') as f: - while True: - # Read chunks of 1MB - chunk = f.read(2 ** 20) - if not chunk: - break - hash.update(chunk) - return hash.hexdigest() - -def write_md5_for(file): - hexdigest = hash_for(file, hashlib.md5()) - with (open(file + '.md5', 'w')) as file: - file.write(hexdigest) - -def write_sha1_for(file): - hexdigest = hash_for(file, hashlib.sha1()) - with (open(file + '.sha1', 'w')) as file: - file.write(hexdigest) - -def Undesugar(variant, maven_zip, version, undesugared_maven_zip): - gradle.RunGradle(['testJar', 'repackageTestDeps']) - with utils.TempDir() as tmp: - with zipfile.ZipFile(maven_zip, 'r') as zip_ref: - zip_ref.extractall(tmp) - desugar_jdk_libs_jar = os.path.join( - tmp, - 'com', - 'android', - 'tools', - LIBRARY_NAME_MAP[variant], - version, - '%s-%s.jar' % (LIBRARY_NAME_MAP[variant], version)) - print(desugar_jdk_libs_jar) - undesugared_jar = os.path.join(tmp, 'undesugared.jar') - buildLibs = os.path.join(defines.REPO_ROOT, 'build', 'libs') - cmd = [jdk.GetJavaExecutable(), - '-cp', - '%s:%s:%s' % (os.path.join(buildLibs, 'r8_with_deps.jar'), os.path.join(buildLibs, 'r8tests.jar'), os.path.join(buildLibs, 'test_deps_all.jar')), - 'com.android.tools.r8.desugar.desugaredlibrary.jdk11.DesugaredLibraryJDK11Undesugarer', - desugar_jdk_libs_jar, - undesugared_jar] - print(cmd) - try: - output = subprocess.check_output(cmd, stderr = subprocess.STDOUT).decode('utf-8') - except subprocess.CalledProcessError as e: - print(e) - print(e.output) - raise e - print(output) - # Copy the undesugared jar into place and update the checksums. - shutil.copyfile(undesugared_jar, desugar_jdk_libs_jar) - write_md5_for(desugar_jdk_libs_jar) - write_sha1_for(desugar_jdk_libs_jar) - shutil.make_archive(undesugared_maven_zip, 'zip', tmp) - print(undesugared_maven_zip) - output = subprocess.check_output(['ls', '-l', os.path.dirname(undesugared_maven_zip)], stderr = subprocess.STDOUT).decode('utf-8') - print(output) def MustBeExistingDirectory(path): if (not os.path.exists(path) or not os.path.isdir(path)): @@ -283,25 +171,28 @@ with utils.TempDir() as checkout_dir: CloneDesugaredLibrary(options.github_account, checkout_dir) - version = GetVersion(os.path.join(checkout_dir, VERSION_MAP[options.variant])) + version = GetVersion( + os.path.join( + checkout_dir, + VERSION_FILE_JDK11 if options.variant == 'jdk11' else VERSION_FILE_JDK8)) destination = archive.GetVersionDestination( - 'gs://', LIBRARY_NAME_MAP[options.variant] + '/' + version, is_main) + 'gs://', LIBRARY_NAME + '/' + version, is_main) if utils.cloud_storage_exists(destination) and not options.dry_run: raise Exception( 'Target archive directory %s already exists' % destination) - (library_jar, maven_zip) = BuildDesugaredLibrary(checkout_dir, options.variant, version) + (library_jar, maven_zip) = BuildDesugaredLibrary(checkout_dir, options.variant) - storage_path = LIBRARY_NAME_MAP[options.variant] + '/' + version + storage_path = LIBRARY_NAME + '/' + version # Upload the jar file with the library. destination = archive.GetUploadDestination( - storage_path, LIBRARY_NAME_MAP[options.variant] + '.jar', is_main) + storage_path, LIBRARY_NAME + '.jar', is_main) Upload(options, library_jar, storage_path, destination, is_main) # Upload the maven zip file with the library. destination = archive.GetUploadDestination( - storage_path, MAVEN_RELEASE_ZIP[options.variant], is_main) + storage_path, LIBRARY_NAME + '.zip', is_main) Upload(options, maven_zip, storage_path, destination, is_main) # Upload the jar file for accessing GCS as a maven repro.
diff --git a/tools/test.py b/tools/test.py index 5586802..27c8b6a 100755 --- a/tools/test.py +++ b/tools/test.py
@@ -260,7 +260,7 @@ utils.DownloadFromGoogleCloudStorage(utils.BAZEL_SHA_FILE) utils.DownloadFromGoogleCloudStorage(utils.JAVA8_SHA_FILE) utils.DownloadFromGoogleCloudStorage(utils.JAVA11_SHA_FILE) - (library_jar, maven_zip) = archive_desugar_jdk_libs.BuildDesugaredLibrary(checkout_dir, 'jdk11_legacy' if options.desugared_library_configuration == 'jdk11' else 'jdk8') + (library_jar, maven_zip) = archive_desugar_jdk_libs.BuildDesugaredLibrary(checkout_dir, 'jdk11' if options.desugared_library_configuration == 'jdk11' else 'jdk8') desugar_jdk_libs = os.path.join(desugar_jdk_libs_dir, os.path.basename(library_jar)) shutil.copyfile(library_jar, desugar_jdk_libs) print('Desugared library for test in ' + desugar_jdk_libs)
diff --git a/tools/utils.py b/tools/utils.py index 07cfb3c..9bd518f 100644 --- a/tools/utils.py +++ b/tools/utils.py
@@ -77,24 +77,12 @@ 'third_party', 'openjdk', 'desugar_jdk_libs', 'desugar_jdk_libs.jar') DESUGAR_CONFIGURATION_JDK11_LEGACY = os.path.join( 'src', 'library_desugar', 'jdk11', 'desugar_jdk_libs_legacy.json') -DESUGAR_CONFIGURATION_JDK11_MINIMAL = os.path.join( - 'src', 'library_desugar', 'jdk11', 'desugar_jdk_libs_minimal.json') -DESUGAR_CONFIGURATION_JDK11 = os.path.join( - 'src', 'library_desugar', 'jdk11', 'desugar_jdk_libs.json') -DESUGAR_CONFIGURATION_JDK11_NIO = os.path.join( - 'src', 'library_desugar', 'jdk11', 'desugar_jdk_libs_nio.json') DESUGAR_IMPLEMENTATION_JDK11 = os.path.join( 'third_party', 'openjdk', 'desugar_jdk_libs_11', 'desugar_jdk_libs.jar') DESUGAR_CONFIGURATION_MAVEN_ZIP = os.path.join( LIBS, 'desugar_jdk_libs_configuration.zip') DESUGAR_CONFIGURATION_JDK11_LEGACY_MAVEN_ZIP = os.path.join( LIBS, 'desugar_jdk_libs_configuration_jdk11_legacy.zip') -DESUGAR_CONFIGURATION_JDK11_MINIMAL_MAVEN_ZIP = os.path.join( - LIBS, 'desugar_jdk_libs_configuration_jdk11_minimal.zip') -DESUGAR_CONFIGURATION_JDK11_MAVEN_ZIP = os.path.join( - LIBS, 'desugar_jdk_libs_configuration_jdk11.zip') -DESUGAR_CONFIGURATION_JDK11_NIO_MAVEN_ZIP = os.path.join( - LIBS, 'desugar_jdk_libs_configuration_jdk11_nio.zip') GENERATED_LICENSE = os.path.join(GENERATED_LICENSE_DIR, 'LICENSE') RT_JAR = os.path.join(REPO_ROOT, 'third_party/openjdk/openjdk-rt-1.8/rt.jar') R8LIB_KEEP_RULES = os.path.join(REPO_ROOT, 'src/main/keep.txt')