)]}'
{
  "log": [
    {
      "commit": "6f6392a346bad61212d752aff0ff2e0d72a6f088",
      "tree": "13c76bccd5385908b65835683d34d6aed2d8fdfc",
      "parents": [
        "2287eb6cf0c56fefcfd8ee508b082b7f1f699386",
        "623cffb00e7a079698cfa51cf1d2a3722aecd470"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Nov 29 22:08:24 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 29 22:08:24 2023 +0000"
      },
      "message": "Merge \"HostStubGen: Write verbose/debug log to a file\" into main"
    },
    {
      "commit": "623cffb00e7a079698cfa51cf1d2a3722aecd470",
      "tree": "8f49a872893c30ca9a254c5c7cd712e3a3e1cb0d",
      "parents": [
        "a29375a5fcc9bb14cfbbfcb7255eaf7a901a4804"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Nov 29 10:45:06 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Nov 29 13:02:56 2023 -0800"
      },
      "message": "HostStubGen: Write verbose/debug log to a file\n\nSee below for the log filename.\n\nAlso disable an unimplemented flag.\n\nBug: 311174191\nTest: ./scripts/run-all-tests.sh\nTest: m framework-minus-apex.ravenwood\n    and examine console output and\n    out/soong/.intermediates/frameworks/base/framework-minus-apex.ravenwood-base/android_common/gen/hoststubgen_framework-minus-apex.log\nChange-Id: I9997370c93e2fe90276d5f3e657d45d440ca0a59\n"
    },
    {
      "commit": "43b63c6fd69cdf57750c60554d047982d8154dcd",
      "tree": "cb8cfa0a667d1aa2a5462d663717795aac921d6c",
      "parents": [
        "868651a7b20e07852e7164cb5c856aba722b3bc8",
        "32154d2cd632fbd49e583883b050c4193825e6d8"
      ],
      "author": {
        "name": "Jeremy Meyer",
        "email": "jakmcbane@google.com",
        "time": "Wed Nov 29 19:13:01 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 29 19:13:01 2023 +0000"
      },
      "message": "Merge \"Move some image/9patch code to androidfw\" into main"
    },
    {
      "commit": "3c941e1af17f1ab705bd4c328d7174c4903a398f",
      "tree": "73fd8cf9ee3377f5585f353886d35cbd5c793282",
      "parents": [
        "ce2b23de426683376fedb720a11798f4b6d0a747",
        "ac5636e6aa215ed2f5cce87803312e6c78443ef6"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Nov 29 17:30:45 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 29 17:30:45 2023 +0000"
      },
      "message": "Merge \"HostStubGen: Fix minor bug\" into main"
    },
    {
      "commit": "32154d2cd632fbd49e583883b050c4193825e6d8",
      "tree": "80cc8d64436c8237e81da790c335b7b392e54e72",
      "parents": [
        "ee26e36bde533955663a99e225fc93ed6da7148d"
      ],
      "author": {
        "name": "Jeremy Meyer",
        "email": "jakmcbane@google.com",
        "time": "Fri Nov 03 14:20:23 2023 -0700"
      },
      "committer": {
        "name": "Jeremy Meyer",
        "email": "jakmcbane@google.com",
        "time": "Tue Nov 28 16:36:12 2023 -0800"
      },
      "message": "Move some image/9patch code to androidfw\n\nTest: Automatic\nBug: 296324826\nChange-Id: I06b8df4fd53304d6663e80879892a635168ab28b\n"
    },
    {
      "commit": "ac5636e6aa215ed2f5cce87803312e6c78443ef6",
      "tree": "d5603220d7c32ef2042ad487a5888c3faf681a7b",
      "parents": [
        "a29375a5fcc9bb14cfbbfcb7255eaf7a901a4804"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 28 15:11:47 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 28 15:11:47 2023 -0800"
      },
      "message": "HostStubGen: Fix minor bug\n\nIn some cases, filter classes need to use [outermostFilter]\nto refer to policies on other items.\n\nBug: 292141694\nTest: run-all-tests.sh\nChange-Id: I6f2796fb44e7f70e9f64f77107b2046c3733e0e2\n"
    },
    {
      "commit": "3b0c4f80d2d0096cd6a36efc61d0dfb32788a3d8",
      "tree": "50d299633c7002c58d27fd933e2fdd8a90dd52ff",
      "parents": [
        "a29375a5fcc9bb14cfbbfcb7255eaf7a901a4804"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 28 12:59:43 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 28 12:59:43 2023 -0800"
      },
      "message": "Keep all AIDL generated classes\n\nAlso fix the AIDL class detection.\n\nTest: m framework-minus-apex.ravenwood and make sure IAccountAthenticator\n  and its nested classes are all kept.\nTest: ./run-all-tests.sh\nChange-Id: Idb870a6e7558f7303a2072afbede2a868204e2bf\n"
    },
    {
      "commit": "a0b1fe260973956324982c3b48f644addc7985d4",
      "tree": "ff9d22492d200fe35ab4781f8ca24c33bc1321bd",
      "parents": [
        "b3fc530f436974668b3adb53481e899da530d9b5"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Nov 22 15:08:31 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Nov 22 15:23:07 2023 -0800"
      },
      "message": "HostStubGen: Prevent conflicting command line args\n\nAlso remove unused option\n\nBug: 292141694\nTest: run-all-tests.sh\nChange-Id: I32c663100362c9bf19ed42c6453bdf097bb20b49\n"
    },
    {
      "commit": "b3fc530f436974668b3adb53481e899da530d9b5",
      "tree": "73ad29de6f04ade7b0ffc1d8d553595d1dac49b8",
      "parents": [
        "d43ef9e83352ed06c25153a4105779c8dee2ba24",
        "ac1422f0cec0cc1e10674c3710889ad86835a73b"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Nov 22 16:20:05 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 22 16:20:05 2023 +0000"
      },
      "message": "Merge \"HostStubGen: Add heuristics for AIDL classes\" into main"
    },
    {
      "commit": "0864752e5ae619b7960484aeab3ef737c3f0e020",
      "tree": "a64ce389a59fa4c608dfb19f4fb08befb42f22e6",
      "parents": [
        "828032328afd1dbd7cf2c2c5d6c4640c1d405f5a",
        "1c7db6b9a1562404b870daa19d353d159e9608a9"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Nov 22 15:27:37 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 22 15:27:37 2023 +0000"
      },
      "message": "Merge \"Support Handler/Looper for Ravenwood, with CTS.\" into main"
    },
    {
      "commit": "ac1422f0cec0cc1e10674c3710889ad86835a73b",
      "tree": "31a4b63b286b0c9e949b3a93da1bcc4f54cf19ff",
      "parents": [
        "d8739cea23fbc7e62add1dcf83e4d701aaa30129"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 21 16:47:17 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 21 16:47:17 2023 -0800"
      },
      "message": "HostStubGen: Add heuristics for AIDL classes\n\nThe text policy file now allows \":aidl\" as a \"special class name\" and allow\nsetting a policy for AIDL generated classess.\n\nTest: run-all-tests.sh\nBug: 292141694\nChange-Id: I5373bf96047f9d0accf9321e6f82082c65124138\n"
    },
    {
      "commit": "c8a04dca66f78307db54c187f236d1b5eefc92ba",
      "tree": "ada62144db1951ec5976feec74c5764a7b18e168",
      "parents": [
        "e1d9a7ce438a1fbde04c30203e5a9389220018a8"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 21 09:52:24 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 21 10:21:23 2023 -0800"
      },
      "message": "HostStubGen: Stub generation is now optional, etc\n\n- Now both --out-stub-jar and --out-impl-jar are optional\n- Disable --enable-non-stub-method-check by default\n  (it\u0027s not fully implemented anyway)\n- Delete the script `run-ravenwood-test` since now atest\n  just works.\n\nTest: run-all-tests.sh\nBug: 292141694\nChange-Id: I3b7d63600139425e5fffc12930ee860edf2acd7f\n"
    },
    {
      "commit": "1c7db6b9a1562404b870daa19d353d159e9608a9",
      "tree": "8f57aa4b4e62972c57549ca5fe950dab8ac53c45",
      "parents": [
        "c914beed5fe5055d4aea2a227b064c45fdbd96ce"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Nov 16 16:10:54 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Nov 21 09:36:02 2023 -0700"
      },
      "message": "Support Handler/Looper for Ravenwood, with CTS.\n\nNow that we have a solid foundation of classes available, one of the\ntricker pieces is supporting Handler/Looper under Ravenwood.  At its\ncore, the native implementation of MessageQueue can be emulated using\ncore JVM primitives, which is enough to reliably pass CTS.\n\nAdvanced features like FileDescriptor events will need to wait until\nwe eventually have real JNI support.\n\nFix obscure bug with SystemClock; must be positive number.  Always\nstart our \"fake\" pointers from 1 to prevent `nullptr` oddness.\n\nBug: 292141694\nTest: atest-dev CtsOsTestCasesRavenwood CtsOsTestCases\nChange-Id: I0f82b659973443968ef2609a7e3151f381abff29\n"
    },
    {
      "commit": "570427bace2b13df338844d788a7ceed7e0549cb",
      "tree": "533b22f6e5d52f0e835b7fba5ab0eb89f0d59947",
      "parents": [
        "4181facfdaed9d29cd7ffaf27d02dd281ed133d8",
        "ce9f0d06ecdd4df817d1983a4a21802ab31be8c6"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Mon Nov 20 18:50:18 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 20 18:50:18 2023 +0000"
      },
      "message": "Merge \"More `android.util` internals, with tests.\" into main"
    },
    {
      "commit": "ce9f0d06ecdd4df817d1983a4a21802ab31be8c6",
      "tree": "9ccb9eba97d1b6adde6b1991a87070f322b1e263",
      "parents": [
        "cb4a047ed5d0ce8cc9dbb2cdabc30940a630093d"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Nov 16 10:57:43 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Mon Nov 20 08:49:29 2023 -0700"
      },
      "message": "More `android.util` internals, with tests.\n\nInternal test authors are likely going to want to use internal\nutilities that aren\u0027t in the official API surface.  This change adds\nthose to Ravenwood, along with local tests to confirm they work.\n\nBug: 292141694\nTest: atest-dev FrameworksUtilTestsRavenwood\nChange-Id: I0f4df50416d153418d4525bd8ec5c4dbf04521a2\n"
    },
    {
      "commit": "0c76c852ebeb2349772017a8737620b1452679ba",
      "tree": "b905491002d1a4ddbe28a0161f636db0b5d6381b",
      "parents": [
        "fff1a90416497cb8a3cc5ab9e8bb956c71ae24f6"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 17 11:06:26 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 17 11:06:26 2023 -0800"
      },
      "message": "[HostStubGen] Support non-static methods...\n\n... with native substition classes.\n\nIt turned out native methods can be non-static. Now we handle them in this way:\n- The substitution method still needs to be static.\n- And take the original \u0027this\u0027 as the first argument.\n\nThe first argument type must match the source class.\n(e.g. the arg type can\u0027t be `Object`)\n\nTest: run-all-tests.sh\nBug: 292141694\nChange-Id: I9a53e1c155e138e466589c1a7684dcc86601e9c8\n"
    },
    {
      "commit": "73067713b07dbb98934e46ca930fc69e45cef984",
      "tree": "9728db632508a21f7a35e3962ff8a4536511b384",
      "parents": [
        "f8810f0d77eeefe487ec13a2966bfe2b2463d948"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Mon Nov 13 11:09:27 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Nov 15 09:42:09 2023 -0700"
      },
      "message": "[1/?] Support android.content for Ravenwood.\n\nInitial pass at foundational classes under android.content, along\nwith CTS to verify consistency.\n\nMethods that interface to broader parts of OS remain marked as\n\"throw\" for the moment, such as cross-process work and StrictMode.\n\nBug: 292141694\nTest: atest-dev CtsOsTestCasesRavenwood CtsOsTestCases\nTest: atest-dev CtsContentTestCasesRavenwood CtsContentTestCases\nChange-Id: Ic3deafb1f4058fcc104882a3508728994669f7d2\n"
    },
    {
      "commit": "1cd0782d78d5de0ed983b684a5ff2c98e4740f1e",
      "tree": "6ff0153539b5c8e8b1bd144baf99ebd6d6484270",
      "parents": [
        "951fd41d3b762bc94cb9055d959f8ac3e1ebb6df",
        "4ee8a655a0b41cec660578081fa1a21248e457cc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Nov 15 15:14:20 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 15 15:14:20 2023 +0000"
      },
      "message": "Merge changes from topic \"nov13\" into main\n\n* changes:\n  PersistableBundle for Ravenwood, with CTS.\n  More android.os work for Ravenwood, with CTS.\n"
    },
    {
      "commit": "4ee8a655a0b41cec660578081fa1a21248e457cc",
      "tree": "1bfddb5c7b1ac04f25552546541d15dda194f1c0",
      "parents": [
        "9e4b2c126da5c08da547cc7cb0c8a838da54d868"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Nov 14 08:45:56 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Nov 15 13:13:56 2023 +0000"
      },
      "message": "PersistableBundle for Ravenwood, with CTS.\n\nWe have the XML interfaces from libcore, but the implementations\nthere are tied closely to things like StringPool.  We thankfully\nhave our own human-readable XML serializer that we could use, but\nthere\u0027s unfortunately not a good pull parser.\n\nTo get us unstuck for the moment, pivot the internals to\nunconditionally use the binary XML format, which at least we\nknow is thoroughly tested, and any data written through this path\ncan then also be parsed.\n\nThis is enough to support PersistableBundle, and we\u0027ll circle back\nto get ourselves a human-readable XML implementation in the future.\n\nBug: 292141694\nTest: atest-dev CtsOsTestCasesRavenwood CtsOsTestCases\nChange-Id: I875a3a2b0e95e52861afe187e2a5e9f1e740d8d5\n"
    },
    {
      "commit": "c3ea2f9ed92eb26ec91d6ef22daf2d064c9fd53c",
      "tree": "f7303b378ad1751f91f80bf04f07e65792b4651a",
      "parents": [
        "01950b4334e321268c70af273da99f34b9b8251e",
        "3f9ad6d86c1c031d9e72bba94ec1afdcf769f860"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Tue Nov 14 20:44:23 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 14 20:44:23 2023 +0000"
      },
      "message": "Merge \"[aapt2] Implement FeatureFlagsFilter\" into main am: 3fc4d3967e am: 6095d3d19b am: 3f9ad6d86c\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2818004\n\nChange-Id: I44fd307905648b42caf0302158968bc6682e387a\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "6095d3d19bc8169ce0df4604edfb66cb3885563b",
      "tree": "9bfeb851ab745073c5653eb2121362ea923cdd6d",
      "parents": [
        "b17d43cf0a6af33e959855de48fdd04b279e9a2c",
        "3fc4d3967e6f74ee11bafb1cde34b2ea4ba21d99"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Tue Nov 14 19:43:01 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 14 19:43:01 2023 +0000"
      },
      "message": "Merge \"[aapt2] Implement FeatureFlagsFilter\" into main am: 3fc4d3967e\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2818004\n\nChange-Id: Ib98d9958e82ece8d081adce4be10b42cece16647\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "dcc00c4b4d125a70efe9d7f8e8032bc6d07efb74",
      "tree": "658eba1b900d0160a4d672d80ad3d2abc84b55e4",
      "parents": [
        "2d2d98a810be043275bc5a7cbb28140cb3b082e5"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Fri Nov 03 13:40:40 2023 -0700"
      },
      "committer": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Tue Nov 14 05:46:57 2023 +0000"
      },
      "message": "[aapt2] Implement FeatureFlagsFilter\n\nFeatureFlagsFilter looks for `android:featureFlag` attributes in the XML\nand removes elements according to the given flag values.\n\nBug: 297373084\nTest: atest aapt2_tests\nChange-Id: Icf97de2152c0c53b0b4518ae837e0d198873d1c5\n"
    },
    {
      "commit": "28df6d69a170c7b2af89df9083868339c9dbd76f",
      "tree": "11ad5fcb4af88ac044678774304c0bb2b3d21008",
      "parents": [
        "a3de003a3aa978dbe85159e1fb4e2717b70c0fa4",
        "c9ea26e5cbcd1d8a4237a261c26541276aac7e98"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Nov 14 01:26:11 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 14 01:26:11 2023 +0000"
      },
      "message": "Merge changes I0fbd41b6,If791b6d8 into main am: dcd948462b am: b68085f552 am: c9ea26e5cb\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2817094\n\nChange-Id: Ie7d7ffb021c43d34e90957d0d40e70478a849008\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b68085f552cd11ebe6078640ab2ea571ae02e48f",
      "tree": "1c98c2027d344176093e168338cea801a7ddf135",
      "parents": [
        "3ded59672074c71ff30339e8383e01411076a263",
        "dcd948462b64c4da47f1030321fb4aca2eaa59fc"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Nov 14 00:23:37 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 14 00:23:37 2023 +0000"
      },
      "message": "Merge changes I0fbd41b6,If791b6d8 into main am: dcd948462b\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2817094\n\nChange-Id: I5a1d80802557783aa02b1b17b60adb66e985707e\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "668cb32166321b2813d6b34f82bfd2f3dc16b592",
      "tree": "b2449cce2a76babaa822142fa029aaf89188fa01",
      "parents": [
        "40455586de754741810d23111cf2f9e7e972e0b0",
        "7b65ed04876328894b2773bb5ca7b2fa2d1039ac"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Tue Nov 14 00:06:00 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 14 00:06:00 2023 +0000"
      },
      "message": "Merge \"[aapt2] Parse --feature-flags parameter values\" into main am: 21bbfb8754 am: 3ded596720 am: 7b65ed0487\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2813074\n\nChange-Id: I7e95d4f810d305affdf090755e515551a3fc5bcb\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "40455586de754741810d23111cf2f9e7e972e0b0",
      "tree": "b879f92e035863e0187dd8b6d8be8b4285d6b0c7",
      "parents": [
        "8b610d61cdcf02b0b2ef2bc5588e44cd72281726",
        "55b93b2bf994fe857c68f66cfa2680c74a579a32"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Nov 14 00:05:12 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 14 00:05:12 2023 +0000"
      },
      "message": "Merge \"lint: update documentation on how to update the baseline\" into main am: bc9d6797ec am: 195230e096 am: 55b93b2bf9\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2815153\n\nChange-Id: I7ed48f73d14c10f780a3430d1931ec398a5619b6\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "dcd948462b64c4da47f1030321fb4aca2eaa59fc",
      "tree": "5094eaeb11a3e6f745dc2db105f6ce31e6f4589d",
      "parents": [
        "21bbfb87548b04e5e02989a8743510b5619796e3",
        "627faea6c8ca730f5fb0d0a1ef86e0c5e13a2cd2"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Nov 13 23:49:26 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 13 23:49:26 2023 +0000"
      },
      "message": "Merge changes I0fbd41b6,If791b6d8 into main\n\n* changes:\n  Add PermissionAnnotationDetector\n  Ignore superMethods from non-Stub parents\n"
    },
    {
      "commit": "3ded59672074c71ff30339e8383e01411076a263",
      "tree": "3e333021d3d1c0e2ea1c3f4d607b551832344a6b",
      "parents": [
        "195230e096e59dc2e407c329ffacffd5d5c8adfa",
        "21bbfb87548b04e5e02989a8743510b5619796e3"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Mon Nov 13 23:02:28 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 13 23:02:28 2023 +0000"
      },
      "message": "Merge \"[aapt2] Parse --feature-flags parameter values\" into main am: 21bbfb8754\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2813074\n\nChange-Id: If9be16e1daadbdcc660ab39e469f0bfa3ca52e00\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "195230e096e59dc2e407c329ffacffd5d5c8adfa",
      "tree": "cee0e37d67077f121e35b358031c46ab56a4a453",
      "parents": [
        "518f979e5d2d147f9a2302d420c95f39465dfb2c",
        "bc9d6797ec8942a229097eb1503cc96f39f81ec4"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Nov 13 23:01:37 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 13 23:01:37 2023 +0000"
      },
      "message": "Merge \"lint: update documentation on how to update the baseline\" into main am: bc9d6797ec\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2815153\n\nChange-Id: I0ae0d5c191c0c2b0cd42ee996cb02a084c62d068\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "21bbfb87548b04e5e02989a8743510b5619796e3",
      "tree": "00f2875c44a1e534cf8573e6fbbb3b8093d9accb",
      "parents": [
        "bc9d6797ec8942a229097eb1503cc96f39f81ec4",
        "5579cadae55c55cae8b485fc9d94e38d8c474c77"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Mon Nov 13 22:52:27 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 13 22:52:27 2023 +0000"
      },
      "message": "Merge \"[aapt2] Parse --feature-flags parameter values\" into main"
    },
    {
      "commit": "bc9d6797ec8942a229097eb1503cc96f39f81ec4",
      "tree": "7e42a7c897509e35f3e8e91d4fe8f37359c1f767",
      "parents": [
        "3065779a388c7dd5f29977e2024a17f1aa7f0143",
        "21a709f4f3182aee9be1469af45c16192cb50868"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Nov 13 22:34:36 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 13 22:34:36 2023 +0000"
      },
      "message": "Merge \"lint: update documentation on how to update the baseline\" into main"
    },
    {
      "commit": "187cf29ffbe478e05d755269adeed6866d24a292",
      "tree": "6b99e8babddf70da6ef8eed33359ea1bebde0fe2",
      "parents": [
        "e968b57b2d294f85956040389f9d3db464360e51",
        "5e210d7d81c7742502405ea4270802a3ccd3233b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Mon Nov 13 17:48:20 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 13 17:48:20 2023 +0000"
      },
      "message": "Merge changes from topic \"nov10b\" into main\n\n* changes:\n  Initial Process and Binder support, with CTS.\n  Start using Ravenwood annotations in source tree.\n"
    },
    {
      "commit": "5e210d7d81c7742502405ea4270802a3ccd3233b",
      "tree": "e784236a63d3d733f15053e6b9d51bd3e978c102",
      "parents": [
        "55c2256ea2ada95b9778ecf95dbd98cbc6a9996d"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Nov 10 11:22:05 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Mon Nov 13 08:58:27 2023 -0700"
      },
      "message": "Initial Process and Binder support, with CTS.\n\nThe Ravenwood environment doesn\u0027t support IPC, but much of the code\nthat developers intend to test (such as AIDL stubs) still relies on\nbaseline same-process behavior to be intact.\n\nThis change adds UID and PID support to Process and Binder, but we\ncarefully communicate that it\u0027s only available when the test author\nhas configured it via a RavenwoodRule.  This ensures that tests\ndon\u0027t accidentally rely on unexpected defaults, as some tests will\nwant AID_SYSTEM, and others want a normal app UID.\n\nAlso bring along SystemClock, PatternMatcher, and ParcelUuid\nalong with relevant tests.\n\nFinally, now that we have an IgnoreUnderRavenwood annotation, we\ncan pivot back our default failure to be a RuntimeException instead\nof an AssumptionViolatedException.\n\nBug: 292141694\nTest: atest-dev CtsOsTestCasesRavenwood CtsOsTestCases\nChange-Id: I5f54c3179b2d305b9ab9144c43fd063c6b756e44\n"
    },
    {
      "commit": "55c2256ea2ada95b9778ecf95dbd98cbc6a9996d",
      "tree": "d189ec02f3cbe9bbc976a4094aa6f5957c4c82bb",
      "parents": [
        "9b790b4204a344abe1c3bb801875c1629fd33050"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Nov 10 13:27:51 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Nov 10 14:46:10 2023 -0700"
      },
      "message": "Start using Ravenwood annotations in source tree.\n\nThese inline annotations make maintenance commitments easier for\ncode owners to reason about.\n\nBug: 292141694\nTest: atest-dev CtsUtilTestCasesRavenwood CtsUtilTestCases\nChange-Id: Ia3479c7fd66123e2cc759c661fc551967ecdec08\n"
    },
    {
      "commit": "cedc08b5e1ac2c9387e87092b56868080a1886bb",
      "tree": "8841dabb316becc6cfb1882e123c4d47c2d689e8",
      "parents": [
        "fb1b57bac2733b430568aa89850ad5a4659db9af"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 10 10:55:13 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 10 11:18:36 2023 -0800"
      },
      "message": "[hoststubgen] Handle lambdas\n\nFor now, we inherit the visibility of the enclosing class.\n\nSo there\u0027s now way to make them \"throw\" yet.\n\nBug: 310212493\nBug: 292141694\nTest: run-all-tests.sh\nTest: atest --no-bazel-mode CtsUtilTestCasesRavenwood\nChange-Id: I590e4e972a3b0812c0470c9872c02cf7293e83f6\n"
    },
    {
      "commit": "743a58aa551109a1f03c979616b6b7c430ac0ed0",
      "tree": "797182f98bd0171d2488b241178d040ad73d324a",
      "parents": [
        "eb8140823f5fbfebcf7dd66f0d28df6b40a7ad13"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Nov 09 12:46:31 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 10 09:35:41 2023 -0800"
      },
      "message": "Fix --annotation-allowed-classes-file, and start using it\n\nAlso add some presubmit tests as a smoke test.\n\nBug: 292141694\nTest: run-all-tests.sh\nTest: atest --no-bazel-mode CtsUtilTestCasesRavenwood\n\nChange-Id: I30569313b764dfa30db9c2c5627050da4a6a1d67\n"
    },
    {
      "commit": "627faea6c8ca730f5fb0d0a1ef86e0c5e13a2cd2",
      "tree": "aaa571fe83b70dfa44b569f84f705bdb09aa4e86",
      "parents": [
        "eb133bf3891f5db28a0f9d30e4848494feb13c7c"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Thu Nov 02 15:11:07 2023 +1100"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Fri Nov 10 11:31:43 2023 +1100"
      },
      "message": "Add PermissionAnnotationDetector\n\nThis detector ensures that all AIDL-generated interfaces are annotated\nwith one permission annotation (@EnforcePermission,\n@NoPermissionRequired, or @PermissionManuallyEnforced). It is part of\nthe framework linters and disabled by default.\n\nIt will be enabled explicitly in a subsequent change (for\nservices/Android.bp). The baseline of the services will also be updated\nto capture the current status of non-annotated interfaces.\n\nBug: 220214993\nTest: atest --host AndroidFrameworkLintCheckerTest\nChange-Id: I0fbd41b63465f119d90505153fa3a98c0fcdc798\n"
    },
    {
      "commit": "eb8140823f5fbfebcf7dd66f0d28df6b40a7ad13",
      "tree": "fee18d20067f4c02d40938f75d72de46deb3d50e",
      "parents": [
        "dc4b512ec4b7acb2e2cea5d471fe5779a3d36e57",
        "a0d4c585d3bf5aec7fc9ddb97ba0812162487f26"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Nov 09 20:41:29 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 09 20:41:29 2023 +0000"
      },
      "message": "Merge \"Add option to limit what classes can have annotations\" into main"
    },
    {
      "commit": "a0d4c585d3bf5aec7fc9ddb97ba0812162487f26",
      "tree": "21e23f71364a95ca468df861ab4816c49d407dad",
      "parents": [
        "3e992962ca35300ffcf3cc492071b9ec9555085e"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Nov 08 16:11:35 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Nov 09 11:30:20 2023 -0800"
      },
      "message": "Add option to limit what classes can have annotations\n\nBug: 292141694\nTest: run-all-tests.sh\nTest: atest --no-bazel-mode CtsUtilTestCasesRavenwood\n\nChange-Id: I492206e4b14e02fb3d563c3bc5cd2f0b4907317a\n"
    },
    {
      "commit": "5579cadae55c55cae8b485fc9d94e38d8c474c77",
      "tree": "d0910174f8263b347cc990908f4abf05b6591d66",
      "parents": [
        "c81dba07601af792788ce128eaa5262534206d0b"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Mon Oct 30 13:47:51 2023 -0700"
      },
      "committer": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Thu Nov 09 11:17:38 2023 -0800"
      },
      "message": "[aapt2] Parse --feature-flags parameter values\n\nBug: 297373084\nTest: atest aapt2_tests\nChange-Id: I7567aa8f41e6fde7334430446a940eb6b04c1446\n"
    },
    {
      "commit": "198ba5b002990ec89ad8e573a011b2c4ab2b562b",
      "tree": "b4d1f989173885281efb998dcf2065b2417b9acf",
      "parents": [
        "71ee764369e43b7fc83f970e239bdf140f347456",
        "293328da185f63641e43170bed72030624f8dd13"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Nov 09 16:54:09 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 09 16:54:09 2023 +0000"
      },
      "message": "Merge \"[HostStubGen] Precise enum handling\" into main"
    },
    {
      "commit": "71ee764369e43b7fc83f970e239bdf140f347456",
      "tree": "f4b1dffaee9eb97ad962677f561c369b5b7df1ee",
      "parents": [
        "40f54db094ab39b318c786d16b1f1f5b56ac8ebd",
        "91f414e415f351ac4cfd7631ff455c99c612d221"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Nov 09 16:31:12 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 09 16:31:12 2023 +0000"
      },
      "message": "Merge \"Support Parcel, Bundle under Ravenwood, with CTS.\" into main"
    },
    {
      "commit": "91f414e415f351ac4cfd7631ff455c99c612d221",
      "tree": "618717b756d9ea2cf95ee121784b3c68aa720a47",
      "parents": [
        "37ddff6079fbd21cbf881135cc560b2e61990114"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Nov 07 15:43:59 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Nov 08 09:03:50 2023 -0700"
      },
      "message": "Support Parcel, Bundle under Ravenwood, with CTS.\n\nWe have baseline implementations of the Parcel and Bundle, so we\u0027re\nready to support them under the Ravenwood environment.  Brings along\nthe relevant CTS to prove that it works consistently on both devices\nand Ravenwood.  Make a few test-driven bug fixes to Parcel code.\n\nCurrently does not support FDs or Binders.\n\nAdd new `@IgnoreUnderRavenwood` annotation that is respected by a\nnew `RavenwoodRule`, letting the same test code be shared to run\nunder both devices and Ravenwood.  Currently packaged under our own\narea of the tree, but named to match layout of `platform_testing`\nfor future migration.\n\nAdd \"ThrowClass\" policy.\n\nBug: 292141694\nTest: atest-dev CtsOsTestCasesRavenwood CtsOsTestCases:ParcelTest CtsOsTestCases:BundleTest\nChange-Id: I88d19afff47fbea6557e922a10e8555ee0f70ba3\n"
    },
    {
      "commit": "eb133bf3891f5db28a0f9d30e4848494feb13c7c",
      "tree": "2b3075192852001e5c796d12007323229f812787",
      "parents": [
        "253698da790ebb76df2f5bee60362300ce004c6c"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Nov 08 13:35:06 2023 +1100"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Nov 08 13:49:30 2023 +1100"
      },
      "message": "Ignore superMethods from non-Stub parents\n\nIn commit 9252e5ce, the logic did not ensure that the super method\nbelonged to the Stub class, and not any arbitrary method in a parent.\n\nRefactor EnforcePermissionUtils by:\n - Removing isContainedInSubclassOfStub() in favour of containingStub(),\n   which returns the Stub PsiClass. Document that this method does not\n   mean that the argument is necessary an AIDL-generated method.\n - Update getContainingAidlInterface() to pass the PsiClass to\n   findSuperMethod. This ensures that only the Stub class and its\n   parents are considered.\n - Drop the check for IINTERFACE_INTERFACE. This is already verified in\n   the inner call to isStub().\n\nThe same logic is applied manually to EnforcePermissionDetector, as each\ncondition in getContainingAidlInterface() raises a different error\nmessage.\n\nAdd a test to confirm the behaviour of EnforcePermissionDetector.\n\nBug: 307433823\nTest: atest --host AndroidGlobalLintCheckerTest\nTest: atest --host AndroidFrameworkLintCheckerTest\nTest: enforce_permission_counter\nChange-Id: If791b6d8741e5db483589446484bb68061b67b70\n"
    },
    {
      "commit": "6db99831e9a4880c552b7bafbf425c787420d06c",
      "tree": "043ff3c241ae184678a36bcc8133f805d9fed8fb",
      "parents": [
        "4130e419c596f14988fdc550fec8f5923170e9a5",
        "ee94d8a40cf2c540f22f9641f76e228623b748e7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Nov 07 19:53:11 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 07 19:53:11 2023 +0000"
      },
      "message": "Merge \"Don\u0027t change timestamps in update_font_metadata\" into main am: cdd8d36013 am: d4d9479bf2 am: ee94d8a40c\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2816385\n\nChange-Id: I6e1ccabfbccd3640e8c63a79a29d8b799b6bfe1b\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "d4d9479bf2bd1c7f7b36fd1460a857c90f002ba6",
      "tree": "9d3a44afbaa204d5a55dcb7ab675583e1c3bef35",
      "parents": [
        "bd5824f237428fa2a0f3378e4ae3cc36bb166b75",
        "cdd8d360130022ecdd2e41e234428de8e80996cd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Nov 07 19:04:38 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 07 19:04:38 2023 +0000"
      },
      "message": "Merge \"Don\u0027t change timestamps in update_font_metadata\" into main am: cdd8d36013\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2816385\n\nChange-Id: I39db63c2d50fda2a6b1619841c0df06fecf65169\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "293328da185f63641e43170bed72030624f8dd13",
      "tree": "696ed7960393fadaf57c5b1fe7225f6d82256ea5",
      "parents": [
        "3e992962ca35300ffcf3cc492071b9ec9555085e"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 07 10:22:39 2023 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 07 10:57:08 2023 -0800"
      },
      "message": "[HostStubGen] Precise enum handling\n\nOnly implicitly include auto-generated enum members.\n\nBug: 292141694\nTest: run-all-tests.sh\nTest: atest --no-bazel-mode CtsUtilTestCasesRavenwood\nChange-Id: Iab2f3ec28fb47293e342e09aee9a2596baa31800\n"
    },
    {
      "commit": "cdd8d360130022ecdd2e41e234428de8e80996cd",
      "tree": "59016434bfdb87eb92c468791874c663cb7d4946",
      "parents": [
        "c724d3a78e7215d6256e495c7fb2008bdb2ca620",
        "cb5493cb843bb772f124acfbdf5d5f2356b44dce"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue Nov 07 18:39:24 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 07 18:39:24 2023 +0000"
      },
      "message": "Merge \"Don\u0027t change timestamps in update_font_metadata\" into main"
    },
    {
      "commit": "8af7741644c918b17b236b20ee3c935cff3579f2",
      "tree": "9621e0051de8bf221ab318114119d490dcb2d57c",
      "parents": [
        "ccc2dd02bb95ca1303b831b1e71fa83927357936",
        "8bb2b4a9651091cd928130bdf3d633c1888a8044"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Nov 07 01:00:09 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 07 01:00:09 2023 +0000"
      },
      "message": "Merge \"[HostStubGen] Add --package-redirect\" into main"
    },
    {
      "commit": "d8f94cbc1b339e5f73d511f55d13fd1868e4169e",
      "tree": "32b2d8af493ba8daa044db7f69d3e8b0d0b90396",
      "parents": [
        "0e9201d9d0f23de44e1ef88da45ffa119f30aac4",
        "ca63ab9a8a218f3d54c0f5d775b1947d62901e94"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Nov 06 23:59:53 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 06 23:59:53 2023 +0000"
      },
      "message": "Merge changes I04c68e95,I9ab2b654,Ic0104961 into main am: c0857666b7 am: b43e012f2b am: ca63ab9a8a\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2809197\n\nChange-Id: I49bb3085fb85064a49766e06788941c5cb4db16e\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b43e012f2ba4556222a184781330e4c4efedf636",
      "tree": "f072f80a55685162358e01297d666c5ce9974c1d",
      "parents": [
        "b6c53e1d0d8bc7aa420c34fb448fe84f24e14142",
        "c0857666b79f6ded9ed66d54c2802b5361505ff0"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Nov 06 22:47:10 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 06 22:47:10 2023 +0000"
      },
      "message": "Merge changes I04c68e95,I9ab2b654,Ic0104961 into main am: c0857666b7\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2809197\n\nChange-Id: I1667744d300b98bc3c355b526618341796fa5ead\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b6c53e1d0d8bc7aa420c34fb448fe84f24e14142",
      "tree": "cdbdbeec52f72dff93c583ebe9f7bd5eb1fe10ba",
      "parents": [
        "72f4dedb64c62f25271f9d888c57a5187126ac29",
        "5b91f32be1af21c3d57890ad3e918317b1301102"
      ],
      "author": {
        "name": "Azhara Assanova",
        "email": "azharaa@google.com",
        "time": "Mon Nov 06 22:46:41 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 06 22:46:41 2023 +0000"
      },
      "message": "Allow short strings for manifest permissions in @EnforcePermission am: 5b91f32be1\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2809337\n\nChange-Id: I9cd642cbc3ea21382ae9bdfa156d0a1eb72f045a\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "c0857666b79f6ded9ed66d54c2802b5361505ff0",
      "tree": "501fa8b410a492fdbb2870031bd588d74323d5e1",
      "parents": [
        "352e1eb9b49f38cac0b9deb5e82af65f8d3aca69",
        "9252e5ceaf53349cdf6b344aa54a983cd1426341"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Nov 06 22:01:54 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 06 22:01:54 2023 +0000"
      },
      "message": "Merge changes I04c68e95,I9ab2b654,Ic0104961 into main\n\n* changes:\n  Add test for mis-annotated method\n  Enable related issues in EnforcePermissionDetectorTest\n  Allow short strings for manifest permissions in @EnforcePermission\n"
    },
    {
      "commit": "8bb2b4a9651091cd928130bdf3d633c1888a8044",
      "tree": "e5f52ba4f0feaad8df7b637114270f9e00b558ba",
      "parents": [
        "01f655a072a5add24a1800460d5318a1438ee68a"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 03 15:07:42 2023 -0700"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Mon Nov 06 13:45:39 2023 -0800"
      },
      "message": "[HostStubGen] Add --package-redirect\n\nExample:\n--package-redirect dalvik:com.android.hoststubgen.substitution.dalvik\n\nwill rewrite all references to classes `dalvik.*` to `com....dalvik.*`.\nThis allows us to define libcore substitution classes in a different package.\nThis is useful becuase javac won\u0027t let us add classes to the `dalvic` package\nwhich is already taken by the libcore module.\n\nBug: 292141694\nTest: run-all-tests.sh\n\nChange-Id: I01e72f4b4a7ce4baefaaccddbb462edd84267e0e\n"
    },
    {
      "commit": "257020318480675d64ea363be9868682890fe21d",
      "tree": "9e8cbb9cbf20ddfd847dba9f76b56772603ab795",
      "parents": [
        "8fe1990220137d777dc237e4e671c5148f385e6c",
        "97014999f33de101d0306d06232f9cbb24c481ea"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Mon Nov 06 18:47:29 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 06 18:47:29 2023 +0000"
      },
      "message": "Merge changes from topic \"ravenwood-build-rule\" into main\n\n* changes:\n  Ignore static initializers, throw assumptions.\n  Add `android_ravenwood_test` build rule\n"
    },
    {
      "commit": "97014999f33de101d0306d06232f9cbb24c481ea",
      "tree": "5f0d0fb7718c9c1dbaf39a17c551b5f2702ad2d5",
      "parents": [
        "c69a84e484f09260eecbd3cfd33cbc4d66ddd525"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Nov 01 16:51:35 2023 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Nov 03 12:11:28 2023 -0600"
      },
      "message": "Ignore static initializers, throw assumptions.\n\nFor classes that haven\u0027t built out Ravenwood support, they still may\nbe referenced in a way that causes their \u003cclinit\u003e to be invoked.  This\ncan cause a cascade of trouble as we try constructing other classes\nthat aren\u0027t yet supported.\n\nInstead, we take the path of \"ignoring\" these initializers for the\ntime being, treating them as no-op.  This does leave `static final`\nvalues as their defaults values (such as null), which feels\nreasonable, as the remainder of the class would throw when used.\n\nAdditionally, pivot to throwing `AssumptionViolatedException` when\nwe encounter unsupported behavior.  This has a nice side-effect of\nallowing large numbers of existing tests to be executed under\nRavenwood as-is, where we can get an \"unknown\" signal today that\nautomatically turns \"green\" once all underlying infrastructure is\nsupported in the future.\n\nBug: 292141694\nTest: atest-dev CtsUtilTestCasesRavenwood\nChange-Id: Ia0a93f5e0af0b4c8c680daca1732c10c5fe404af\n"
    },
    {
      "commit": "c69a84e484f09260eecbd3cfd33cbc4d66ddd525",
      "tree": "0255a1207352bb0183ca2b56080dc03d2b3784c2",
      "parents": [
        "5d37f32784a5692fc44418b15f7cbe1ea3917ae3"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Oct 20 10:43:55 2023 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Nov 03 12:11:18 2023 -0600"
      },
      "message": "Add `android_ravenwood_test` build rule\n\nSince we\u0027re unable to compile libcore classes for the device,\nwe temporarily pivot usages to our own copy of EmptyArray.\n\nBug: 292141694\nTest: m nothing --no-skip-soong-tests\nTest: m hoststubgen ravenwood-runtime tradefed atest \u0026\u0026 atest-dev HostStubGenTest-framework-test\nChange-Id: I9d4ff559924e47725eb3e897aaf2cc93e9b1a193\n"
    },
    {
      "commit": "21a709f4f3182aee9be1469af45c16192cb50868",
      "tree": "c46ca41ca03c53e0adfcfb9dd3d5c462beebd2ab",
      "parents": [
        "c018edbdad81e8f4efa41a77f56d66d536e123bf"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Thu Nov 02 11:29:49 2023 +1100"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Fri Nov 03 11:44:22 2023 +1100"
      },
      "message": "lint: update documentation on how to update the baseline\n\nIt is possible to simply pass the `nowarn` flag to Soong via Android.bp\ninstead of modifying Soong itself.\n\nBug: 220214993\nTest: n/a\nChange-Id: I38a3cfbe3b6d9ad144f13d53da85bb47475e75bd\n"
    },
    {
      "commit": "cb5493cb843bb772f124acfbdf5d5f2356b44dce",
      "tree": "43acd88b3a1fd3c7e3350a1366f1cd9198cbf72b",
      "parents": [
        "b6ee472c4977aa22b293f3afb54ee2c5370bd8ec"
      ],
      "author": {
        "name": "Cole Faust",
        "email": "colefaust@google.com",
        "time": "Thu Nov 02 17:09:24 2023 -0700"
      },
      "committer": {
        "name": "Cole Faust",
        "email": "colefaust@google.com",
        "time": "Thu Nov 02 17:09:24 2023 -0700"
      },
      "message": "Don\u0027t change timestamps in update_font_metadata\n\nThis causes non-reproducable builds.\n\nBug: 307824623\nTest: ./build/soong/tests/genrule_sandbox_test.py UpdatableSystemFontTest_NotoColorEmojiV0.ttf\nChange-Id: I2f055740f44153a85fad6040d825c2e80bf2e77d\n"
    },
    {
      "commit": "f381b75e8eea4aaba0542e5815bdc4a1f27a3e7b",
      "tree": "da1fbd3996ba8bb6e2fce805e233e5e8ac91084f",
      "parents": [
        "1cf7346330a2d0ac8336895e94045988f0487a10",
        "66f5594e5747cb995b8617d9c6d1dc154b00e1e1"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Nov 01 23:48:16 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Nov 01 23:48:16 2023 +0000"
      },
      "message": "Merge changes from topics \"cherrypicker-L13300000963667898:N27000001416235071\", \"cherrypicker-L85800000963667755:N59500001416232655\" into main am: e9c999d70e am: 4739ab77e1 am: 66f5594e57\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2800913\n\nChange-Id: Ic4df5728da8125d1746e29f4cc41fb878eb76c12\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "4739ab77e1edbb9004fe7932ab968fd88d5e3f8b",
      "tree": "9316c74a93f7e3529b216ccd09345b9a8ad5a8de",
      "parents": [
        "464952dd1722f110cfe9047c09671ddc1cf890a7",
        "e9c999d70ed5aa1196a33d28381c344907e429de"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Nov 01 23:12:12 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Nov 01 23:12:12 2023 +0000"
      },
      "message": "Merge changes from topics \"cherrypicker-L13300000963667898:N27000001416235071\", \"cherrypicker-L85800000963667755:N59500001416232655\" into main am: e9c999d70e\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2800913\n\nChange-Id: Id4ceefac0437877e627eaf8b93b7e16673b26c0b\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "464952dd1722f110cfe9047c09671ddc1cf890a7",
      "tree": "568f2a219ddeef0d468142e01be5ec0b93f72ea1",
      "parents": [
        "dc9b3d1b7e96ab03dc3aa0e39b41ef030124ea65",
        "7841d10c8e5be3b4cd360b337ea474a9ef5d16a8"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Nov 01 23:11:54 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Nov 01 23:11:54 2023 +0000"
      },
      "message": "Fix implementation reference am: 7841d10c8e\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2801013\n\nChange-Id: I847bdd49df168ca5b3878ec2258382bd56b8d648\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "dc9b3d1b7e96ab03dc3aa0e39b41ef030124ea65",
      "tree": "4ef3fbde240617f96ef19e27b34c9534123f9947",
      "parents": [
        "c3fea56de80603d6d0737cfdc9dc82cba45089b8",
        "df85978ede82ce0226f88f3f375465ee7e60256f"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Nov 01 23:11:41 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Nov 01 23:11:41 2023 +0000"
      },
      "message": "Enable EnforcePermission linters for test sources am: df85978ede\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2799368\n\nChange-Id: I85c045bf9826308e75306b18c5bffde0259b918a\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "e9c999d70ed5aa1196a33d28381c344907e429de",
      "tree": "e3b0ee20051d26bd9ef471acb46fd3f902242be4",
      "parents": [
        "120704bfd99797b630e7a5ab0be33ac6a0e34f93",
        "aec895aafaa05b35960f394cff662e631dbefcb7"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Wed Nov 01 22:50:27 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 01 22:50:27 2023 +0000"
      },
      "message": "Merge changes from topics \"cherrypicker-L13300000963667898:N27000001416235071\", \"cherrypicker-L85800000963667755:N59500001416232655\" into main\n\n* changes:\n  Merge EnforcePermissionHelperDetector with EnforcePermissionDetector\n  Fix implementation reference\n  Enable EnforcePermission linters for test sources\n"
    },
    {
      "commit": "e3f861fb87b40c99532242822ae78532d5d96386",
      "tree": "0fcb67a35936165bcae426ffac85fdb6517513cb",
      "parents": [
        "0792d99bfb65ac97d361ca7e467d70d4185c08f0",
        "0092cae047fa307eeed414624aca20a8adf06465"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed Nov 01 14:25:44 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Nov 01 14:25:44 2023 +0000"
      },
      "message": "Merge \"Implement filter-product\" into main am: 0092cae047\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2813934\n\nChange-Id: I9d5419bcf9a682c73cd19ce6f20229337eedd565\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "2738abbd19791eb0cd2bca73700332bcd5410081",
      "tree": "39fd1071c96ad4cd3367e549d55a7f6f85d0661c",
      "parents": [
        "f9668c392e424e85ae2aa7d55f258f0a750fd123"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Fri Sep 15 16:38:50 2023 +0900"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Wed Nov 01 10:14:10 2023 +0900"
      },
      "message": "Implement filter-product\n\nfilter-product option is added to aapt2 compile, which filters values\nwith a given product and removes all other values (including default).\nThe motivation of this change is to generate product-specific RRO\nautomatically, making a main resource APK (e.g. framework-res.apk)\nidentical in all targets.\n\nBug: 294799593\nTest: build\n(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:5fe521e5b3bd5e7ef17dc50425060680cadb4e0e)\n\nMerged-In: I42eb3e134c7aa120f6bbe2d26d311bd46b586595\nChange-Id: I42eb3e134c7aa120f6bbe2d26d311bd46b586595\n"
    },
    {
      "commit": "5fe521e5b3bd5e7ef17dc50425060680cadb4e0e",
      "tree": "267201cbbb59d2fb9ea76620887f92b22249c4a9",
      "parents": [
        "fa8c3a142a791cfc176c09e80d3ab3acb3391abe"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Fri Sep 15 16:38:50 2023 +0900"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Tue Oct 31 13:03:39 2023 +0900"
      },
      "message": "Implement filter-product\n\nfilter-product option is added to aapt2 compile, which filters values\nwith a given product and removes all other values (including default).\nThe motivation of this change is to generate product-specific RRO\nautomatically, making a main resource APK (e.g. framework-res.apk)\nidentical in all targets.\n\nBug: 294799593\nTest: build\nChange-Id: I42eb3e134c7aa120f6bbe2d26d311bd46b586595\n"
    },
    {
      "commit": "9252e5ceaf53349cdf6b344aa54a983cd1426341",
      "tree": "e5d7e3d5afd341ee2e3dec238a999a142ebb9987",
      "parents": [
        "e7ad23ad01c8bfdcabf85b2a80a66bcb95ab59dc"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Oct 30 14:17:43 2023 +1100"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Oct 31 11:17:30 2023 +1100"
      },
      "message": "Add test for mis-annotated method\n\nPreviously, if a method:\n  1. was annotated with @EnforcePermission,\n  2. belonged to a class which implements an AIDL interface,\n  3. but did not override a method from that interface;\nan error was returned as the call to the helper was missing. The correct\nerror for this case is that the method should not use the annotation.\nUpdate the detector and add a test for this case.\n\nBug: 307433823\nTest: atest --host AndroidGlobalLintCheckerTest\nChange-Id: I04c68e95bc4932459b46982a7dd1814424ff6b46\n"
    },
    {
      "commit": "e7ad23ad01c8bfdcabf85b2a80a66bcb95ab59dc",
      "tree": "cac714fe3ca0143ddef163da110ff55a73b24681",
      "parents": [
        "5b91f32be1af21c3d57890ad3e918317b1301102"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Oct 30 12:55:15 2023 +1100"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Oct 31 11:17:30 2023 +1100"
      },
      "message": "Enable related issues in EnforcePermissionDetectorTest\n\nEnable ISSUE_ENFORCE_PERMISSION_HELPER and\nISSUE_MISSING_ENFORCE_PERMISSION on EnforcePermissionDetectorTest.\nUpdate the Stub to avoid false negatives (and better reflect AIDL\ngenerated code). This is a no-op to confirm that issues do not\nnegatively impact each other.\n\nBug: 307433823\nTest: atest --host AndroidGlobalLintCheckerTest\nChange-Id: I9ab2b654932a6d228a2a646e5b1fa9c5fc16db02\n"
    },
    {
      "commit": "5b91f32be1af21c3d57890ad3e918317b1301102",
      "tree": "fe66aa1c794e10670bf11934e0e193a1da038812",
      "parents": [
        "aec895aafaa05b35960f394cff662e631dbefcb7"
      ],
      "author": {
        "name": "Azhara Assanova",
        "email": "azharaa@google.com",
        "time": "Wed Apr 12 21:39:57 2023 +0000"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Oct 31 11:17:16 2023 +1100"
      },
      "message": "Allow short strings for manifest permissions in @EnforcePermission\n\nShort strings in this context are permission strings without the leading\n\"android.permission.\", e.g. a short string for\n\"android.permission.MODIFY_AUDIO_ROUTING\" is \"MODIFY_AUDIO_ROUTING\".\n\nBug: 270686198\nTest: atest --host AndroidGlobalLintCheckerTest\nChange-Id: Ic01049613316b79123ce2300511efb5fd8143d4c\nMerged-In: Ic01049613316b79123ce2300511efb5fd8143d4c\n"
    },
    {
      "commit": "7841d10c8e5be3b4cd360b337ea474a9ef5d16a8",
      "tree": "0cfb00df376aecdd725001544ccfc47f8ce649e7",
      "parents": [
        "df85978ede82ce0226f88f3f375465ee7e60256f"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Sep 26 13:26:44 2023 +1000"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Fri Oct 27 14:08:17 2023 +1100"
      },
      "message": "Fix implementation reference\n\nThe ISSUE_MISUSING_ENFORCE_PERMISSION issue was referencing the wrong\nDetector implementation.\n\nTest: m AndroidGlobalLintChecker \u0026\u0026 m lint-check\nChange-Id: Id07b18a98fd5ca925bb00683ec8ec0c31b0e44d0\nMerged-In: Id07b18a98fd5ca925bb00683ec8ec0c31b0e44d0\n"
    },
    {
      "commit": "df85978ede82ce0226f88f3f375465ee7e60256f",
      "tree": "a4de50fb1916bdf69261dc908070d709aa2d83c5",
      "parents": [
        "c018edbdad81e8f4efa41a77f56d66d536e123bf"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Oct 24 01:59:35 2023 +0000"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Fri Oct 27 14:08:17 2023 +1100"
      },
      "message": "Enable EnforcePermission linters for test sources\n\nIncrease the scope of the linters to be executed even for tests.\n\nBug: 270596429\nTest: m lint-check\nTest: remove annotation and helper call in EnforcePermissionTestHelper;\n      m lint-check; the two errors are raised.\n(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:d16e10024b498484f8ac8d7fefa7405093210fde)\nMerged-In: Ic8348b668664747b8a1f3c56359cdf9c02132f59\nChange-Id: Ic8348b668664747b8a1f3c56359cdf9c02132f59\n"
    },
    {
      "commit": "aec895aafaa05b35960f394cff662e631dbefcb7",
      "tree": "cd726fce5aec88600c3048ad273369df7bc2f1f7",
      "parents": [
        "7841d10c8e5be3b4cd360b337ea474a9ef5d16a8"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Tue Oct 24 11:41:57 2023 +1100"
      },
      "committer": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Fri Oct 27 14:08:17 2023 +1100"
      },
      "message": "Merge EnforcePermissionHelperDetector with EnforcePermissionDetector\n\nBoth classes shared similar code. The main merging is between\nvisitAnnotation and visitMethod. The tests are not modified beyond what\nis strictly necessary. This ensures that this refactoring does not break\nexisting functionality.\n\nBug: 260314719\nTest: atest --host AndroidGlobalLintCheckerTest\nTest: atest --host AndroidGlobalLintCheckerIntegrationTest\nChange-Id: I6d09d311f6d8bee88ea2b2d2cd4e647d941d9979\n"
    },
    {
      "commit": "e1795d44e3b72954ddba65e74296e93b72e1c3cb",
      "tree": "bd6afe5607782aab7fb3b3ff020d6e84f4601566",
      "parents": [
        "a09c239bfec3ac1479f51fb260d34d19160d7d33",
        "bc876a9925c6068346f51c565349f8deaa7fe24e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Oct 26 22:09:29 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 26 22:09:29 2023 +0000"
      },
      "message": "Merge \"[aapt2] Add placeholder --feature-flags flag\" into main am: 28226eec72 am: ea23cb3b98 am: bc876a9925\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2806055\n\nChange-Id: I5bbd7af31f6b92789a05d181fc55792c2c1aa579\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ea23cb3b983b664f3981ea75a37983b62a6fc02f",
      "tree": "287745c99ebf9de7a9962d20c331a0de766a1693",
      "parents": [
        "6b002010c936e80dc77e3595d395b30818afef76",
        "28226eec72c65a3b6084980dadb886e9bb4a3142"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu Oct 26 21:27:54 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 26 21:27:54 2023 +0000"
      },
      "message": "Merge \"[aapt2] Add placeholder --feature-flags flag\" into main am: 28226eec72\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2806055\n\nChange-Id: I86a8d09e7910e2ac17f667dc6917dbd37015dc4d\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "297b85ef11a566ede45d99b38111585e94a90a72",
      "tree": "f7fff359c2110fffe3fba8745f585063dab71a63",
      "parents": [
        "f578d795441d744e0d0c65896720ecdd2b0e13d1"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Thu Oct 26 18:57:50 2023 +0000"
      },
      "committer": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Thu Oct 26 19:03:35 2023 +0000"
      },
      "message": "[aapt2] Add placeholder --feature-flags flag\n\nAdding a placeholder so that soong build integration can happen in\nparallel with the implementation of this flag.\n\nBug: 297373084\nBug: 306024510\nTest: m aapt2\nChange-Id: If9df57daaa871c11e146a8a8f8113fceb2fd96c2\n"
    },
    {
      "commit": "ef06577b8e1787d74320ea86a23d7b32057c1e88",
      "tree": "75326ced18afa65fd88f8e8e1ce5a32476efb679",
      "parents": [
        "a68b6aec3f84c4230e7859b6dac01f9e86d347cd",
        "3f136b1c2fd7a284df7243d55a9f99e14fd6c7d9"
      ],
      "author": {
        "name": "Karthik Mahesh",
        "email": "karthikmahesh@google.com",
        "time": "Tue Oct 24 17:07:51 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Oct 24 17:07:51 2023 +0000"
      },
      "message": "Merge \"Mark adders as @hide if field is hidden.\" into udc-mainline-prod am: 3f136b1c2f\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/25093973\n\nChange-Id: Icf976f97353afc5d5994c23f5ef53b438fc290da\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "cfe6f89689dcaebe68e6c31357b5c58da82b57bf",
      "tree": "7120e7335dd3a5a18628ec1f40a523afc982e031",
      "parents": [
        "788ba62a7cf28b7abd7ff20381d2c09b3b50bdca"
      ],
      "author": {
        "name": "Karthik Mahesh",
        "email": "karthikmahesh@google.com",
        "time": "Tue Oct 17 15:42:04 2023 -0700"
      },
      "committer": {
        "name": "Karthik Mahesh",
        "email": "karthikmahesh@google.com",
        "time": "Wed Oct 18 22:37:32 2023 -0700"
      },
      "message": "Mark adders as @hide if field is hidden.\n\nBug: 306237952\nTest: manual test to verify that @hide is propagated, and adder does not get included in current.txt\nChange-Id: I9602ee20bc40a66cfbc1651b1a6c111ab17ff044\n"
    },
    {
      "commit": "8a5dadb7905125b04a85a3ba40bf3a5983f0b247",
      "tree": "2ba0d633c205d5c68f5af250fe62d459b666e7c0",
      "parents": [
        "78f88d62bd0a49add170298efbe45dd74aba8169",
        "63ca34ef0616e0196684e1703a065747409ae63a"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Oct 18 21:27:17 2023 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Oct 18 21:27:17 2023 -0700"
      },
      "message": "Merge 10952656\n\nMerged-In: I0a7233e0124a8c4defac51baa1a001fdbefeb4eb\nChange-Id: Ic0dc069abd4485900fe09bdea1d2cc5b13bfbc6d\n"
    },
    {
      "commit": "506feb67fbbac367034fb99e54929c504a08fb14",
      "tree": "a2e47e9c9c4833a2e6311a80be725ada435489d6",
      "parents": [
        "2d2c9fbdede0ba74c423fb1593e265bec133b51f",
        "ad529c24fe26ed3dcf844116eb72a6c6d22964c2"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Wed Oct 18 17:31:04 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 18 17:31:04 2023 +0000"
      },
      "message": "Merge \"Clean up obsolete aliases for Truth.\" into main"
    },
    {
      "commit": "7f71c15c9f10368d5c1c78f81b6254a539b10ab9",
      "tree": "e1a5e9d9c3e7823941c288de0be17658024e54cf",
      "parents": [
        "1314dc080b2f9f340c432f471d95c1b102788664",
        "f37fd1a3d4bf75f70b887316aa87bbc8b1cfbcb5"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Oct 17 22:11:15 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 17 22:11:15 2023 +0000"
      },
      "message": "Merge changes I5a26dfff,I28f093d6 into main\n\n* changes:\n  Disable use_resource_processor for framework-res\n  Disable use_resource_processor for aapt2 integration tests\n"
    },
    {
      "commit": "ad529c24fe26ed3dcf844116eb72a6c6d22964c2",
      "tree": "bba42e49c7a4dc6b13601cc71071e6a00f014706",
      "parents": [
        "2d68f3f99d05852033867116a393a87aa6ae9930"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Tue Oct 17 18:37:04 2023 +0000"
      },
      "committer": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Tue Oct 17 18:37:04 2023 +0000"
      },
      "message": "Clean up obsolete aliases for Truth.\n\nBug: 255714762\nTest: presubmit\nChange-Id: Iccb4ae60dff30b9d6f319c50b04dc625c2807552\n"
    },
    {
      "commit": "081426365572373c6baf5b4cf86e29ae89a2410c",
      "tree": "71d67da75b2d07c3e48fcf6a9cef70e1c9937e61",
      "parents": [
        "f1e8d1734fe0c35b237d8a55db363cc2bf0fcd29"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Mon Oct 16 10:41:28 2023 -0700"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Mon Oct 16 10:44:34 2023 -0700"
      },
      "message": "Limit ravenwood related module visibilities\n\n... to prevent other people from using them.\n\nTest: ./scripts/run-all-tests.sh\nBug: 292141694\nChange-Id: Ia45edead270883116446e8db6abde080d341ab07\n"
    },
    {
      "commit": "b231c619cae68c5cfd6a34f4af0a532dc1dd4cc4",
      "tree": "7c18677f35ae49708effeb2146a007a8ae4d530b",
      "parents": [
        "b412a3e4902a3f9faa5b47123bc9c1f982ec782a",
        "21d4b3df70011e2ba2301719c00d88844f2f0e73"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Mon Oct 16 16:17:38 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 16 16:17:38 2023 +0000"
      },
      "message": "Merge \"Fix test-tiny-framework/run-test-manually.sh\" into main"
    },
    {
      "commit": "bef66acae52025287434f27a6c37f81be562f390",
      "tree": "34bc0474a16d078c4ea9b32bc3c72e7455ddd021",
      "parents": [
        "0a8132fb6d238a1b137a2a91636c2ad45b649f86",
        "95c1f287b966fb10e7a1b027052416c5f05dcbde"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Oct 16 02:20:08 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Oct 16 02:20:08 2023 +0000"
      },
      "message": "Merge \"AndroidGlobalLintCheckerIntegrationTest: Add missing annotation test\" into main am: 663c9b34cf am: 0b550caa70 am: a256a44f36 am: 549622b329 am: 95c1f287b9\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2770398\n\nChange-Id: I6ec0905a309a0ff8fc1857775636512cae5220d2\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "95c1f287b966fb10e7a1b027052416c5f05dcbde",
      "tree": "7465b5f89437288c0f5f846a6206fe0d7a0bef3e",
      "parents": [
        "63ca34ef0616e0196684e1703a065747409ae63a",
        "549622b3291361db8411187782ba0ececf71e122"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Oct 16 01:46:34 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Oct 16 01:46:34 2023 +0000"
      },
      "message": "Merge \"AndroidGlobalLintCheckerIntegrationTest: Add missing annotation test\" into main am: 663c9b34cf am: 0b550caa70 am: a256a44f36 am: 549622b329\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2770398\n\nChange-Id: Ide6dea9cfb8c3f83c89468046c94ae6d041a9058\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a256a44f361c484aec98c25f657406aefd797a10",
      "tree": "f5cd9e77829144984f7bcb0ffe022f667f8c91cf",
      "parents": [
        "7aae71e171b09137c162c132dfd31e7f423c5f57",
        "0b550caa7030818e7a9d537e2a6d20e102e6a080"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Mon Oct 16 00:40:39 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Oct 16 00:40:39 2023 +0000"
      },
      "message": "Merge \"AndroidGlobalLintCheckerIntegrationTest: Add missing annotation test\" into main am: 663c9b34cf am: 0b550caa70\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2770398\n\nChange-Id: I69c6697f7454524289884f4b2b98c05427041b4a\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "663c9b34cf7a99e33ce3b66b0ecdf87a391ba966",
      "tree": "666ffb08c3cb087fc87e3083bf5cc09dbb3f5da8",
      "parents": [
        "3a5825e55ec0dbc4fd1bb6464bd0fff0b9f3209f",
        "1c3a97fdf1b0f5dc60828c74838e14b211ddf6a1"
      ],
      "author": {
        "name": "Thiébaud Weksteen",
        "email": "tweek@google.com",
        "time": "Sun Oct 15 23:39:16 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Oct 15 23:39:16 2023 +0000"
      },
      "message": "Merge \"AndroidGlobalLintCheckerIntegrationTest: Add missing annotation test\" into main"
    },
    {
      "commit": "21d4b3df70011e2ba2301719c00d88844f2f0e73",
      "tree": "b912ee3e296dd1ca635f099659d8205dd0074fa4",
      "parents": [
        "ffe884611bc0f05c1b8e2cfee6d43bcba4611c89"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Oct 13 12:04:29 2023 -0700"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Oct 13 14:07:58 2023 -0700"
      },
      "message": "Fix test-tiny-framework/run-test-manually.sh\n\n- Remove references to ASM from helper-runtime, because\nwe don\u0027t want to use ASM at runtime.\n\n- Also added a test to access private fields in a JDK classes.\n\nTest: ./scripts/run-all-tests.sh\nBug: 292141694\n\nChange-Id: I0313819c38b5e70a23bed771589126dd88cf28b8\n"
    },
    {
      "commit": "745a97fb375a096551278f69ad81fdb67a478649",
      "tree": "de7f220164783d9ec9796c71e1fd8966f6214f51",
      "parents": [
        "20453864a18b4ec0a9d419d336f59dd19cb88915",
        "acc50fd8a975c081f80d389059d2a3e11ee7cec8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed Oct 11 19:49:16 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 11 19:49:16 2023 +0000"
      },
      "message": "Merge \"[aapt2] Generate @FlaggedApi annotations\" into main am: 5f951b7f6c am: 5fe48781b3 am: ca14f255ca am: acc50fd8a9\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2783692\n\nChange-Id: I1ef4e5e737c490f53007f87d1ad6ab608b66dc6e\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ca14f255cafc1a5812492c91a2bdd9880ae098fd",
      "tree": "a2d5f6cd738fb45361b2e946e23f4943b1d6c900",
      "parents": [
        "dd22832162880cf838b9125be04c3ee37ad41022",
        "5fe48781b32695d9f25e07539ad0508006f0a806"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Wed Oct 11 18:31:41 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 11 18:31:41 2023 +0000"
      },
      "message": "Merge \"[aapt2] Generate @FlaggedApi annotations\" into main am: 5f951b7f6c am: 5fe48781b3\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2783692\n\nChange-Id: If64634b45f2bf9994dc11f94cc1f5654f470e035\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "636b6283a29170e26686f5e93c2105b64def7ce6",
      "tree": "7242f4570ff147ef7ca1e39bc54e60c90da2fef6",
      "parents": [
        "9a7e0d45103e955edeab791ee55a05100e1dc139"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Wed Oct 11 16:54:38 2023 +0000"
      },
      "committer": {
        "name": "Android Build Cherrypicker Worker",
        "email": "android-build-cherrypicker-worker@google.com",
        "time": "Wed Oct 11 16:54:38 2023 +0000"
      },
      "message": "[aapt2] Generate @FlaggedApi annotations\n\nLike we currently do for @TestApi and @SystemApi, we look for\n\"@FlaggedApi\" and its parameters in the comment above the resource.\n\nBug: 295328308\nTest: Did the following:\n1. Ran `atest aapt2_tests`\n2. Ran `aapt2 link` on public-staging.xml with an added @FlaggedApi\n   in the comment for the resource currently there. Verified the\n   @FlaggedApi annotation is present in the generated R.java.\n3. Ran `m framework-minus-apex` and it built successfully.\n4. Modified the @FlaggedApi comment with an invalid value (e.g.,\n   `Flags.FOO` which does not exist). The build failed. Since\n   @FlaggedApi is a source-only annotation (i.e., not present in the\n   R.class file), we want to verify it was actually used in the build.\n(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:6fa7a3c7c5213ad3a94406f46fec6d1219b3fa43)\nMerged-In: I0739f888d40269915c0acea5650c386da1a1782e\nChange-Id: I0739f888d40269915c0acea5650c386da1a1782e\n"
    },
    {
      "commit": "2a6cd0fc632ea938003179d44e95d3d7c5457816",
      "tree": "42f8980b2e7364b024af29ceafac5a6298d58adf",
      "parents": [
        "c9fb058e74b77f7232660767b38e4fd552f295d4",
        "3aefe338a45dcef06e2a342314d4af97e8bf5fed"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Oct 11 16:52:38 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 11 16:52:38 2023 +0000"
      },
      "message": "Merge \"Start adding build rules for ravenwood\" into main"
    },
    {
      "commit": "beb4d3dacaf6a14395b5ac331e242616da3fcd75",
      "tree": "01310c45e6d5dbc21b5c23ad63e87996cffa60e5",
      "parents": [
        "4d6fc524f91c30e5d1c5c37045701cac5254b1d6"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Oct 03 16:24:56 2023 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Oct 10 12:15:30 2023 -0700"
      },
      "message": "Disable use_resource_processor for aapt2 integration tests\n\nThese tests are testing aapt2 outputs and shouldn\u0027t use\nResourceProcessorBusyBox.\n\nBug: 294256649\nTest: m javac-check\nChange-Id: I28f093d697448131968ed4c4c32e31b9a8fb3036\n"
    },
    {
      "commit": "3aefe338a45dcef06e2a342314d4af97e8bf5fed",
      "tree": "fff29fc7c82335db9087a82bf1d4f894987f8387",
      "parents": [
        "30d4a684a9e31b569aaf0abda771850fc473a5da"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Oct 06 10:02:07 2023 -0700"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Mon Oct 09 15:58:28 2023 -0700"
      },
      "message": "Start adding build rules for ravenwood\n\n- Add \"framework-minus-apex.ravenwood\".\n- Update the behavior of: --default-throw:\n  - Now this will \"keep\" the subject classes and fields.\n- When a \u0027throw\u0027 directive is specified on a static initializer,\n  it\u0027s now handled as \u0027keep\u0027, because otherwise the class\n  wouldn\u0027t be usable.\n\nTest: ./scripts/run-all-tests.sh\nTest: m framework-minus-apex.ravenwood\nBug: 292141694\nChange-Id: If4d650dc175a5a78cf8844dfed2217c19f2d5790\n"
    },
    {
      "commit": "2f4e88a25abab10f1a9ee9f44707351eda73525b",
      "tree": "4c2caebd1b4170f10903a2e66d5e86c4626c375b",
      "parents": [
        "1c716268870024ce3be7983a0c44ce9daecfec2b",
        "6fa7a3c7c5213ad3a94406f46fec6d1219b3fa43"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Mon Oct 09 17:54:54 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 09 17:54:54 2023 +0000"
      },
      "message": "Merge \"[aapt2] Generate @FlaggedApi annotations\" into main"
    },
    {
      "commit": "cd28fd71167d3ca7c6c13d753437ef758404f0a5",
      "tree": "762162844ca55a18ef13032b28481d0e16cb7d7a",
      "parents": [
        "018d315b9c52797e2200eed58968e40e1978ec7e",
        "2d3b2aeba2bad6b8bc8713881dd8db88879d6663"
      ],
      "author": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Mon Oct 09 17:28:18 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 09 17:28:18 2023 +0000"
      },
      "message": "Merge \"Add ApkInfo.proto to \u0027aapt2-protos\u0027 artifact that was missed initially.\" into main"
    },
    {
      "commit": "a6d966c08f72e9d4905d233a0876bdb5df5097f7",
      "tree": "47c9da854c7ba2160b79d23b90486e13c5a2a08e",
      "parents": [
        "6fd2aa27c54b8264b86face9b3cc61865a4bc17f",
        "b83975af738480e39fe9f889fb8ed4775ca58ce4"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Sat Oct 07 03:06:43 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Oct 07 03:06:43 2023 +0000"
      },
      "message": "Merge \"Clean up obsolete aliases for Truth.\" into main am: 7039b4f758 am: b83975af73\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2776855\n\nChange-Id: I86a1d2be3476fc114ccccd7662aaf8ea8fef9567\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "6fa7a3c7c5213ad3a94406f46fec6d1219b3fa43",
      "tree": "7aa3ee8de30ae35a4e9927e9e767e674a197aaeb",
      "parents": [
        "c7f2ff98f315caa5b738bd94aa067d66af4c726c"
      ],
      "author": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Fri Oct 06 11:01:32 2023 -0700"
      },
      "committer": {
        "name": "Mark Punzalan",
        "email": "markpun@google.com",
        "time": "Fri Oct 06 13:34:28 2023 -0700"
      },
      "message": "[aapt2] Generate @FlaggedApi annotations\n\nLike we currently do for @TestApi and @SystemApi, we look for\n\"@FlaggedApi\" and its parameters in the comment above the resource.\n\nBug: 295328308\nTest: Did the following:\n1. Ran `atest aapt2_tests`\n2. Ran `aapt2 link` on public-staging.xml with an added @FlaggedApi\n   in the comment for the resource currently there. Verified the\n   @FlaggedApi annotation is present in the generated R.java.\n3. Ran `m framework-minus-apex` and it built successfully.\n4. Modified the @FlaggedApi comment with an invalid value (e.g.,\n   `Flags.FOO` which does not exist). The build failed. Since\n   @FlaggedApi is a source-only annotation (i.e., not present in the\n   R.class file), we want to verify it was actually used in the build.\n\nChange-Id: I0739f888d40269915c0acea5650c386da1a1782e\n"
    },
    {
      "commit": "bbe98fe36bd58fe4844189c51851bdbc133502ba",
      "tree": "506819852611d8b3b12dc97d464e3eb9a361656e",
      "parents": [
        "cabf940dba5b9399bf6f4d4c6492bcf7dcb17222"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Fri Oct 06 20:25:28 2023 +0000"
      },
      "committer": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Fri Oct 06 20:25:28 2023 +0000"
      },
      "message": "Clean up obsolete aliases for Truth.\n\nBug: 255714762\nTest: presubmit\nChange-Id: I7e29732e1e77e37cfb491521d14d2f3eb07deb36\nMerged-In: I7e29732e1e77e37cfb491521d14d2f3eb07deb36\n"
    }
  ],
  "next": "ce1b2a1cedabf7ec417196ed1c7146bef87ca826"
}
