)]}'
{
  "log": [
    {
      "commit": "221dfa62884a997c744eeb9a37326c5410a6d8e4",
      "tree": "bde7c11c4a52894ac554e88861db8a99f6210347",
      "parents": [
        "3e29e19c9ae2c1785cfff17ad67d4bde8abda2a5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 03 16:03:56 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Sep 04 17:37:37 2019 +0000"
      },
      "message": "Explicitly disable cpp-define-generator for Darwin.\n\nThis is (one of the many things) currently breaking the Mac build.\n\nTest: builds on my puny Mac\nChange-Id: Ifab20b357573917fb4929cf41052b2ed544476fd\n"
    },
    {
      "commit": "358b49d2124dc8e45f492f0728028d37cfbfb979",
      "tree": "ea6f2a637bbbf40c003a2578641cb0d3ade3f97c",
      "parents": [
        "ee3ed3830458a1b056f83d1cdde0d6adef9adb19"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Sep 02 18:12:22 2019 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Sep 02 18:21:28 2019 +0100"
      },
      "message": "Remove duplicate known failure.\n\nRemove libcore.java.util.zip.DeflateRegressionTest#deterministicOutput\nfrom ART\u0027s list of known libcore failures. The failure is now marked in\nlibcore and duplicates raise an IllegalArgumentException in vogar.\n\nTest: Rely on the ART Buildbot\nBug: 135017266\nChange-Id: I0504e2f16739c4c99aa4063b81e1c940cd745681\n"
    },
    {
      "commit": "d6be5da75294d29060440a10e77f5d3461ed8d74",
      "tree": "2a92b0c53c3b40ef36cb8a81c4326b323d63b80c",
      "parents": [
        "ad909af6c4be163bf2d5f4ca1e0487cc619a5041"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Jul 16 17:14:46 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 02 10:28:27 2019 +0000"
      },
      "message": "Update references to the ART APEX for tests.\n\nTest: art/tools/buildbot-build.sh --host \u0026\u0026 art/test.py --host --64 --optimizing\nTest: art/tools/run-gtests.sh in chroot\nTest: art/test/testrunner/testrunner.py --target --64 in chroot\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nBug: 135753770\nChange-Id: I876c5a2931970d6a75c1812e0f87bc65ab7bde0f\nMerged-In: I876c5a2931970d6a75c1812e0f87bc65ab7bde0f\n"
    },
    {
      "commit": "ad909af6c4be163bf2d5f4ca1e0487cc619a5041",
      "tree": "737bdd7957eb6c74ebaf126acfe0ff355f7b5f0a",
      "parents": [
        "6da456969b2b4294cda98e6d0bc16a4493ad9652"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Jul 16 17:02:44 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 02 10:28:27 2019 +0000"
      },
      "message": "Update references to the ART APEX.\n\nTest: Build \u0026 boot\nTest: atest CtsJniTestCases CtsCompilationTestCases CtsSimpleperfTestCases CtsBionicTestCases\nBug: 135753770\nChange-Id: I9635afaf7996407063a0d9ed474b95c0b0e4f890\nMerged-In: I9635afaf7996407063a0d9ed474b95c0b0e4f890\n"
    },
    {
      "commit": "85059deed7dcf86cbfe5f7e84003d1c14e3a0efe",
      "tree": "a881d5ccb272de76af726e18c97ffbc38eb43949",
      "parents": [
        "efd55b5b5837912c737eb0a9fa09954c8085e055"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sat Aug 24 14:10:42 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 27 07:07:30 2019 +0000"
      },
      "message": "Remove multilib suffixes from libraries\n\nLibraries previously did not take the suffix property, which meant\nthat the suffix property in defaults modules applied to libraries\nwas ignored.  The suffix property is being added to cc_library\nmodules, which incorrectly renames existing libraries that had\ndefaults with suffix properties.  These defaults only apply to\nlibrary modules, so just remove the suffix properties.\n\nBug: 117607748\nTest: m checkbuild\nChange-Id: Iadbb7369a7e4698394f64d25fc0a11933f41c2dc\n"
    },
    {
      "commit": "e5a9ba3b4ce297e66e8d2a9f73440e30e7ff7c88",
      "tree": "ef4ccaadb016c3293dd22a7f0267922e4f911ab4",
      "parents": [
        "323e8c616e12f98eb12b39b486aafe988dba202d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Aug 20 15:53:43 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 21 09:45:37 2019 +0000"
      },
      "message": "Reenable LUCI notifications on the ART Buildbot AOSP builders.\n\nThe clean steps on the AOSP builders (aosp-builder-cc and\naosp-builder-cms) used to call \"make clean\", which sometimes failed\nwith this error:\n\n  Failed to remove file \"out/.module_paths\":\n  unlinkat out/.module_paths: directory not empty\n\nAs a result the LUCI notitications for these builders were disabled.\n\nThe clean steps are now using \"rm -rf out\" instead of \"make clean\",\nwhich presubmably addressed the previous issue. Reenable the LUCI\nnotifications for aosp-builder-cc and aosp-builder-cms.\n\nTest: Rely on the ART Buildbot\n      (https://ci.chromium.org/p/art/builders/ci/aosp-builder-cc\n      and https://ci.chromium.org/p/art/builders/ci/aosp-builder-cms)\nBug: 139655167\nBug: 131573205\n\nChange-Id: I38f31d2ccf1f337698aaf463d90efc593c666976\n"
    },
    {
      "commit": "05b0086ea31f281d61fdecd99921328b2dbf9f21",
      "tree": "ccca77ed59f7abc177f6e15c6eaa5672d360151e",
      "parents": [
        "6e163a83257c40ec76ae808bbea56b63d48b9bd8"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Aug 14 17:47:23 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 16 21:46:04 2019 +0000"
      },
      "message": "Add support for running specific tests to run-gtests.sh.\n\nTest: art/tools/run-gtests.sh\nTest: art/tools/run-gtests.sh -h\nTest: art/tools/run-gtests.sh -j4\nTest: art/tools/run-gtests.sh /apex/com.android.art/bin/art/arm/instruction_set_features_test\nTest: art/tools/run-gtests.sh -j4 /apex/com.android.art/bin/art/arm/instruction_set_features_test\nChange-Id: Ie29819d27e2657e7c32c2b1f9ce830cbc136f2ed\n"
    },
    {
      "commit": "6e163a83257c40ec76ae808bbea56b63d48b9bd8",
      "tree": "3e5df0e8bc548668ef917ac5b979e5aad33ee1d8",
      "parents": [
        "4c1b84a1ba53a1a61fff38ed4989395b28779059"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Aug 12 10:57:57 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 16 20:31:24 2019 +0000"
      },
      "message": "Add chain-agents agent\n\nThis agent is able to chain-load other agents listed in a given file.\nThis is useful for testing and using persistent JVMTI agents, which\nmight need to have specific arguments passed to them.\n\nTest: Install debuggable apk (here com.antonioleiva.bandhookkotlin)\n  walleye:/ $ run-as com.antonioleiva.bandhookkotlin sh\n  walleye:/data/data/com.antonioleiva.bandhookkotlin $ mkdir code_cache/startup_agents\n  walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libtifasts32.so code_cache\n  walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libtifasts64.so code_cache\n  walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libchainagentss32.so code_cache/startup_agents/\n  walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libchainagentss64.so code_cache/startup_agents/\n  walleye:/data/data/com.antonioleiva.bandhookkotlin $ echo $PWD/code_cache/libtifasts32.so\u003dlog,ClassLoad \u003e chain_agents.txt\n  walleye:/data/data/com.antonioleiva.bandhookkotlin $ echo $PWD/code_cache/libtifasts64.so\u003dlog,ClassLoad \u003e\u003e chain_agents.txt\n  Start bandhookkotlin\n  Examine logcat\n\nBug: 135627501\nChange-Id: Icd97e8cce6c540b8d1ee5e5efd7b2587707786d3\n"
    },
    {
      "commit": "4c1b84a1ba53a1a61fff38ed4989395b28779059",
      "tree": "b8129b3037ef5ee4e581309674f48bf20d07d05b",
      "parents": [
        "c6175610512141a7d70e3a50e09ffac1606c3097"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Aug 12 13:33:50 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 16 20:31:24 2019 +0000"
      },
      "message": "Add NDK static ti-fast target\n\nAdd libtifasts. A static NDK agent target that can more easily be run\non android.\n\nTest: am attach-agent com.antonioleiva.bandhookkotlin /data/data/com.antonioleiva.bandhookkotlin/code_cache/libtifasts.so\u003dSingleStep\nChange-Id: I3a48581c5af82ddf8c24fad2070d0cf60f4bdfa1\n"
    },
    {
      "commit": "7ab5c0068017af31b417643f887930bd91715bce",
      "tree": "df12a421c0c85f60d96bffbde335379649699e6d",
      "parents": [
        "f5e26f8f834fe5e996f06074c5911ff9af4bc6d9"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Tue Aug 13 19:24:46 2019 +0100"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Aug 14 10:40:20 2019 +0000"
      },
      "message": "ART buildbots: Stop blacklisting SystemTest#testArrayCopyConcurrentModification\n\nThe test was blacklisted ages ago but it\u0027s not clear whether it\nstill fails. As requested in http://b/19165288#comment22 ,\nthis CL removes the test from the blacklist so that we can get\ndata on whether it still occassionally fails.\n\nBug: 19165288\nTest: Treehugger only, didn\u0027t run the test.\nChange-Id: I0404a997956dfe757adfa6fb30c8c22e038bb900\n"
    },
    {
      "commit": "759845ff57929e26bfe922b30c814cb58e886bc1",
      "tree": "91ed3883cbce398f08308e2cff119dea04eb21cb",
      "parents": [
        "77251f97137f6a9fd5e88b18b653d022996cd369"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Aug 06 16:04:36 2019 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Mon Aug 12 15:36:42 2019 +0000"
      },
      "message": "Separate ICU4J from core-libart\n\n- It adds the new core-icu4j into boot classpath\n\nBug: 138994281\nTest: CtsLibcoreTestCases\nChange-Id: I6e8d971f304fe9f4836fcd73818720ed83d38154\n"
    },
    {
      "commit": "e47933ab3091a002806a3718cc626d2f8d84b620",
      "tree": "831bc2de70109894250e7b51a6d962d235224344",
      "parents": [
        "411a6de63982d1e6ec16e11141725ff95cbdfab9"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Aug 09 14:06:02 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sun Aug 11 15:11:03 2019 +0000"
      },
      "message": "Replace more occurrences of `make` with `m` in ART.\n\nCalling `make` is no longer supported since\nhttps://android-review.googlesource.com/c/platform/build/+/1092954/.\n\nTest: n/a\nChange-Id: Ie2a0bcf7ea45b5ce82b471de31abb848a102c0ad\n"
    },
    {
      "commit": "d5ec2a1321106a4bc56cba197dfbc538c09b4ae9",
      "tree": "158310581c8343c5d8840b2b6febbb17bde01ad2",
      "parents": [
        "fa595885339140c3507f26d93cdc6b99081e23c5"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Thu Aug 08 15:37:06 2019 -0700"
      },
      "committer": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Fri Aug 09 15:45:21 2019 +0000"
      },
      "message": "Make the $/# in front of constants optional\n\nBug: http://b/117842681\nBug: https://github.com/android-ndk/ndk/issues/1036\n\nAfter change https://reviews.llvm.org/D65550, Clang stopped emitting \u0027#\u0027\nbefore constants in inline assembly.  To accommodate this change, mark\nthe $/# before constants as optional in make_header.py\n\nTest: Build with old and new compilers\nChange-Id: Idb056c99a2bfc4d14e4e30d7dc1d0740ca4f9b60\n"
    },
    {
      "commit": "c94b44cee8376b86da85c2452e74edfe5ad4b2cf",
      "tree": "41fda7a60525c131470fa67a3cf97cbd14feab3f",
      "parents": [
        "2d79a6275a91c23d473c7b2fd8d82de99a505c57"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Aug 08 15:27:55 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 08 18:50:34 2019 +0000"
      },
      "message": "Update ahat version number to 1.7\n\nTest: atest ahat-tests\nTest: open heap dump and verify version number on overview page.\nChange-Id: I5368c23c272fe3975fd0ac24ba86b39abdca0439\n"
    },
    {
      "commit": "6461124331de7707f3b109cec38337d851be997e",
      "tree": "551fe08dc46d71f903244080f90df751d648adb5",
      "parents": [
        "3cb59a4e22bff5a06f5bcd1deb86e2580dd36de3"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Fri Jul 05 16:32:41 2019 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Thu Aug 08 11:06:51 2019 +0000"
      },
      "message": "Remove icu .dat file from Runtime module\n\nBug: 137009149\nBug: 130295968\nTest: device boots\nTest: m out/target/common/obj/JAVA_LIBRARIES/ahat-test-dump_intermediates/test-dump.hprof\nTest: art/build/apex/runtests.sh fails due to bug 138103882\nTest: art/tools/buildbot-build.sh\nTest: m test-art-host-gtest\nChange-Id: I0501fd6dd02dac3cf9780f5f1c0103e4b0475e1f\n"
    },
    {
      "commit": "70b93ffca22d665db661a7f15f2f1b59dc60839a",
      "tree": "30d093be87c38df7cde98098ab3f42b3308d0e6d",
      "parents": [
        "635967b5d16e25630276c23aa47daf52ec493ea1"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 02 19:48:50 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 07 14:43:27 2019 +0000"
      },
      "message": "Use ART gtests from the Testing Runtime APEX in ART device testing.\n\nWhen running ART gtests on device (from the chroot environment), use\nART gtests contained in the (Testing) Runtime APEX instead of the\nlegacy ART gtests installed in /data/nativetest(64).\n\nAlso refactor and simplify the script used to run those tests on\ndevice (tools/run-gtests.sh).\n\nTest: ART chroot-based device testing\nBug: 129534335\nChange-Id: I0883c7d2e716d7573ea4d27aba2ae133ec85753c\n"
    },
    {
      "commit": "8d5a215a7e879d8aa9c7d9d2791ed107ecc41f59",
      "tree": "65c0f2ca31665dee941681339aa51759eda92f08",
      "parents": [
        "118ce36aa0568842283fbe79772fd9de73ec9cd7"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 02 19:40:28 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 07 13:29:48 2019 +0000"
      },
      "message": "Build and install the Testing Runtime APEX in ART device testing.\n\nReplace the Debug Runtime APEX with the Testing Runtime APEX for ART\ndevice testing.\n\nThis change does not change the behavior of ART device testing per se,\nas test rules have not been updated (yet) to make use of the\nadditional files (ART gtests) included only in the Testing Runtime\nAPEX.\n\nTest: ART (chroot-based) device testing\nBug: 129534335\nChange-Id: I1b9dfcb9fe483584b4065908c1b2e24d19703b52\n"
    },
    {
      "commit": "92fc2c0241590e475a2a37c9864633b88f97b280",
      "tree": "01bb8acbf0c9d0ce07bfdbfbe4870c05a39c90cc",
      "parents": [
        "9527e3de28cae69f4911b1a68e9074f091177d57"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jul 30 16:15:29 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jul 30 16:15:29 2019 -0700"
      },
      "message": "Update buildbot-build.sh\n\n\u0027make\u0027 has been deprecated. Change to using soong_ui.bash --make-mode\ninstead.\n\nTest: ./art/tools/buildbot-build.sh --host\nChange-Id: I86d111d6f5132fe8155a27b0a807d47c821e5169\n"
    },
    {
      "commit": "9527e3de28cae69f4911b1a68e9074f091177d57",
      "tree": "7add5d5d9d5399b61a5e11058c978cd589d43d88",
      "parents": [
        "a5c01d708e7c0257f572236c605b6e11655a0746"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jul 30 10:36:36 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 30 21:36:32 2019 +0000"
      },
      "message": "Add list extensions agent\n\nAdd a small agent that just lists jvmti extensions.\n\nTest: ./test/run-test --host --with-agent liblistextensions.so --dev 001-HelloWorld\n\nChange-Id: I1335206c0a1dfc7ad311ec7ab5d75ee07df63957\n"
    },
    {
      "commit": "f47c95b9e68b2f63a7dcf0f06f77329d72374e0b",
      "tree": "5e43b259eecc7053f64d0c91a399527eaaa99f3a",
      "parents": [
        "0f8950af0a13e0f7db291736a3042fb627064f47"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jul 27 10:26:42 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jul 27 10:28:44 2019 -0700"
      },
      "message": "luci: Add master-art manifest as a tracking project\n\nTest: N/A\nChange-Id: I45a911532854940b7f67f3d6a0d248231c69d004\n"
    },
    {
      "commit": "eafeeb281349ff6d035888fbc4b05aed87529c72",
      "tree": "bdb88ad9e819f41791cde63b92362446a130fef6",
      "parents": [
        "de0ccffc5e8b22f86730b125cd3cfd825a576ba7"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Jul 19 10:22:32 2019 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Jul 19 18:13:40 2019 +0000"
      },
      "message": "Replace use of include_dirs with header_libs on asm_defines.s\n\nDepends on change to add support for header_libs to cc_object.\n\nThis change:\n* Removes unused art/libartbase and system/core/base/include from\n  asm_defines.s.\n* Replaces include_dirs with header_libs.\n\nBug: 35624006\nTest: m cpp-define-generator-asm-support - compare output before and after change\nChange-Id: I1475193e057abe2a6e7a320fcc989fa37d37792f\n"
    },
    {
      "commit": "4345aacf582a5206976d5bed98ab4abd7b9a8c40",
      "tree": "594191df77d214fac994b63761ac25bba257bb40",
      "parents": [
        "6b689ceb63b4fffaf0e617f7d363c841dd29e458"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Jul 17 15:51:54 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 19 17:07:13 2019 +0000"
      },
      "message": "Cleanup some usages of include_dirs\n\nThe include_dirs property causes problems when unbundling as they can\ndirectly reference directories inside the runtime module repositories\nwhich will break the unbundled build as those repositories will not be\npresent. While these usages do not cause problems as they are\nreferences within the runtime module repository they need removing so\nthat the build can enforce no usage of runtime module repository paths\nin the include_dirs property.\n\nThis change:\n* Replaces include_dirs with local_include_dirs where possible.\n* Uses libnativehelper provided header libs, this is possible as they\n  have been updated to build against the NDK.\n* Adds headers for disassembler, libdexfile\n* Makes libart_runtime_headers build against NDK.\n\nTest: m checkbuild\nBug: 134379140\nChange-Id: Iaf065caf4b6a2fcf252f6d5da8fff5be97a242ea\n"
    },
    {
      "commit": "db26569b5e21ef16f4a90e4f6ad0904341e7ecf8",
      "tree": "ddee269edc481221f18b428579ebd22b4a092aca",
      "parents": [
        "8b770c42bf37975ac25aa9fe3745bf1e64992d67"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jul 15 16:11:20 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 16 17:05:24 2019 +0000"
      },
      "message": "ART: Remove old build_linux_bionic.sh workaround\n\nRemove a full first-pass compile and replace with \"nothing\" goal.\n\nTest: art/tools/build_linux_bionic.sh com.android.runtime.host\nChange-Id: I569bd79797b6024baa48a72f86353fe6d1891ddb\n"
    },
    {
      "commit": "5071531ceb1f4ed82dff1da15f572201509cf23e",
      "tree": "c3412d1a1bf06eec628dc4582240fb8e61d9dc6f",
      "parents": [
        "5bef022af212e060a3e744e688ae2116849d4485"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Jul 11 15:44:25 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 16 12:28:23 2019 +0000"
      },
      "message": "Remove use of deprecated apache-harmony-jdwp-tests-host target\n\nThe apache-harmony-jdwp-tests-host is an alias of\napache-harmony-jdwp-tests that was added to ease migration from .mk to\n.bp files but which is no longer needed. Removing this reference allows\nthe target to be removed.\n\nVerified that this did not cause a change in behavior in\nrun-jdwp-tests.sh.\n\nBug: 134379140\nTest: art/tools/buildbot-build.sh --host \u0026\u0026\n        make apache-harmony-jdwp-tests vogar \u0026\u0026\n\t\tart/tools/run-jdwp-tests.sh --mode\u003djvm \u0026\u0026\n\t\tart/tools/run-jdwp-tests.sh --mode\u003dhost\nChange-Id: I21c57e9ca0579d0353c5c50ed3e4948660eae9a4\n"
    },
    {
      "commit": "6b63d8832a780e8b661595ff0b0610b3cc52aa6a",
      "tree": "132bd9914df46a2d0b000d20586a370a159cffbe",
      "parents": [
        "c658278be744b3b6d1b964a826128f9f1f5662f7"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jul 15 14:23:24 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jul 16 02:47:15 2019 +0000"
      },
      "message": "Add helper script to dex2oat a JAR/APK\n\nMake it easier to test compiler and dex2oat changes on the host.\n\nTest: tools/compile-jar.sh Maps.apk maps.odex arm64\nBug: 137257397\n\nChange-Id: Ice981640803edbc3847117dc3b3a88a9f8605faf\n"
    },
    {
      "commit": "dcd7b5188efb9a891ab8511c73e238bcab95432f",
      "tree": "b7effa82be6db44518723f35b3162eed8118a81a",
      "parents": [
        "7409b9fb679d982b4a3c790fc9711f81d68ffca3"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jul 10 14:21:43 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jul 12 18:18:03 2019 +0000"
      },
      "message": "Revert \"Add scripts to mount/unmount the Runtime APEX under ART\u0027s chroot dir.\"\n\nThis reverts commit 7b7ea7939e2c7d5bffd5ad165d0c2d315c93dd1f.\n\nReason for revert: These scripts were never used as we ended up using\nflattened APEXes on the ART Buildbot instead\n(https://android-review.googlesource.com/c/platform/art/+/921093/),\nwhere the \"mount\" logic is implemented during the device sync step,\nand the \"unmount\" logic is performed as part of the device tear-down\nstep.\n\nTest: Rely on the ART Buildbot\nBug: 121117762\nBug: 113373927\nBug: 34729697\nChange-Id: I0dbd728487172daaa28fa5406c44447d25189119\n"
    },
    {
      "commit": "ef1178a0920d6f8278a07c619af552e7f20b0255",
      "tree": "0abcecc2d799116150a195f24b3c9245ccb92289",
      "parents": [
        "0d87f99907f01ced713bf2dff97ee6655da077f3"
      ],
      "author": {
        "name": "Robert Snoeberger",
        "email": "snoeberger@google.com",
        "time": "Thu Jul 11 17:00:51 2019 -0400"
      },
      "committer": {
        "name": "Robert Snoeberger",
        "email": "snoeberger@google.com",
        "time": "Fri Jul 12 12:16:14 2019 +0000"
      },
      "message": "Prefix localhost with http:// in terminal output from server startup.\n\nWith this change, I can Ctrl-click in the terminal to open the page in\nmy browser.\n\nTest: Ran ahat on a heap dump and was able to click to open in my browser.\nChange-Id: Ic5e1867d7e4cdbd331fad4a9bb5170bac4f1b095\n"
    },
    {
      "commit": "50037df21707c34beda776263536276fd9fbbe20",
      "tree": "a3718646716f289841b365d98a982b0fde4466bc",
      "parents": [
        "bb5b4f35e7d4cfddb9aedb4f2ea35b017650cd58"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Jul 10 14:10:08 2019 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Jul 11 12:24:30 2019 +0100"
      },
      "message": "Install appcompat.sh for use by make rules\n\nThe make build for apps (including prebuilts) hard codes a reference to\nthe art/tools/veridex/appcompat.sh file which causes a build breakage\nwhen unbundling the runtime module, i.e. when the art repository is not\npresent in the local build tree.\n\nThis change installs the appcompat.sh into $(HOST_OUT)/bin/appcompat/\ninstead. That allows the unbundled build to provide a prebuilt that\ninstalls the script into the same location.\n\nBug: 134379140\nTest: m droid\nChange-Id: If1a4ea1f2798b6fb27b4feb76f878cba8939aabc\n"
    },
    {
      "commit": "2cd9437e7067968400fe6f703a078b798b320693",
      "tree": "6f526402e771663c824b7fefe9e0b23d5a4a2c35",
      "parents": [
        "56cb3ceba9d5a44b1460b12b81c27737a7c0ec3e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jul 05 13:26:54 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 05 17:43:18 2019 +0000"
      },
      "message": "Remove `ANDROID_TZDATA_ROOT` overriding logic on device in `art` script.\n\nTest: Run Libcore tests on device\nBug: 124425036\nBug: 121117762\nChange-Id: I17173f1b672e197564e79b3f96b4a27c5543179b\n"
    },
    {
      "commit": "e81f10a3f672a8bcc421cab812e6435749181566",
      "tree": "076df5318e4bfdb6148fd6bb0faf5ea8de1d3336",
      "parents": [
        "9690542a9ed7740110459d3167708e6edc1a2686"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jul 04 10:00:12 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 05 00:20:19 2019 +0000"
      },
      "message": "Revert \"Remove ShadowFrame::dex_pc_ (but keep dex_pc_ptr_)\"\n\nThis reverts commit 50bc8fb89c79874e731f245abda3b9e48a541cfe.\n\nReason for revert: Performance regression\n\nChange-Id: Ib39ceb9e1f2753c518dd24fd193a824211fd5795\n"
    },
    {
      "commit": "9690542a9ed7740110459d3167708e6edc1a2686",
      "tree": "42e9ef3ab3e5de16baa0f84010b26f6a77ced1f1",
      "parents": [
        "ab682a78d9e61a37cc87d751a0c4d80856a44b7f"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jun 28 17:05:28 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 04 17:17:33 2019 +0000"
      },
      "message": "No longer use TZ Data artifacts under `/system/etc/tzdata_module`.\n\nNo longer generate and install Time Zone Data artifacts under\n`/system/etc/tzdata_module` on the ART Buildbot. Use the\nflattened Time Zone Data Module (\"activated\" in\n`/apex/com.android.tzdata` within the chroot directory on the\ndevice) instead.\n\nTest: ART chroot-based on-device testing using the master-art branch\nTest: ART chroot-based on-device testing using the master branch (with\n      `TARGET_FLATTEN_APEX` set to `true` before building).\nBug: 132169989\nBug: 121117762\n\nChange-Id: I02619b28cd433d757c70ba90259852680e36b34b\n"
    },
    {
      "commit": "50bc8fb89c79874e731f245abda3b9e48a541cfe",
      "tree": "c4dd3d8291ceac4b1d9b7dbca9886842c33967f2",
      "parents": [
        "8c344524e5251535e49cbe8e68ab5dc1cd7d1591"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jun 26 15:05:43 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jul 03 14:21:47 2019 +0000"
      },
      "message": "Remove ShadowFrame::dex_pc_ (but keep dex_pc_ptr_)\n\nThey store the same information which is redundant and error prone.\n\nTest: ./art/test.py --interpreter\nChange-Id: I379c20973b90645e3c1016c253d9a6db9a2417dc\n"
    },
    {
      "commit": "0cc6a825b14893d0d23311d7d708087794675e77",
      "tree": "832b60c72d16f65e5988bd9d2eaf27830049baf5",
      "parents": [
        "4d71e55eb7616b2f2dc6f39377be72fdfbf01b2a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jun 28 17:18:16 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 02 11:42:55 2019 +0000"
      },
      "message": "Set `ANDROID_TZDATA_ROOT` to the TZ Data APEX in `tools/run-gtests.sh`.\n\nSet environment variable `ANDROID_TZDATA_ROOT` to\n\u0027/apex/com.android.tzdata\u0027 before running gtests on device in the\nchroot environment, so that the Time Zone Data APEX is used (instead\nof Time Zone Data artifacts installed under\n`/system/etc/tzdata_module`).\n\nNote: This environment variable is set by default on devices running\nAndroid Q, but the ART Buildbot uses devices with older Android\nreleases.\n\nTest: ART chroot-based on-device testing using the master-art branch\nTest: ART chroot-based on-device testing using the master branch (with\n      `TARGET_FLATTEN_APEX` set to `true` before building).\nBug: 132169989\nBug: 121117762\n\nChange-Id: Idcf4e5f4903649b3871f97967b2bb0e2a2cb1cf5\n"
    },
    {
      "commit": "21c489870a2de5db4f4e9c97979676bf39c933a9",
      "tree": "a1a15336d1d2117cad26a0beb3fe7ceaa29edb6b",
      "parents": [
        "b06e0ad6e57ad5f77236ac06c05cb9028f4ccbb0"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jun 27 16:31:32 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 01 18:45:23 2019 +0000"
      },
      "message": "Add Runner for field-count agent\n\nAdd a python script capable of running the field-count agent across\nall processes and collecting the results.\n\nTest: m libfieldcounts; ./tools/jvmti-agents/count-fields.py \u0027Ljava/lang/Class;.extData:Ldalvik/system/ClassExt;\u0027\nChange-Id: I7463dfc0b1e7a2ae21836571f3d4708199d1b706\n"
    },
    {
      "commit": "b06e0ad6e57ad5f77236ac06c05cb9028f4ccbb0",
      "tree": "a311d6598487d23e8e91d764c52cd4798de318e7",
      "parents": [
        "2f1e8f8495e445d5418428f2c232565da284e704"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 19:07:57 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jul 01 17:26:31 2019 +0000"
      },
      "message": "Add `libcore.java.awt` tests to the ART Libcore test suite.\n\nTests execution time: 4.87s on host, 6.66s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nChange-Id: I927411a69e4db4ffd81ce42e30f67a686ad87a7d\n"
    },
    {
      "commit": "2f1e8f8495e445d5418428f2c232565da284e704",
      "tree": "4c151b72aae5c0c568af302c1463e70f0eedcf69",
      "parents": [
        "674040421e40712df79493ecef62b6af028d657a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 12 19:57:50 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jul 01 16:03:14 2019 +0000"
      },
      "message": "Use flattened Time Zone Data APEX contents in ART chroot-based device testing.\n\nCopy the contents of the flattened Time Zone Data Module\ndirectory (`/system/apex/com.android.tzdata`) to\n`/apex/com.android.tzdata` within the chroot directory on the device.\n\nTest: ART chroot-based on-device testing using the master-art branch\nTest: ART chroot-based on-device testing using the master branch (with\n      `TARGET_FLATTEN_APEX` set to `true` before building).\nBug: 132169989\nBug: 121117762\n\nChange-Id: I9d99a465609f0c6d2065268f2a09a82e45a3fa32\n"
    },
    {
      "commit": "3768276ab9ec3ede28ac27c97dd42518b0e2dcd9",
      "tree": "0d693e9f28188937ee731615376e298902e13047",
      "parents": [
        "0d4567f26701abae84b02389c379843c1dc851a8"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Jun 28 10:24:43 2019 +0100"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Mon Jul 01 07:00:02 2019 +0000"
      },
      "message": "Allow explicit blacklisting with maxTargetSdk\u003d0.\n\nThis allows other annotation properties to be added to blacklisted APIs,\nsuch as publicAlternatives. The semantics are identical to not having\nany annotation on the API.\n\nBug: 136102585\nTest: m, inspect out/soong/hiddenapi/hiddenapi-flags.csv\nChange-Id: I2fbcb630a4a7719984f31d9531aca4f4b658db95\n"
    },
    {
      "commit": "b839fbb52a3180bbac16a8f984cb11954a2a1837",
      "tree": "d47ebc70705fee724b6f5519f5da80878f0d9341",
      "parents": [
        "2ad19bc61d5f5a517ce95810ea326b8189f57262"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 27 16:26:55 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jun 29 00:58:23 2019 +0000"
      },
      "message": "ART: Allow arbitrary \"expression\" in generate_operator_out.py\n\nGeneralize the \"literal\" treatment to allow \"expressions.\" As we lack a\nreal parser, define expression to be a comma-free string.\n\nBug: 121245951\nTest: m test-art-host\nChange-Id: If98cd9548359306daee05ed720667138ff1bb3a0\n"
    },
    {
      "commit": "2ad19bc61d5f5a517ce95810ea326b8189f57262",
      "tree": "e3f9c055a13499b386315f3e6d621870a05ccbee",
      "parents": [
        "d3b06ebccbac735ffddabd0d2e3a74120db7de70"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 27 15:11:59 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jun 29 00:58:23 2019 +0000"
      },
      "message": "ART: Refactor generate_operator_out.py\n\nUse generators to delineate the parsing steps better.\n\nBug: 121245951\nTest: m test-art-host\nChange-Id: Ib52e8c991e92015c1ae5e0377015b1b89b259de1\n"
    },
    {
      "commit": "d3b06ebccbac735ffddabd0d2e3a74120db7de70",
      "tree": "e02b70c500332a241ad3b841f9846404b7937c9f",
      "parents": [
        "43884b23d61dd9c2754ef4e716458f8306b07b94"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 27 14:26:00 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jun 29 00:58:23 2019 +0000"
      },
      "message": "ART: Run autopep8 on generate_operator_out.py\n\nFix up indentation and some minor things. Leave column limit\nissues.\n\nBug: 121245951\nTest: m test-art-host\nChange-Id: I3b977368cd8f238746f3af7f5eea1aaa6a06b6a9\n"
    },
    {
      "commit": "f8a33063e92e6de71bf2bce77d351588b676811e",
      "tree": "5e988eab6e664e7573143f30f150c84fb01c978b",
      "parents": [
        "79d6c800cd8aa1da335ea0523c391852780ac02a"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jun 27 14:32:44 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 28 14:58:17 2019 +0000"
      },
      "message": "Add libfieldcount jvmti agent\n\nThis agent is useful for extracting information about the contents of\nfields and measuring the memory impact of CLs based on the different\ncounts of various fields.\n\nTest: manual\nTest: ./test/run-test --host --dev --interpreter --runtime-option -Xopaque-jni-ids:true --64 --with-agent $ANDROID_HOST_OUT/lib64/libfieldcountd.so\u003dLjava/lang/Class\\;.extData:Ldalvik/system/ClassExt\\;,Ldalvik/system/ClassExt\\;.jmethodIDs:Ljava/lang/Object\\;,Ldalvik/system/ClassExt\\;.staticJfieldIDs:Ljava/lang/Object\\;,Ldalvik/system/ClassExt\\;.instanceJfieldIDs:Ljava/lang/Object\\; 001-HelloWorld\nBug: 134162467\nChange-Id: I21cfded08f8d9f7db67a81e2ce88ef7567599d97\n"
    },
    {
      "commit": "ad82a81f6cbdd5819ca8088f91b6dc22a17d0727",
      "tree": "5bc6d8c9f32b08d900fffc84e66cfd17618f4f39",
      "parents": [
        "025bba4bea1ef5ee65bbe6c7484964a2ef53df9a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 18:29:32 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jun 28 11:48:00 2019 +0000"
      },
      "message": "Add `libcore.xml` tests to the ART Libcore test suite.\n\nTests execution time: 6.91s on host, 15.18s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nChange-Id: I2614cffd7348c06e53f5d71dfb78690bf4a868b5\n"
    },
    {
      "commit": "f90c406cfb7c495378743837b01446120742e74f",
      "tree": "757ff74dc7ebf237c09ac539bcc2b0664ea77d75",
      "parents": [
        "673bd509ae61a06175796adc5e6599b7312209bb"
      ],
      "author": {
        "name": "Andrei Onea",
        "email": "andreionea@google.com",
        "time": "Fri Jun 21 18:06:47 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jun 27 15:08:43 2019 +0000"
      },
      "message": "Require publicAlternatives for APIs on max-sdk-q\n\nGreylisted APIs can be added to the max-sdk-q list, and public\nalternative information is required when doing this.\n\nBug: 133829620\nTest: atest class2greylisttest\nChange-Id: Iadcf75d3eb606a6137e755d1245ae2611a416003\n"
    },
    {
      "commit": "da5e041d8cbd714e791974dbdd876c23141801cb",
      "tree": "07702de76770c6372edd67d531b948fe6750e1b8",
      "parents": [
        "31c3daa15da0599b0f916202c49ef4d35e77213b"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 18:20:32 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 27 12:06:19 2019 +0000"
      },
      "message": "Add `libcore.libcore.timezone` tests to the ART Libcore test suite.\n\nTests execution time: 5.24s on host, 8.71s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nChange-Id: Iddf5b981c2ef0cc19b67ed0cc5f6b6bc8a1d767c\n"
    },
    {
      "commit": "7107e8c3974036a6b2362da2d990907d9026cbe8",
      "tree": "992e50c7e19eb805511b711635773619e89079e7",
      "parents": [
        "03625446dd614ce9262015caca89161b50e2812d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 25 11:18:03 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jun 26 15:56:52 2019 +0000"
      },
      "message": "Fix host_bcp.sh after output layout changes.\n\nTest: host_bcp.sh system/framework/arm64/boot.oat\nTest: host_bcp.sh $ANDROID_PRODUCT_OUT/system/framework/arm64/boot.oat\nBug: 135950104\nChange-Id: If0f8c2fb8611558a16f7329dd4bb40acfdf047a8\n"
    },
    {
      "commit": "9b41e9514daed1f7f17edf0af20aeb5f33485b74",
      "tree": "ee1810d52650da8625237e07670d92144ec1460e",
      "parents": [
        "aeb0223f14a9dbd9e7caaa177d055684b4819799"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 18:20:07 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 26 15:38:23 2019 +0000"
      },
      "message": "Add `libcore.libcore.internal` tests to the ART Libcore test suite.\n\nTests execution time: 4.93s on host, 6.80s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nChange-Id: I5a6d7af9b6823e7ac69834de981d0d65669d8147\n"
    },
    {
      "commit": "1e52a07b4de0f000028e55c332aa46495f60879c",
      "tree": "1eb7dfdce749461c5a8997cbde49ed6d0fea2aa0",
      "parents": [
        "e0ce8bf743b7fc5816bc4045716d75378ce3b654"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jun 25 09:12:04 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jun 25 16:25:13 2019 +0000"
      },
      "message": "Correct Indicies -\u003e Indices\n\nThis is a misspelling that is somewhat common in art/.\nFix up all the instances I could find.\n\nTest: ./test.py --host\nChange-Id: I0a5def6e4126cf4e61efb0619bd59eb45ba7f324\n"
    },
    {
      "commit": "e0ce8bf743b7fc5816bc4045716d75378ce3b654",
      "tree": "70db71191ddf9ceff99a7255c0dfe560a44544cf",
      "parents": [
        "04968fafaca9288f0660617366318082a7f5cbf1"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 18:05:51 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jun 25 15:57:35 2019 +0000"
      },
      "message": "Add `libcore.javax.net` tests to the ART Libcore test suite.\n\nTests execution time: 7.90s on host, 11.04s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nChange-Id: I74994154f93fe58058354e1ee14353c949c7db69\n"
    },
    {
      "commit": "7d94aa16f9a3d0368b931eecd24fbfd2724ba21d",
      "tree": "714210fce5e4acfbecb9d6b01e12a5d816a79cf0",
      "parents": [
        "145a18a3771e8a3ba5105a759d274efab3685431"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jun 25 09:37:07 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 25 11:51:40 2019 +0000"
      },
      "message": "Set `ANDROID_RUNTIME_ROOT` in `tools/run-gtests.sh`.\n\nExplicitly set this environment variable to \"com.android.runtime\"\nbefore running gtests on device in the chroot environment, as some of\nthose tests need it to initialize ICU.\n\nNote: This environment variable is set by default on devices running\nAndroid Q, but the ART Buildbot uses devices with older Android\nreleases.\n\nTest: Run ART gtests on device in chroot environment on a pre-Q device.\nBug: 121117762\nChange-Id: I65955547bdeabee096d2ab77759bae8a709de110\n"
    },
    {
      "commit": "9e18907c6736326fa2148bead641123498e4c53f",
      "tree": "2b154e213b336dd3e1ab2727558e582506c7c808",
      "parents": [
        "6dd6212f74e0560f5a40af99a7ed7ab1be8ac3e8"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 17:51:08 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 24 14:13:43 2019 +0000"
      },
      "message": "Add `libcore.build` tests to the ART Libcore test suite.\n\nTests execution time: 5.06s on host, 6.78s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nChange-Id: I2110140e27d736bf9dbf144170c8667341d624bc\n"
    },
    {
      "commit": "72f6774bf65222b7c93c3e4d706938635cacf050",
      "tree": "e121e3ce1f5b0e5215b7054fb8689e8e4ceded45",
      "parents": [
        "2c029f35eebe7d8b0d00979342d64b2f2dad5a94"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Mar 06 15:48:08 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 24 13:13:42 2019 +0000"
      },
      "message": "Use flattened Runtime APEX contents in ART chroot-based device testing.\n\nCopy the contents of the flattened Debug Runtime Module\ndirectory (`/system/apex/com.android.runtime.debug`) to\n`/apex/com.android.runtime` within the chroot directory on the device.\n\nAvoid generating artifacts that are not expected in the `system`\ndirectory (`TARGET_OUT`) of a \"normal\" build.\n\nAdjust the chroot environment to have it use the system linker\nconfiguration of the built target (\"guest system\") and the linker\nconfiguration of the Runtime APEX, even if the linker configuration\nflavor of the \"guest system\" (e.g. legacy configuration) does not\nmatch the one of the \"host system\" (e.g. full-VNDK configuration).\nThis is done by renaming the configuration file provided by the \"guest\nsystem\" (created according to the build target configuration) within\nthe chroot environment, using the name of the configuration file\nexpected by the linker (governed by system properties of the \"host\nsystem\").\n\nTest: ART chroot-based on-device testing using the master-art branch\nTest: ART chroot-based on-device testing using the master branch (with\n      `TARGET_FLATTEN_APEX` set to `true` before building).\nBug: 124425036\nBug: 121117762\nChange-Id: Ied3f6ee8b2d68c3473fab864d1bbed9e88df59d3\n"
    },
    {
      "commit": "d2f8ce109db25b59d4495e02e9386eee95e23814",
      "tree": "fc5534b1413e76db5d65558c50e8a3484a38672e",
      "parents": [
        "e8ad48f7ecc8cbc6b9e4e704b0c4345354473db0"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 17:50:32 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jun 21 17:38:59 2019 +0000"
      },
      "message": "Add `libcore.android.system` tests to the ART Libcore test suite.\n\nTests execution time: 7.77s on host, 12.09s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nChange-Id: Ie4f8b6fb164da5aea19d4ff6112361b79618fcd2\n"
    },
    {
      "commit": "c0ce3d520ea11318ac2698ad081edd65841b42d6",
      "tree": "e9e3c4f5a47a26f45674f16cec085fa6613e775b",
      "parents": [
        "0f9823e03a21c956ef47d81ae5d523af24e3c33d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 19 17:26:01 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 20 12:40:58 2019 +0000"
      },
      "message": "Add `libcore.sun.*` tests to the ART Libcore test suite.\n\nTests execution time: 11.76s on host, 23.33s on device (Pixel XL).\n\nTest: Run Libcore tests on host and target\nBug: 135542760\nChange-Id: Ieb123aa56ba4da139f0b3e4310affef98c4c8912\n"
    },
    {
      "commit": "0f9823e03a21c956ef47d81ae5d523af24e3c33d",
      "tree": "ffb49b4fecb1bd1304d5f140f684ab8688c2f761",
      "parents": [
        "6c4ec5c1555aaeddd254750c15554a3c47bfc722"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jun 18 16:49:24 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 20 12:21:30 2019 +0000"
      },
      "message": "Prepare target testing device setup for the move to the Runtime APEX.\n\nTemporarily push a copy of the ICU data file into the Android Runtime Root\nlocation (\"/apex/com.android.runtime\"). This step is required in the time\ninterval between:\n1. the moment we stop setting `ART_TEST_ANDROID_RUNTIME_ROOT` to \"/system\"\n   (meaning Bionic will start looking for it in the default\n   `ANDROID_RUNTIME_ROOT` location, which is \"/apex/com.android.runtime\"); and\n2. the moment we start installing and using the Runtime APEX (which includes\n   the ICU data file) within the chroot directory on device for target\n   testing.\n\nTest: Rely on the ART Buildbot.\nBug: 121117762\nBug: 119293618\nChange-Id: I5e91fc795e8bce32a6b21ca793839e6b68fe2eaf\n"
    },
    {
      "commit": "f8528fae3ce1a8971ab6e06a9f28b5c557a8114f",
      "tree": "7f381ecb5f8c18397e047e85d44477635f37dcba",
      "parents": [
        "1cf31fe27799bad9a56966dbd0c7b43c07257676"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Jun 07 14:07:58 2019 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Jun 19 15:45:50 2019 +0000"
      },
      "message": "Remove unnecessary files from target test env\n\nRemove unnecessary files from the simulation of the\nruntime mainline module used in ART for on-device testing.\nThe files are being removed from the real runtime module\nin a separate commit.\n\nBug: 132169989\nTest: Run ART tests on device (in chroot environment)\nChange-Id: I93f5720c6e110ffe555cc37eb4b8c5310fd6bb0d\n"
    },
    {
      "commit": "8ac3dc5ec31569630a99caed2a69f64d84a6c0b6",
      "tree": "6afc5b806cce1e137063aa88a41cc44225da75ce",
      "parents": [
        "2411f49e8e3e9efb92958d689a9bab9fe9635638"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Jun 12 13:46:32 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 18 10:52:28 2019 +0000"
      },
      "message": "Replace no_framework_libs: true with sdk_version: \"core_platform\"\n\nBug: 134566750\nTest: m\nChange-Id: Ia4403968c77f53f828f12769d4b11f550f0fd279\n"
    },
    {
      "commit": "8b1ac802f539cab4832831824a043ce936920c4c",
      "tree": "6e5d264139141a8d10eacd8c6dd6f72f2c2f36e7",
      "parents": [
        "c5c5186959caeba81b83f949b3100749655f7a6c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 11 10:50:58 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 14 21:21:17 2019 +0000"
      },
      "message": "ART: Make signal_dumper static\n\nCompile a static binary so that no shared libraries are needed.\n\nTest: m test-art-host\nTest: manual (change timeout)\nChange-Id: Ibfb64a31f30f52c18223380bff1d0e2aea2302c6\n"
    },
    {
      "commit": "9ccea1da7946cb8a5e70d39f8c0c474196fdaca3",
      "tree": "16d1303b6362a45056aeb3739a590f64fad08c84",
      "parents": [
        "c56a23e12039d846a899d8b2ff535019480912e5"
      ],
      "author": {
        "name": "Andrei Onea",
        "email": "andreionea@google.com",
        "time": "Thu Jun 13 12:01:25 2019 +0100"
      },
      "committer": {
        "name": "Andrei-Valentin Onea",
        "email": "andreionea@google.com",
        "time": "Fri Jun 14 10:45:43 2019 +0000"
      },
      "message": "Fix UnsupportedAppUsage property serialization\n\nThe publicAlternatives field of the UnsupportedAppUsage annotation may\ncontain commas, which would interfere with the csv serialization into\nmetadata.csv. This change ensures that all fields containing commas are\nencased by \u0027|\u0027 characters (due to it being used as a quote character in\nframeworks/base/tools/hiddenapi/merge_csv.py), and all other ocurrences\nof \u0027|\u0027 are escaped.\n\nBug: 130721457\nTest: atest AnnotationPropertyWriterTest\nChange-Id: I5bc0c68b460ea23b9408ecc4c997938d310005fe\n"
    },
    {
      "commit": "2da955f823c32d72c0dd3f85309bfe664d411eae",
      "tree": "0188b807e5ce1213ddf82d364f73e29afe79f910",
      "parents": [
        "9bac568d163041bfdbf8e7d05a0a1aa3aee1c2d3"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 12 15:42:38 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 13 12:05:36 2019 +0000"
      },
      "message": "Revert \"Ignore failures on O devices in JDWP tests.\"\n\nThis reverts commit 3dfaab08c5adbeaa43f363e3b8ae20f71b0a1e05.\n\nReason for revert: No longer needed, as the ART Buildbot no longer\nuses devices running Android Oreo.\n\nChange-Id: Iae1e2fa6aacb92261f949e253a67961afc988421\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice\nBug: 74725685\n"
    },
    {
      "commit": "9bac568d163041bfdbf8e7d05a0a1aa3aee1c2d3",
      "tree": "b25895d1d75cfe59b21893a5438258e37004ae4a",
      "parents": [
        "1217f268cd9dbcbd58eb0ff5a5f89d7136692a3a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 12 15:42:11 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 13 12:05:36 2019 +0000"
      },
      "message": "Revert \"Ignore failures on O devices in some network-related libcore tests.\"\n\nThis reverts commit 3840b34da05248d91bf3d2a7f1c30f7fa0d63891.\n\nReason for revert: No longer needed, as the ART Buildbot no longer\nuses devices running Android Oreo.\n\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice\nBug: 74725685\nChange-Id: Ifc99137920a6799aa53db0fced27ffda4dc284da\n"
    },
    {
      "commit": "1217f268cd9dbcbd58eb0ff5a5f89d7136692a3a",
      "tree": "06eafcda908fc56d2b445a2327e4bb2515552a88",
      "parents": [
        "ec232913bf832abf8bb5ca036724308194dee826"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 12 15:41:39 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jun 13 12:05:36 2019 +0000"
      },
      "message": "Revert \"Start netd before running tests on Buildbot devices.\"\n\nThis partially reverts commit 30d26960774aaa2c5ea647f0a90a562365efab03.\n\nReason for revert: No longer needed, as the ART Buildbot no longer\nuses devices running Android Oreo.\n\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice\nBug: 74725685\nChange-Id: I0df259b07f68601353330da9c4f52b91cad328fd\n"
    },
    {
      "commit": "148c1609b165e79a2e30161bf8148786f3eee307",
      "tree": "fac06a80d58ac9d48bc8eb4c09caecaa5fd22ebf",
      "parents": [
        "298dc0f0475ce9753f3ba105c48ed74d124c668a"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 10 16:47:46 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 11 21:50:02 2019 +0000"
      },
      "message": "ART: Rename timeout_dumper to signal_dumper\n\nTo reflect the more broad applicability.\n\nBug: 134837513\nTest: m test-art-host\nTest: manual (change timeout)\nChange-Id: I1206bd7b2be351ca2efae3564b677c28ea484766\n"
    },
    {
      "commit": "298dc0f0475ce9753f3ba105c48ed74d124c668a",
      "tree": "1f940a81eadca621bd8df906c4ce01dd879bed17",
      "parents": [
        "a0666a9d6ed8ec4e70824ef74cbde5126986792b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 10 16:41:40 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 11 21:50:02 2019 +0000"
      },
      "message": "ART: Add configurable signal to timeout_dumper\n\nBug: 134837513\nTest: m test-art-host\nTest: manual (decrease timeout and add signal param)\nChange-Id: I2fad6c483e83134483210353fb27667478caf313\n"
    },
    {
      "commit": "a0666a9d6ed8ec4e70824ef74cbde5126986792b",
      "tree": "a246434def26cc1d462c64563a715adc37c26797",
      "parents": [
        "d09504f585abe9fa28c9adb342e251733870952f"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jun 11 16:07:40 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 11 21:18:20 2019 +0000"
      },
      "message": "Disable libcore.java.util.zip.DeflateRegressionTest#deterministicOutput.\n\nAn assertion starting failing in this test recently on the ART\nBuildbot; temporarily disable this test while we investigate.\n\nTest: Rely on the ART Buildbot\nBug: 135017266\nChange-Id: I0ce36a168cd882205042f928e93a0d6f5932cf92\n"
    },
    {
      "commit": "b7c640d364d32b79cb52d04750b063667a9a0c86",
      "tree": "9caafc96879f83f8e5dd3cd45b9005be6e2b7deb",
      "parents": [
        "3ffb5b1576f8af0c361284ebd8d2d54c70ede3ff"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Mar 20 15:52:13 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 10 18:33:25 2019 +0000"
      },
      "message": "JVMTI Force early return\n\nAdd support for can_force_early_return jvmti capability. This allows\none to force java frames to exit early. Exited frames have all of\ntheir normal locks released.\n\nWe implement this by modifying the existing method exit events to\nallow one to modify the exit value during the callback. This is used\nto implement ForceEarlyReturn by adding internal-only events that will\nchange the return value of methods once they return (using\nkForcePopFrame) avoiding the need to modify the actual interpreter\nvery deeply. This also makes it simple to continue to use the standard\ndeoptimization functions to force the actual return.\n\nIn order to simplify book-keeping the internal event is refcounted,\nnot associated with any specific jvmtiEnv, and only settable on\nspecific threads. The internal event is added by the ForceEarlyReturn\nfunction and then removed by the MethodExit event when we update the\nreturn value.\n\nBug: 130028055\nTest: ./test.py --host\nChange-Id: Ifa44605b4e8032605f503a654ddf4bd2fc6b60bf\n"
    },
    {
      "commit": "63ab3e1fb635f346241ee5519bf52be8deb6ca60",
      "tree": "89b30779b2508b49e9803ab52374319f8d36afb9",
      "parents": [
        "741a0707d45a779ed2a538954027ef101708aead"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu May 09 13:31:06 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 10 15:49:04 2019 +0000"
      },
      "message": "ART: Add art_verifierd\n\nTest: m art_verifierd\nChange-Id: I96c1b1eccf7a89cf9ade29efe7bb8fddbf179da0\n"
    },
    {
      "commit": "90ffe12e1b0c430d8ed7aed0b22a6f1f946b22e9",
      "tree": "16b573566028bb05cca8839ff17e27142a733a80",
      "parents": [
        "7f7539b8ed0a31de1d1b6e1f0b730d55e37666a6"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Jun 06 17:25:48 2019 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Jun 10 10:53:05 2019 +0000"
      },
      "message": "Add sim of time zone data module files for target\n\nAdd a simulation of the time zone data mainline module for\nsome ART target test environments.\n\nThis change tracks a rename of build modules associated with\nthe runtime mainline module simulation (they now end in\n-runtime).\n\nIt also adds the files to simulate the time zone data mainline\nmodule by using new -tzdata build modules being added.\n\nBug: 132169989\nTest: Ran ART tests and a subset of Libcore tests on host and device\nChange-Id: I41e9bb86a6bfc23ed50f63620fa5813c4f582092\n"
    },
    {
      "commit": "5fd673488c25991ecc85d26c2dc54415773eb407",
      "tree": "59681485dd541ba14a92bd86bb9cb4de6b20d1fc",
      "parents": [
        "1332c26c69a0910a7d32232261c30b197348e603"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 05 13:51:03 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 05 15:53:39 2019 +0000"
      },
      "message": "Remove main console in luci.\n\nIt is now obsolete now that buildbot is removed.\n\nChange-Id: Idd7205a947320ac9950cddea6a651a037bd4b4c2\n"
    },
    {
      "commit": "05e4b0263ffc91fef9729527cf176cae0fd7f22b",
      "tree": "cac35e741fa0cd732fd975abd61221ff84893102",
      "parents": [
        "df1ab205c78fbfae152947e9618d8871a42a744b"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jun 04 11:06:50 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 04 22:50:58 2019 +0000"
      },
      "message": "Add libfieldnull static target.\n\nGetting everything setup so jvmti agents can reach libbase can be\ntricky. Get libfieldnull building statically.\n\nTest: manual. Install agent\nChange-Id: Id889636fd40bc39cca438bbb0d1e678dd0e1110f\n"
    },
    {
      "commit": "1cfbd2946c58cf9211a80f81222f805f00daab00",
      "tree": "279b02992bb99ef23d04e261f43f07f6cd73aa64",
      "parents": [
        "eb104c8f28a445b42946f142d6023f6b18908005"
      ],
      "author": {
        "name": "Andrei Onea",
        "email": "andreionea@google.com",
        "time": "Tue May 14 17:34:23 2019 +0100"
      },
      "committer": {
        "name": "Andrei-Valentin Onea",
        "email": "andreionea@google.com",
        "time": "Tue Jun 04 12:36:49 2019 +0000"
      },
      "message": "Add validation for publicAlternatives\n\nValidate all the {@link ...} tags in the publicAlternatives field of\n@UnsupportedAppUsage annotations, by cross-referencing them against the\ncurrent public API.\n\nTest: atest class2greylisttest\nBug: 130721457\nChange-Id: Ic3984687cb7ce323d431975767f9ba6b4ef7b49b\n"
    },
    {
      "commit": "10f5f86b31f36db7d053e5f0a8fa71b57beef3a6",
      "tree": "f656b30da0ee17c7efc069fed1955a37104f6c21",
      "parents": [
        "d6f579c1a9d3583f02081ca3724be75fec668b95"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu May 30 16:45:41 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu May 30 16:57:04 2019 +0100"
      },
      "message": "Blacklist libcore gcstress test that times out.\n\nTest: n/a\nBug: 133733550\nChange-Id: Ia5bf3257c0e99c96e6076968a75474bf3f2d350d\n"
    },
    {
      "commit": "9a292a1d28c11eba629f6bd62d475af83b155f9e",
      "tree": "44b7584983e6cf55c0bd8c6920a0384c8a133e07",
      "parents": [
        "af52cbeb9b54cd3c3094cdb391041005e5796e77"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri May 24 12:53:34 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 24 17:48:53 2019 +0000"
      },
      "message": "Convert most of tools/dexfuzz/Android.mk to .bp\n\nHad to leave the .PHONY target as that depends on a build variable\nthat is populated in other .mk files.\n\nThe dexfuzz script prebuilt target had to be renamed to dexfuzz-script\nas it conflicted with the previous dexfuzz.jar target. That does not\nchange the name of the script that is copied into the bin directory\nthough.\n\nThe instructions in the tools/dexfuzz/README did not seem to be\naffected by this change.\n\nBug: 130204596\nBug: 122332855\nTest: m fuzzer\nChange-Id: Ic1dc9fcd1c7c66693f60bae87e5cde6496dff162\n"
    },
    {
      "commit": "8e6bf106a5f6c26dfb7aa4fd0f8e9a4daabcbaee",
      "tree": "bf18f53d805164c40cd459b6f6718922e4944678",
      "parents": [
        "eea55ece0000f604b8e7b20e1d4dd40451dc0257"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri May 24 11:31:01 2019 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri May 24 11:32:51 2019 +0100"
      },
      "message": "Convert tools/Android.mk to .bp\n\nBug: 130204596\nBug: 122332855\nTest: m art-script\n    manually test the art files appear in host and device bin dirs\n\nChange-Id: I5efe4ffca0521d2e81d84940618fbfa5375043ee\n"
    },
    {
      "commit": "eea55ece0000f604b8e7b20e1d4dd40451dc0257",
      "tree": "6249caff7abb2a7e5a39b086756587862e3603c8",
      "parents": [
        "abedfca1db9c15d1bd99e2930c0b4fb2f30f2780"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu May 23 15:53:37 2019 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri May 24 09:48:36 2019 +0000"
      },
      "message": "Convert tools/class2greylist/test/Android.mk to .bp\n\nBug: 130204596\nTest: atest class2greylisttest\nChange-Id: Ic228c237d94f349fa1b00be52aa51a98b46c53a8\n"
    },
    {
      "commit": "3cddf4538a8df429a6084f7176c07d55e1e0ec67",
      "tree": "82b7e3470a269da3eb6708182848343d57c7b161",
      "parents": [
        "e2ddce3dec02cf7c9eb5efb2e29c250a5e909995"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed May 22 11:22:31 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 22 22:37:17 2019 +0000"
      },
      "message": "Make sure a out/build_number.txt file is present with linux-bionic\n\nOn some branches if out/build_number.txt must be present for\nlinux_bionic targets to be built. This makes the build_linux_bionic.sh\nscript create this file.\n\nTest: DIST_DIR\u003d$PWD/fast-out/dist ./art/tools/dist_linux_bionic.sh showcommands com.android.runtime.host com.android.support.apexer\nBug: 132822173\nChange-Id: Idc2e89e3947468f26d61d2db224910f3c13410d7\n"
    },
    {
      "commit": "0dc93b1ba94460b0ae126dd4db335261165c74b7",
      "tree": "78b3afa099dce52a1eb39d6a9788d610b14a1f6b",
      "parents": [
        "9b81ac36e161fd993eab17b43b93a96e8c63b5cc"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed May 15 10:30:22 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 17 20:40:21 2019 +0000"
      },
      "message": "ART: Run bpfmt over ART\u0027s blueprint files\n\nTest: mmma art\nChange-Id: Ic85df4770c12ec02836c877b243d4aec234aaada\n"
    },
    {
      "commit": "82cc9601d657965d9bff7cc0a63a603df0e1eae5",
      "tree": "f5b06f5d48a55e0c6aac64a9c281b1331eae5908",
      "parents": [
        "27a47a3c100658797032f443607eb0a62e9e537b"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Thu May 16 14:16:50 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 17 00:51:41 2019 +0000"
      },
      "message": "Make output of generate_operator_out reproducible\n\nAs part of using python_binary_host, argv[0] is often the extracted\npython script in a temporary directory. Just hardcode the\ngenerate_operator_out.py name so that a random directory isn\u0027t encoded\nin the output.\n\nTest: m art_compiler_operator_srcs; inspect output\nChange-Id: Ie2a875a1ab288bd56577b2451d4f3e6e0ad70032\n"
    },
    {
      "commit": "092f7993336961434d6d3d30908c1ca4429e3d05",
      "tree": "16b18176e9f82935347d183bda58a1a1450dc5e0",
      "parents": [
        "88cfa338da02efca7692a395df4fe290bec53ebc"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue May 14 11:20:49 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 14 21:33:29 2019 +0000"
      },
      "message": "Delete DexpreoptGlobalConfig entry after deleting the file it points to\n\nMake creates out/soong/dexpreopt.config, but art/tools/build_linux_bionic.sh\ndeletes the file.  Delete the config entry too so that Soong doesn\u0027t\nfail to open it.\n\nTest: art/tools/build_linux_bionic.sh\nChange-Id: I63f203a4d73b926d1affdab70c73c3f061cfe03d\n"
    },
    {
      "commit": "354ddc52e3e08a7b17cd5b28686119407d2bcdc3",
      "tree": "abf0a089ebf1a79d4ccf0dd3040e541323f6ec6f",
      "parents": [
        "30d3ee8932310bf00cf806d505674f250612a3c8"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon May 13 12:44:07 2019 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue May 14 12:52:08 2019 +0000"
      },
      "message": "Revert \"Blacklist test while failing.\"\n\nThis reverts commit 4f743c010604eda9fa8f4b5db19b5b295bc0885e.\n\nThe broken test has now been fixed. It has also been moved into a\nseparate class so this expection will not prevent any tests from\nbeing run anyway.\n\nBug: 132100102\nTest: atest \\\n    CtsLibcoreTestCases:libcore.java.lang.reflect.annotations.RetentionPolicyTest \\\n    CtsLibcoreTestCases:libcore.java.lang.reflect.annotations.AnnotationsTest\n\nChange-Id: If68edcbee9b427cf2fd4810aa664bb83816154d3\n"
    },
    {
      "commit": "30d3ee8932310bf00cf806d505674f250612a3c8",
      "tree": "0b1a718cba5a43fa934e4905d8e2a714b878572b",
      "parents": [
        "d456117108c1efad790808698787868813b428e2"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon May 13 15:27:00 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 14 10:22:44 2019 +0000"
      },
      "message": "luci: Add libcore as a tracking project.\n\nTest: N/A\nChange-Id: I00ecfb2522f1ab35b8c1c45974855fe95fb2384e\n"
    },
    {
      "commit": "ba2531826613a21736dd170d09877d3eb7990c5d",
      "tree": "363134660dd510afaca153642d83c884ff12fb51",
      "parents": [
        "f41232eecb55fe864ed9520074b23682daf29aaa"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu May 09 11:53:18 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 13 15:36:23 2019 +0000"
      },
      "message": "Fix run-gtests.sh for both 32- and 64-bit tests.\n\nWhen running both sets, the script was concatenating the\nlast test from first set with the first test from the\nsecond set.\n\nTest: run-gtests.sh for full aosp_taimen-userdebug build.\nChange-Id: I49a1b0f3f50305d412daeec1449481d138a0c635\n"
    },
    {
      "commit": "d76e1238fddfd6eed608d97929c333e921e4826f",
      "tree": "d5d081944ddd6786f1b9194aa1aac83c5244cc27",
      "parents": [
        "1fe5839d10114209a75d1716bd81c353e4096810"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue May 07 19:23:41 2019 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed May 08 09:03:53 2019 +0000"
      },
      "message": "veridex: Add cmd line flag to filter app classes by name\n\nVeridex can now skip analyzing classes which do not match a provided\nfilter. The filter is passed to veridex using \u0027--app-class-filter\u003d\u0027\ncommand line flag as a comma-separated list of class descriptor\nprefixes, e.g. \u0027Landroid/net/,Landroid/utils/\u0027 matches all classes in\nthe \u0027android.net\u0027 and \u0027android.utils\u0027 packages and their subpackages.\n\nTest: compiles, manually test against APKs\nChange-Id: I4db9c3625399ee313a1ba0aba7f3d9073570cc70\n"
    },
    {
      "commit": "552ba72fce139aa2b0a80d1a2b920c5e8fadaf58",
      "tree": "b67cfab9e7ad1e1c95914057c412fd7e63d3b7b9",
      "parents": [
        "9f3c002fddcd7270659027f5636d22d43b1dc338"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue May 07 10:27:31 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 07 21:39:48 2019 +0000"
      },
      "message": "ART: Add LUCI notifier email template\n\nCustomize the email sent by LUCI to include the status in the title\nand a summary in the body.\n\nTest: manual\nChange-Id: I26deeb5a8a567369cdcbe159b636b2f328a7b61a\n"
    },
    {
      "commit": "9f3c002fddcd7270659027f5636d22d43b1dc338",
      "tree": "036d00210b4429959edca06e021b9b38767e09e9",
      "parents": [
        "9da3d425262c6f5797b70d8aab1c665ae6bc6890"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 19:48:52 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 19:48:52 2019 +0100"
      },
      "message": "Actually put the 37h in seconds numbers.\n\nTest: N/A\nChange-Id: I3f93b7b1072e6f0396f9e376882e76fc4fdec10c\n"
    },
    {
      "commit": "9da3d425262c6f5797b70d8aab1c665ae6bc6890",
      "tree": "4e0ce539a96cbd3c304e20ffde5e2ee9029eb5fc",
      "parents": [
        "1a20eca7b5ff350c4f120710a8d2536f3fc0b895"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 19:42:00 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 19:42:00 2019 +0100"
      },
      "message": "Make the two timeouts at most 47.\n\nTest: N/A\nChange-Id: Iea49baf8c6a6812ad76d1c848b8b0345e1948fcb\n"
    },
    {
      "commit": "1a20eca7b5ff350c4f120710a8d2536f3fc0b895",
      "tree": "860ebb8ca7b6a018af347287fdcd3214bc25328d",
      "parents": [
        "70d91fe71d3fbc122a271128c92ad6f0f86b93a1"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 14:46:37 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 18:02:36 2019 +0000"
      },
      "message": "Increase expiration timeout for luci.\n\nTest: N/A\nChange-Id: I8778a84c85be073249c996d58a4f0757228b23f9\n"
    },
    {
      "commit": "4f743c010604eda9fa8f4b5db19b5b295bc0885e",
      "tree": "849c69bb1bfa0e68ce7d0d4296bc4fdfcb5ef6eb",
      "parents": [
        "1389dd450eb257bbe48e94b2917c60d64fa10fe7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 03:02:08 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 07 03:02:08 2019 +0100"
      },
      "message": "Blacklist test while failing.\n\nBug: 132100102\nChange-Id: I06440aa0e577176ac2280534ef446fc06d3f46a8\n"
    },
    {
      "commit": "d801a7bb4da0c08b5e6f2847824c0a95bfe3892c",
      "tree": "61a49076c77f2c05c79c3cc4b3c3c878aab31c08",
      "parents": [
        "356864a74f9069bdc26a64f670d070feaacb5dc9"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed May 01 14:59:00 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed May 01 16:51:31 2019 +0000"
      },
      "message": "Have the ART Buildbot and Golem generate timezones files in /system/etc/tz.\n\nHave `tools/buildbot-build.sh --target` and Golem\u0027s target build\nrule (`build-art-target-golem`) build targets `tzdata-art-test`,\n`tzlookup.xml-art-test`, and `tz_version-art-test`, copying timezones\nprebuilt files into /system/etc/tz, so that they can be found even if\nthe Runtime APEX is not available, by setting the environment variable\n`ART_TEST_ANDROID_RUNTIME_ROOT` to \"/system\" on device.\n\nThis is a temporary change needed until the ART Buildbot fully\nsupports the Runtime APEX.\n\nTest: Rely on the ART Buildbot and Golem.\nBug: 131667225\nBug: 121117762\nBug: 129332183\nBug: 119293618\nBug: 131239046\nChange-Id: Ib9f748dea155b54eec0d000dd9e0f0dfb29ca626\n"
    },
    {
      "commit": "6ae463f33c71805ca3f8572513bb507c472bcf6d",
      "tree": "499753903b999eceb926015f8791ae70121b3d5c",
      "parents": [
        "d112012197d2a6b4c96a710737b35d50d75098aa"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed May 01 11:55:01 2019 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed May 01 11:55:01 2019 +0100"
      },
      "message": "hiddenapi, class2greylist: Add support for greylist-max-q\n\nTest: set maxTargetSdk\u003dQ on an API, compile, check hiddenapi-flags.csv\nChange-Id: I05b3418d76bdb2ef34a717e199abdda73f73ffd7\n"
    },
    {
      "commit": "498019ab91ea40352ea1e54a8425e1689dc1317d",
      "tree": "394d6a6af6964e607411b1532ef1e75229f01ccb",
      "parents": [
        "256c94b568f35f8f23feaaf9ea0d64ed1edab1d4"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Tue Apr 30 11:41:09 2019 +0100"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Tue Apr 30 11:41:09 2019 +0100"
      },
      "message": "Update ahat_api.txt\n\nhttp://r.android.com/939394 changed the API but forgot to update this file.\n\nTest: make update-api\nChange-Id: I774ca4bc94ef578b626a97bf9a79b96295ff0b5c\n"
    },
    {
      "commit": "7711c35fa603b86d520991c4e97ca297add81881",
      "tree": "ce476e232ecf0176c5c9bed81f1528a1c6801fab",
      "parents": [
        "39239870737e3669ff1f85475458e5f57ed79194"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Apr 10 17:50:12 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 30 08:11:20 2019 +0000"
      },
      "message": "Fix debug/release dependencies on libartbase\n\nWe load both the debug and release build when running tests.\nThe different builds have different layout of some classes,\nwhich can currently result in random native heap corruptions.\n\nFix the build dependencies to avoid the double loading,\nand add runtime check to avoid it in the future again.\n\nTest: test.py -b --host --64\nTest: test.py -r --target -t 001-HelloWorld\nChange-Id: Ie62f91dc06209c91e25ba5f11c9d61243ac7579d\n"
    },
    {
      "commit": "2792de4c2c624efd919cdb2294cceffbe6b66e2f",
      "tree": "76a721b30f3705c92c7b19270437c1bee97bcef3",
      "parents": [
        "956f9fadb33619edb3480d2fe1de144b56814b7e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 29 09:57:08 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 29 12:25:44 2019 +0000"
      },
      "message": "Enable notifications for android builders.\n\nInfra issues have been resolved.\n\nChange-Id: Ia5f0a9dd138f1b42f6ef0c3a895d638697439ffe\n"
    },
    {
      "commit": "7c5acbb122485b6215dc34defc1f19e07390bb95",
      "tree": "af0889bb17ef622b8c51d9f110991ca025caef16",
      "parents": [
        "51c655847f2f7d2a9127574d3aeda12755014608"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Sep 20 13:54:52 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Apr 25 20:41:37 2019 +0000"
      },
      "message": "ART: Fix some types\n\nUse better types and fix some typing issues exposed by clang-tidy\u0027s\nreadability-implicit-bool-conversion.\n\nBug: 32619234\nTest: WITH_TIDY\u003d1 mmma art\nChange-Id: I787d291a4843a3192a84853d105d57377b774b23\n"
    },
    {
      "commit": "fe9181db92a778c4ef3c4d25e0302553bf970e26",
      "tree": "9d547a723b9b1d1c390ae003fe44b5ff86dbb61b",
      "parents": [
        "605a5fe91694d8a90c02fb01967081f55878a125"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Apr 25 12:46:32 2019 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Apr 25 14:37:00 2019 +0000"
      },
      "message": "hiddenapi: Error message when superclass not found\n\nPrint an error message when building class hierarchy and unable to\nfind a superclass. This typically means that the provided classpath\nis inconsistent (superclass missing), or the order of classes is\nincorrect (superclass after child class).\n\nBug: 131289033\nTest: compiles\nChange-Id: Ia82755cc90008e974ce22dd2ccced81257ca90f9\n"
    },
    {
      "commit": "d32f8aadd37aab5b89ffccc86f7d8d07447a213a",
      "tree": "c4cd8e283061600aa04d02409fb7edfbe110246a",
      "parents": [
        "069cafce8b4f6a530902aff3806967d3a91d6371"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Apr 23 12:58:45 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 24 22:30:10 2019 +0000"
      },
      "message": "Don\u0027t use framework libs for ahat-test-dump\n\nahat-test-dump doesn\u0027t need the framework jars, set\nno_framework_libs: true.\n\nBug: 130819271\nTest: atest ahat-tests\nChange-Id: I67bc183f987a179d4a74d0541207bdc9eccda8b3\n"
    },
    {
      "commit": "069cafce8b4f6a530902aff3806967d3a91d6371",
      "tree": "d56d4734d2aaac8a81abf9a839709384e11c5c7d",
      "parents": [
        "96b3baab90767a4a021be4c7055683cdc0cc39c1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Apr 23 12:49:47 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 24 22:30:10 2019 +0000"
      },
      "message": "Convert more of ahat to Android.bp\n\nSee build/soong/README.md for more information.\n\nBug: 122332855\nBug: 130819271\nTest: atest ahat-tests\nChange-Id: I1d7d767fd0d877a81873a1f755cd65ea721b5d08\n"
    },
    {
      "commit": "a3d186e5c37bd9c28faf577ec2297ce65f7747cc",
      "tree": "b69d60c75f0b6bbcc8759834a81ad339fd7b1c1b",
      "parents": [
        "a4cdd36ba332b63ccaae8416f68d3ac98d7dd68f"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Tue Apr 23 10:37:08 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 24 08:40:35 2019 +0000"
      },
      "message": "Remove unused art/tools/amm\n\namm was never finished, nobody is using it, and there are no plans to\ncontinue work on it. Remove the unused code.\n\nBug: 130819271\nTest: builds\nChange-Id: I548d25c6af68fe5903963be6c6dfaed685f6c07f\n"
    },
    {
      "commit": "8812459ad6fd778341c26176fda261c22a38a45a",
      "tree": "218542a6eceb4cd6b5964a9f1eb92261e1fdfe62",
      "parents": [
        "2e2f9e8c6989dec22e4199a773a1e03954f82365"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Apr 17 15:09:33 2019 +0100"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Apr 18 08:20:58 2019 +0000"
      },
      "message": "ahat: getImmediateDominator should not return the SuperRoot.\n\nWe should not be exposing the SuperRoot instance anywhere through the\npublic API, because the SuperRoot is not part of the public API. Change\ngetImmediateDominator to return null for \"rooted\" instances instead of\nthe SuperRoot instance to better match the documented behavior.\n\nTest: atest ahat-tests, with new test added.\nChange-Id: Id93a09bd714d7b00c6c50233f01d1af7b4258fae\n"
    },
    {
      "commit": "b086f5284a8b38037d55ed65f48f244b4a44a257",
      "tree": "ad08cf6e8f74d648828d12c83d1098f1a6600b62",
      "parents": [
        "d94c87d52eb635520158bcf63d1995e18141d895"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Apr 17 14:50:42 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 17 15:13:36 2019 +0000"
      },
      "message": "ahat: Fix broken style sheet.\n\nTest: launch ahat, verify there is a pretty grey background for table\n      cells and that http://localhost:7100/style.css returns the style\n      sheet.\n\nChange-Id: I5459dda1027dd4f69b7b1c940cc3964bc5680ca2\n"
    },
    {
      "commit": "4d8d83f9686b3cf84fc7055516adb22645ab9f6a",
      "tree": "2302c1ca3372f3e94328ab084919901d535506f5",
      "parents": [
        "ef04ac6c05fa344428008ffa1eac7316c64a3467"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Apr 16 11:18:45 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 16 23:46:19 2019 +0000"
      },
      "message": "Add a parallel_run.py tool\n\nSometimes when investigating a flake it is useful to add logging and\nrepeatedly run a command until the issue appears with the logging.\nThis can be tedious if the flake is rare. To make it easier I added a\nsimple parallel_run.py tool that can run a command in parallel\nrepeatedly until it fails and save the stdout from the failed run.\n\nUsage:\n\n% # Write a script that exits with 0 on failure and writes all output\n% # to stdout.\n% cat tst.sh\n\\#!/bin/bash\n! (head -c32 /dev/urandom | hd | grep -E \u0027\\|.*a\u0027)\n\n% # Run the script in parallel\n% ./art/tools/parallel_run.py -j80 --out out.txt ./tst.sh\nTemporary files in /tmp/tmp5013_ey7\n1 runs\n\u003csnip\u003e\n31 runs\n\n% # Examine output\n% cat out.txt\n00000000  6d e3 ac bf 1a 21 93 17  61 00 2a e0 8b f5 41 3b  |m....!..a.*...A;|\n\nTest: ./art/tools/parallel_run.py -j70 --out out.txt ./tst.sh\nBug: 72608560\nChange-Id: I83877ae1ccde5e843da20c5bd5a4f24e2e07fb19\n"
    }
  ],
  "next": "dbf5525cdbfdc267f7820dc6e7ac02aeabae09d9"
}
