)]}'
{
  "log": [
    {
      "commit": "55aab9e9acb686b59ddb57877084a0be0cac020f",
      "tree": "dca8027d7d4b1978d614127d6c3c087a9797a2c8",
      "parents": [
        "5f246b12b44ab9d034eae1f537a862592fa7f576",
        "6d19b5c690fa4220c10e42c2326150bbd4d4b7bb"
      ],
      "author": {
        "name": "Benjamin Lerman",
        "email": "qsr@google.com",
        "time": "Wed Jan 14 14:14:46 2026 +0100"
      },
      "committer": {
        "name": "Benjamin Lerman",
        "email": "qsr@google.com",
        "time": "Wed Jan 14 05:26:37 2026 -0800"
      },
      "message": "Merge remote branch \u0027upstream/main\u0027 into \u0027main\u0027\n\nChange-Id: I38247995d18cb5cf2fe55ad736b2bea09fe3b3a4\nReviewed-on: https://fuchsia-review.googlesource.com/c/third_party/android.googlesource.com/platform/system/libbase/+/1474981\nReviewed-by: Étienne J. Membrives \u003cetiennej@google.com\u003e\n"
    },
    {
      "commit": "6d19b5c690fa4220c10e42c2326150bbd4d4b7bb",
      "tree": "3914c632160c5d7f26bbdc7fe64ea0e5f849d6d9",
      "parents": [
        "185c7093df5fa3f81874270f50749e7c0eb99bb8"
      ],
      "author": {
        "name": "Biswapriyo Nath",
        "email": "nathbappai@gmail.com",
        "time": "Tue Mar 25 16:27:59 2025 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 26 05:43:29 2025 -0700"
      },
      "message": "libbase: Add const qualifier with member functions\n\nThis commit fixes the following compiler error with libstdc++ and c++17;\nit\u0027s not currently needed for libc++, but is technically correct.\n\nproperties.cpp:89:26: note: in instantiation of function template specialization\n\u0027std::set\u003cprop_info, prop_info_cmp\u003e::find\u003cconst char *\u003e\u0027 requested here\n   89 |   auto it \u003d g_properties.find(key);\n      |                          ^\nproperties.cpp:64:8: note: candidate function not viable: \u0027this\u0027 argument has type\n\u0027const prop_info_cmp\u0027, but method is not marked const\n   64 |   bool operator()(std::string_view lhs, const prop_info\u0026 rhs) { return lhs \u003c rhs.key; }\n      |        ^\n\nChange-Id: Ic159de77c029458c0ca8bfa8dd970e7ade47865a\n"
    },
    {
      "commit": "185c7093df5fa3f81874270f50749e7c0eb99bb8",
      "tree": "62845f947503ac4042dd703589e12ac645b2bf0d",
      "parents": [
        "6cf331397712a5870ece137087d82fc23f21d108"
      ],
      "author": {
        "name": "Biswapriyo Nath",
        "email": "nathbappai@gmail.com",
        "time": "Sat Mar 22 18:26:40 2025 +0000"
      },
      "committer": {
        "name": "Biswapriyo Nath",
        "email": "nathbappai@gmail.com",
        "time": "Sat Mar 22 18:26:47 2025 +0000"
      },
      "message": "libbase: Include stdint.h for uint8_t type\n\nThis commit fixes the following compiler error with clang 19.\n\nhex.h:37:53: error: use of undeclared identifier \u0027uint8_t\u0027\n   37 | bool HexToBytes(const std::string\u0026 hex, std::vector\u003cuint8_t\u003e* bytes);\n      |                                                     ^\n\nChange-Id: Ib4f386d5757e5ec04221419b499f6488ea392798\n"
    },
    {
      "commit": "6cf331397712a5870ece137087d82fc23f21d108",
      "tree": "08b62bb704d9761da4ef295f04645f000a492497",
      "parents": [
        "7fe406596b5a6fa1185f7f882539633ac1563f88",
        "97f7eb9752f56044c0608e2a05ec6450f6efc986"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Feb 12 19:42:16 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 19:42:16 2025 -0800"
      },
      "message": "Add com.android.media to allowed apex list am: 97f7eb9752\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3492753\n\nChange-Id: I6c8fed3b03501f3f9e2ba942b822efab17c7e0e9\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "97f7eb9752f56044c0608e2a05ec6450f6efc986",
      "tree": "08b62bb704d9761da4ef295f04645f000a492497",
      "parents": [
        "a8f819e9c71f7040631808469a3d3ef2706680c5"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Feb 12 16:24:27 2025 -0600"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Feb 12 16:24:27 2025 -0600"
      },
      "message": "Add com.android.media to allowed apex list\n\nAllow access for mediametrics as it moves from framework to module.\n\nBug: 189976186\nTest: build\nFlag: EXEMPT refactor\nChange-Id: I77a3cd08fe5123f4e596ee47bb12bce50a8aa8e0\n"
    },
    {
      "commit": "7fe406596b5a6fa1185f7f882539633ac1563f88",
      "tree": "db41d1eb83eb8a5fe81f12ba1e30dc0b8a4b64be",
      "parents": [
        "e44ad82f373e06c5b7b297da949720389e3e838f",
        "a8f819e9c71f7040631808469a3d3ef2706680c5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 15 06:45:06 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jan 15 06:45:06 2025 -0800"
      },
      "message": "Remove \u003e\u003d C++20-specific test now C++20 is the default. am: a8f819e9c7\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3450950\n\nChange-Id: Iad0ba3fc1a81009459745934b93aab105a469fd7\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a8f819e9c71f7040631808469a3d3ef2706680c5",
      "tree": "db41d1eb83eb8a5fe81f12ba1e30dc0b8a4b64be",
      "parents": [
        "9133a708f38f6ed4e02f869518aee343960400b7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 14 06:07:18 2025 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 14 06:07:18 2025 -0800"
      },
      "message": "Remove \u003e\u003d C++20-specific test now C++20 is the default.\n\nWe were just testing this twice.\n\nChange-Id: I424c897e26b70e4508f883e1fa4732794fd8d304\n"
    },
    {
      "commit": "e44ad82f373e06c5b7b297da949720389e3e838f",
      "tree": "e45c37148e6e7ac9aa96565370b1373b67fffc62",
      "parents": [
        "cb6b19764f2576febd4a44fd832a9327d1725bb4",
        "9133a708f38f6ed4e02f869518aee343960400b7"
      ],
      "author": {
        "name": "Akilesh Kailash",
        "email": "akailash@google.com",
        "time": "Wed Jan 08 13:42:04 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jan 08 13:42:04 2025 -0800"
      },
      "message": "libbase: Add HexToBytes function am: 9133a708f3\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3439473\n\nChange-Id: I39b75014c83367f872fc0e1c620132aac482904a\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9133a708f38f6ed4e02f869518aee343960400b7",
      "tree": "e45c37148e6e7ac9aa96565370b1373b67fffc62",
      "parents": [
        "b53532a9c1ee644e2e95e6c631dd9088bf05c56c"
      ],
      "author": {
        "name": "Akilesh Kailash",
        "email": "akailash@google.com",
        "time": "Tue Jan 07 23:10:11 2025 -0800"
      },
      "committer": {
        "name": "Akilesh Kailash",
        "email": "akailash@google.com",
        "time": "Wed Jan 08 11:37:39 2025 -0800"
      },
      "message": "libbase: Add HexToBytes function\n\nConverts hexString to binary data\n\nBug: 371304627\nTest: libbase_test\nChange-Id: Ifbf327c21deeaa62aac7ac9da6b31d58665758d0\nSigned-off-by: Akilesh Kailash \u003cakailash@google.com\u003e\n"
    },
    {
      "commit": "cb6b19764f2576febd4a44fd832a9327d1725bb4",
      "tree": "c130851b38a84a3d721476e2d91f26403b198303",
      "parents": [
        "acba9570539a49bfd5960e4285827b54ce025516",
        "27130f606dc64880363d08f32e45a5499ffe218c"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Dec 20 13:39:46 2024 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Dec 20 13:39:46 2024 -0800"
      },
      "message": "Empty merge ab/12770256 into aosp-main-future\n\nMerged-In: Idd512822b34eeaf4583fe161794c7d7519b4456e\nChange-Id: I598e209c9814a946bb7cfa7e30c478825a85ebae\n"
    },
    {
      "commit": "acba9570539a49bfd5960e4285827b54ce025516",
      "tree": "c130851b38a84a3d721476e2d91f26403b198303",
      "parents": [
        "63c4f50e83b29aedde82009889a8c5395f0132e8",
        "b53532a9c1ee644e2e95e6c631dd9088bf05c56c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 13 12:52:45 2024 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Dec 13 12:52:45 2024 -0800"
      },
      "message": "logging: don\u0027t `strrchr(filename, \u0027/\u0027)` unless we\u0027re actually logging. am: b53532a9c1\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3413617\n\nChange-Id: Idf9b1e09cfd1cdfadbfbea103c0265f26e093e3f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b53532a9c1ee644e2e95e6c631dd9088bf05c56c",
      "tree": "c130851b38a84a3d721476e2d91f26403b198303",
      "parents": [
        "63c4f50e83b29aedde82009889a8c5395f0132e8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 13 09:35:46 2024 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 13 09:35:46 2024 -0800"
      },
      "message": "logging: don\u0027t `strrchr(filename, \u0027/\u0027)` unless we\u0027re actually logging.\n\nThis is a waste of time in almost all cases.\n\nChange-Id: Ie67b655a2bfa4704474e945f47a846f936e7be33\n"
    },
    {
      "commit": "5f246b12b44ab9d034eae1f537a862592fa7f576",
      "tree": "015109eb3621b1e15b6d504fbef54b7fbf733965",
      "parents": [
        "7a8fd9ae0934a3cc8ff0bc3c6d7f5db3f8277dad",
        "310ca83c2e5acab6ec68f6a434b349927e9f5413"
      ],
      "author": {
        "name": "Prashanth Swaminathan",
        "email": "prashanthsw@google.com",
        "time": "Wed Dec 11 10:23:52 2024 -0800"
      },
      "committer": {
        "name": "Prashanth Swaminathan",
        "email": "prashanthsw@google.com",
        "time": "Wed Dec 11 16:05:08 2024 -0800"
      },
      "message": "Merge commit \u0027310ca83c2e5acab6ec68f6a434b349927e9f5413\u0027 into HEAD\n\nChange-Id: If654543bee71e1c2d9edc1dd86d1a3dd72f0d9ac\nReviewed-on: https://fuchsia-review.googlesource.com/c/third_party/android.googlesource.com/platform/system/libbase/+/1172097\nReviewed-by: Novin Changizi \u003cnovinc@google.com\u003e\n"
    },
    {
      "commit": "27130f606dc64880363d08f32e45a5499ffe218c",
      "tree": "8b1ca4aa0d706c81450e3b749ca58af1bd07b4af",
      "parents": [
        "feb85f7e27de776016dede8ce718dde7c7b3b6ae",
        "63c4f50e83b29aedde82009889a8c5395f0132e8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 06 22:43:43 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Dec 06 22:43:43 2024 +0000"
      },
      "message": "Make LogdChunkSplitter_TooLongTag a silent death test. am: b1b2e014dc am: 63c4f50e83\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3394946\n\nChange-Id: I31cbff76b894fb6d4b7efe625dc932eb2271ecf6\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "63c4f50e83b29aedde82009889a8c5395f0132e8",
      "tree": "8b1ca4aa0d706c81450e3b749ca58af1bd07b4af",
      "parents": [
        "1bc9db6ea0222b55600e812e60edb152a311fc1f",
        "b1b2e014dc1d0070b9c5257f9fbbad8acda57fd1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 06 22:21:19 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Dec 06 22:21:19 2024 +0000"
      },
      "message": "Make LogdChunkSplitter_TooLongTag a silent death test. am: b1b2e014dc\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3394946\n\nChange-Id: Iaac4c50aadb8f84372ed9ad9e603f0f5ca19ea9c\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b1b2e014dc1d0070b9c5257f9fbbad8acda57fd1",
      "tree": "8b1ca4aa0d706c81450e3b749ca58af1bd07b4af",
      "parents": [
        "310ca83c2e5acab6ec68f6a434b349927e9f5413"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 06 14:04:20 2024 -0500"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 06 14:04:20 2024 -0500"
      },
      "message": "Make LogdChunkSplitter_TooLongTag a silent death test.\n\nThis also requires making \u003candroid-base/silent_death_test.h\u003e compile on\nWindows.\n\nBug: http://b/382671954\nChange-Id: I3df02dd1aedfdbf9386b99861c646c89f22e2379\n"
    },
    {
      "commit": "feb85f7e27de776016dede8ce718dde7c7b3b6ae",
      "tree": "cb81483a04c9753907e89e6233bcccc30b18da66",
      "parents": [
        "c44a7f7ff30d7d4ae88c502e93d730ce1f977aae",
        "1bc9db6ea0222b55600e812e60edb152a311fc1f"
      ],
      "author": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Tue Dec 03 18:42:57 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Dec 03 18:42:57 2024 +0000"
      },
      "message": "[base] Cleanup ScopeGuard ctor + noexcept am: 310ca83c2e am: 1bc9db6ea0\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3387942\n\nChange-Id: If621042b78c1590a8a35cb8cbba9ff162db48534\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "1bc9db6ea0222b55600e812e60edb152a311fc1f",
      "tree": "cb81483a04c9753907e89e6233bcccc30b18da66",
      "parents": [
        "2cfeefab44fbd62e126eb3e8f5afd9fb6cf61328",
        "310ca83c2e5acab6ec68f6a434b349927e9f5413"
      ],
      "author": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Tue Dec 03 16:52:36 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Dec 03 16:52:36 2024 +0000"
      },
      "message": "[base] Cleanup ScopeGuard ctor + noexcept am: 310ca83c2e\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3387942\n\nChange-Id: I1b7775fb3c7af2d68e30259e3ccba25ec754b791\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "310ca83c2e5acab6ec68f6a434b349927e9f5413",
      "tree": "cb81483a04c9753907e89e6233bcccc30b18da66",
      "parents": [
        "72bf9612eacb940beaefbabc116c9f5b293d5ad1"
      ],
      "author": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Mon Dec 02 14:33:41 2024 -0800"
      },
      "committer": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Mon Dec 02 22:02:54 2024 -0800"
      },
      "message": "[base] Cleanup ScopeGuard ctor + noexcept\n\nstd::forward\u003c\u003e was doing nothing on a non-template ctor,\nreplaced it with a more efficient pass by value + move\n\n+ added noexcept to the remaining functions\n\nTest: atest libbase_test\nFlag: EXEMPT bugfix aka small cleanup\nChange-Id: I22a9aacb4210ba13afdec85c1730790048b6acdb\n"
    },
    {
      "commit": "c44a7f7ff30d7d4ae88c502e93d730ce1f977aae",
      "tree": "f4535b338fe673030caa6b408042fdfe78ebc62e",
      "parents": [
        "763da96a371205238889b14e2e70a6467e7f3538",
        "2cfeefab44fbd62e126eb3e8f5afd9fb6cf61328"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Thu Nov 07 23:04:09 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Nov 07 23:04:09 2024 +0000"
      },
      "message": "Add missing include for atoi(). am: 72bf9612ea am: 2cfeefab44\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3341698\n\nChange-Id: I2dc50a392a70d51d4e2cdf2302b58d57e3b0ebf4\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "2cfeefab44fbd62e126eb3e8f5afd9fb6cf61328",
      "tree": "f4535b338fe673030caa6b408042fdfe78ebc62e",
      "parents": [
        "a290f589d798c632d52aed3dfe37cfa7289752e5",
        "72bf9612eacb940beaefbabc116c9f5b293d5ad1"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Thu Nov 07 22:42:01 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Nov 07 22:42:01 2024 +0000"
      },
      "message": "Add missing include for atoi(). am: 72bf9612ea\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3341698\n\nChange-Id: Ie429d270defbe888c65629314ad713b98c7845f1\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "72bf9612eacb940beaefbabc116c9f5b293d5ad1",
      "tree": "f4535b338fe673030caa6b408042fdfe78ebc62e",
      "parents": [
        "46fc805282265715266c256fbe34cf1a886c475f"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Thu Nov 07 06:59:04 2024 +0000"
      },
      "committer": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Thu Nov 07 20:40:11 2024 +0000"
      },
      "message": "Add missing include for atoi().\n\nRequired to fix build in an internal repo where this code is\nimported with Copybara.\n\nBug: 377642856\nTest: presubmit\nChange-Id: I8955eb1eb84e72d388b48df0cd583c65e093eb13\n"
    },
    {
      "commit": "763da96a371205238889b14e2e70a6467e7f3538",
      "tree": "e519e81337a655da865b095e4c92b32fdece332c",
      "parents": [
        "10af74cf6b85c6e0b9d1bf8cf6d9a005da4b7335",
        "a290f589d798c632d52aed3dfe37cfa7289752e5"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 16:21:59 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 16:21:59 2024 +0000"
      },
      "message": "Remove non-template android::base::Trim implementation am: 46fc805282 am: a290f589d7\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3327640\n\nChange-Id: I8f135d8de96982d6d66b374d3bbcdb974242fbde\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "10af74cf6b85c6e0b9d1bf8cf6d9a005da4b7335",
      "tree": "67a4295a444f92b45ed960107999f521dabc7923",
      "parents": [
        "41c7de673ffff94063bcb71b5a43092feda3664d",
        "aba7caa5629c9667582ec6f846d274d14fbffea2"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 16:21:55 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 16:21:55 2024 +0000"
      },
      "message": "Remove unused android::base::Join explicit instantiations am: ca4910117f am: aba7caa562\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3327639\n\nChange-Id: I7bb1e55a78a3702d06ff3a81b0dcd4ee0330d1e3\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "41c7de673ffff94063bcb71b5a43092feda3664d",
      "tree": "001d94caf389f27c42f721615232f9c03c3263a3",
      "parents": [
        "c873fbd491ec0fe78663d2f4265f02feb789cc5d",
        "1d8fd58ae559bdc36111a3273635990c13241233"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 16:21:51 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 16:21:51 2024 +0000"
      },
      "message": "Speedup android::base::Join 3x am: 4932431012 am: 1d8fd58ae5\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3323199\n\nChange-Id: Iabfd2adf831eaa3341b6abac859d4a6b97264da1\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "c873fbd491ec0fe78663d2f4265f02feb789cc5d",
      "tree": "b8c0b459ad1771727ea5aa36a53900452288a513",
      "parents": [
        "45f33c6febac362ceff3f40634d3c3d3520b3016",
        "c0980eb49e19cbd6d7eeb4c8d9c913d419c0272e"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 16:21:47 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 16:21:47 2024 +0000"
      },
      "message": "Add test case for android::base::Join of single non-string element am: 42f1935d5f am: c0980eb49e\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3328170\n\nChange-Id: I1f8da73bcfb14e428be35deb27fac7998b0fe604\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a290f589d798c632d52aed3dfe37cfa7289752e5",
      "tree": "e519e81337a655da865b095e4c92b32fdece332c",
      "parents": [
        "aba7caa5629c9667582ec6f846d274d14fbffea2",
        "46fc805282265715266c256fbe34cf1a886c475f"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 15:58:34 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 15:58:34 2024 +0000"
      },
      "message": "Remove non-template android::base::Trim implementation am: 46fc805282\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3327640\n\nChange-Id: Ic56a3967cd9b8a947c6cd6a031f76c2ec29d5674\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "aba7caa5629c9667582ec6f846d274d14fbffea2",
      "tree": "67a4295a444f92b45ed960107999f521dabc7923",
      "parents": [
        "1d8fd58ae559bdc36111a3273635990c13241233",
        "ca4910117fff436a6dd341919bd232998c64e59c"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 15:58:32 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 15:58:32 2024 +0000"
      },
      "message": "Remove unused android::base::Join explicit instantiations am: ca4910117f\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3327639\n\nChange-Id: I8a8379cccffdf4be8d9f62874bfa969f4e1c130f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "1d8fd58ae559bdc36111a3273635990c13241233",
      "tree": "001d94caf389f27c42f721615232f9c03c3263a3",
      "parents": [
        "c0980eb49e19cbd6d7eeb4c8d9c913d419c0272e",
        "4932431012bc0cd274403dc88b36888d626ef2b7"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 15:58:28 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 15:58:28 2024 +0000"
      },
      "message": "Speedup android::base::Join 3x am: 4932431012\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3323199\n\nChange-Id: I442b669fc5b0f5d0babde5f9d688e5d56c0bd1f7\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "c0980eb49e19cbd6d7eeb4c8d9c913d419c0272e",
      "tree": "b8c0b459ad1771727ea5aa36a53900452288a513",
      "parents": [
        "680ed010206d0a9c4d94d8cd0631d0f4fae11c37",
        "42f1935d5fd928ab759fe644cf84577ee5720ce2"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Mon Nov 04 15:58:25 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Nov 04 15:58:25 2024 +0000"
      },
      "message": "Add test case for android::base::Join of single non-string element am: 42f1935d5f\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3328170\n\nChange-Id: I76b812e663bed70d995db4006e3e088c242465dc\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "46fc805282265715266c256fbe34cf1a886c475f",
      "tree": "e519e81337a655da865b095e4c92b32fdece332c",
      "parents": [
        "ca4910117fff436a6dd341919bd232998c64e59c"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Fri Nov 01 00:00:44 2024 +0000"
      },
      "committer": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Fri Nov 01 16:16:03 2024 +0000"
      },
      "message": "Remove non-template android::base::Trim implementation\n\nThis was retained for binary-compatibility after commit 50251b5 (\"Take\nstd::string_views instead of const std::string \u0026 for\nandroid::base::Trim\") removed the non-template version of Trim, but it\nappears to be unused. Remove it.\n\nChange-Id: I31855de078e5d747af53519423da6adbf57b75ee\n"
    },
    {
      "commit": "ca4910117fff436a6dd341919bd232998c64e59c",
      "tree": "67a4295a444f92b45ed960107999f521dabc7923",
      "parents": [
        "4932431012bc0cd274403dc88b36888d626ef2b7"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Thu Oct 31 23:57:45 2024 +0000"
      },
      "committer": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Fri Nov 01 16:16:03 2024 +0000"
      },
      "message": "Remove unused android::base::Join explicit instantiations\n\nThese three instantiations do not appear to be used anywhere. Remove\nthem.\n\nChange-Id: I34f0ee8a3de59897319bea442bf1930e0f3a23c9\n"
    },
    {
      "commit": "4932431012bc0cd274403dc88b36888d626ef2b7",
      "tree": "001d94caf389f27c42f721615232f9c03c3263a3",
      "parents": [
        "42f1935d5fd928ab759fe644cf84577ee5720ce2"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Sun Oct 27 17:39:35 2024 +0000"
      },
      "committer": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Fri Nov 01 16:16:03 2024 +0000"
      },
      "message": "Speedup android::base::Join 3x\n\nhttps://quick-bench.com/q/p6kAiU2uN1Xwx8wIfhBE7TNqLRY\n\nThere are two problems with the existing Join function template:\n\n1) It\u0027s implemented with std::ostringstream, and stringstreams are slow.\n\nSo is reallocating and remapping the memory backing the stream, and then\ncopying contents as capacity limits are repeatedly exceeded.\n\n2) The current explicit template instantiations are almost never used.\n\nextern template std::string Join(const std::vector\u003cstd::string\u003e\u0026, char);\nextern template std::string Join(const std::vector\u003cconst char*\u003e\u0026, char);\nextern template std::string Join(const std::vector\u003cstd::string\u003e\u0026, const std::string\u0026);\nextern template std::string Join(const std::vector\u003cconst char*\u003e\u0026, const std::string\u0026);\n\nFor the aosp_cf_x86_64_phone-trunk_staging-userdebug build, none of the\nexplicit instantiations are used for:\n\n99.96% of the 7.5 million calls to Join during build\n100% of the 1132 calls to Join during cuttlefish boot\n\n...leading to duplicate code generation across translation units of\nhundreds of callers. The distribution of calls by template types during\nbuild is:\n\nother                       214,354\nconstvec\u003cstr\u003e,char            2,812  \u003c--- Explicit instantiation used\nvec\u003cstr\u003e,char                96,607       only 0.04% of the time.\nconstvec\u003cstr\u003e,constchar*  1,113,524\nvec\u003cstr\u003e,constchar*       6,163,696\nTotal                     7,590,993\n\nThis change:\n1) Avoids the use of ostringstream and the insertion operator where\npossible. Some callers use non-string element types like int, and\ndepend on the conversion performed by std::ostream:operator\u003c\u003c to get\nstring representations, so we cannot eliminate ostringstream entirely\nand also retain source compatibility.\n\n2) Avoids reallocations and copies by determining the required size of\nthe output string up front, and allocating just once. The 90%th\npercentile of returned string lengths for all callers is currently only\n48 chars, so the benefit from this for longer string lengths should be\ngreater.\n\n3) Reduces generated code duplication by adding explicit template\ninstantiations for the additional cases above. This requires converting\nContainerT to a universal reference to support callers who provide\nrvalues.\n\n4) Adds a special case for 1 element containers to return early, since\n27% of calls have only 1 element.\n\nChange-Id: I0b71d75c134ad9e4753e814f3b0e7bb4c7bbbb02\n"
    },
    {
      "commit": "42f1935d5fd928ab759fe644cf84577ee5720ce2",
      "tree": "b8c0b459ad1771727ea5aa36a53900452288a513",
      "parents": [
        "6863cb7c660ab5b0985957daaa6f12007d80de71"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Fri Nov 01 16:14:33 2024 +0000"
      },
      "committer": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Fri Nov 01 16:16:03 2024 +0000"
      },
      "message": "Add test case for android::base::Join of single non-string element\n\nThis doesn\u0027t require joining with a separator, but it does require\nformat conversion to a std::string.\n\nChange-Id: I29b94e544d41f9b66c97b46fdeff2f7c7967f939\n"
    },
    {
      "commit": "45f33c6febac362ceff3f40634d3c3d3520b3016",
      "tree": "7d53ca00b0c6e278dbc67282b25b06aa1b8add72",
      "parents": [
        "2fcd97c1a000657380c2ba2b370f5cd6d157d86a",
        "680ed010206d0a9c4d94d8cd0631d0f4fae11c37"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Thu Oct 24 16:00:48 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 24 16:00:48 2024 +0000"
      },
      "message": "Merge \"Use std::string_view::starts_with and std::string_view::ends_with\" into main am: 6863cb7c66 am: 680ed01020\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3315082\n\nChange-Id: I98341f940517d0d78caefcd9731795cd02d72e2c\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "680ed010206d0a9c4d94d8cd0631d0f4fae11c37",
      "tree": "7d53ca00b0c6e278dbc67282b25b06aa1b8add72",
      "parents": [
        "2607ac47f203feb3bf8c08b9d5be4ad18086f816",
        "6863cb7c660ab5b0985957daaa6f12007d80de71"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Thu Oct 24 15:47:05 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 24 15:47:05 2024 +0000"
      },
      "message": "Merge \"Use std::string_view::starts_with and std::string_view::ends_with\" into main am: 6863cb7c66\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3315082\n\nChange-Id: I42f6bf097945f4229e67e205c108d130ddc10e97\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "6863cb7c660ab5b0985957daaa6f12007d80de71",
      "tree": "7d53ca00b0c6e278dbc67282b25b06aa1b8add72",
      "parents": [
        "da19fa652cfac351225b4c68cd09a3e63e89c043",
        "af4ae8dafee8fce54b13405f56766edc76993235"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Thu Oct 24 15:11:05 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 24 15:11:05 2024 +0000"
      },
      "message": "Merge \"Use std::string_view::starts_with and std::string_view::ends_with\" into main"
    },
    {
      "commit": "2fcd97c1a000657380c2ba2b370f5cd6d157d86a",
      "tree": "8b365e94a26ec528992f4d5530a92dd76fdc2253",
      "parents": [
        "d5748149418f315decd88989045e65839299a8a5",
        "2607ac47f203feb3bf8c08b9d5be4ad18086f816"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Oct 23 21:31:21 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 23 21:31:21 2024 +0000"
      },
      "message": "Remove unused variable. am: da19fa652c am: 2607ac47f2\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3317666\n\nChange-Id: I5cdb3a12e75765095621704bc7644aad34882e77\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "2607ac47f203feb3bf8c08b9d5be4ad18086f816",
      "tree": "8b365e94a26ec528992f4d5530a92dd76fdc2253",
      "parents": [
        "6113ae2313048424700180f2180465f7eba11e6a",
        "da19fa652cfac351225b4c68cd09a3e63e89c043"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Oct 23 21:03:05 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 23 21:03:05 2024 +0000"
      },
      "message": "Remove unused variable. am: da19fa652c\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3317666\n\nChange-Id: Ic049aa76861618d13976a7b88be1d382e9fc629b\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "af4ae8dafee8fce54b13405f56766edc76993235",
      "tree": "94971a05045ac7bdfe73204fd6ec2b3c9cfd0470",
      "parents": [
        "b0c2bdc6109ddc5c0bebff243170e4db40ea147e"
      ],
      "author": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Wed Oct 23 18:14:37 2024 +0000"
      },
      "committer": {
        "name": "T.J. Mercier",
        "email": "tjmercier@google.com",
        "time": "Wed Oct 23 18:54:07 2024 +0000"
      },
      "message": "Use std::string_view::starts_with and std::string_view::ends_with\n\nNow that we use c++20 by default [1], we can simplify the\nimplementations of android::base::StartsWith and\nandroid::base::EndsWith to call the standard library implementations.\n\n[1] https://r.android.com/c/platform/build/soong/+/2760825\n\nChange-Id: I7da867296a8b5f25a4f65074162e70ff6cae1b74\n"
    },
    {
      "commit": "da19fa652cfac351225b4c68cd09a3e63e89c043",
      "tree": "8b365e94a26ec528992f4d5530a92dd76fdc2253",
      "parents": [
        "03f1fc4c3c8534704127fb066f80225afadc0daa"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Oct 23 00:19:42 2024 +0000"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Oct 23 02:18:51 2024 +0000"
      },
      "message": "Remove unused variable.\n\nTest: Builds with -Wunused-variable\nChange-Id: I95fd1da41b7207a8c0d9f62b053a395e60f73c80\n"
    },
    {
      "commit": "d5748149418f315decd88989045e65839299a8a5",
      "tree": "60b7795689aa3ba7e7de4bc45934de7a9bc21dfa",
      "parents": [
        "9f1662da3f76d157fe055866d39dd5508a39c0ca",
        "6113ae2313048424700180f2180465f7eba11e6a"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Oct 18 21:13:16 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 18 21:13:16 2024 +0000"
      },
      "message": "[automerger skipped] Merge \"Mark 24Q4 as merged in aosp-main-future\" into aosp-main-future am: 6113ae2313 -s ours\n\nam skip reason: Merged-In I5bee1ce0551a19664f6ea49353406cdc63ae9840 with SHA-1 b11d92af91 is already in history\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/system/libbase/+/29935380\n\nChange-Id: I0d72899b7cf6224d6876963f41fac55a64d58208\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9f1662da3f76d157fe055866d39dd5508a39c0ca",
      "tree": "60b7795689aa3ba7e7de4bc45934de7a9bc21dfa",
      "parents": [
        "331016ad29ff13eaa8ec542d8a6d82b82cd0cc97",
        "c84a67619502daed5eb90d5dc7716ee9a277b704"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Oct 18 21:12:51 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 18 21:12:51 2024 +0000"
      },
      "message": "[automerger skipped] Mark 24Q4 as merged in aosp-main-future am: c84a676195 -s ours\n\nam skip reason: Merged-In I5bee1ce0551a19664f6ea49353406cdc63ae9840 with SHA-1 b11d92af91 is already in history\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/system/libbase/+/29935380\n\nChange-Id: Ib5e287eb61818ab4e65ca44998cca4354e47af4a\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "6113ae2313048424700180f2180465f7eba11e6a",
      "tree": "60b7795689aa3ba7e7de4bc45934de7a9bc21dfa",
      "parents": [
        "8356f771a680fb739a6785d22d25c614b5f2a7e5",
        "c84a67619502daed5eb90d5dc7716ee9a277b704"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Oct 18 20:52:30 2024 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 18 20:52:30 2024 +0000"
      },
      "message": "Merge \"Mark 24Q4 as merged in aosp-main-future\" into aosp-main-future"
    },
    {
      "commit": "331016ad29ff13eaa8ec542d8a6d82b82cd0cc97",
      "tree": "60b7795689aa3ba7e7de4bc45934de7a9bc21dfa",
      "parents": [
        "b11d92af9162b4738617d0bf8a5d0a65ad03be2b",
        "8356f771a680fb739a6785d22d25c614b5f2a7e5"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Fri Oct 18 00:48:43 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 18 00:48:43 2024 +0000"
      },
      "message": "Add dirgroup for trusty genrule am: 03f1fc4c3c am: 8356f771a6\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3304022\n\nChange-Id: Ic0b368f97658c08d538df31f7390250b1f63b5b3\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "8356f771a680fb739a6785d22d25c614b5f2a7e5",
      "tree": "60b7795689aa3ba7e7de4bc45934de7a9bc21dfa",
      "parents": [
        "4836ef3e4ba313dafbdc5bf56d9c8b7067fcba84",
        "03f1fc4c3c8534704127fb066f80225afadc0daa"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Fri Oct 18 00:09:38 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 18 00:09:38 2024 +0000"
      },
      "message": "Add dirgroup for trusty genrule am: 03f1fc4c3c\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3304022\n\nChange-Id: Icd1ef042c4f02fdbbf1497bc2fc2d11444e7a813\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "c84a67619502daed5eb90d5dc7716ee9a277b704",
      "tree": "fc82c37cf346f04fda581f2979a771c1dfa114a8",
      "parents": [
        "4836ef3e4ba313dafbdc5bf56d9c8b7067fcba84",
        "495f878bf810c485873f93ab61dd44765027e689"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Oct 17 11:03:39 2024 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Oct 17 11:03:39 2024 -0700"
      },
      "message": "Mark 24Q4 as merged in aosp-main-future\n\nBug: 373937381\nMerged-In: I5bee1ce0551a19664f6ea49353406cdc63ae9840\nChange-Id: Ie22a723fee8b4c73d3a31fc64362bdae95310956\n"
    },
    {
      "commit": "03f1fc4c3c8534704127fb066f80225afadc0daa",
      "tree": "60b7795689aa3ba7e7de4bc45934de7a9bc21dfa",
      "parents": [
        "b0c2bdc6109ddc5c0bebff243170e4db40ea147e"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Oct 10 17:15:48 2024 +0900"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Oct 10 17:31:33 2024 +0900"
      },
      "message": "Add dirgroup for trusty genrule\n\nBug: 358302178\nTest: m lk.elf.x86_64 lk.elf.arm64\nChange-Id: I6d0dc777993257a9c718a7f3dbe507c8364b3d64\n"
    },
    {
      "commit": "b11d92af9162b4738617d0bf8a5d0a65ad03be2b",
      "tree": "fc82c37cf346f04fda581f2979a771c1dfa114a8",
      "parents": [
        "0d17adb0f09a9333134b24104b679b0f78b506ce",
        "4836ef3e4ba313dafbdc5bf56d9c8b7067fcba84"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Oct 09 20:57:31 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 09 20:57:31 2024 +0000"
      },
      "message": "Fix build with fmtlib 11.0.2 am: b0c2bdc610 am: 4836ef3e4b\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3290634\n\nChange-Id: I5bee1ce0551a19664f6ea49353406cdc63ae9840\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "4836ef3e4ba313dafbdc5bf56d9c8b7067fcba84",
      "tree": "fc82c37cf346f04fda581f2979a771c1dfa114a8",
      "parents": [
        "fc89185025a5868cad710c65ac5cde01b54b0159",
        "b0c2bdc6109ddc5c0bebff243170e4db40ea147e"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Oct 09 20:38:25 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 09 20:38:25 2024 +0000"
      },
      "message": "Fix build with fmtlib 11.0.2 am: b0c2bdc610\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3290634\n\nChange-Id: Iaa94091076d05c8ec7a883bb6dbec2c15176df92\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b0c2bdc6109ddc5c0bebff243170e4db40ea147e",
      "tree": "fc82c37cf346f04fda581f2979a771c1dfa114a8",
      "parents": [
        "38c889f97dd421e8d83cb15c9c50f2b557efcfcc"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Fri Oct 04 01:19:56 2024 +0900"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Oct 03 16:29:53 2024 +0000"
      },
      "message": "Fix build with fmtlib 11.0.2\n\nTest: presubmit\nBug: 371149965\nChange-Id: I49239da2eb7fd31502fdeac209d7e8e9e9ee6e31\n"
    },
    {
      "commit": "0d17adb0f09a9333134b24104b679b0f78b506ce",
      "tree": "aef76e8ea34c084b8ddf7c2a4b48ad7dbc7cae41",
      "parents": [
        "495f878bf810c485873f93ab61dd44765027e689",
        "fc89185025a5868cad710c65ac5cde01b54b0159"
      ],
      "author": {
        "name": "John Wu",
        "email": "topjohnwu@google.com",
        "time": "Tue Sep 24 18:15:36 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Sep 24 18:15:36 2024 +0000"
      },
      "message": "Improve host-side system properties support am: 38c889f97d am: fc89185025\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3269774\n\nChange-Id: I84802c8185b41e796e28e784083785a56da67b78\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "fc89185025a5868cad710c65ac5cde01b54b0159",
      "tree": "aef76e8ea34c084b8ddf7c2a4b48ad7dbc7cae41",
      "parents": [
        "26b22c8632b3db744448884dbc4f2262d152c529",
        "38c889f97dd421e8d83cb15c9c50f2b557efcfcc"
      ],
      "author": {
        "name": "John Wu",
        "email": "topjohnwu@google.com",
        "time": "Tue Sep 24 17:55:14 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Sep 24 17:55:14 2024 +0000"
      },
      "message": "Improve host-side system properties support am: 38c889f97d\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3269774\n\nChange-Id: I6ca97d66a2f97b63828eeafbfb40ec65b9e1b7fe\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "38c889f97dd421e8d83cb15c9c50f2b557efcfcc",
      "tree": "aef76e8ea34c084b8ddf7c2a4b48ad7dbc7cae41",
      "parents": [
        "26b22c8632b3db744448884dbc4f2262d152c529"
      ],
      "author": {
        "name": "John Wu",
        "email": "topjohnwu@google.com",
        "time": "Mon Sep 23 21:30:14 2024 +0000"
      },
      "committer": {
        "name": "John Wu",
        "email": "topjohnwu@google.com",
        "time": "Mon Sep 23 21:30:14 2024 +0000"
      },
      "message": "Improve host-side system properties support\n\n- Add property_find and property_read_callback\n- Add internal locking on the in-process properties\n- Make the \"shim\" property functions weak so downstream users\n  can override the implementation\n\nBug: 337110712\nFlag: EXEMPT host side change only\nTest: atest --host libbase_test\nChange-Id: I8b69f85ef2d82be5c722bdf2d7bbaf4d4ac35e7a\n"
    },
    {
      "commit": "495f878bf810c485873f93ab61dd44765027e689",
      "tree": "36d76ffbbe86fd36c1b23425d3eca0d566242a7b",
      "parents": [
        "675b3d0d98124aec01965eef75d4266968ba3663",
        "26b22c8632b3db744448884dbc4f2262d152c529"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Aug 27 13:50:14 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Aug 27 13:50:14 2024 +0000"
      },
      "message": "Add an error unwrap macro OR_ASSERT_FAIL for use in gtests. am: d0aeaf64e7 am: 26b22c8632\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3241461\n\nChange-Id: I36a2e33a4252ea6990e83ce3c718bde4822c1605\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "26b22c8632b3db744448884dbc4f2262d152c529",
      "tree": "36d76ffbbe86fd36c1b23425d3eca0d566242a7b",
      "parents": [
        "1041c49f3208a1e4ed726a1b4780b20d2b5f0fcb",
        "d0aeaf64e7f860b0233496fc88098be74165b03b"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Aug 27 13:26:43 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Aug 27 13:26:43 2024 +0000"
      },
      "message": "Add an error unwrap macro OR_ASSERT_FAIL for use in gtests. am: d0aeaf64e7\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3241461\n\nChange-Id: I5e50ce93501fcfe317525e02c343497eadcea4ab\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "d0aeaf64e7f860b0233496fc88098be74165b03b",
      "tree": "36d76ffbbe86fd36c1b23425d3eca0d566242a7b",
      "parents": [
        "835d84c572478eed9bf2c21ad0ee4f81299c9202"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Aug 26 13:51:28 2024 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Aug 26 17:14:43 2024 +0100"
      },
      "message": "Add an error unwrap macro OR_ASSERT_FAIL for use in gtests.\n\nSimilar to OR_RETURN and OR_FATAL, but it aborts the test with an\nassertion failure on error.\n\nAlso introduce a generic macro UNWRAP_OR_DO, which collects the common\nboilerplate in OR_\u003csomething\u003e macros. It can also be useful directly in\nuser code to simplify unwrapping.\n\nAlso extend and correct a comment for the gtest-related macros in\nresult.h.\n\nTest: atest libbase_test\nTest: Success and provoked errors with https://r.android.com/3236844.\nBug: 360737799\nChange-Id: Ib9132e82c0435488a4d5c3f73ef4c2ae3c913c4c\n"
    },
    {
      "commit": "675b3d0d98124aec01965eef75d4266968ba3663",
      "tree": "3c873be925a8e143bb5c2d3f1a394288982f543d",
      "parents": [
        "9f8a0097d9801ee41f817366fd1d11c056218406",
        "1041c49f3208a1e4ed726a1b4780b20d2b5f0fcb"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Aug 10 12:38:31 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Aug 10 12:38:31 2024 +0000"
      },
      "message": "There\u0027s now just one \u003csys/system_properties.h\u003e. am: 835d84c572 am: 1041c49f32\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3214576\n\nChange-Id: I1654cffe4f785ff0cf1b55be7f11686cf40dcf9f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "1041c49f3208a1e4ed726a1b4780b20d2b5f0fcb",
      "tree": "3c873be925a8e143bb5c2d3f1a394288982f543d",
      "parents": [
        "46c91add276f33de67926cfd10c369cad0070b94",
        "835d84c572478eed9bf2c21ad0ee4f81299c9202"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Aug 10 12:15:22 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Aug 10 12:15:22 2024 +0000"
      },
      "message": "There\u0027s now just one \u003csys/system_properties.h\u003e. am: 835d84c572\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3214576\n\nChange-Id: I5ffc7b3995405079eec54104f2ab2a4cc17acf1c\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "835d84c572478eed9bf2c21ad0ee4f81299c9202",
      "tree": "3c873be925a8e143bb5c2d3f1a394288982f543d",
      "parents": [
        "38907816381af3095527e22adb24d2e16a485e7a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Aug 09 14:00:16 2024 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Aug 09 14:00:16 2024 +0000"
      },
      "message": "There\u0027s now just one \u003csys/system_properties.h\u003e.\n\nChange-Id: I8205904d521df539983606ec61aea66d0a88a583\n"
    },
    {
      "commit": "7a8fd9ae0934a3cc8ff0bc3c6d7f5db3f8277dad",
      "tree": "d3edb197c6b39654b726051c61f032514130f090",
      "parents": [
        "5701ebb8a162c3168673e54399572f2d192b2387",
        "38907816381af3095527e22adb24d2e16a485e7a"
      ],
      "author": {
        "name": "Benjamin Lerman",
        "email": "qsr@chromium.org",
        "time": "Tue Jul 30 12:10:54 2024 +0200"
      },
      "committer": {
        "name": "Benjamin Lerman",
        "email": "qsr@chromium.org",
        "time": "Tue Jul 30 14:23:44 2024 +0000"
      },
      "message": "Merge remote-tracking branch \u0027origin/upstream/main\u0027 into \u0027main\u0027\n\nChange-Id: I39afca9b4d6fdb88f1b2f30d37b3355052f720de\nReviewed-on: https://fuchsia-review.googlesource.com/c/third_party/android.googlesource.com/platform/system/libbase/+/1091213\nReviewed-by: Fabio D\u0027Urso \u003cfdurso@google.com\u003e\n"
    },
    {
      "commit": "9f8a0097d9801ee41f817366fd1d11c056218406",
      "tree": "5b2f8f6424ca19809be531b8a0950e366bf812a1",
      "parents": [
        "4bcde940b083e8273468198762b2ddf6ba6aaa18",
        "46c91add276f33de67926cfd10c369cad0070b94"
      ],
      "author": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Tue Jul 16 21:16:18 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Jul 16 21:16:18 2024 +0000"
      },
      "message": "Add c++-style conditional logs am: 3890781638 am: 46c91add27\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3174800\n\nChange-Id: Iad0b4a6674469c9662a06992a58e12c236f520b1\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "46c91add276f33de67926cfd10c369cad0070b94",
      "tree": "5b2f8f6424ca19809be531b8a0950e366bf812a1",
      "parents": [
        "39d56d888df94d6e2390f97941a4bef9a0db4281",
        "38907816381af3095527e22adb24d2e16a485e7a"
      ],
      "author": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Tue Jul 16 20:58:49 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Jul 16 20:58:49 2024 +0000"
      },
      "message": "Add c++-style conditional logs am: 3890781638\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3174800\n\nChange-Id: Ie0ed09e8fb14c8a2e9299826789362a66357ea08\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "38907816381af3095527e22adb24d2e16a485e7a",
      "tree": "5b2f8f6424ca19809be531b8a0950e366bf812a1",
      "parents": [
        "f8363f9ddecb17a64d6190f9df660addf6caf9b5"
      ],
      "author": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Mon Jul 15 22:04:37 2024 +0000"
      },
      "committer": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Tue Jul 16 15:17:20 2024 +0000"
      },
      "message": "Add c++-style conditional logs\n\nThese could be used like this:\n\nnotify \u003d !connection-\u003emonitor \u0026\u0026 stillHaveWindowHandle;\nLOGI_IF(notify) \u003c\u003c \"consume closed input channel\";\n\nPreviously, this was only possible to do with the c-style logs like\nALOGI_IF.\n\nBug: 270573445\nFlag: EXEMPT refactor\nTest: added some LOGI statements to InputDispatcher_test and checked\nthat the logs are printed on the console on host.\n\nChange-Id: I80a2ee90ed680a2a2193f4c316aa5f94633982ba\n"
    },
    {
      "commit": "4bcde940b083e8273468198762b2ddf6ba6aaa18",
      "tree": "8489c341b6fc67a248b0bebcdb6871fde1fab4ea",
      "parents": [
        "81df8941c5ac97fa49f6e03ad38b7fb5b28924cb",
        "39d56d888df94d6e2390f97941a4bef9a0db4281"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 03 11:52:44 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 03 11:52:44 2024 +0000"
      },
      "message": "LOG_STREAM: fix the documentation to match the implementation. am: f8363f9dde am: 39d56d888d\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3154879\n\nChange-Id: I7437636642db540298980fadd136af6569a380cf\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "39d56d888df94d6e2390f97941a4bef9a0db4281",
      "tree": "8489c341b6fc67a248b0bebcdb6871fde1fab4ea",
      "parents": [
        "81df8941c5ac97fa49f6e03ad38b7fb5b28924cb",
        "f8363f9ddecb17a64d6190f9df660addf6caf9b5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 03 11:31:48 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 03 11:31:48 2024 +0000"
      },
      "message": "LOG_STREAM: fix the documentation to match the implementation. am: f8363f9dde\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3154879\n\nChange-Id: Ib0c262403da7c19cd3ab7af4c86a7558ef7d06cd\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "f8363f9ddecb17a64d6190f9df660addf6caf9b5",
      "tree": "8489c341b6fc67a248b0bebcdb6871fde1fab4ea",
      "parents": [
        "1ec1ab943940944d53907789763fedd5888eb660"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 02 15:26:21 2024 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 02 15:27:44 2024 +0000"
      },
      "message": "LOG_STREAM: fix the documentation to match the implementation.\n\nBug: https://issuetracker.google.com/214253547\nChange-Id: I90811fbe971f948a43a176892bb4f801a7790a4e\n"
    },
    {
      "commit": "81df8941c5ac97fa49f6e03ad38b7fb5b28924cb",
      "tree": "f13f552402a9fc84a2c255caa07f782f1d1d939e",
      "parents": [
        "99e1e5ad998b7fbde63af0c3989af0cc3af9f9af",
        "1ec1ab943940944d53907789763fedd5888eb660"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 31 12:19:21 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 31 12:19:21 2024 +0000"
      },
      "message": "Document KernelLogger better. am: 3891348d37 am: 1ec1ab9439\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3106941\n\nChange-Id: I1958ce32939e4ed528e35cc6913277d61875233b\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "1ec1ab943940944d53907789763fedd5888eb660",
      "tree": "f13f552402a9fc84a2c255caa07f782f1d1d939e",
      "parents": [
        "dbc7106d9fcd61a6793a4dca1997c324a13bd989",
        "3891348d37d071a4c496a3bd239e93912f48c966"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 31 12:03:07 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 31 12:03:07 2024 +0000"
      },
      "message": "Document KernelLogger better. am: 3891348d37\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3106941\n\nChange-Id: I7910d0659d2590e88379c98f0a59e19d48e00d1e\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "3891348d37d071a4c496a3bd239e93912f48c966",
      "tree": "f13f552402a9fc84a2c255caa07f782f1d1d939e",
      "parents": [
        "bed8f2e3c7af3c616f1d99af81588b1be32fcd2c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 30 19:49:57 2024 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 30 19:49:57 2024 +0000"
      },
      "message": "Document KernelLogger better.\n\nIn particular, the most likely answer to \"why aren\u0027t I seeing any of my logging?\".\n\nChange-Id: I66e9012c4d0364f137797fa8d5e3c23244f3c9ba\n"
    },
    {
      "commit": "99e1e5ad998b7fbde63af0c3989af0cc3af9f9af",
      "tree": "59a819a4424c35cb416be576eba8e1bc7e0509f0",
      "parents": [
        "88a4a07fc1a898ca9535d372aa4d59cb3679f0ef",
        "dbc7106d9fcd61a6793a4dca1997c324a13bd989"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu May 23 02:59:36 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 23 02:59:36 2024 +0000"
      },
      "message": "Merge \"Remove VNDK definition(s)\" into main am: bed8f2e3c7 am: dbc7106d9f\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2996867\n\nChange-Id: I587cb7a4d8c22ec5cd91cdf278b0a287970a3fc8\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "dbc7106d9fcd61a6793a4dca1997c324a13bd989",
      "tree": "59a819a4424c35cb416be576eba8e1bc7e0509f0",
      "parents": [
        "7dcabfff800cc85e50ad379a51a6edd077fce653",
        "bed8f2e3c7af3c616f1d99af81588b1be32fcd2c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu May 23 02:36:37 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 23 02:36:37 2024 +0000"
      },
      "message": "Merge \"Remove VNDK definition(s)\" into main am: bed8f2e3c7\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2996867\n\nChange-Id: If1d3e440144ad4bee1e32570f48276c537ae9112\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "bed8f2e3c7af3c616f1d99af81588b1be32fcd2c",
      "tree": "59a819a4424c35cb416be576eba8e1bc7e0509f0",
      "parents": [
        "5df5be0fbbfcf06e610f01f84863e0a96a82c27a",
        "0203d3349d2c1c1b49dd3c8949ba975d4d5aadac"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Thu May 23 02:16:31 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 23 02:16:31 2024 +0000"
      },
      "message": "Merge \"Remove VNDK definition(s)\" into main"
    },
    {
      "commit": "88a4a07fc1a898ca9535d372aa4d59cb3679f0ef",
      "tree": "1c74789b0e751ffe20f18c0d056cb703a3d3fbc3",
      "parents": [
        "c7011fb21a936a33c6339a62014d9a37154d18c9",
        "7dcabfff800cc85e50ad379a51a6edd077fce653"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Apr 29 22:16:28 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 29 22:16:28 2024 +0000"
      },
      "message": "[automerger skipped] Empty merge of Android 24Q2 Release (ab/11526283) to aosp-main-future am: 7dcabfff80 -s ours\n\nam skip reason: Merged-In If39ec74e5592d9bcf42ed357228d2635d0f4169c with SHA-1 18af61da85 is already in history\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/system/libbase/+/27144073\n\nChange-Id: Idbce087ff4754c8f7c10bb49befee8a36f507d15\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "7dcabfff800cc85e50ad379a51a6edd077fce653",
      "tree": "1c74789b0e751ffe20f18c0d056cb703a3d3fbc3",
      "parents": [
        "18af61da85a2599ed5ec4b7d7e3c40ef36b74bf3",
        "931f8da51d3977a900215f1f757c09b77b1a07cb"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Apr 29 11:53:33 2024 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Apr 29 11:53:33 2024 -0700"
      },
      "message": "Empty merge of Android 24Q2 Release (ab/11526283) to aosp-main-future\n\nBug: 337098550\nMerged-In: If39ec74e5592d9bcf42ed357228d2635d0f4169c\nChange-Id: I41f513121a9e018b7d611cfee2a1c1f2df19b17c\n"
    },
    {
      "commit": "c7011fb21a936a33c6339a62014d9a37154d18c9",
      "tree": "1c74789b0e751ffe20f18c0d056cb703a3d3fbc3",
      "parents": [
        "60b6d17fe40c021184973611ac9f5b4973dc4f38",
        "18af61da85a2599ed5ec4b7d7e3c40ef36b74bf3"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Apr 24 15:11:38 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Apr 24 15:11:38 2024 +0000"
      },
      "message": "Capture errno first during ErrnoErrorf. am: 5df5be0fbb am: 18af61da85\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3057962\n\nChange-Id: I1b1e392c2fad9623f725b5e4a2adb3c31a567d11\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "18af61da85a2599ed5ec4b7d7e3c40ef36b74bf3",
      "tree": "1c74789b0e751ffe20f18c0d056cb703a3d3fbc3",
      "parents": [
        "e38be807535ba5bf4b2640da23906d399fe95feb",
        "5df5be0fbbfcf06e610f01f84863e0a96a82c27a"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Apr 24 14:56:57 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Apr 24 14:56:57 2024 +0000"
      },
      "message": "Capture errno first during ErrnoErrorf. am: 5df5be0fbb\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3057962\n\nChange-Id: If39ec74e5592d9bcf42ed357228d2635d0f4169c\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "5df5be0fbbfcf06e610f01f84863e0a96a82c27a",
      "tree": "1c74789b0e751ffe20f18c0d056cb703a3d3fbc3",
      "parents": [
        "563175c765ca5b53a43c407257c945f2a7a4f444"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Apr 24 09:32:12 2024 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Apr 24 09:32:12 2024 +0000"
      },
      "message": "Capture errno first during ErrnoErrorf.\n\nBug: 335967603\nChange-Id: I9db3e7ec193e9f84c1effdc9718df0de1d42adf4\nTest: Presubmit\n"
    },
    {
      "commit": "60b6d17fe40c021184973611ac9f5b4973dc4f38",
      "tree": "ebf3ebc45ab9281cb0ff16d3868e6a7ee3485cda",
      "parents": [
        "c4fe672ef185f55b307705648a9b2ea05c9fe078",
        "e38be807535ba5bf4b2640da23906d399fe95feb"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Apr 23 11:10:31 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 23 11:10:31 2024 +0000"
      },
      "message": "Revert^2 \"Make android::base:Result more code-size-efficient.\" am: 563175c765 am: e38be80753\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3054962\n\nChange-Id: I26f578bdf5a9e209fbe13682584fa02d2dd536bd\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "e38be807535ba5bf4b2640da23906d399fe95feb",
      "tree": "ebf3ebc45ab9281cb0ff16d3868e6a7ee3485cda",
      "parents": [
        "b631b228c2b16cc08d2f7ae6ed5075afcb2b144f",
        "563175c765ca5b53a43c407257c945f2a7a4f444"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Apr 23 10:54:27 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 23 10:54:27 2024 +0000"
      },
      "message": "Revert^2 \"Make android::base:Result more code-size-efficient.\" am: 563175c765\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3054962\n\nChange-Id: Iadb8b836c1d30304ccf32d3ea84ba8a280e4197b\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "563175c765ca5b53a43c407257c945f2a7a4f444",
      "tree": "ebf3ebc45ab9281cb0ff16d3868e6a7ee3485cda",
      "parents": [
        "a1e8cb081f8c3f6e7ae773643ed76277903b39c1"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Apr 23 09:05:03 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 23 09:05:03 2024 +0000"
      },
      "message": "Revert^2 \"Make android::base:Result more code-size-efficient.\"\n\nThis reverts commit a1e8cb081f8c3f6e7ae773643ed76277903b39c1.\n\nReason for revert: Cause of b/336184491 but not the root cause\n\nChange-Id: I100c6909a040fc92ccb1abd505e3724df83e59b3\n"
    },
    {
      "commit": "c4fe672ef185f55b307705648a9b2ea05c9fe078",
      "tree": "e065fc681eb634d584ea748ed57add344214cd9b",
      "parents": [
        "451fc41c4f10dfbabec6d0f32d26180e2d586d4b",
        "b631b228c2b16cc08d2f7ae6ed5075afcb2b144f"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Tue Apr 23 04:29:41 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 23 04:29:41 2024 +0000"
      },
      "message": "Revert \"Make android::base:Result more code-size-efficient.\" am: a1e8cb081f am: b631b228c2\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3054042\n\nChange-Id: Icc84eb4475deb0bbf9a03f3df0ff2f48b682134d\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b631b228c2b16cc08d2f7ae6ed5075afcb2b144f",
      "tree": "e065fc681eb634d584ea748ed57add344214cd9b",
      "parents": [
        "5bbfeb3c01f7ea694230da73679cc12ca79e6444",
        "a1e8cb081f8c3f6e7ae773643ed76277903b39c1"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Tue Apr 23 04:19:16 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 23 04:19:16 2024 +0000"
      },
      "message": "Revert \"Make android::base:Result more code-size-efficient.\" am: a1e8cb081f\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3054042\n\nChange-Id: I328b366d606061e191204db9ab7202cdaa7195d9\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a1e8cb081f8c3f6e7ae773643ed76277903b39c1",
      "tree": "e065fc681eb634d584ea748ed57add344214cd9b",
      "parents": [
        "3142bd70939fd266c5542e1c2da7a1301f04e955"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Tue Apr 23 01:06:28 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 23 01:06:28 2024 +0000"
      },
      "message": "Revert \"Make android::base:Result more code-size-efficient.\"\n\nThis reverts commit 3142bd70939fd266c5542e1c2da7a1301f04e955.\n\nReason for revert: likely cause of b/336184491\n\nChange-Id: I469f2a509bb391ea09670d2f945633750a58eb3c\n"
    },
    {
      "commit": "451fc41c4f10dfbabec6d0f32d26180e2d586d4b",
      "tree": "ebf3ebc45ab9281cb0ff16d3868e6a7ee3485cda",
      "parents": [
        "0362fb87ceb67c5118d6a372dbb1a539542a55a8",
        "5bbfeb3c01f7ea694230da73679cc12ca79e6444"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Sat Apr 20 00:37:37 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Apr 20 00:37:37 2024 +0000"
      },
      "message": "Make android::base:Result more code-size-efficient. am: 3142bd7093 am: 5bbfeb3c01\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3037562\n\nChange-Id: I16c578659c92152d83a71f7c0e7d09a67a50030d\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "5bbfeb3c01f7ea694230da73679cc12ca79e6444",
      "tree": "ebf3ebc45ab9281cb0ff16d3868e6a7ee3485cda",
      "parents": [
        "500f3f957836d16f54218cf6979494ba30b42cff",
        "3142bd70939fd266c5542e1c2da7a1301f04e955"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Sat Apr 20 00:18:53 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Apr 20 00:18:53 2024 +0000"
      },
      "message": "Make android::base:Result more code-size-efficient. am: 3142bd7093\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/3037562\n\nChange-Id: If24b2e4d5379ba24529eafeda1d538bbc41aeec8\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "3142bd70939fd266c5542e1c2da7a1301f04e955",
      "tree": "ebf3ebc45ab9281cb0ff16d3868e6a7ee3485cda",
      "parents": [
        "5284bc2af27a41a11bf3952b8b3422bb7dc5357b"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Apr 12 20:20:30 2024 +0100"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Apr 19 17:47:10 2024 +0100"
      },
      "message": "Make android::base:Result more code-size-efficient.\n\n- Change the `Errorf` macro to return the error\n  `android::base::ResultError` instead of the expensive error builder\n  `android::base::Error`, which involves an `std::stringstream`.\n\n- Add a move constructor to `android::base::ResultError` and use it for\n  the conversion from `android::base::ResultError` to\n  `android::base::Result`, to avoid copying.\n\n- Make the `OkOrFail` wrapper correctly use the move constructor, to\n  avoid copying.\n\nBug: 334176674\nTest: atest libbase_test:result\nChange-Id: Icb75ba378878b7cdb48b3872835afd23e1d74d93\n"
    },
    {
      "commit": "0362fb87ceb67c5118d6a372dbb1a539542a55a8",
      "tree": "e065fc681eb634d584ea748ed57add344214cd9b",
      "parents": [
        "1e9b3626326be52c602333a9fe9a42049e95e358",
        "500f3f957836d16f54218cf6979494ba30b42cff"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Mar 26 22:02:49 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 26 22:02:49 2024 +0000"
      },
      "message": "Update base::expected using current C++ spec am: 5284bc2af2 am: 500f3f9578\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2993758\n\nChange-Id: I389d252252626f8b6499548d255720f21ac28cbc\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "500f3f957836d16f54218cf6979494ba30b42cff",
      "tree": "e065fc681eb634d584ea748ed57add344214cd9b",
      "parents": [
        "6bf299f038ba5571b471466c29f30aca9e61f588",
        "5284bc2af27a41a11bf3952b8b3422bb7dc5357b"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Mar 26 21:46:41 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 26 21:46:41 2024 +0000"
      },
      "message": "Update base::expected using current C++ spec am: 5284bc2af2\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2993758\n\nChange-Id: Ib08048b54d04661600d34029d29f963f132b622d\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "5284bc2af27a41a11bf3952b8b3422bb7dc5357b",
      "tree": "e065fc681eb634d584ea748ed57add344214cd9b",
      "parents": [
        "398ff505b09500a6f1bfb08024ea7d0b3ff85acc"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Wed Mar 06 23:59:57 2024 -0800"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Mar 21 23:59:36 2024 -0700"
      },
      "message": "Update base::expected using current C++ spec\n\nThe current base::expected is based on p0323r7.\n\nFix bugs:\n\n * Make the unexpected\u003cE\u003e from Err constructor explicit. This\n   constructor is explicit even in p0323r7. Allowing implicit\n   conversions of any type to unexpected\u003cE\u003e is hazardous, because it\n   could turn an intended successful value into an error value.\n\n * In the copy/move expected\u003cT, E\u003e constructors that convert from a\n   different expected\u003cU, G\u003e type, use member initialization syntax,\n   var_(...), rather than assigning to var_ in the body. The value and\n   errors type T and E might not have default constructors, and their\n   copy/move constructors should be called, not their assignment\n   operators. Using assignment operators also broke the U to T and the\n   G to E conversions when it required calling an explicit constructor.\n\n * Non-swappable value and error types didn\u0027t always work. Previously,\n   expected\u003cvoid, E\u003e could not be instantiated with a non-swappable E\n   because the member swap function wasn\u0027t using SFINAE properly.\n   Previously, it was also not possible to instantiate\n   std::is_swappable_v\u003cexpected\u003cT, E\u003e\u003e for non-swappable T or E because\n   the namespace-scope swap function wasn\u0027t disabled when the member\n   swap function was disabled.\n\n * unexpected::swap was calling std::swap. It should instead use the\n   standard idiom of `using std::swap; swap(...);` so that\n   namespace-scope swap functions are called for user-declared classes.\n\nMove towards the current C++ draft at https://eel.is/c++draft:\n\n * Remove unexpected\u003cErr\u003e to unexpected\u003cE\u003e conversions where Err !\u003d E.\n   Converting an Err error value to E for expected\u003cT, E\u003e now happens\n   only in the expected class\u0027s constructors and assignment operators.\n\n * Rename unexpected\u003cE\u003e::value to unexpected\u003cE\u003e::error to be consistent\n   with expected\u003cT, E\u003e::error.\n\n * Include the special bool-related constraints for wg21.link/LWG3836.\n   Ensure that converting expected\u003cbool, E\u003e to expected\u003cbool, G\u003e works\n   as expected by transferring either the success or the error value.\n\nOther changes:\n\n * Always be explicit about which std::variant alternative is being\n   initialized or assigned. Avoid ambiguity when a value could be\n   converted to either alternative.\n\n * Add static_asserts to prevent invalid T and E types.\n\n * Mark everything constexpr and provide reasonable noexcept\n   conditions.\n\n * Change the float literals in expected_test.cpp to double literals.\n   The use of float literals breaks this line:\n\n       exp_double::unexpected_type unexp2 \u003d unexpected(10.5f);\n\n   This line attempts to implicitly convert unexpected\u003cfloat\u003e to\n   unexpected\u003cdouble\u003e, which is now a compile-time error.\n\n * Remove the bugprone-forwarding-reference-overload lint lines.\n   clang-tidy recognizes this use of std::enable_if in LLVM 14 and up.\n\nBug: b/175635923\nBug: b/328549318\nTest: libbase_test\nChange-Id: Id886db72c0b0103ff2c570ca650cee6d5c463721\n"
    },
    {
      "commit": "0203d3349d2c1c1b49dd3c8949ba975d4d5aadac",
      "tree": "708260dcc6aaf5372e4077b02cb3c68716135251",
      "parents": [
        "b4aee3040cefb4ed29960552e7034b16622191dc"
      ],
      "author": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Mon Mar 11 13:04:41 2024 +0900"
      },
      "committer": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Fri Mar 15 08:17:53 2024 +0000"
      },
      "message": "Remove VNDK definition(s)\n\nAs of VNDK deprecation, any libraries that defines vndk is no longer\nvalid anymore. This change removes all VNDK definition(s) from modules\nwhich was VNDK. Any former VNDK-SP libraries will be marked as double-loadable,\nso it can keep be able to be referenced by LLNDK libraries.\n\nBug: 328994089\nTest: AOSP CF build succeeded\nChange-Id: Idd3d813987efa1e571188589ddd536d9fe8a4721\n"
    },
    {
      "commit": "1e9b3626326be52c602333a9fe9a42049e95e358",
      "tree": "b5068ca8979a0f3c1db6fbeb1a4aa0051289e63d",
      "parents": [
        "931f8da51d3977a900215f1f757c09b77b1a07cb",
        "6bf299f038ba5571b471466c29f30aca9e61f588"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Mar 12 00:20:05 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 12 00:20:05 2024 +0000"
      },
      "message": "ReadFdToString: accommodate non-shrinking reserve am: 398ff505b0 am: 6bf299f038\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2993757\n\nChange-Id: Ieffbf03f2ecdf599d14ec7c148487426c471dcd9\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "6bf299f038ba5571b471466c29f30aca9e61f588",
      "tree": "b5068ca8979a0f3c1db6fbeb1a4aa0051289e63d",
      "parents": [
        "b4aee3040cefb4ed29960552e7034b16622191dc",
        "398ff505b09500a6f1bfb08024ea7d0b3ff85acc"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Mon Mar 11 23:35:13 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Mar 11 23:35:13 2024 +0000"
      },
      "message": "ReadFdToString: accommodate non-shrinking reserve am: 398ff505b0\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2993757\n\nChange-Id: Ideb52e4e5ecd9de513f3a7b9cd48f582cbfc2b1e\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "398ff505b09500a6f1bfb08024ea7d0b3ff85acc",
      "tree": "b5068ca8979a0f3c1db6fbeb1a4aa0051289e63d",
      "parents": [
        "b4aee3040cefb4ed29960552e7034b16622191dc"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Mar 07 03:09:41 2024 -0800"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Mar 07 03:51:49 2024 -0800"
      },
      "message": "ReadFdToString: accommodate non-shrinking reserve\n\nThe file.ReadFileToString_capacity test verifies that\nbase::ReadFileToString shrinks an existing string\u0027s capacity to fit the\nfile. Previously, std::string::reserve was responsible for this, but as\nof https://wg21.link/P0966R1, it no longer shrinks. Preserve the\nexisting behavior explicitly, and avoid reallocating when it isn\u0027t\nneeded.\n\nBug: b/175635923\nTest: libbase_test\nChange-Id: I0d77cf84527aa8209828914c7b665fcbbdf0e8b2\n"
    },
    {
      "commit": "931f8da51d3977a900215f1f757c09b77b1a07cb",
      "tree": "cc97b388d1b365a4315c6d3d1ffcade1bf6bd49b",
      "parents": [
        "205c70c4951b3c47d1e676d7fcc461464e8a5b34",
        "b4aee3040cefb4ed29960552e7034b16622191dc"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 22 22:29:58 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 22 22:29:58 2024 +0000"
      },
      "message": "Merge \"libbase: TeeLogger\" into main am: 6c91410830 am: b4aee3040c\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2969902\n\nChange-Id: If334191fc35794c8ecc54b3fafada06d13b533d8\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b4aee3040cefb4ed29960552e7034b16622191dc",
      "tree": "cc97b388d1b365a4315c6d3d1ffcade1bf6bd49b",
      "parents": [
        "9802bf997c18e0a15f12cb733f32ae2106ec262f",
        "6c914108304d661bba32132596616f34b3a4de80"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 22 21:49:23 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 22 21:49:23 2024 +0000"
      },
      "message": "Merge \"libbase: TeeLogger\" into main am: 6c91410830\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2969902\n\nChange-Id: Ie1014a7a8e15e2777f623367ceca96fa0e559813\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "6c914108304d661bba32132596616f34b3a4de80",
      "tree": "cc97b388d1b365a4315c6d3d1ffcade1bf6bd49b",
      "parents": [
        "5eb22948db22685a18086fea0c30af5767053540",
        "e4116cf722c8cfa54cab0a90af2e504aaa990a5b"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 22 21:10:04 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 22 21:10:04 2024 +0000"
      },
      "message": "Merge \"libbase: TeeLogger\" into main"
    },
    {
      "commit": "205c70c4951b3c47d1e676d7fcc461464e8a5b34",
      "tree": "7a82c8cd4edadf933467d97237efc77aa3709735",
      "parents": [
        "8de4d9c9be24ac37e005bf171d764fe0bcf08c73",
        "9802bf997c18e0a15f12cb733f32ae2106ec262f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 21 22:57:28 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 21 22:57:28 2024 +0000"
      },
      "message": "Merge \"Always inline the parseint.h routines.\" into main am: 5eb22948db am: 9802bf997c\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2971832\n\nChange-Id: I98aeeb5075e5f5d062645667f7035ec57fe82692\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9802bf997c18e0a15f12cb733f32ae2106ec262f",
      "tree": "7a82c8cd4edadf933467d97237efc77aa3709735",
      "parents": [
        "7218d59d7ed61a0b9985e995d870239a0e80a66c",
        "5eb22948db22685a18086fea0c30af5767053540"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 21 22:17:13 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 21 22:17:13 2024 +0000"
      },
      "message": "Merge \"Always inline the parseint.h routines.\" into main am: 5eb22948db\n\nOriginal change: https://android-review.googlesource.com/c/platform/system/libbase/+/2971832\n\nChange-Id: I1428adb36a2014c2a6a0b8a56b54c6b11353d7e5\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "5eb22948db22685a18086fea0c30af5767053540",
      "tree": "7a82c8cd4edadf933467d97237efc77aa3709735",
      "parents": [
        "2498b48f2a64f49c77cb368bad11a151bcf702d4",
        "efe7172a1a805a704e4e24a9a4d9c81f42ea8a4e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 21 21:39:46 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 21 21:39:46 2024 +0000"
      },
      "message": "Merge \"Always inline the parseint.h routines.\" into main"
    }
  ],
  "next": "efe7172a1a805a704e4e24a9a4d9c81f42ea8a4e"
}
