)]}'
{
  "log": [
    {
      "commit": "eceec328e24668b59a8eef8f71295f65ff9bf32b",
      "tree": "0f465a09f03d93cb3d5c863f17a5d84594da340d",
      "parents": [
        "596969b84d101cb494ec5faeb6cdd277e51c165c"
      ],
      "author": {
        "name": "Kelvin Zhang",
        "email": "zhangkelvin@google.com",
        "time": "Thu Oct 05 21:28:26 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 05 21:28:26 2023 +0000"
      },
      "message": "Revert \"Add UID permission check to update_engine\"\n\nThis reverts commit 596969b84d101cb494ec5faeb6cdd277e51c165c.\n\nReason for revert: Pixel doesn\u0027t go through system_server for update_engine APIs, therefore UID is not system\n\nChange-Id: I7723e4c8b35f5f252eadb36b2a871a0b24950805\n"
    },
    {
      "commit": "596969b84d101cb494ec5faeb6cdd277e51c165c",
      "tree": "815b8f82c9f9cda4dc6eba96ddafb1c9b329f840",
      "parents": [
        "80ba2feaeabfc3468c59bbaef91ab21d48337bec"
      ],
      "author": {
        "name": "Kelvin Zhang",
        "email": "zhangkelvin@google.com",
        "time": "Thu Oct 05 10:21:13 2023 -0700"
      },
      "committer": {
        "name": "Kelvin Zhang",
        "email": "zhangkelvin@google.com",
        "time": "Thu Oct 05 10:21:13 2023 -0700"
      },
      "message": "Add UID permission check to update_engine\n\nTest: th\nBug: 302761914\nChange-Id: I72a4169b79c70210ae8573abad2e8e181597cfe3\n"
    },
    {
      "commit": "c288bf627fd2fc1d0466b70e4d6fbdb78414309d",
      "tree": "01bdb0d9aa0521927fe9da382e0ccce8d22d174d",
      "parents": [
        "da35b878076eac28aae4ae6971f439f02d16cacb"
      ],
      "author": {
        "name": "Amin Hassani",
        "email": "ahassani@chromium.org",
        "time": "Wed Nov 04 19:33:43 2020 -0800"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Nov 10 20:08:25 2020 +0000"
      },
      "message": "update_engine: Move DaemonStateInterface implementation to UpdateAttempter\n\nIt seems like UpdateAttempter is the best option for implementation of\nDaemonStateInterface. SystemState should only be doing state keeping not\ndoing these startup logics.\n\nBUG\u003db:171829801\nTEST\u003dunittests\nTEST\u003dCQ passes\n\nChange-Id: I47ec50107ffbeb544e061f39c900a1559f2cdcab\nReviewed-on: https://chromium-review.googlesource.com/c/aosp/platform/system/update_engine/+/2519843\nTested-by: Amin Hassani \u003cahassani@chromium.org\u003e\nReviewed-by: Jae Hoon Kim \u003ckimjae@chromium.org\u003e\nCommit-Queue: Jae Hoon Kim \u003ckimjae@chromium.org\u003e\n"
    },
    {
      "commit": "ec7bc11c3103d9310568a391271be52baef273a7",
      "tree": "c7d69b3c47c8ff86876cd662b4ace630c1e1362b",
      "parents": [
        "24e1d72aa2a1024417121b0d91bf9a6f3b883a96"
      ],
      "author": {
        "name": "Amin Hassani",
        "email": "ahassani@chromium.org",
        "time": "Thu Oct 29 16:47:58 2020 -0700"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Nov 03 03:19:41 2020 +0000"
      },
      "message": "update_engine: Create cros vs. aosp boundary clear\n\nIts time to make the boundary between Chrome OS and Android code more\nclear. This CL moves all CrOS only code to \"chromeos\" directory and the\nsame for Android (in \"android\" directory). This way we would easily know\nwhich code is uses in which project and can keep the code cleaner and\nmore maintainable.\n\nOne big remaining problem is download_action* files. It seems like\nDownloadAction class does a lot of things that chrome OS needs and it\ndepends on a lot of Chrome OS stuff, but Android is also using thie\nAction in a way that circumvent the Chrome OS stuff. For example Android\nchecks for SystemState to be nullptr to not do things. This is really\nfragile and needs to change. Probably Android Team has to implement\ntheir own DownloadAction of some sort and not re use the Chrome OS one\nin a very fragile way.\n\nRemoved a few android files that have not been used anywhere.\n\nChanged some clang-format and lint issues in order to pass preupload.\n\nBUG\u003db:171829801\nTEST\u003dcros_workon_make --board reef --test update_engine\n\nChange-Id: I3fff1d4a100a065a5c1484a845241b5521614d9f\nReviewed-on: https://chromium-review.googlesource.com/c/aosp/platform/system/update_engine/+/2508965\nTested-by: Amin Hassani \u003cahassani@chromium.org\u003e\nAuto-Submit: Amin Hassani \u003cahassani@chromium.org\u003e\nReviewed-by: Jae Hoon Kim \u003ckimjae@chromium.org\u003e\nReviewed-by: Tianjie Xu \u003cxunchang@google.com\u003e\nReviewed-by: Kelvin Zhang \u003czhangkelvin@google.com\u003e\nCommit-Queue: Amin Hassani \u003cahassani@chromium.org\u003e\n"
    },
    {
      "commit": "03a4de7dc77b058987fc0670f4f67ba10ff31bc8",
      "tree": "c491ae5b50dedfb2c3cde1946f9ef98ea4a10f05",
      "parents": [
        "d0e9a893163bb6f70b2bb003cda238d7e1a532ed"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Jul 20 16:08:23 2016 -0700"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Jul 28 19:52:24 2016 -0700"
      },
      "message": "Build update_engine_sideload.\n\nAdd a new \"sideload\" executable target that applies an update payload\ndirectly using the UpdateAttempterAndroid.\n\nThis initial CL buils a dynamically linked program that\u0027s targeted to\nrun in the system image for now, but will later be transformed into a\nstatic binary to run from the recovery environment.\n\nBug: 27178350\nTEST\u003dApplied a payload directly on a device using:\n`update_engine_sideload --payload\u003dfile://foo/bar ...`\n\nChange-Id: I289a724d013abdc390187d669dccd3edf2fd3434\n"
    },
    {
      "commit": "fa78f14d818e8e0b8ed5d05ebc389bf833342e7a",
      "tree": "248a838b4f7d49029d1c3be31b32139fe6d0467a",
      "parents": [
        "5f52811e5afda03e374a28233500e151f1e706f4"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Jan 26 21:36:16 2016 -0800"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Jan 28 10:23:17 2016 -0800"
      },
      "message": "Refactor daemon state and service async notification.\n\nThere are three supported IPC mechanism in this code: DBus, binder and\nweave (over binder); which are mostly supported by all three platforms\nChrome OS, Brillo and Android. The exceptions are that Brillo and\nChrome OS still *require* DBus and support the others, while the new\nAndroid daemon requires and supports only Binder.\n\nThis CL introduces two new interfaces: the ServiceObserverInterface and\nthe DaemonStateInterface.\n\nThe first one abstracts a service (or IPC service) into an interfcae\nfrom the point of view of the daemon initialization and async\nnotifications of status changes. The second interface encapsulates the\nstate and main functionality of the update_engine daemon while leaving\nthe shared initialization in the main.cc and daemon.cc classes.\n\nBug: 25631949\nTEST\u003d`mmma system/update_engine` on edison-eng and aosp_arm-eng\nTEST\u003dFEATURES\u003dtest emerge-link update_engine\n\nChange-Id: Ic15621031a153e14bdc4df8fcedbca1032e82c21\n"
    }
  ]
}
