)]}'
{
  "log": [
    {
      "commit": "73c7b8547adfabb6dcd0837b51bde25a65ae8617",
      "tree": "d4d962011584fe32cff746b68cc6f8e297889cdf",
      "parents": [
        "e8f13bbb0460aec9e6f7876b2eb3a11537406aab"
      ],
      "author": {
        "name": "satayev",
        "email": "satayev@google.com",
        "time": "Mon May 10 12:27:30 2021 +0100"
      },
      "committer": {
        "name": "satayev",
        "email": "satayev@google.com",
        "time": "Mon May 10 13:14:23 2021 +0100"
      },
      "message": "Move conv_classpaths.proto to packages/modules/common.\n\nThe classpaths.proto file is needed at build time to generate appropriate\nclasspath configs for the modules. Unbundled ART branches do not include\npackages/modules/SdkExtenstion in their manifest; so put the proto in a\nproject that should be visible to all unbundled modules.\n\nBug: 180105615\nTest: m nothing\nChange-Id: Ie5be1822fbee92f280332622a9317894cc98d7ac\n"
    },
    {
      "commit": "69315e4ea7f5455bc1bc2633e2eb37805ad629b4",
      "tree": "e2057ad986e918284f2fc9ff902e6d9c81f6614b",
      "parents": [
        "e07056af412bda992c312b02522bbd032d78928e"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Apr 29 21:06:47 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat May 01 00:06:07 2021 +0100"
      },
      "message": "Use create_minidebuginfo tool instead of bash script.\n\nThe behaviour is semantically identical, however,\nthe tool additionally sorts the symbols by address,\ncompresses frame unwind information more efficiently,\nand improves random-accessibility for lazy decompression.\n\nOverall, the changes balance and the output size is same,\nhowever, libunwindstack can access the data much faster\nwhile using less memory (due to the lazy decompression).\nIt will also enable further improvements in the future.\n\nBug: 110133331\nTest: ART unwinding tests, run prefetto on the device.\nChange-Id: Id48f9fe67fb67fcf2b90cc3b217b71bb8f5147ca\n"
    },
    {
      "commit": "3c87b1df1152c858b765051aedb82e382cabdb74",
      "tree": "bf01a51fa4460c39a86123db08cbbb6fc191b731",
      "parents": [
        "be1c47b2165d8df0a0939205cf07ad690e769df9"
      ],
      "author": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Thu Apr 22 11:01:36 2021 -0700"
      },
      "committer": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Thu Apr 22 13:40:41 2021 -0700"
      },
      "message": "Fix minor issues in updatability lint CLs.\n\nTest: TreeHugger\nBug: 182349282\nChange-Id: Ifae282d51b088d0562605b41a09696d75c5138f1\n"
    },
    {
      "commit": "2082e695ce530d5273f5918538de211f3767df25",
      "tree": "f2405d9d3e2f2099be3d04f29ce0eae9c9fe03c2",
      "parents": [
        "9a26f8cf2a3dcd1c39b7dd29241a5d8a8801929d"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Apr 21 15:04:55 2021 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Apr 21 17:15:25 2021 +0100"
      },
      "message": "Allow generate_hiddenapi_lists.py to work with no custom flag files\n\nPreviously, if generate_hiddenapi_lists.py was invoked without any\ncustom flag files, e.g. hiddenapi-unsupported.txt, then it would fail.\nThis change allows it to be used for generating the hiddenapi lists\nfor modules that do not have any custom flag files,\ne.g. framework-sdkextensions\n\nBug: 179354495\nTest: verified that the monolithic out/soong/hiddenapi/... files are\n      unchanged by this change\nChange-Id: I455d453024c9f06ed59cbc1e9838234f8b7c7317\n"
    },
    {
      "commit": "7b93908d2e01f89ff2a50368333a470df11e3763",
      "tree": "6a576fada8c4a168ab72022a98043667178d97ed",
      "parents": [
        "5a4202575e310abfda81a0732b3d14341033ab63"
      ],
      "author": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Tue Apr 20 07:23:25 2021 -0700"
      },
      "committer": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Tue Apr 20 11:04:51 2021 -0700"
      },
      "message": "Add lint_project_xml_test.py\n\nTest: lint_project_xml_test.py\nBug: 182349282\nChange-Id: Ibdeb2e5aaf9dcdb02c5d30214e5ea89665145eb3\n"
    },
    {
      "commit": "5a4202575e310abfda81a0732b3d14341033ab63",
      "tree": "b5d66ae9bf9224ac0e30aaf6d079f4e726d39b11",
      "parents": [
        "a110439b3c0f13b054a0309304f7d9da5cd5f82b"
      ],
      "author": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Mon Apr 19 17:58:22 2021 -0700"
      },
      "committer": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Tue Apr 20 07:06:03 2021 -0700"
      },
      "message": "Rename lint-project-xml.py to remove dashes.\n\nSo that a future test can import it without a dirty syntax.\n\nTest: m lint-check\nBug: 182349282\nChange-Id: I520a5af49543801ab2a8ee888ff235876546dc74\n"
    },
    {
      "commit": "a110439b3c0f13b054a0309304f7d9da5cd5f82b",
      "tree": "3031296ffde8ca122475d919b24dbe8c571f0ff0",
      "parents": [
        "302c5b8d80fb8b850d33a831b2a4b221c743bbee"
      ],
      "author": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Mon Apr 19 17:38:17 2021 -0700"
      },
      "committer": {
        "name": "Jaewoong Jung",
        "email": "jungjw@google.com",
        "time": "Mon Apr 19 17:38:17 2021 -0700"
      },
      "message": "Lint baseline file check in lint-project-xml\n\nAdd a function to lint-project-xml to scan the given lint baseline file\nfor disallowed baseline lint issues.\n\nTest: Manual\nBug: 182349282\nChange-Id: I0db32bec0da24487b2f2b3f6704629f56ae76f56\n"
    },
    {
      "commit": "7548b1ad05b1a54b483f46ed09fd52939be87ea1",
      "tree": "8afa82a4f4cdfb3adad2a619292195c45af672d8",
      "parents": [
        "192131e36b528e90e35960f60abc9475cbe8f0ff",
        "d05ba00415d1a983d4ac773d7b511d3b89fbf43c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 15 22:58:15 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 15 22:58:15 2021 +0000"
      },
      "message": "Merge \"Remove draft API support.\""
    },
    {
      "commit": "e134d09831f4974be7ebe4ae6acc9687be3bd459",
      "tree": "8b59056c9fad867571da227e0fed905f1883c2a9",
      "parents": [
        "a0436a3928e604ec57f240014c33e3844a2d7d73"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Apr 15 05:13:34 2021 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Apr 15 10:58:21 2021 +0900"
      },
      "message": "Add \u0027merge\u0027 command to conv_linker_config\n\n\u0027merge\u0027 command can merge multiple configurations.\nIt just delegates protobuf\u0027s msg.MergeFrom(other_msg).\n\n  usage: conv_linker_config merge -o out.pb -i a.pb -i b.pb ...\n\nout.pb will have all keys from multiple inputs.\n\nBug: 181093750\nTest: m\nTest: MicrodroidTestCase\nChange-Id: Ibf715aa0bcc1e5c82c85a9af8fe7dca8d6ab68ad\n"
    },
    {
      "commit": "d05ba00415d1a983d4ac773d7b511d3b89fbf43c",
      "tree": "bb3901de0cf77b67354be5aa30251aa90c07b1e5",
      "parents": [
        "38e55b9242e9482d7d4c807f6227252a5abbe594"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Apr 13 15:55:47 2021 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Apr 13 15:55:47 2021 -0700"
      },
      "message": "Remove draft API support.\n\nThis is unused and doesn\u0027t work with our current API review process\nanyway (un-drafting an API won\u0027t be flagged for API council review).\n\nTest: treehugger\nBug: None\nChange-Id: I6d8fcc9885b82dac5ada7772d9e3fb9101524ece\n"
    },
    {
      "commit": "789fe0fdeb4233f92e24607e8e6b53873c5ccd73",
      "tree": "6e43395e4e30f0f30f93623257160c3b9238c3a0",
      "parents": [
        "4896da1444fac8f4663cc7ffadd2d9dd17c6f2ba"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Apr 08 16:52:05 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Apr 08 18:31:46 2021 +0100"
      },
      "message": "Revert^2 \"[strip.sh] Move remaining GNU binutils usage to llvm binutils\"\n\nThis reverts commit 33dfba1d9c06723c4decf2b38705c3fa7ef4f198.\n\nBug: 141010852\nTest: art/test.py -t 137-cfi\nTest: llvm-objcopy --dump-section\u003d.gnu_debugdata\u003dmdi.xz libhwui.so \u0026\u0026 \\\n      unxz -fk mdi.xz \u0026\u0026 readelf -a mdi | less\nChange-Id: I751b51274a961194647ec11fd3fd49886df1e1b3\n"
    },
    {
      "commit": "ca6fe3453ad1d89bd5e88b340ff71ca1ba3fecca",
      "tree": "cc8e20b7cf356f720751721c7b2f564e198b1f9d",
      "parents": [
        "85822e9b5f872601da4a68c8a09c5e9484493e7f"
      ],
      "author": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Tue Mar 23 15:23:00 2021 +0000"
      },
      "committer": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Tue Apr 06 18:37:13 2021 +0100"
      },
      "message": "Add a converter for classpaths.proto between proto and json/text formats.\n\nThe proto is used at build time to define classpath fragments to be read\nand parsed at runtime by `derive_classpath` service; in order to define\nand set BOOTCLASSPATH, DEX2OATCLASSPATH, and SYSTEMSERVERCLASSPATH\nenviron variables.\n\nThe tool is used for debugging and generation of binary protos.\n\nBug: 180105615\nTest: m \u0026\u0026 launch_cvd with a follow up changes\nChange-Id: I7e8b084e5f63e9aaad11da3221b909818e69e235\n"
    },
    {
      "commit": "6f43f54264695161150a7c1497545c6d068eb07b",
      "tree": "c9adf6a05f773409cceec3899a0364a49efc6dff",
      "parents": [
        "cb05715e9ef54e8d7a8cecb5dba5df8facf8a083"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Sat Apr 03 03:20:12 2021 +0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Sat Apr 03 03:21:24 2021 +0800"
      },
      "message": "Fix toc.sh, llvm-nm does not recognise \u0027-f P\u0027 option\n\nllvm-nm only accepts full name for format option, or just \u0027-P\u0027 alias.\n\nTest: build\nBug: 184360305\nChange-Id: Ie25f5410403f4dbca564430149a5753e0d48d60d\n"
    },
    {
      "commit": "948205699ba0e02284b17d975ddb8935c0557e11",
      "tree": "1904f3febd2f6bf3fdada7a9218fd554aff4fc42",
      "parents": [
        "37a5d5ebd8da29e0d66742d99933b0b59b17784f",
        "4ad44e713be043891578945e0f6f05f3cb5086ed"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Fri Apr 02 02:38:16 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 02 02:38:16 2021 +0000"
      },
      "message": "Merge \"Move toc.sh to use LLVM binutils\""
    },
    {
      "commit": "400a1b13096d725490d430320f489bfa968b91d6",
      "tree": "dedd65b8a0928fb5ecafbacf9a15f1c39993ebce",
      "parents": [
        "920e205e9dec43e9e8e88a878f300f08847625ef",
        "bb7513d80a4876324c320c0cc96d07de2d8035ca"
      ],
      "author": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Apr 01 09:58:15 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 01 09:58:15 2021 +0000"
      },
      "message": "Merge \"Emit a better error message in manifest_check.py.\""
    },
    {
      "commit": "4ad44e713be043891578945e0f6f05f3cb5086ed",
      "tree": "c53d4e77e524bdc0e4245e5254f7a9bc6c3e116b",
      "parents": [
        "f8c9713fb8f7ebb675c251bb5d516c82bd37806b"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Apr 01 17:45:42 2021 +0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Apr 01 17:45:42 2021 +0800"
      },
      "message": "Move toc.sh to use LLVM binutils\n\nTest: build\nChange-Id: Ib965b6ea3fba6ae007135ac7e167cc50f0f6e3de\n"
    },
    {
      "commit": "9d9e0539646b71eb5a4ab6ef61952d669d12321b",
      "tree": "e12d13a6c9953c93c6c52fedae7aaa8ffd0c589a",
      "parents": [
        "85920c9389e9bbc29a19e660ecc91c9d01fabad0",
        "bf1db7b149a2e5171ebf9ce35b161b562ae0e004"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Apr 01 03:10:08 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 01 03:10:08 2021 +0000"
      },
      "message": "Merge \"Move gen_sorted_bss_symbols.sh to use LLVM binutils\""
    },
    {
      "commit": "fdfb9540f64f81f97e752dd41d3ee0f64eaeeede",
      "tree": "1a4f383caadb49bdb13b040b913723e40ee95346",
      "parents": [
        "acacbc1166780ce31cb100856b373581f145453a",
        "406765b15a2705b6466dbcfe20edf0652c138570"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 31 18:48:18 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 31 18:48:18 2021 +0000"
      },
      "message": "Merge \"Do not build stats-log-api-gen-exports in mainline builds\""
    },
    {
      "commit": "bb7513d80a4876324c320c0cc96d07de2d8035ca",
      "tree": "4cb30caf0502dc3977e4b40245ad92a37e15a9b7",
      "parents": [
        "0702791a99d076f79f2971ff96cf0e4eb5308319"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Mar 30 17:15:16 2021 +0100"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Wed Mar 31 14:31:49 2021 +0100"
      },
      "message": "Emit a better error message in manifest_check.py.\n\nBug: 132357300\nTest: lunch aosp_cf_x86_64_phone-userdebug \u0026\u0026 m\nTest: temporarily patch Gallery2 to fail the check, observe the error\nChange-Id: Id67e359188396f68dcecd8b3f4d1bc26271af56d\n"
    },
    {
      "commit": "bf1db7b149a2e5171ebf9ce35b161b562ae0e004",
      "tree": "42a0e2a4cacb80c19b1e78487ea5cdd4b00b7ced",
      "parents": [
        "32eccae1ac4c534b256abace34595fd78230877b"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Mar 31 17:12:40 2021 +0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Mar 31 17:13:43 2021 +0800"
      },
      "message": "Move gen_sorted_bss_symbols.sh to use LLVM binutils\n\nTest: build\nChange-Id: I496b92d963d127087daef405dafa24377d6bac97\n"
    },
    {
      "commit": "dd3797b44eb9065d77069e51d2231385958897ee",
      "tree": "335e75b7894e1e92969a5054e9e4eb32e054748a",
      "parents": [
        "a4c09e1894f86a7d18505592cf2eda4b15a2e18d",
        "ae5da5ba78d14209b81ffdc1b32e8c944c6323be"
      ],
      "author": {
        "name": "Sophie Zheng",
        "email": "sophiez@google.com",
        "time": "Tue Mar 30 20:44:44 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 30 20:44:44 2021 +0000"
      },
      "message": "Merge \"NDK API coverage\""
    },
    {
      "commit": "a4c09e1894f86a7d18505592cf2eda4b15a2e18d",
      "tree": "799629bd58390a4dfaa55aadd59e40435a8ff95b",
      "parents": [
        "e8366da1f61cbff804cefe3b69f6293b4bad0c98",
        "d3e2742ad28e81d90ef844a1e45a56ec25ec1aac"
      ],
      "author": {
        "name": "Sophie Zheng",
        "email": "sophiez@google.com",
        "time": "Tue Mar 30 20:40:41 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 30 20:40:41 2021 +0000"
      },
      "message": "Merge \"NDK API coverage\""
    },
    {
      "commit": "406765b15a2705b6466dbcfe20edf0652c138570",
      "tree": "14b14efece6c19ee1bad6211c40431f60f8976fd",
      "parents": [
        "f682410cbf2c4f6fcc5787f033fc7cfc90a481a7"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Mon Mar 29 19:38:41 2021 +0000"
      },
      "committer": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Mon Mar 29 15:53:32 2021 -0700"
      },
      "message": "Do not build stats-log-api-gen-exports in mainline builds\n\nThis no longer needs to be a prebuilt since stats-log-api-gen can be\nbuilt from proto_logging without extra dependencies.\n\nTest: Treehugger\nBug: 170149255\nChange-Id: I6925c2526cee1cbff3ba78bedd7f6c2f58dfff0f\n"
    },
    {
      "commit": "d3e2742ad28e81d90ef844a1e45a56ec25ec1aac",
      "tree": "01ed23d94305748b7676642948d6268d7d1eea85",
      "parents": [
        "9c35c5d2a6c434c8f0d7acc0cbd5f7e159b002fe"
      ],
      "author": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Mon Mar 29 20:29:11 2021 +0000"
      },
      "committer": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Mon Mar 29 20:29:35 2021 +0000"
      },
      "message": "NDK API coverage\n\nUpdate OWNERS file under build/soong/scripts to include coverage team as owner of related scripts.\n\nTest: TARGET_BUILD_APPS\u003dcom.android.adbd m dist apps_only\nChange-Id: I6150d5bda0d59828a985cd2ab5dd0aa38a7987c3\n"
    },
    {
      "commit": "9f12df9abb5818ebaa581d05c17651244bf52e6f",
      "tree": "83233ce07a98df4413b0b10183f8f28512c7b869",
      "parents": [
        "cb745601b970b1f55c473c8cff6e3e9a4d75d4c2"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Mar 29 14:06:58 2021 +0100"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Mar 29 15:43:38 2021 +0000"
      },
      "message": "Don\u0027t fail the build if manifest_check cannot extract targetSdkVersion.\n\nInstead, return \"any\" SDK version 10000, which will cause dexpreopt to\nnot add any compatibility libraries to class loader context. This is as\ngood guess as any, and the build system already uses \"any\" version if\nthere is not manifest or APK from which to extract targetSdkVersion.\n\nThis fixes broken build on cf_x86_auto-userdebug.\n\nBug: 132357300\nBug: 183943146\nTest: lunch cf_x86_auto-userdebug \\\n  \u0026\u0026 m out/target/product/vsoc_x86/obj/APPS/playback_intermediates/dexpreopt.zip\nChange-Id: I5ee75639ece716c3a9800ddea346fe7c73da7c3a\n"
    },
    {
      "commit": "a8f6db972f76fab1a0547cce91abb1677f63b486",
      "tree": "8b9f38bd42dcd20e8085e8330f67c9ff5e2f96eb",
      "parents": [
        "0839101430aba377812aa055e50ff0435f629c28",
        "dd622951a431eb7eb1e01ffa6c8a878dbb0f75f8"
      ],
      "author": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Mar 29 09:24:00 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 29 09:24:00 2021 +0000"
      },
      "message": "Merge changes I1f0ab4af,Iea3be0fc\n\n* changes:\n  Fix AAPT path in dexpreopt.\n  Allow modules that don\u0027t run verify_uses_libraries to have nonempty CLC.\n"
    },
    {
      "commit": "ae5da5ba78d14209b81ffdc1b32e8c944c6323be",
      "tree": "e129ffa2f5c573ec0228b2b457cc75b09eb0b765",
      "parents": [
        "9c35c5d2a6c434c8f0d7acc0cbd5f7e159b002fe"
      ],
      "author": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Thu Mar 25 22:11:44 2021 +0000"
      },
      "committer": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Thu Mar 25 22:12:04 2021 +0000"
      },
      "message": "NDK API coverage\n\nUpdate the gen_ndk_usedby_apex.sh script to generate NDK API list with\nlibrary name.\n\nTest: TARGET_BUILD_APPS\u003dcom.android.adbd m dist apps_only\n\nChange-Id: I799e03ad7d81a4184229f658fd6c8824b9ba6e1f\n"
    },
    {
      "commit": "c29088b727c372eb21ccbfbe0db3ff3a50b699a1",
      "tree": "f2ed128b3862f38037849fc94fc70d25ddbf25fb",
      "parents": [
        "e0998ab5618d48b816424d29d84f3b484afe7b99",
        "b474fc0ad6542911fb1895bc715f8e88bdb7794f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 23 09:13:53 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 23 09:13:53 2021 +0000"
      },
      "message": "Merge \"Remove .rustc ELF section from mini-debug-info.\""
    },
    {
      "commit": "bd6b076f8062432ff955614fda7d2c9222025b36",
      "tree": "29ec594f909a5a7af66dd0f92d96d6fd3c2cc12b",
      "parents": [
        "3d5f6a1034d0c2e864d9819b9dd4eab57cdb09be"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Fri Mar 12 12:12:12 2021 +0000"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Mar 22 10:49:31 2021 +0000"
      },
      "message": "Allow modules that don\u0027t run verify_uses_libraries to have nonempty CLC.\n\nThere are modules that would have passed verify_uses_library check, but\ndon\u0027t run it for some reason (the check gets enabled either with an\nexplicit setting, or if the module has nonempty \u003cues-library\u003e lists in\nthe build properties). Previously all such modules were assumed to have\nempty CLC, which is not always true. In particular, compatibility\nlibraries are ignored, which affected e.g. Calendar and messaging apps.\n\nThis CL gives such apps a chance to have correct CLC. The goal for the\nfuture is to enforce verify_library_check by default.\n\nBug: 132357300\nTest: lunch aosp_cf_x86_64_phone-userdebug \u0026\u0026 m\nChange-Id: Iea3be0fc9d7775c52950848b5a3fd3b7fcd36c53\n"
    },
    {
      "commit": "2b077baa5e4472b3966e33f96a925fd7a0ef543e",
      "tree": "2837d5833385ea3d770d49963e326d10afbf2c57",
      "parents": [
        "3d5f6a1034d0c2e864d9819b9dd4eab57cdb09be",
        "b77b0c5e05a1e16fd959bc9be5a89d238924ac53"
      ],
      "author": {
        "name": "satayev",
        "email": "satayev@google.com",
        "time": "Mon Mar 22 10:48:45 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 22 10:48:45 2021 +0000"
      },
      "message": "Merge changes from topic \"move_allowed_deps_txt\"\n\n* changes:\n  Treat allowed_deps.txt source file as optional.\n  Move allowed_deps.txt to packages/modules/common.\n"
    },
    {
      "commit": "b474fc0ad6542911fb1895bc715f8e88bdb7794f",
      "tree": "7f86298f83603a25716af4912a7565a67d0dd50c",
      "parents": [
        "f2be52c4dcc2e3d743318e106633e61de0ad2afd"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Mar 20 12:47:38 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Mar 20 20:31:29 2021 +0000"
      },
      "message": "Remove .rustc ELF section from mini-debug-info.\n\nThe section is stripped from binaries (but preserved in /symbols).\n\nHowever, is it also unintentionally copied into the minidebuginfo\ncompressed section, which is included in the final shipped binary.\n(This does not affect symtab symbols, which are handled as usual)\n\nRemoving it from mini-debug-info shrinks some rust binaries by\nup to 10x, saving \u003e10MB on the system partition overall (AOSP).\n\nTest: extract minidebuginfo and check it manually with readelf\nChange-Id: I462d81455626bb2b5244e1bf3d5f8b71646f3401\n"
    },
    {
      "commit": "f2be52c4dcc2e3d743318e106633e61de0ad2afd",
      "tree": "65a32453fa3afb6df96308ee2375c38a85cb6445",
      "parents": [
        "2406d689bf34b279853965841546109bc5e80b6c",
        "33dfba1d9c06723c4decf2b38705c3fa7ef4f198"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 20 19:25:23 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 20 19:25:23 2021 +0000"
      },
      "message": "Merge \"Revert \"[strip.sh] Move remaining GNU binutils usage to llvm binutils\"\""
    },
    {
      "commit": "33dfba1d9c06723c4decf2b38705c3fa7ef4f198",
      "tree": "be1f97ece253259e48ed6636f380c09eef4d9767",
      "parents": [
        "ad50ce83497c7d25a5167ea6bdef1f0290b99f58"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Mar 20 14:46:15 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Mar 20 14:46:15 2021 +0000"
      },
      "message": "Revert \"[strip.sh] Move remaining GNU binutils usage to llvm binutils\"\n\nThis reverts commit ad50ce83497c7d25a5167ea6bdef1f0290b99f58.\n\nBug: 183237575\nReason for revert: Breaks stack unwinding\n\nChange-Id: I256dc77525687fb3e670355587b1eac72158b274\n"
    },
    {
      "commit": "8cc04e59e11786ba3bcb93fdf21b3d00f3384a57",
      "tree": "b83e77b5c661b474445b8fbf9172245dd3318239",
      "parents": [
        "0387862185da1306d85408c4cfa4aacb4093674e",
        "3c902e7accf8a9fddc5ea4d4e5a7fea0e7255e2f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 20 12:12:52 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 20 12:12:52 2021 +0000"
      },
      "message": "Merge \"manifest_check.py: translate library names using dexpreopt configs.\""
    },
    {
      "commit": "2dc86b2956053abf8514bf65c26a4df1d5741c7a",
      "tree": "c5500853194ec772039f4c6db8bc1a4ce691de6c",
      "parents": [
        "00d54280d0069cdbdd7f1c41407a9a080e6b792a"
      ],
      "author": {
        "name": "Julien Desprez",
        "email": "jdesprez@google.com",
        "time": "Fri Mar 19 17:16:09 2021 +0000"
      },
      "committer": {
        "name": "Julien Desprez",
        "email": "jdesprez@google.com",
        "time": "Fri Mar 19 17:16:16 2021 +0000"
      },
      "message": "Migrate manifest_*_test out of test mapping\n\nUnit tests do not require an explicit TEST_MAPPING config\n\nChange-Id: Ieccebc78a26b9555803a2278e2962d0b388a6957\nTest: presubmit\nBug: 183209529\n"
    },
    {
      "commit": "ad50ce83497c7d25a5167ea6bdef1f0290b99f58",
      "tree": "a980eee3779cfc87b211b96af5b01dc21695df64",
      "parents": [
        "fc8e9c7f00a091b442bb903c734cd51d5b8085f5"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Fri Mar 19 12:28:44 2021 +0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Fri Mar 19 12:28:44 2021 +0800"
      },
      "message": "[strip.sh] Move remaining GNU binutils usage to llvm binutils\n\nWith clang r377782, llvm binutils implements all the necessary\nfuntionaility for strip.sh. We can finally get rid of all the fallback\nGNU binutils usage.\n\nTest: m\nBug: 141010852\nBug: 135627985\nChange-Id: I110f6028dab7f599decf59a5cb1b927b35e11857\n"
    },
    {
      "commit": "fdb61edf43dc2c4b66e0651e5c96e28be89ffe14",
      "tree": "7c75d6fa5a52121b8370da228eeece90a6edd67b",
      "parents": [
        "d7ce8402d8895b7ba9d13092d27037784a43cc0e"
      ],
      "author": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Thu Mar 11 16:45:04 2021 +0000"
      },
      "committer": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Wed Mar 17 13:44:16 2021 +0000"
      },
      "message": "Move allowed_deps.txt to packages/modules/common.\n\nBug: 179234385\nTest: run update-apex-allowed-deps.sh locally\nChange-Id: I8e8864468b87342c688d001bc5f6e6f8416863ed\nMerged-In: I8e8864468b87342c688d001bc5f6e6f8416863ed\n"
    },
    {
      "commit": "3c902e7accf8a9fddc5ea4d4e5a7fea0e7255e2f",
      "tree": "8132516d721dbf3804fbefaa3099d21dd9d93761",
      "parents": [
        "a76d6606ce8e43f5b4a15a7ff21471f9f83d3d9d"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Mar 04 18:06:27 2021 +0000"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Mar 16 15:43:05 2021 +0000"
      },
      "message": "manifest_check.py: translate library names using dexpreopt configs.\n\nJava modules that are defined in makefiles are not processed in\ntopological order, so it is necessary to communicate information from\ndependencies via dexpreopt.config files. This has already been done in\nmake/core/dex_preopt_config_merger.py, and now manifest_check.py also\nneeds to get library names from their dexpreopt.config files.\n\nThis is to accommodate Java libraries which name differs from their\nmodules name. Soong properties `uses_libs`/`optional_uses_libs` and\nmakefile vars `LOCAL_USES_LIBRARIES`/`LOCAL_OPTIONAL_USES_LIBRARIES`\ncontain module names, not library names, so it is necessary to translate\nthem when comparing against library names in the manifest.\n\nBug: 132357300\n\nTest: lunch cf_x86_64_phone-userdebug \u0026\u0026 m \u0026\u0026 launch_cvd \\\n      adb wait-for-device \u0026\u0026 adb root \u0026\u0026 adb logcat \\\n      | grep -E \u0027ClassLoaderContext [a-z ]+ mismatch\u0027\n      # empty grep output, no errors\n\nChange-Id: I7cfb17d6d74e37fc9f37d977f15f0d711bab5c8e\n"
    },
    {
      "commit": "0aba252e157457143b455511f1f811107015c3c1",
      "tree": "9e522549bd584620aa8225bb4daba31ffb7ab5e4",
      "parents": [
        "2338d6f6e479c0227d13f6eb25dda28ae5b87229"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Wed Mar 03 16:38:37 2021 +0000"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Mar 15 13:50:49 2021 +0000"
      },
      "message": "Reimplement verify_uses_libraries.sh in manifest_check.py.\n\nPreviously there were two different scripts that did similar things:\n1) build/soong/scripts/manifest_check.py\n2) build/make/core/verify_uses_libraries.sh\n\nBoth scripts extracted \u003cuses-library\u003e tags and `targetSdkVersion` from\nthe manifests of Java modules, but 1) worked for XML manifests, and 2)\nworked for APKs. This CL reimplements the functionality from 2) in 1),\nso that one script can handle both XML manifests and APKs.\n\nBug: 132357300\n\nTest: lunch cf_x86_64_phone-userdebug \u0026\u0026 m \u0026\u0026 launch_cvd \\\n      adb wait-for-device \u0026\u0026 adb root \u0026\u0026 adb logcat \\\n      | grep -E \u0027ClassLoaderContext [a-z ]+ mismatch\u0027\n      # empty grep output, no errors\n\nChange-Id: Id1b66e4f3f30f307dba70cb111c7571762cb546a\n"
    },
    {
      "commit": "4f0f3f01d92bb18a85b5a649b723bd6726a3693d",
      "tree": "bed89ab47612693518f7576a7c44ab83f2dc6fe8",
      "parents": [
        "35570c14cecabdbc8997de84bdd7fbb3d592fe25"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Mar 09 17:13:51 2021 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Mar 09 17:13:51 2021 +0000"
      },
      "message": "Build heapprofd_client_api for use in the ART chroot.\n\nTest: build/soong/scripts/build-mainline-modules.sh\nBug: 179915934\nChange-Id: I4653bf705563ad2ddb077ecae7938c2dd1b818e9\n"
    },
    {
      "commit": "7ebe464748d10343bcb5ae3a9a153fcb1fc27e52",
      "tree": "e7b202272be99ea4c390c8102e552eb1beb70e0a",
      "parents": [
        "4dc0702ce21af64de1a3bd3e78a9a0714d907b7a",
        "ff0529d2095e30bc21dccfec99f7140bb76ecf3b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 24 01:08:28 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 24 01:08:28 2021 +0000"
      },
      "message": "Merge \"Build statsd-module-sdk-for-art\""
    },
    {
      "commit": "bb96b56b0df78e30249bb377ddf388cef5026629",
      "tree": "35b9aebadc5e0eb91837f4340304351077062683",
      "parents": [
        "9a4279309f6a686b49e5ade7a70a2fbd95ad0f2e",
        "412322f2a251ec5a48b7d80dfd4b1628282d9b93"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Feb 24 00:43:12 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 24 00:43:12 2021 +0000"
      },
      "message": "Merge \"Set block-size for XZ mini-debug-info compression.\""
    },
    {
      "commit": "ff0529d2095e30bc21dccfec99f7140bb76ecf3b",
      "tree": "ed6663dc44263994c2dca4b8389a0cafa2588c5d",
      "parents": [
        "9a4279309f6a686b49e5ade7a70a2fbd95ad0f2e"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Fri Feb 19 17:19:30 2021 -0800"
      },
      "committer": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Tue Feb 23 22:49:57 2021 +0000"
      },
      "message": "Build statsd-module-sdk-for-art\n\nBug: 178236337\nTest: build-mainline-modules.sh\nChange-Id: I51dab13416be8ea1cd65234d560d84ca89b53e13\n"
    },
    {
      "commit": "7eacdbf8a6347c5bf3a954a20c8a473f13970240",
      "tree": "5d4f32c17429efc186f1e8e20ddbaa81e77edac6",
      "parents": [
        "30899caf1f348f45aa9b10046a44c0196c60c22f",
        "8c35fcf4d5720848de57cc95c32544a050a52f51"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 23 20:45:42 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 23 20:45:42 2021 +0000"
      },
      "message": "Merge \"Add non-fatal mode for verify_uses_libraries check.\""
    },
    {
      "commit": "ece454400d4f40beb75e8d1773f3d9d684ff6608",
      "tree": "f0b46c2f49583bfe56ec96b52b70736ce7260e03",
      "parents": [
        "22af74eafda8efc11435bc8a68d15fa798f51994",
        "2c36f240828eaad1904d231b8809e212aecd6708"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Feb 23 12:48:24 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 23 12:48:24 2021 +0000"
      },
      "message": "Merge changes from topic \"hiddenapi_additional_annotations\"\n\n* changes:\n  Sort hiddenapi monolithic files by signature\n  Remove duplicates in monolithic hidden API files\n  Remove implicit dependency from \u003cx\u003e -\u003e \u003cx\u003e-hiddenapi\n"
    },
    {
      "commit": "8c35fcf4d5720848de57cc95c32544a050a52f51",
      "tree": "6a3b1e27a3499dbb50b97f5be2aeeb8a8928963e",
      "parents": [
        "2a4bbb80610fedee96b0714cebe9c3f664b8b1e3"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Wed Feb 17 16:23:28 2021 +0000"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Feb 22 15:41:03 2021 +0000"
      },
      "message": "Add non-fatal mode for verify_uses_libraries check.\n\nThe new mode is enabled with environment variable\nRELAX_USES_LIBRARY_CHECK. If the variable is set to true, then a\nverify_uses_libraries check failure does not fail the build, instead it\nsets a special compiler filter \"extract\" for dexpreopt, which means that\nthe DEX file will be extracted, but it won\u0027t be compiled to native code.\nClass loader context will be set to empty in this case (not \u0026, as it is\ngoing to be deprecated soon).\n\nIf the variable RELAX_USES_LIBRARY_CHECK is unset or set to something\nother than \"true\", then the old behaviour of the verify_uses_libraries\ncheck is preserved.\n\nThe intended use case for this flag is to have a smoother migration path\nfor the Java modules that need to add \u003cuses-library\u003e information in\nthe build files. The flag allows to quickly silence build errors. This\nflag should be used with caution and only as a temporary measure, as it\nmasks real errors and affects performance.\n\nverify_uses_libraries check is reworked so that it writes the error\nmessage to a status file (which is used instead of the former timestamp\nfile). Currently the stored error message is not used, but it may be\nused later to produce a warning. Dexpreopt command checks if the status\nfile exists and is nonempty; if that is the case, then compiler filter\nis set to \"extract\".\nBug: 132357300\n\nTest: Manually add some mismatch between the libraries in the Android.bp\n      and Android.mk files for dexpreopted apps, build with\n      RELAX_USES_LIBRARY_CHECK\u003dtrue and obsserve that the build doesn\u0027t\n      fail and they are compiled with compiler-filter \"extract\".\n      Unset RELAX_USES_LIBRARY_CHECK and observe that the build fails.\n\nChange-Id: Ibb5d993a25b1df1d2e70b7d5aafc6997f9d64e67\n"
    },
    {
      "commit": "a6bf4a189cbd3dcbcc014540169e54145d8700bc",
      "tree": "106fc88c8407ce37f7b4bafcb6137d0562fa6a89",
      "parents": [
        "052398b1ce9a853e2ad88dce2a83d86643c2cdac",
        "771fd524f247c63943ba63a83ef202c46e2502df"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Feb 19 15:27:29 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 19 15:27:29 2021 +0000"
      },
      "message": "Merge \"Disallow using error-prone merge strategies\""
    },
    {
      "commit": "771fd524f247c63943ba63a83ef202c46e2502df",
      "tree": "0c329b879316a6a562bd8c35123e7f1a96075aa5",
      "parents": [
        "2a4bbb80610fedee96b0714cebe9c3f664b8b1e3"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Thu Feb 18 14:27:55 2021 +0000"
      },
      "committer": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Feb 19 13:05:54 2021 +0000"
      },
      "message": "Disallow using error-prone merge strategies\n\nDO NOT MERGE / RESTRICT AUTOMERGE and its cousin DO NOT MERGE\nANYWHERE are almost always misused. Make it an error to upload\ncommits with those merge strategies.\n\nBug: 156896646\nTest: repo upload -n (with DNM and RM commits)\nChange-Id: Iae3540fa35dbd7b87a14b53a20be0cd23a206f3a\n"
    },
    {
      "commit": "999314fd98a7fd5a4c91ea0207446a5c85699996",
      "tree": "c400dc923c9ff3b1f9919e3ccce7cb65c96aebfd",
      "parents": [
        "4e86b6ae435c18fab6ecbe029edfa3a0bed52594",
        "713db480cd3e8453c586c9b4530f7dd0e8fdac78"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 19 09:45:39 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 19 09:45:39 2021 +0000"
      },
      "message": "Merge \"Add bloaty_merger\""
    },
    {
      "commit": "277b0e7f41a38a1ebe7c2511053baed30c5de47c",
      "tree": "7b33c69f59567c601f2d4939151181753ada108f",
      "parents": [
        "15679b7b27ef941b9fce1007a99566675f571b9f"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Wed Feb 17 13:00:41 2021 -0800"
      },
      "committer": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Thu Feb 18 17:39:51 2021 +0000"
      },
      "message": "Make statsd apex available as a prebuilt\n\nBug: 178236337\nTest: build-mainline-modules.sh\nChange-Id: I807eca7c5296227f4b593fc9f52d29bd20e78645\n"
    },
    {
      "commit": "713db480cd3e8453c586c9b4530f7dd0e8fdac78",
      "tree": "0b73143574839f4f4c45beb415f57fab7405e057",
      "parents": [
        "71c139dced27182cf278012a274a6abf4bb65e1e"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Feb 10 14:03:27 2021 +0100"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Thu Feb 18 10:25:25 2021 +0100"
      },
      "message": "Add bloaty_merger\n\nThis script will be used to merge the csv outputs from bloaty into a\nsingle proto file.\n\nBug: 172339795\nTest: atest --host bloaty_merger_test\nChange-Id: I9a3c12d7b0c4b5e347fec04e6758bcc1fbc8ab40\n"
    },
    {
      "commit": "1bf6765defcfff06f7108ac998d18ef98cf829e3",
      "tree": "ed231358fc1a3069b3c69e423bcdb775141ae86e",
      "parents": [
        "a0516f76abaa765f1ee22ca5c087fbdfc4db1075"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Sat Feb 13 11:51:55 2021 -0800"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Wed Feb 17 09:46:26 2021 -0800"
      },
      "message": "Add license to hiddenapi\n\nTest: m all\nChange-Id: Ic61a74d94bea0e4de2a47be7e15fcf874fb397c3\n"
    },
    {
      "commit": "2c36f240828eaad1904d231b8809e212aecd6708",
      "tree": "f61e95c8dd1d2ffe5a2cbb51c44775d4af5c96c7",
      "parents": [
        "82b3fcf12334a9d3bc257eecc948cc6fbc6ac473"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Feb 16 16:57:06 2021 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Feb 16 17:38:08 2021 +0000"
      },
      "message": "Sort hiddenapi monolithic files by signature\n\nAdds a new --key_field option to merge_csv.py which specifies the name\nof the field that should be used to sort the input. If specified it\ncauses that field to be the first in each row and performs the merge\noperation of a merge sort on the input files. That assumes that each\ninput file is already sorted into the same order.\n\nModifies the rules that use merge_csv.py to pass in:\n    --key_field signature\nto sort the rows by signature.\n\nBug: 180387396\nTest: Verified that hiddenapi files (both aggregated ones and for the\n      individual modules) are not affected by this change other than\n      changing the order.\nChange-Id: Idcd5f0fea373b520b604889e1c280f21ed495660\n"
    },
    {
      "commit": "031d8693b3dae7edaca2e5fef3d017ac2e67424d",
      "tree": "496cc3cd5c3166c0b4c048fe7e66e5833e46a93a",
      "parents": [
        "7ad17bdad5b613d483d4f77d3c7637c407904211"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Feb 12 11:46:42 2021 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Feb 16 13:28:26 2021 +0000"
      },
      "message": "Allow explicitly specified additional annotations for hiddenapi\n\nAdds the hiddenapi_additional_annotations to allow a library to list\nthe libraries that provided additional hiddenapi related annotations\nfor a library.\n\nModifies merge_csv.py so it can process multiple zip files at the same\ntime and uses that to merge the embedded .uau files from a module and\nthose it depends upon.\n\nBug: 180102243\nTest: m droid\n      Verified that hiddenapi files (both aggregated ones and for the\n      individual modules) are not affected by this change.\nChange-Id: I796520021c7357398a9e2a09f1029e4a578b05b3\n"
    },
    {
      "commit": "7529f0670743d5963bd5a23a66ff2a7f219364fd",
      "tree": "00fbe444ca422bf6c0f7915b7a68bbf1f9d38ba4",
      "parents": [
        "05ad76b459851538e75fb4e9fa82011a29907cc4"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Thu Feb 11 02:06:32 2021 +0000"
      },
      "committer": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Thu Feb 11 19:02:40 2021 +0000"
      },
      "message": "Add statsd exports to be consumed by unbundled modules\n\nThis is needed first for ART to enable statsd metrics reporting, but\nthis will be needed by more modules as they become unbundled.\n\nTest: build-mainline-modules.sh\nBug: 178500083\nChange-Id: I5af0b8db7a24c86ffd3f34732ac747a4fc6a7a55\n"
    },
    {
      "commit": "b68036f44b59531785efa9ae25f21a27d66253bc",
      "tree": "c261bf3d682d27ab2bd4cc932dcead1f78a45853",
      "parents": [
        "c6226d668e5022b3631415becc5e4c201892eb06",
        "02040de891df30c881b4ec38e5525c6246dbc6d5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 10 07:18:29 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 10 07:18:29 2021 +0000"
      },
      "message": "Merge \"Add LOCAL_LICENSE_KINDS to build/soong\""
    },
    {
      "commit": "fdada68320dbfcff7aea5bbe64a328189be494b4",
      "tree": "46ce6860a36de9534cba903d4b890fe0486a6d6a",
      "parents": [
        "198158b9f7ebdb311b82dd2223f4b793215d4e3b"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Feb 08 18:08:09 2021 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Feb 09 10:46:36 2021 +0000"
      },
      "message": "Move hiddenapi tools used by build/soong from frameworks/base\n\nAlso, creates a python_binary_host module for generate_hiddenapi_lists\nand uses that when constructing the build rule rather than using the\nfile directly.\n\nBug: 177317659\nTest: m droid\n      Verified that hiddenapi files (both aggregated ones and for the\n      individual modules) are not affected by this change.\nChange-Id: Ia11bb203ce5a74740d35f1b7e86716e15aad336e\n"
    },
    {
      "commit": "69f0a247623bc2081c318ca8f120404f2e26c301",
      "tree": "e04ebcb5a2b4243a8fa548f7832d93392901bbae",
      "parents": [
        "d97cf63cdf31cd7b78cdabedab2f159be836bfea"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Feb 08 16:49:57 2021 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Feb 08 16:52:07 2021 -0800"
      },
      "message": "Pass list of module libraries to gen_ndk_backed_by_apex.sh\n\nRunning find on the entire module directory can lead to flaky failures\nwhen a directory is modified by another rule while find is traversing\nit.  Pass a list of libraries in the module into the script instead\nof finding them on disk.\n\nFixes: 178509901\nTest: TARGET_BUILD_APPS\u003dcom.android.runtime dist\nChange-Id: Ie4bf288f0e3d99cbbed5ca8770687a9bbe5377e4\n"
    },
    {
      "commit": "02040de891df30c881b4ec38e5525c6246dbc6d5",
      "tree": "452fca215b05f9db5dcca0cf907bdbf05634cafb",
      "parents": [
        "7a1053073695bc184f91770fc74a3a68ae292af4"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Wed Feb 03 18:08:28 2021 -0800"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Sat Feb 06 04:23:21 2021 +0000"
      },
      "message": "Add LOCAL_LICENSE_KINDS to build/soong\n\nAdded SPDX-license-identifier-Apache-2.0 to:\n  Android.bp\n  android/Android.bp\n  android/soongconfig/Android.bp\n  androidmk/Android.bp\n  apex/Android.bp\n  bazel/Android.bp\n  bp2build/Android.bp\n  bpf/Android.bp\n  bpfix/Android.bp\n  cc/Android.bp\n  cc/config/Android.bp\n  cc/libbuildversion/Android.bp\n  cc/libbuildversion/tests/Android.bp\n  cc/ndk_api_coverage_parser/Android.bp\n  cc/ndkstubgen/Android.bp\n  cc/symbolfile/Android.bp\n  cmd/dep_fixer/Android.bp\n  cmd/diff_target_files/Android.bp\n  cmd/extract_apks/Android.bp\n  cmd/extract_jar_packages/Android.bp\n  cmd/extract_linker/Android.bp\n  cmd/fileslist/Android.bp\n  cmd/host_bionic_inject/Android.bp\n  cmd/javac_wrapper/Android.bp\n  cmd/merge_zips/Android.bp\n  cmd/multiproduct_kati/Android.bp\n  cmd/path_interposer/Android.bp\n  cmd/pom2bp/Android.bp\n  cmd/pom2mk/Android.bp\n  cmd/sbox/Android.bp\n  cmd/soong_build/Android.bp\n  cmd/soong_env/Android.bp\n  cmd/soong_ui/Android.bp\n  cmd/zip2zip/Android.bp\n  cmd/zipsync/Android.bp\n  cuj/Android.bp\n  dexpreopt/Android.bp\n  dexpreopt/dexpreopt_gen/Android.bp\n  env/Android.bp\n  etc/Android.bp\n  filesystem/Android.bp\n  finder/Android.bp\n  finder/cmd/Android.bp\n  genrule/Android.bp\n  jar/Android.bp\n  java/Android.bp\n  java/config/Android.bp\n  kernel/Android.bp\n  linkerconfig/Android.bp\n  linkerconfig/proto/Android.bp\n  makedeps/Android.bp\n  partner/Android.bp\n  phony/Android.bp\n  python/Android.bp\n  python/tests/Android.bp\n  remoteexec/Android.bp\n  rust/Android.bp\n  rust/config/Android.bp\n  scripts/Android.bp\n  sdk/Android.bp\n  sh/Android.bp\n  shared/Android.bp\n  symbol_inject/Android.bp\n  symbol_inject/cmd/Android.bp\n  sysprop/Android.bp\n  tradefed/Android.bp\n  ui/build/Android.bp\n  ui/logger/Android.bp\n  ui/metrics/Android.bp\n  ui/metrics/proc/Android.bp\n  ui/status/Android.bp\n  ui/terminal/Android.bp\n  ui/tracer/Android.bp\n  xml/Android.bp\n  zip/Android.bp\n  zip/cmd/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:\n  finder/fs/Android.bp\n  third_party/zip/Android.bp\n\nBug: 68860345\nBug: 151177513\nBug: 151953481\n\nTest: m all\n\nExempt-From-Owner-Approval: janitorial work\n\nChange-Id: Ia47ca14f16b8c9f84f9d533a07e5b00e2c04e8d4\n"
    },
    {
      "commit": "412322f2a251ec5a48b7d80dfd4b1628282d9b93",
      "tree": "a48cbb44052786bcf8dcfa5f244e95cf830a50cb",
      "parents": [
        "aef038aac1f18259a941b05b028e5e9beb5b3bd7"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Feb 03 16:51:22 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Feb 03 20:48:50 2021 +0000"
      },
      "message": "Set block-size for XZ mini-debug-info compression.\n\nThis allows the compression to be done on multiple threads\nand more importantly, it allows libunwindstack to decompress\nonly the needed blocks, which reduces unwind time and memory.\n\nBug: 110133331\nTest: verify lazy decompression in libunwindstack\nChange-Id: Ia3f597928edcbc85acdf05cb5c83ac7fced39148\n"
    },
    {
      "commit": "bd396b6d8a408ef4099ec0484f126d4a71331179",
      "tree": "8537777f5d0c4e6b9842faed288b9f1b712b4466",
      "parents": [
        "632f080f8830e2ded22d2e65fdf69cbbe6df40d8"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Feb 02 16:20:45 2021 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Feb 02 22:24:00 2021 +0000"
      },
      "message": "Force ART modules to be built from source here, regardless of default.\n\nWhen we start switching vanilla platform builds to use ART prebuilts,\nthis script should still build from sources.\n\nTest: TH\nBug: 172480615\nChange-Id: I04cb61b484855d22f22fd9b82f6abb30eb5665c3\n"
    },
    {
      "commit": "9436be43216d152265187c6d2eece38f9a10a9a7",
      "tree": "73debd3cb4e1b0d56b5a23347e2ad28593c34711",
      "parents": [
        "c4e17317d135b20cab28a1e6f9ca1425ba6a1e02",
        "237de41b382a2cf92d5c0efcef61090e51c8bbd0"
      ],
      "author": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Fri Jan 29 16:19:57 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 29 16:19:57 2021 +0000"
      },
      "message": "Merge \"Revert \"Delete build-aml-prebuilts.sh\"\""
    },
    {
      "commit": "237de41b382a2cf92d5c0efcef61090e51c8bbd0",
      "tree": "1dda9f50f4128e9fc6ed420102ff37909fb0f81c",
      "parents": [
        "35e3fd06668c535861f4638207c9c842ab3ed03a"
      ],
      "author": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Fri Jan 29 15:14:42 2021 +0000"
      },
      "committer": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Fri Jan 29 15:14:42 2021 +0000"
      },
      "message": "Revert \"Delete build-aml-prebuilts.sh\"\n\nRevert submission 1535006-bap\n\nReason for revert: Looks like it breaks the build as aapt2 depends on the build_number.txt this script was generating.  Error log below.\nReverted Changes:\nI0f6b34310:Delete build-aml-prebuilts.sh\nI4eae4153a:Replace use of build-aml-prebuilts\n\nChange-Id: I7f5f1b3047f3d71eb8ac7bec95c5916425d5d8f2\nFAILED: ninja: \u0027out/aml/soong/build_number.txt\u0027, needed by \u0027out/aml/soong/.intermediates/frameworks/base/tools/aapt2/aapt2/linux_glibc_x86_64/unstripped/aapt2\u0027, missing and no known rule to make it\n"
    },
    {
      "commit": "30d6f68b1abcbc8998f48495c47fadb29e8d1ad7",
      "tree": "bb384524f9f4df0b502a1c541078af190c2ca280",
      "parents": [
        "82aab58aea011e671358e0c45896c39d905386ca",
        "35e3fd06668c535861f4638207c9c842ab3ed03a"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Jan 29 09:11:16 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 29 09:11:16 2021 +0000"
      },
      "message": "Merge \"Delete build-aml-prebuilts.sh\""
    },
    {
      "commit": "9b6596bb60776f14533297eab965b9c20d8f5e1a",
      "tree": "f5f794d7f050b451dce853e560498540693414b5",
      "parents": [
        "7328c25275b23e8cd1d84451552c34323e22a3a0",
        "6bde0b5f9dba13c9e02ffd8936bb93599f086526"
      ],
      "author": {
        "name": "Sophie Zheng",
        "email": "sophiez@google.com",
        "time": "Tue Jan 26 00:13:46 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 26 00:13:46 2021 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Automated NDK API coverage used by Mainline modules build integration.\"\"\""
    },
    {
      "commit": "6bde0b5f9dba13c9e02ffd8936bb93599f086526",
      "tree": "e1062c2b8658f56838b105b7588a0a7b79aaba82",
      "parents": [
        "55e8815fb8d40abe2eba95190bd41843e556966d"
      ],
      "author": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Sat Jan 09 01:03:42 2021 +0000"
      },
      "committer": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Mon Jan 25 19:52:10 2021 +0000"
      },
      "message": "Revert \"Revert \"Automated NDK API coverage used by Mainline modules build integration.\"\"\n\nThis reverts commit 556b2ad77e31956cbc2a329553c8ad7692639708.\n\nOriginal change-id: Ib1b2f0dd2f9ae85b1545c6cc5bb4c5bbdfac1c15\n\nReason for revert: Add excutable permission to the gen_ndk_backedby_apex.sh.\n\nTest: TARGET_BUILD_APPS\u003dcom.android.adbd m dist apps_only\n\nChange-Id: Ib587ba200cd7f2f61d478452b43c329d72b2de06\n"
    },
    {
      "commit": "f17b07fc52b49896d0a357f3deeba7177180907c",
      "tree": "241072c33a55001e8e787b7639e0d5882bc973d6",
      "parents": [
        "f9be4e07e108eeea72acdbe3a08216f7744174d7",
        "556b2ad77e31956cbc2a329553c8ad7692639708"
      ],
      "author": {
        "name": "Riddle Hsu",
        "email": "riddlehsu@google.com",
        "time": "Mon Jan 25 06:15:29 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 25 06:15:29 2021 +0000"
      },
      "message": "Merge \"Revert \"Automated NDK API coverage used by Mainline modules build integration.\"\""
    },
    {
      "commit": "556b2ad77e31956cbc2a329553c8ad7692639708",
      "tree": "a0e69d2fe2521cb858f0693dd1dfdb5ec8eccd7d",
      "parents": [
        "87ff51db84afb6c1510de4835df56b1008688ee5"
      ],
      "author": {
        "name": "Riddle Hsu",
        "email": "riddlehsu@google.com",
        "time": "Mon Jan 25 01:44:34 2021 +0000"
      },
      "committer": {
        "name": "Riddle Hsu",
        "email": "riddlehsu@google.com",
        "time": "Mon Jan 25 01:44:34 2021 +0000"
      },
      "message": "Revert \"Automated NDK API coverage used by Mainline modules build integration.\"\n\nThis reverts commit 87ff51db84afb6c1510de4835df56b1008688ee5.\n\nReason for revert: build breakage b/178327796\n\nChange-Id: I51c56938540794097eda579ebe47fa5c0a4d8c12\n"
    },
    {
      "commit": "0bf77198b5bd2c441a83171b1416d78512705911",
      "tree": "b8a4ddd5cf8ba3616a5302ec9dd92cfb645528ff",
      "parents": [
        "ba680de96e0f510b900cb4a74297619881d904a8",
        "87ff51db84afb6c1510de4835df56b1008688ee5"
      ],
      "author": {
        "name": "Sophie Zheng",
        "email": "sophiez@google.com",
        "time": "Fri Jan 22 22:15:21 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 22 22:15:21 2021 +0000"
      },
      "message": "Merge \"Automated NDK API coverage used by Mainline modules build integration.\""
    },
    {
      "commit": "87ff51db84afb6c1510de4835df56b1008688ee5",
      "tree": "0258633442862d8ec3ac9c2aebf7ed1cff1b7a84",
      "parents": [
        "55e8815fb8d40abe2eba95190bd41843e556966d"
      ],
      "author": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Sat Jan 09 01:03:42 2021 +0000"
      },
      "committer": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Thu Jan 21 18:08:50 2021 +0000"
      },
      "message": "Automated NDK API coverage used by Mainline modules build integration.\n\nAdd gen_ndk_usedby_apex.sh script to generate NDK API list used by Mainlain modules when modules get build.\n\nTest: TARGET_BUILD_APPS\u003dcom.android.adbd m dist apps_only\n\nChange-Id: Ib1b2f0dd2f9ae85b1545c6cc5bb4c5bbdfac1c15\n"
    },
    {
      "commit": "fe6147eb260a989eae4e5ab809b97acf2a3b1fda",
      "tree": "5c63f271e95b3ae70a2c68d4899bb53a87fc3e9b",
      "parents": [
        "0e3aaa47aa950a7ace18cde1c8b9bae3d9959752",
        "064b70c9183c5d4c2698347d25912638663281b6"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Jan 19 14:34:29 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 19 14:34:29 2021 +0000"
      },
      "message": "Merge \"Export dex implementation jars from prebuilt_apex\""
    },
    {
      "commit": "064b70c9183c5d4c2698347d25912638663281b6",
      "tree": "f67911bc162ae99f8c0c59ac42e129c755fa3a89",
      "parents": [
        "db170e4a923c1383026746242e354c6b859e0044"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 02 17:32:38 2020 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Jan 15 18:14:10 2021 +0000"
      },
      "message": "Export dex implementation jars from prebuilt_apex\n\nDexpreopt and boot jars package check all require access to dex\nimplementation jars created for java_library and java_sdk_library. They\nwere available when building from source but not when building from\nprebuilts, even though they are embedded within the .apex files that\nare referenced from prebuilt_apex.\n\nThis changes adds support to prebuilt_apex to export the dex\nimplementation jars and updates java_import to use those exported dex\nimplementation jars.\n\nIn a source build dexpreopt/boot jars package check access the apex (or\nplatform) specific variant of a java_library, e.g. core-oj, from which\nit retrieves the dex implementation jar path.\n\nAfter this change in a prebuilt build dexpreopt/boot jars package check\nbehave in the same way except in this case they retrieve the dex\nimplementation jar path from the apex (or platform) specific variant of\nthe java_import, e.g. core-oj.\n\nThe work to export files from a `.apex` file for use by other modules\nis performed by a new `deapexer` module type. It is not used directly\nin an `Android.bp` file but instead is created implicitly by\n`prebuilt_apex`,\n\nIn order to do that this contains the following changes:\n* Adds a new `dexapexer` module type to handle the exporting of files\n  from the `.apex` file.\n* Adds an exported_java_libs property to prebuilt_apex to specify the\n  set of libraries whose dex implementation jars need exporting.\n* Creates apex specific variants of the libraries listed in the\n  exported_java_libs property.\n* Adds the set of exported files to the ApexInfo to make them available\n  to the apex specific variants.\n* Prevents the prebuilt_apex variants from being merged together as\n  they will not be compatible.\n* Modifies java_import to use the exported file for variants of a\n  prebuilt_apex.\n* Adds a ninja rule to unpack (using deapexer) the contents of the\n  prebuilt_apex\u0027s apex file, verify that the required files are present\n  and make them available as outputs for other rules to use.\n* Some minor refactorings to support these changes.\n* Adds tests to cover prebuilt only, prebuilt with source preferred,\n  and prebuilt preferred with source.\n\nTest: m nothing\nBug: 171061220\nChange-Id: Ic9bed81fb65b92f0d59f64c0bce168a9ed44cfac\n"
    },
    {
      "commit": "0dd19125ebc22f5c6085d2bb2d39e1e78ff5324e",
      "tree": "6b3b8eba51c2e3a64b719aad2ce5c3896363e30b",
      "parents": [
        "b47dcf7f0d290f140e32460846aacb795a02b060",
        "18dcd046ad91c4a11267969529add509b44bde9a"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jan 15 17:13:31 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 15 17:13:31 2021 +0000"
      },
      "message": "Merge \"manifest_fixer: Set targetSdkVersion to \u002716\u0027 for libraries\""
    },
    {
      "commit": "35e3fd06668c535861f4638207c9c842ab3ed03a",
      "tree": "d71aff4973e042e35c6076b591cd0057690d69ee",
      "parents": [
        "b47dcf7f0d290f140e32460846aacb795a02b060"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Tue Dec 22 16:51:24 2020 +0000"
      },
      "committer": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Jan 15 10:23:24 2021 +0000"
      },
      "message": "Delete build-aml-prebuilts.sh\n\nIts usecase can now be supported natively by soong_ui via the\n--skip-kati flag + the mainline_sdk product. Migrate\nbuild-mainline-modules.sh to use this new approach, and delete the\nscript.\n\nBug: 174315599\nTest: build/soong/scripts/build-mainline-modules.sh\nChange-Id: I0f6b34310df51ddf060b2912d43487f4d37dd01b\n"
    },
    {
      "commit": "18dcd046ad91c4a11267969529add509b44bde9a",
      "tree": "50c647c3c8fa280273b97ecd8291676ea847e5db",
      "parents": [
        "2bcb4940bbda88b4142d2db17208c5aa62f2d7dc"
      ],
      "author": {
        "name": "Andrew Wheeler",
        "email": "awheeler@motorola.com",
        "time": "Tue Jan 12 21:02:03 2021 -0600"
      },
      "committer": {
        "name": "Andrew Wheeler",
        "email": "awheeler@motorola.com",
        "time": "Thu Jan 14 14:11:39 2021 -0600"
      },
      "message": "manifest_fixer: Set targetSdkVersion to \u002716\u0027 for libraries\n\nmanifest_fixer.py sets a lib\u0027s targetSdkVersion to \u002715\u0027 if it is\nnot explicitly set.  But ManifestMerger will add dangerous\npermissions CALL_LOG_READ/CALL_LOG_WRITE if the following\nconditions are met:\n\n    - The app\u0027s targetSdkVersion is \u003e16\n    - A linked lib\u0027s targetSdkVersion is \u003c16\n    - The app has CONTACTS_READ/CONTACTS_WRITE permissions\n\nThis condition is triggered for some (OEM) app builds (of\nSettings).  Update manifest_fixer.py to use \u002716\u0027 as its default\ntargetSdkVersion so that manifest_merge doesn\u0027t add these\ndangerous permissions.\n\nChange-Id: Id5f41f7da98c190c8d145fceba0085cf473f4c7a\n"
    },
    {
      "commit": "c1b166357600f7c441ef63d0a4090f257b246a63",
      "tree": "843762e53c007ede5992a6a482e6e2610bbeb854",
      "parents": [
        "480376525753a96eb186f7a90e68c20fc880d10e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jan 11 09:45:57 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jan 11 09:45:57 2021 +0000"
      },
      "message": "Add tzdata-module-test-exports to the list of targets.\n\nTest: build-mainline-modules.sh\nBug: 142935992\nChange-Id: I2e765737a971efee837daefb5af0c272f561b36d\n"
    },
    {
      "commit": "2a9013ee174c7ee40f4e419dc741c8eb4e628946",
      "tree": "72d636047c8d0257b243420a661355ec3d0f8d29",
      "parents": [
        "175500f016fc940473fd7524481c796738ae8a58"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Dec 21 11:51:29 2020 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Dec 21 13:37:22 2020 +0000"
      },
      "message": "Set the Soong config variable to keep building ART from source.\n\nWithout this Soong may run into inconsistencies due to stale prebuilts.\nThis amends https://r.android.com/1529658.\n\nTest: TH build of NDK\nBug: 175918603\nBug: 172480615\nChange-Id: I14680e4547d7d5f560d31ef61b71af8d159c4c53\n"
    },
    {
      "commit": "56b584c4b2cab120ab99416507a4bc5cd41b43da",
      "tree": "c0f2c7b91b8513f89e34b374035c498b30e4d5f3",
      "parents": [
        "97a1be6e7b48743462eedab243d653d7b46d6acf",
        "ed623eaed876891ed004d4e4f5cef05b47306366"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Dec 17 22:31:04 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 17 22:31:04 2020 +0000"
      },
      "message": "Merge \"Change default for source_build config variable to true.\""
    },
    {
      "commit": "ed623eaed876891ed004d4e4f5cef05b47306366",
      "tree": "8fcdef79b93176a9e86fac83c24180f2d24178d1",
      "parents": [
        "f7c3bbe4338224c5966a24040f5673c100740c72"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Dec 15 02:55:55 2020 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Dec 15 03:58:07 2020 +0000"
      },
      "message": "Change default for source_build config variable to true.\n\nTo reflect the new (temporary) true default in make.\n\nTest: m\nBug: 172480615\nChange-Id: I9a32578554650776c1d6b3920fa233c5613a05e3\n"
    },
    {
      "commit": "7f487d4a86daa65353b1256a37323333e8971a72",
      "tree": "a558ebad4ca8c45992c4141a91c02c9bc1f48644",
      "parents": [
        "0523bd602490a65ffbccc49e4d0a21543fd36b3f",
        "37eb6c94484fe6aa30c0aaa514d9068cb67e9223"
      ],
      "author": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Dec 14 22:44:17 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 22:44:17 2020 +0000"
      },
      "message": "Merge \"Add MissingUsesLibraries to Soong vars for scripts that use --skip-make.\""
    },
    {
      "commit": "6f8fecd2e3f84ac2fba7cff4763f9ba97a484cbd",
      "tree": "debef3868350661ad6b09cd6c2605261026528a6",
      "parents": [
        "57fab96e0123f8de2faea7088a7c624e66d14099"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Dec 14 15:06:22 2020 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Dec 14 15:12:23 2020 +0000"
      },
      "message": "Stopgap fix to avoid aapt2 build errors.\n\nShould fix build errors on mainline_modules on aosp-master. This script\nstill does not propagate all options to aapt2 correctly, but that will\nbe fixed by removing the script altogether (b/174315599).\n\nTest: build/soong/scripts/build-aml-prebuilts.sh art-module-sdk \\\n      art-module-test-exports conscrypt-module-host-exports \\\n      conscrypt-module-sdk conscrypt-module-test-exports \\\n      i18n-module-host-exports i18n-module-sdk \\\n      i18n-module-test-exports platform-mainline-sdk \\\n      platform-mainline-test-exports runtime-module-host-exports \\\n      runtime-module-sdk\n  (the failing command in\n  build/soong/scripts/build-mainline-modules.sh)\nBug: 175386777\nChange-Id: I81aa20b1abd177f0d2886ab9b04831437da72f2a\n"
    },
    {
      "commit": "37eb6c94484fe6aa30c0aaa514d9068cb67e9223",
      "tree": "cc6b51097fc3ce06f2f012d136dbdb6a1d6e6ac7",
      "parents": [
        "57fab96e0123f8de2faea7088a7c624e66d14099"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Dec 10 14:02:21 2020 +0000"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Dec 14 15:03:40 2020 +0000"
      },
      "message": "Add MissingUsesLibraries to Soong vars for scripts that use --skip-make.\n\nIn platform builds missing libraries are defined with make variable\nINTERNAL_PLATFORM_MISSING_USES_LIBRARIES via soong_config.mk. When Soong\nis invoked with \"--skip-make\" parameter,\nINTERNAL_PLATFORM_MISSING_USES_LIBRARIES is not picked up. As a result\nthe build fails because of missing dependencies.\n\nThis CL uses get_build_var to get the value of\nINTERNAL_PLATFORM_MISSING_USES_LIBRARIES, then converts it to JSON list.\n\nIn the future would be better to migrate both scripts to use --skip-kati\nintroduced in https://r.android.com/1512613.\n\nBug: 175286760\nBug: 132357300\nTest: forrest build for target \"ndk\" branch \"aosp-master\".\nTest: Patch build-aml-prebuilts.sh and build-ndk-prebuilts.sh to dump\n  their soong.variables config, observe that MissingUsesLibraries is\n  coherent with INTERNAL_PLATFORM_MISSING_USES_LIBRARIES. Start running\n  each script and observe that they don\u0027t fail early due to missing\n  dependencies.\nChange-Id: I5dbc1d3ea7a64de1e8be6332003acc940c2e6a76\n"
    },
    {
      "commit": "4c13f587299a9e0f4332b20427a2917b69dcc980",
      "tree": "fde55c75c6cfec8b0f64a1e2f493f38fbdb1dc12",
      "parents": [
        "d36c83862fe289f32faefa3af5c2177be540b328"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Nov 11 12:49:03 2020 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Dec 11 19:20:47 2020 +0000"
      },
      "message": "Add i18n-module-host-exports to the SDK list.\n\nNecessary only when platform start using i18n prebuilts, but this helps\nCI testing.\n\nTest: build/soong/scripts/build-mainline-modules.sh\nBug: 172480615\nChange-Id: Ic24f934ad0b4b7ac7c38d791f80df33315b936e9\n"
    },
    {
      "commit": "f371381cace6273d4e155fc85974c0ddc3ef6962",
      "tree": "98f31bff28207c77040d607eba7497af07b408b4",
      "parents": [
        "78b340f37545f3c9a428af854b29fb5a59a92af5"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Dec 01 18:00:52 2020 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Dec 08 22:30:03 2020 +0000"
      },
      "message": "Propagate the Soong config variable for enabling ART Module building.\n\nIt is set in art/build/build-art-module.sh.\n\nTest: art/build/build-art-module.sh\nBug: 172480617\nChange-Id: Idbb3478667a2265ba115922207cb6d9aa6c4c91d\n"
    },
    {
      "commit": "8baa8b50a84c9e9ec6308536cdf8f258283f0ca5",
      "tree": "5cbd279f7530c5cf23a47e76822afffbaec616b6",
      "parents": [
        "4396c01aff3b4a67f5400eccf5b89a257defd8f8",
        "c80a2b392e21b9d8e1ef739ca592f8a43361db24"
      ],
      "author": {
        "name": "Sophie Zheng",
        "email": "sophiez@google.com",
        "time": "Thu Dec 03 23:30:21 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 03 23:30:21 2020 +0000"
      },
      "message": "Merge \"Automated NDK API coverage used by Mainline modules build integration.\""
    },
    {
      "commit": "4ee686ddca07cb9cc2df05a73877e011cafa123e",
      "tree": "bb42b365ff71a69052ed8add8eee6b5917054a3e",
      "parents": [
        "7ad102164b890bf81d1e4be0f5f727e91fc9073a"
      ],
      "author": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Thu Dec 03 15:20:07 2020 +0900"
      },
      "committer": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Thu Dec 03 17:09:56 2020 +0900"
      },
      "message": "Add \u0027append\u0027 command for conv_linker_config\n\nAdd \u0027append\u0027 command for conv_linker_config so any item can be appended\nto linker.config.pb file.\n\nBug: 174646355\nTest: buildbot_build.sh succeeded\nChange-Id: Ic3f12ee5e5c0e7ca7c27d4a8cff347e93061eb5f\n"
    },
    {
      "commit": "c80a2b392e21b9d8e1ef739ca592f8a43361db24",
      "tree": "47173902694ff7cb31a72dfee0235614703ce571",
      "parents": [
        "b9e93f8789791436298235bf531ef50ceb660eb1"
      ],
      "author": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Thu Nov 12 16:39:19 2020 +0000"
      },
      "committer": {
        "name": "sophiez",
        "email": "sophiez@google.com",
        "time": "Thu Dec 03 05:45:20 2020 +0000"
      },
      "message": "Automated NDK API coverage used by Mainline modules build integration.\n\nAdd gen_ndk_usedby_apex.sh script to generate NDK API list used by Mainlain modules when modules get build.\n\nTest: TARGET_BUILD_APPS\u003dcom.android.adbd m dist apps_only\n\nForrest run: android-build.googleplex.com/builds/forrest/run/L97800000742565481\n\nChange-Id: I39e5aa7c74eff46aba06808642b2bd67ae45ba1e\n"
    },
    {
      "commit": "24dfc1fbb2d2ccf5377613f3c0bc4b088f39fd0e",
      "tree": "060f5989cb00f962d3b72baf664233c1d9ce3d7b",
      "parents": [
        "493e7ec3eee7e62035326eff5defbeb0cca6de82"
      ],
      "author": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Mon Nov 16 10:48:44 2020 +0900"
      },
      "committer": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Tue Dec 01 14:09:03 2020 +0900"
      },
      "message": "Generate system stub library list at build time\n\nList of stub libraries from system (and bionic APEX) is currently\nmanaged in static file. This change generates the list at build time and\nadds to the system config so linkerconfig can use it.\n\nBug: 172889962\nTest: Build cuttlefish and confirmed list is generated in\n/system/etc/linker.config.pb\n\nChange-Id: Ie0400e9d1098b0de19c6a7c25f261384aadde0a3\n"
    },
    {
      "commit": "cda22c9bb92a5fc4fa5063103afde34805161c7a",
      "tree": "f7304d81543a6c3319ce32ca71639241dc718ddd",
      "parents": [
        "b26070efef296bdd26c9d2ddadd0b4083587c484"
      ],
      "author": {
        "name": "Jingwen Chen",
        "email": "jingwen@google.com",
        "time": "Mon Nov 23 00:22:30 2020 -0500"
      },
      "committer": {
        "name": "Jingwen Chen",
        "email": "jingwen@google.com",
        "time": "Mon Nov 23 00:29:18 2020 -0500"
      },
      "message": "Refactor \u0027in_make\u0027 to mean Kati is not skipped.\n\nIn Nougat and before, Make wrote a marker file to indicate that\nsoong_build was invoked from Make to change certain behaviors of Soong\nat build time.\nhttps://cs.android.com/android/platform/superproject/+/android-7.1.2_r36:build/core/soong.mk;l\u003d70-73;drc\u003dae18638b0406ad107b0882a02a13cdd8b92f2a4e\n\nThings have changed, and now soong_build is invoked from soong_ui, which\nsupports a --skip-make configuration flag:\nhttps://cs.android.com/android/platform/superproject/+/master:build/soong/ui/build/build.go;l\u003d31-33;drc\u003d680387bf1d3ce7cbc77f535be7c42cec411b1687\n\nThus, the various remnants of \u0027EmbeddedInMake\u0027 and \u0027inMake\u0027\nconfiguration are misleading, since soong_build is no longer invoked\nfrom Make. This CL refactors all instances to actually mean that\nKati is enabled (not skipped with --skip-make), and will run after\nsoong_build finishes, so Kati-specific behavior like the AndroidMk\nsingleton should run.\n\nTest: TH presubmit\n\nChange-Id: I576ab8e54f99f5c8ddf9feaf9a828019b279e266\n"
    },
    {
      "commit": "cd4f673ceb7f2d883d6d2a00a61164712b93963f",
      "tree": "d4426b4b486a0f7d02707a868719c9bda209c6b6",
      "parents": [
        "af335a4694c7884bac3b1c90a935177211f4e2a1"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Oct 30 12:03:19 2020 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 16 17:46:16 2020 +0000"
      },
      "message": "Switch boot jars package check to use dexdump xml output\n\nThe xml output from dexdump is more stable than the text output so this\nchange switches to use that.\n\nBug: 171479578\nTest: m check-boot-jars - for failing and passing cases\nChange-Id: Ie347b1b685951524d5ae09db280248c61b4228ee\n"
    },
    {
      "commit": "c488743e1408fae1c2354104d34effd40ceb2836",
      "tree": "046a42cb946931dce7696ebfa2fc358bbe017eb2",
      "parents": [
        "45e0c95f859d6ae3743a9971be8b43b91c3bd68f"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Nov 05 12:59:02 2020 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Nov 13 15:40:17 2020 +0000"
      },
      "message": "Set up BuildNumberFile in soong.variables.\n\nNecessary for some build steps. aapt2 is one example, although it still\nhas problems because part of its build logic is in make.\n\nThis isn\u0027t strictly required for any supported build target at the\nmoment, but the error when it fails can be confusing so let\u0027s add it\nanyway.\n\nTest: build/soong/scripts/build-aml-prebuilts.sh art-module-sdk \\\n  art-module-test-exports conscrypt-module-sdk \\\n  conscrypt-module-test-exports conscrypt-module-host-exports \\\n  runtime-module-sdk runtime-module-host-exports \\\n  i18n-module-test-exports i18n-module-sdk platform-mainline-sdk \\\n  platform-mainline-test-exports\nBug: 172548608\nChange-Id: I88526a85f288287c3a138f8cbb6fd04ad28c3795\n"
    },
    {
      "commit": "2d8e1a7e590417f7e96df3df72f45ccdd16dd513",
      "tree": "4d7f050d5f1bf1e5349f58ba36386d5a5aa89abf",
      "parents": [
        "99a762288538d8737492cf0235ae97e617222e25"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Oct 29 12:56:09 2020 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 10 17:37:43 2020 +0000"
      },
      "message": "Switch boot jars package check to using dex jars\n\nThe switch to use dex jars instead of class jars means that a boot jar\nthat is defined by a dex_import module will now be checked against the\npackage_allowed_list.txt so it is possible that it will detect\npreviously unreported problems.\n\nTest: m check-boot-jars - for failing and passing cases\nBug: 171479578\nBug: 125517186\nChange-Id: Ie614898dade0fb43c9418d7afb9138169db6f097\n"
    },
    {
      "commit": "e52c665d7fec4924096c1899ce95487ed4a21d7b",
      "tree": "5f70a538d64e7e39e589d8342e19b76a65b4dd33",
      "parents": [
        "e83dea5aac2c307441af85c2ef5bc744bc015326"
      ],
      "author": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Fri Oct 23 11:00:25 2020 +0900"
      },
      "committer": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Tue Nov 03 16:00:23 2020 +0900"
      },
      "message": "Allow comments from linker.config.json\n\nFilter out lines starts with \"//\" from json file to allow simple\ncomments on the contents. Original json format does not support\ncomments, but this reduces readability compared to txt file or other\nformats. This change allows simple comments on the linker.config.json to\ngive more information on the contents.\n\nTest: parse succeeded with commented contents\nChange-Id: I1c734bf9a054f81f57aa2aea1038d0041297acf1\n"
    },
    {
      "commit": "9a89a2a0eae3920e617e50b61df3f2b1139b634d",
      "tree": "d541f8ba91ad80d269000b5d9185540aad3415f7",
      "parents": [
        "e430ac338a615789921883c773163167aca54e17"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Oct 28 19:20:06 2020 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Oct 29 17:20:06 2020 +0000"
      },
      "message": "Move boot jars package check from make\n\nAdds a singleton that traverses the module variants finding the ones\nthat are in the list (updatable and non-updatable) of boot jars and\nadd a ninja rule to ensure that they only contain packages from an\nallowed list.\n\nReplaces a hack that ignored any prebuilt boot jars supplied as dex\nfile with an equivalent one to ensure that they are still ignored.\nA follow up change that switches to checking dex jars will allow the\nhack to be removed.\n\nThe boot jars check can be strict or lax. If strict then all the boot\njars listed in the configuration must be found, otherwise it will only\ncheck the ones it finds. It is strict by default unless\nTARGET_BUILD_UNBUNDLED\u003dtrue or ALLOW_MISSING_DEPENDENCIES\u003dtrue.\n\nMoves the script and data file from build/make.\n\nTest: m check-boot-jars - for failing and passing cases\n      SKIP_BOOT_JARS_CHECK\u003dtrue - no check-boot-jars target created\n\t  ALLOW_MISSING_DEPENDENCIES\u003dtrue - not strict\n\t  TARGET_BUILD_UNBUNDLED\u003dtrue - not strict\n      verified manually that apart from path differences the same\n      files (same check sum) were checked in both old make checks and\n      the new Soong ones\n      EMMA_INSTRUMENT\u003dtrue EMMA_INSTRUMENT_FRAMEWORK\u003dtrue m check-boot-jars\nBug: 171479578\nChange-Id: I9d81d6650ba64fc0d48d2dab4ba5a3ba8dd03dec\n"
    },
    {
      "commit": "8130c482abf16bb1fdb34250ece258ccd7423780",
      "tree": "72168a57d9ecd8d32cac4b5b7a6120d33d91d12f",
      "parents": [
        "b521811d7bd3b69039f05b1d7fd0599a33254ab8"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Wed Oct 07 15:17:13 2020 +0100"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Oct 27 17:05:30 2020 +0000"
      },
      "message": "Move part of logic from construct_context.py to Soong.\n\nconstruct_context.py is a script that runs at Ninja stage and constructs\nclass loader context arguments for dex2oat. Previously it accepted lists\nof library paths and concatenated them into one class loader context\nstring. The script also handled the dependency of \"android.hidl.manager\"\non \"android.hidl.base\" that is not tracked by the build system and must\nbe handled in a special way.\n\nNow that class loader context representation is going to change from\nflat lists to trees, passing paths to individual libraries as script\narguments is no longer possible, because a list of paths cannot\nrepresent a class loader context tree. Passing the trees in a serialized\nform is also inconvenient, because the script would have to parse them,\nwhich would complicate it a lot.\n\nTherefore this patch ports all the concatenation and \"android.hidl.base\"\nhandling to Soong. It is not possible to port the remaining script to\nSoong because Soong has no information about the targetSdkVersiion of\nthe dexpreopted apps (it is in the manifest and sometimes in an APK, and\nhas to be extracted at Ninja time).\n\nTest: construct_context_test.py\nTest: new subtests in TestUsesLibs\nTest: lunch aosp_cf_x86_phone-userdebug \u0026\u0026 m\nBug: 132357300\nChange-Id: Icdb03cf00d1e27e4cff3844b89bfaec4de502dd7\n"
    },
    {
      "commit": "7f51107ee6a7666cbb7d7340c7e08655e767a9a2",
      "tree": "83644370c660f1d8052b4e49ede715e4a9c9dd30",
      "parents": [
        "7020ca00e5d7049a9af1cd212d9a5744b7ed14d1"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Oct 12 15:10:36 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Oct 21 15:41:02 2020 +0100"
      },
      "message": "Rename ART release APEX to com.android.art.\n\nTest: See https://r.android.com/1457217\nBug: 169639321\nChange-Id: I6800c7a382486b4e50945cc8b789f4be16482fe6\nMerged-In: I6800c7a382486b4e50945cc8b789f4be16482fe6\n"
    },
    {
      "commit": "62abd12ba573d123cda34515a75f6e228f6cadc4",
      "tree": "7390c5c080d2d429120e50c43bcceb217058494f",
      "parents": [
        "6ddb81b0dbc50a80ea39016e804a64073d82710e"
      ],
      "author": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Tue Oct 06 17:16:44 2020 +0900"
      },
      "committer": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Thu Oct 15 23:09:35 2020 +0900"
      },
      "message": "Handle new filetype \u0027linker_config\u0027\n\nHandle new filetype \u0027linker_config\u0027 which is configuration for\nlinkerconfig in json type and convert into protobuf in build time.\n\nBug: 169634881\nTest: Build succeeded and cuttlefish boot succeeded\nChange-Id: I56555fc738e6d6600d15a191a24f79a2ee747f52\n"
    },
    {
      "commit": "4e1f2bd0d85dab0cbeefa14d6121b0b16ae5e5cf",
      "tree": "1a8b03d73ebc071a36c4c1865048f489eeba1cb3",
      "parents": [
        "996de36d0f987821bfbaf1058f62ae03f72f8d09"
      ],
      "author": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Thu May 14 15:15:01 2020 +0100"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 30 21:17:42 2020 +0000"
      },
      "message": "Track allowed transitive deps in any updatable module.\n\nInstead of tracking per module and per module variant, track allowed\nlist of dependecies for all modules combined. This avoids issues with\ndifferent products and different downstream branches having different\nbuild graphs.\n\nTo compare allowed_deps.txt vs head, run:\n:; m -j out/soong/apex/depsinfo/new-allowed-deps.txt.check\n\nTo update source allowed_deps.txt, run:\n:; build/soong/scripts/update-apex-allowed-deps.sh\n\nBug: 149622332\nTest: m\nChange-Id: Ic518fbd9ebfe1b46aaf9a58df731780a7e5a676b\nMerged-In: Ic518fbd9ebfe1b46aaf9a58df731780a7e5a676b\n(cherry picked from commit 453555083b86ff35d874df08f68bf6252fc12fd1)\n(cherry picked from commit e5207cd9a62f0cf521e95257720529392134a603)\n"
    },
    {
      "commit": "2829f6c09c3d28eabe4372582c802ff755edc6a9",
      "tree": "44f4a075c2826845a8e8398aaaddb59993231317",
      "parents": [
        "a57e56a684cb0d250a4f9060c59f7cc5ae607ec3"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Aug 11 01:41:20 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Aug 11 01:41:20 2020 +0100"
      },
      "message": "Propagate settings for building in an unbundled tree.\n\nTest: build/soong/scripts/build-aml-prebuilts.sh art-module-sdk\n  on master-art\nChange-Id: Iaff7f590d67fdd6f533f2831475deb7b92090ea2\n"
    },
    {
      "commit": "b0df23f2011d90b55bfb6db0d713ca5dc8cc23f4",
      "tree": "db0fca0c7cbb88cdc8ba7616f913351fa452cc9e",
      "parents": [
        "da931d4abdd32d97c518ffb901c6631317d78b80"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Aug 05 15:56:09 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Aug 05 15:56:21 2020 +0100"
      },
      "message": "Add platform-mainline-test-exports in list of modules to build.\n\nNeeded for ART testing.\n\nBug: 142935992\nTest: build-mainline-modules.sh\n\nChange-Id: I842feff85f88ecc2c7db1e84e803d9e8149923af\n"
    }
  ],
  "next": "f23054f668663bce274e45e5571b60cc648a49dc"
}
