)]}'
{
  "log": [
    {
      "commit": "12afc7fd7e0a36500c63665021413c944e466234",
      "tree": "58d86459865d46a585c1706b19e8c817186d955b",
      "parents": [
        "8153b12c6a1d300c8c8e231e50754e6b70ef8c49",
        "be3a10993f6753957c166c7e017455f465deb1f7"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Feb 07 03:34:16 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 07 03:34:16 2018 +0000"
      },
      "message": "Merge \"Pin jarjar targets to java_version 1.8.\" am: 2bbf12aa78 am: 3f48e86917\nam: be3a10993f\n\nChange-Id: Ib098b09674edb62f5a27be70f4c3be911a7e0cf6\n"
    },
    {
      "commit": "2bbf12aa78e3583bfcbe7f468a18d0da3bce24ab",
      "tree": "3fed7a21256c5c9617df3a0846e052df8b539717",
      "parents": [
        "1168c31c4a554d37e405c2f940707de0f91eab57",
        "d65595a94e2e5a5dc19540fcb1ba4ff45a7d2b67"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Feb 07 00:16:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 07 00:16:04 2018 +0000"
      },
      "message": "Merge \"Pin jarjar targets to java_version 1.8.\""
    },
    {
      "commit": "0aa3b20a66197da5c6843afc1f9de0a1691ca5cc",
      "tree": "b2ae6123ef5a56e152cfcb176e0dda1037bba1fd",
      "parents": [
        "f24612b176d9272d50376138b337de16b45004c9"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 22 16:13:15 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Feb 06 13:38:44 2018 +0000"
      },
      "message": "Add apis needed for android.test.legacy\n\nThe long term goal of removing junit and dependent android.test classes\nfrom the android.jar is the removal of the runtime libraries that\nprovide those classes. A key part of the strategy for migrating APKs off\nthe runtime libraries is the android.test.legacy library which APKs can\nstatically include in place of the runtime dependencies without having\nto change their source code.\n\nThe longer term goal is for all tests to migrate from these classes\naltogther and to use the Android Test Support Library instead but that\nwill require significant changes to the test source code.\n\nIn order for it to be safe to statically include android.test.legacy in\nan APK it cannot use any internal APIs. This change adds the additional\nclasses and methods needed to the android.test.mock API library. The\nadditions are all marked as deprecated to try and avoid developers\nfrom using them in new tests.\n\nIt also marks the AccountManager constructor used by MockAccountManager\nwith the android.annotation.MockApi so that it is included in the mock\nstubs libraries against which the android.test.mock.stubs[-system]\nlibraries build.\n\nBug: 30188076\nTest: make checkbuild\n\n(cherry picked from commit 772b6923206a34e97c45bc48e7ad4bebfd3eae29)\n\nMerged-In: I85417cc328cab898ab93b9b726648f4232555324\nChange-Id: If3b6fc630df93a44e4c07ef769737a2ac3ebf476\n"
    },
    {
      "commit": "d65595a94e2e5a5dc19540fcb1ba4ff45a7d2b67",
      "tree": "38f1ec811333b95b1feb53260816eede5b680c2e",
      "parents": [
        "771e229a23fa4edb2e5ec2c3f76271d0804f2f4b"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Mon Feb 05 15:49:52 2018 +0000"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Mon Feb 05 21:14:24 2018 +0000"
      },
      "message": "Pin jarjar targets to java_version 1.8.\n\nThis CL pins the following make targets to java_version 1.8,\nwhich is currently the default:\n  framework-protos\n  repackaged.android.test.base\n  repackaged.android.test.mock\n  repackaged.android.test.runner\n\nFor consistency, their dependencies,\n  android.test.base\n  android.test.mock\n  android.test.runner\nwhich contain .java source files, are also pinned to 1.8.\n\nThis is so that the two steps:\n a) update jarjar to support v53 class files\n b) support -target 1.9 in the rest of the toolchain\ncan be completed in any order, in future CLs. Before this CL,\nthey would have needed to be completed in order a), b).\n\nBug: 72703434\nTest: EXPERIMENTAL_USE_OPENJDK9\u003dtrue USE_R8\u003dtrue make checkbuild docs\n      (in a client where CL http://r.android.com/596874 was reverted)\n\nChange-Id: If78067294ae7ab78997aa109b0e08be427bdf0b8\n"
    },
    {
      "commit": "97ca19f01382e411e3b1dc078364d37ae39b3758",
      "tree": "3b8734d5c9bed6066cb787180fda97d76a02fe21",
      "parents": [
        "ea27314e38f84b5331a3eac08d774dd16e55b502"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Jan 26 14:29:18 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Jan 26 14:53:50 2018 +0900"
      },
      "message": "Add conscrypt, okhttp, bouncycastle to the classpath when building stubs\n\nWhen generating the stubs for android.test.mock, the main framework\nsource is also included. The source in turn has references to the\nconscrypt, okhttp, and bouncycastle ibraries (e.g. ActivityThread.java uses\ncom.android.org.conscrypt.OpenSSLSocketImpl).\n\nAlthough this does not break the build because doclava does not abort on\nnon-existing symbols, this creates a lot of error messages to the log\noutput:\n\nframeworks/base/test-mock/../core/java/android/app/ActivityThread.java:143: error: package com.android.org.conscrypt does not exist\nimport com.android.org.conscrypt.OpenSSLSocketImpl;\n                                ^\nframeworks/base/test-mock/../core/java/android/app/ActivityThread.java:144: error: package com.android.org.conscrypt does not exist\nimport com.android.org.conscrypt.TrustedCertificateStore;\n                                ^\n...\n\nTherefore adding the missing libraries to the classpath to prevent the\nscary messages.\n\nTest: mma -j under frameworks/base/test-mock does not show the error\nmessages.\n\nChange-Id: I899be8ff7466f9483e4f3ae8328bc9c72bbe22ed\n"
    },
    {
      "commit": "064f16638be7304e589177386aa09f542a07ff88",
      "tree": "809d3fba0dfc525f58afbd3ba6f03c40fa2c1a5d",
      "parents": [
        "cf8f8026b515c5ead886fe830a13bf97aa3a8959",
        "5cdda3425ccf3c62e400a1646615f4479a8266af"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 24 03:00:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 24 03:00:27 2018 +0000"
      },
      "message": "Merge \"Add API to expose signing certificate proof-of-rotation.\""
    },
    {
      "commit": "c4788e1f044ef2714137d6e781ed8506016954af",
      "tree": "ff7e4e0f2f112bc6b536257dd514d8be50dc367e",
      "parents": [
        "7e004f96dd2c8d232f1ac54ab4dbd669c774d71c",
        "7ee1a7acc4d3ff8d05aaa76ba7665fdef9f315ec"
      ],
      "author": {
        "name": "Roberto Perez",
        "email": "robertoalexis@google.com",
        "time": "Tue Jan 23 18:21:59 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 23 18:21:59 2018 +0000"
      },
      "message": "Merge \"Adding a new category to mark car-optimized launcher activity\""
    },
    {
      "commit": "5cdda3425ccf3c62e400a1646615f4479a8266af",
      "tree": "f8942116930669c5170dad00cac8df019a8a35b1",
      "parents": [
        "77029c5b16351775cb2333369ef9a4bc1d9acf58"
      ],
      "author": {
        "name": "Daniel Cashman",
        "email": "dcashman@google.com",
        "time": "Fri Jan 19 07:22:52 2018 -0800"
      },
      "committer": {
        "name": "Dan Cashman",
        "email": "dcashman@google.com",
        "time": "Tue Jan 23 09:10:13 2018 -0800"
      },
      "message": "Add API to expose signing certificate proof-of-rotation.\n\nWith the addition of APK Signature Scheme v3, the platform now can\nsupport key rotation by using the proof-of-rotation provided by the\nnew scheme.  Create a new API which allows checking of the entire\nprovided history of an APK\u0027s signing certificates, not just the\ncurrent signer.  This should allow for changes of APK signing\ncertificates without fear of losing access to resources that would\nhave been provided under the old signing certificate.\n\nChange getPackageInfo(GET_SIGNATURES) to return the oldest signing\ncertificate in the chain so that apps which do programmatic checks,\nbut are not updated to use the new API, still get the same information\nthey would have gotten had there been no rotation.\n\nBug: 64686581\nTest: Builds, boots.\nChange-Id: I8982fd4cce60f5d85a6180d157a6e2a661b1a6d7\n"
    },
    {
      "commit": "7ee1a7acc4d3ff8d05aaa76ba7665fdef9f315ec",
      "tree": "29df2ef4c209487cd6ab0c1860c238deaa2bfe0e",
      "parents": [
        "82c264e0f27961523e4bd3511890bfd35a01fd7e"
      ],
      "author": {
        "name": "Roberto Perez",
        "email": "robertoalexis@google.com",
        "time": "Mon Dec 04 17:14:33 2017 -0800"
      },
      "committer": {
        "name": "Roberto Perez",
        "email": "robertoalexis@google.com",
        "time": "Thu Jan 18 14:43:27 2018 -0800"
      },
      "message": "Adding a new category to mark car-optimized launcher activity\n\nTest: TBD\nBug: 70681347\n\nChange-Id: I81ea7f9f3021e8a9d25fa980a8687d66765469c5\n"
    },
    {
      "commit": "924431ff1a77016e496207fc4f23a8cf40db5beb",
      "tree": "fee278f16351127abe88dda8c1cdb1a9ba62df1c",
      "parents": [
        "0158d976c8abc5f5ff5cf4d84afda637e2d878d6",
        "2b3bf45c73f7986f00492eee3848b66b14b99282"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Jan 16 11:52:20 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 16 11:52:20 2018 +0000"
      },
      "message": "Merge \"Replace legacy-test with android.test.base in bp files\" am: 2285630e4b am: caacf3e7c4\nam: 2b3bf45c73\n\nChange-Id: I0c4b7705176b0ae7eb4b06bf5a138757d6b16e9c\n"
    },
    {
      "commit": "b36eb542a9157c488bcc7dc7eb5a65b7b7288155",
      "tree": "251a3793d3b05859b8298b08f43135ed3592cd50",
      "parents": [
        "9cb0b520114c1a166f4972b53cb2bfac7d1a1b78"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Jan 15 15:47:47 2018 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Jan 15 15:47:47 2018 +0000"
      },
      "message": "Replace legacy-test with android.test.base in bp files\n\nThe legacy-test target is deprecated and will be replaced by\nandroid.test.base. This replaces a few usages of the legacy-test target\nin Android.bp files with android.test.base.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I3575f638114fe2a3b703e67837496346bde24472\n"
    },
    {
      "commit": "21418277009ee848e095b35903d7fde213d3d5fe",
      "tree": "d9ec3bcd5ffcaa23e26fd177669e249d837999d1",
      "parents": [
        "f0561142f3b7ddd85947d7ee268d5b98a39489b9"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 16 15:47:05 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Jan 12 15:52:39 2018 +0000"
      },
      "message": "Move legacy-test to test-base\n\nMake it consistent with the test-mock and test-runner directories.\nAlso renames the files in api/ subdirectory.\n\n(cherry picked from commit f779efd62cd579f67bd3b387d59fda11ee0cbe90)\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: Ied3621e6201d8717223fe1ccd4ea77d458126b25\nMerged-In: If4f99a65fcca416ede5b3e63481398f0b451bcb7\n"
    },
    {
      "commit": "1ab3d6e56b56fe0cfe31e437326b5cbc66bdb361",
      "tree": "39e7ba3aa2b34512aa29c4f35dd2de1a06777c5f",
      "parents": [
        "464eb00e67e0875e4f5abbc3417fc714ecc6ffe1"
      ],
      "author": {
        "name": "Ben Gruver",
        "email": "bgruv@google.com",
        "time": "Thu Dec 07 13:45:08 2017 -0800"
      },
      "committer": {
        "name": "Ben Gruver",
        "email": "bgruv@google.com",
        "time": "Thu Jan 11 12:13:29 2018 -0800"
      },
      "message": "Implement harmful app warning at activity launch\n\nBug: 63909431\nTest: manual\n\nChange-Id: I8a5497421cb8130af8cdd5129b0f6e1707a01e36\n"
    },
    {
      "commit": "772b6923206a34e97c45bc48e7ad4bebfd3eae29",
      "tree": "269bbfc393c0bafa04c565fff1f11946f99d79a2",
      "parents": [
        "0d64cd33ba31d77f255c2240ea8c69b1a1b05144"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 22 16:13:15 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Jan 09 14:38:38 2018 +0000"
      },
      "message": "Add apis needed for android.test.legacy\n\nThe long term goal of removing junit and dependent android.test classes\nfrom the android.jar is the removal of the runtime libraries that\nprovide those classes. A key part of the strategy for migrating APKs off\nthe runtime libraries is the android.test.legacy library which APKs can\nstatically include in place of the runtime dependencies without having\nto change their source code.\n\nThe longer term goal is for all tests to migrate from these classes\naltogther and to use the Android Test Support Library instead but that\nwill require significant changes to the test source code.\n\nIn order for it to be safe to statically include android.test.legacy in\nan APK it cannot use any internal APIs. This change adds the additional\nclasses and methods needed to the android.test.mock API library. The\nadditions are all marked as deprecated to try and avoid developers\nfrom using them in new tests.\n\nIt also marks the AccountManager constructor used by MockAccountManager\nwith the android.annotation.MockApi so that it is included in the mock\nstubs libraries against which the android.test.mock.stubs[-system]\nlibraries build.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I85417cc328cab898ab93b9b726648f4232555324\n"
    },
    {
      "commit": "79c238ada6e7072f62f807781d58d314ed2f17a9",
      "tree": "7ddce85f1fbd5a5850d82b998c83de7621e47b79",
      "parents": [
        "ec397abf931a39ed1c3d36f0af4ee9a68b883b07"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Dec 13 15:59:07 2017 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Thu Jan 04 13:26:28 2018 -0800"
      },
      "message": "Use modern install method in backup service\n\nTest: adb backup -apk myApp -f backup ; adb restore backup\nChange-Id: I2bbcb0487ecc525a6dc8a2693b15ce624db275b0\n"
    },
    {
      "commit": "a23c84c7cac4a48e5850ac7834e7ea233e498963",
      "tree": "34ae50b491e67cd528ac82e6fb4d1c969ed717b0",
      "parents": [
        "bd97e3dd4e5d395f336114016b000ef3cfb26053"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 15 12:49:36 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Dec 19 19:56:21 2017 +0000"
      },
      "message": "Add android.test.mock.stubs-system\n\nThe android.test.mock package contains one class with some methods that\nare annotated with @SystemApi which are not present in the\nandroid.test.mock.stubs. This adds a new android.test.mock.stubs-system\nlibrary that includes those additional methods.\n\nChecked that the new API definition files contain the exact same\ndefinitions for the android.test.mock packages as are found in the\napi/system-current.txt and api/system-removed.txt files.\n\nBug: 30188076\nTest: make update-api \u0026\u0026 make checkbuild\nChange-Id: I4644d30716e556204caa4acb53d7af84ca520271\n"
    },
    {
      "commit": "bd97e3dd4e5d395f336114016b000ef3cfb26053",
      "tree": "b32d838be3189d565c17922d34d475dd4cf951a9",
      "parents": [
        "8ca1e41a0f113f0a2bf8aef0102be9cbb0e3df30"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Dec 19 15:11:47 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Dec 19 19:52:54 2017 +0000"
      },
      "message": "Fix visibility issues with android.test.mock.stubs\n\nThis ensures that the API definitions for the android.test.mock package\nmatches the definitions in the api/current.txt file.\n\nBug: 30188076\nTest: make update-api\nChange-Id: Id325b8cf2f189117ac4cfe7634095ab710eee004\n"
    },
    {
      "commit": "8439ac08b1b8ef362cd649dbefdea4ac140051e2",
      "tree": "f7dfbb91bb60ff3c2e8768aa9975ca45b4563e59",
      "parents": [
        "ff38f236b55b51a9f8e03b909f4791ccca329c48"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 12 17:26:23 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 13 13:59:04 2017 -0700"
      },
      "message": "Start accepting Executors instead of Handlers.\n\nAfter discussion in API council, our new best-practices are to have\ndevelopers provide an Executor to dispatch callbacks/listeners on,\ninstead of the previous guidance of using a Handler.\n\nDefine Context.getMainExecutor() to easily obtain an Executor\nassociated with the main thread of application.  This allows new\nAPIs to require a @NonNull Executor.  Also define a new\n@CallbackExecutor auto-doc annotation that explains background and\npoints developers at new Context method above.\n\nTest: cts-tradefed run commandAndExit cts-dev -m CtsContentTestCases -t android.content.cts.ContextTest#testMainLooper\nTest: cts-tradefed run commandAndExit cts-dev -m CtsContentTestCases -t android.content.cts.ContextTest#testMainExecutor\nBug: 70348426\nChange-Id: I536892bcd80fcfba1bb1ddf67648c08a26d7ddd2\n"
    },
    {
      "commit": "fc7ba9e61f0991c74a161502da4432da45ce384e",
      "tree": "3752cad98fb5958c90e3a330aa802226a37161b0",
      "parents": [
        "c16130898432e5622e60fd7aeb05a9b7db8f9550"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Dec 07 13:11:06 2017 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Dec 12 23:24:40 2017 +0000"
      },
      "message": "Convert legacy-test, test-runner, and test-mock to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m checkbuild\nChange-Id: I110f752d2fa94c44581f20d4f308d9d429da0517\nMerged-In: I110f752d2fa94c44581f20d4f308d9d429da0517\n(cherry-picked from commit 2b7d71c7f8028741c2200bfeba8913b7f4f55cde)\n"
    },
    {
      "commit": "c16130898432e5622e60fd7aeb05a9b7db8f9550",
      "tree": "3e11bd7531f7270000f3292585502d75c2b7f52f",
      "parents": [
        "69516f4df7129b39dfa05654b9e5163442438c72"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 16 13:02:37 2017 +0000"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Dec 12 23:24:18 2017 +0000"
      },
      "message": "Remove unused target android.test.mock.sdk\n\nBug: 30188076\nTest: make checkbuild\n\nChange-Id: I9b613969425e6c4d8700f6275484d6452a3cc3af\nMerged-In: I9b613969425e6c4d8700f6275484d6452a3cc3af\n(cherry picked from commit 10d0658bf020197c16264a1da4637e0d20ee6445)\n"
    },
    {
      "commit": "69516f4df7129b39dfa05654b9e5163442438c72",
      "tree": "3e21c3ef15385e32487c3750cdc43af95c2b21f6",
      "parents": [
        "eb652a47a180092b397ec40c718dfc13935f7fb6"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Nov 15 11:39:14 2017 +0000"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Dec 12 23:23:31 2017 +0000"
      },
      "message": "Separate android.test.mock from test-runner source\n\nExtracts the source for the android.test.mock library from the\nframeworks/base/test-runner directory into its own\nframeworks/base/test-mock directory. They are already treated separately\nat runtime and compile time so this just makes the separation complete.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I20e5b06ba79677e76117c82e9f9e2ecd15e5fed6\nMerged-In: I20e5b06ba79677e76117c82e9f9e2ecd15e5fed6\n(cherry picked from commit e254526f0fe5d22681555bd4a00b7ee96fee1dc1)\n"
    },
    {
      "commit": "2b7d71c7f8028741c2200bfeba8913b7f4f55cde",
      "tree": "43f9394367779b2f9cd32dcb5f8da61c8f619f7d",
      "parents": [
        "c22e7735c31b711f8bf598c07fc872baba9af0dd"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Dec 07 13:11:06 2017 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Dec 08 21:01:53 2017 +0000"
      },
      "message": "Convert legacy-test, test-runner, and test-mock to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m checkbuild\nChange-Id: I110f752d2fa94c44581f20d4f308d9d429da0517\n"
    },
    {
      "commit": "45f8b29ce0ca9f80c586850c4be3a1e552bc6c2f",
      "tree": "9913a099ec8f3f38240422d7cfbedef42b509f4b",
      "parents": [
        "71e9a56fc30d66ad6d475fbf26425d791c2befa2"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Nov 07 18:49:43 2017 -0800"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 04 14:26:46 2017 -0800"
      },
      "message": "Add SystemApis to expose runtime profile information\n\nThe API allows a system apps which acquired\n{@code android.permission.READ_RUNTIME_PROFILE} to snapshot the runtime\nprofiles of installed packages.\n\nThe API is implemented in a new service class (AndroidRuntimeManager)\naccessible from the context using\ncontext().getPackageManager().getAndroidRuntimeManager().\n\nThe main functionality is exposed as a one way call into the\nAndroidRuntimeManager with the result being posted on a callback. The\nprofile is available to the caller as a read-only ParcelFileDescriptor.\n\nThis CL only adds the API interfaces and validation. It does not fully\nimplement the functionality.\n\noneway void snapshotRuntimeProfile(in String packageName,\n  in String codePath, in ISnapshotRuntimeProfileCallback callback)\n\nBug: 30934496\nTest: gts-tradefed -m GtsAndroidRuntimeManagerHostTestCases\n\nChange-Id: Iaa6be4715840f24508acba3162ea9c1ab725bd38\n"
    },
    {
      "commit": "6117fa8b0fc3b8a49672f8b25582e5097c4c47e4",
      "tree": "bafc29f2767c5bb75edeb26eaea7080ce3f8c88f",
      "parents": [
        "05013b377266f9e4e2651c6aa819960479dc3676"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 30 16:17:16 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 30 16:17:16 2017 +0000"
      },
      "message": "Switch usages of legacy-test to android.test.base\n\nThe legacy-test library has been deprecated in favour of the\nandroid.test.base library which is part of the SDK.\n\nThe following change descriptions were generated automatically and so\nmay be a little repetitive. They are provided to give the reviewer\nenough information to check the comments match what has actually been\nchanged and check the reasoning behind the changes.\n\n* core/tests/overlaytests/OverlayAppFiltered/Android.mk\n    Removed legacy-test from LOCAL_JAVA_LIBRARIES because the source\n    for module \u0027com.android.overlaytest.filtered_app_overlay\u0027 does not\n    depend on classes from legacy-test\n\n* core/tests/overlaytests/OverlayAppFirst/Android.mk\n    Removed legacy-test from LOCAL_JAVA_LIBRARIES because the source\n    for module \u0027com.android.overlaytest.first_app_overlay\u0027 does not\n    depend on classes from legacy-test\n\n* core/tests/overlaytests/OverlayAppSecond/Android.mk\n    Removed legacy-test from LOCAL_JAVA_LIBRARIES because the source\n    for module \u0027com.android.overlaytest.second_app_overlay\u0027 does not\n    depend on classes from legacy-test\n\n* core/tests/overlaytests/OverlayTest/Android.mk\n    Replaced \u0027legacy-test\u0027 with \u0027android.test.base\u0027 in\n    LOCAL_JAVA_LIBRARIES because the source for module \u0027OverlayTest\u0027\n    depends on classes from android.test.base\n\n* core/tests/overlaytests/OverlayTestOverlay/Android.mk\n    Removed legacy-test from LOCAL_JAVA_LIBRARIES because the source\n    for module \u0027com.android.overlaytest.overlay\u0027 does not depend on\n    classes from legacy-test\n\n* test-mock/Android.mk\n    Removed legacy-test from LOCAL_JAVA_LIBRARIES because the source\n    for module \u0027repackaged.android.test.mock\u0027 does not depend on\n    classes from legacy-test\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I729412304884cf5da88b05dbe8fbe645ad7b5b15\n"
    },
    {
      "commit": "f779efd62cd579f67bd3b387d59fda11ee0cbe90",
      "tree": "056bc7384db35e1c12ddffc3381ebc332d60947d",
      "parents": [
        "10d0658bf020197c16264a1da4637e0d20ee6445"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 16 15:47:05 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 28 12:03:53 2017 +0000"
      },
      "message": "Move legacy-test to test-base\n\nMake it consistent with the test-mock and test-runner directories.\nAlso renames the files in api/ subdirectory.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: If4f99a65fcca416ede5b3e63481398f0b451bcb7\n"
    },
    {
      "commit": "10d0658bf020197c16264a1da4637e0d20ee6445",
      "tree": "ee6a0168a07f472476a610d38cb851cfedab22bf",
      "parents": [
        "62c9860111a126c23606c9d4071fb6f8591952b3"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 16 13:02:37 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 28 11:24:40 2017 +0000"
      },
      "message": "Remove unused target android.test.mock.sdk\n\nBug: 30188076\nTest: make checkbuild\n\nChange-Id: I9b613969425e6c4d8700f6275484d6452a3cc3af\n"
    },
    {
      "commit": "b8b579e1b8698fc00fdd8950b5645f9e34bfc3ba",
      "tree": "2fbb0c52848b3d388e65e1e6ce69f241daa8d7a5",
      "parents": [
        "9650a435ed909ed4062d64fd2d9b085628d4a455"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Nov 22 12:34:08 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Nov 22 12:34:08 2017 -0700"
      },
      "message": "Emit all APIs using Predicates.\n\nGenerate APIs using updated doclava.\n\nTest: manual inspection of API text files\nBug: 69505783\nChange-Id: I2efd22998a64ebb57588b073c4a591242f4aef91\n"
    },
    {
      "commit": "b13f15332e5279d53afa9af2c6835e2476daa655",
      "tree": "fd6921f40e0e1463bf3235276d0de8aa42b6f0dd",
      "parents": [
        "5209abad9b72623131cc4619d9eab01b386d7c01"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Nov 14 08:34:06 2017 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Thu Nov 16 11:32:47 2017 -0800"
      },
      "message": "Remove one legacy install path\n\nAlso removed everything needed only for this path\n\nTest: Installed app via package installer, adb, google play store\nBug: 65261282\nChange-Id: Ia8a03fa5900687cd2adf844ba7e6c07e0537382e\n"
    },
    {
      "commit": "e254526f0fe5d22681555bd4a00b7ee96fee1dc1",
      "tree": "c8e450764c8d6704bdac446117634951822f7675",
      "parents": [
        "42753a512e2719ca078851a62760a19890641e6f"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Nov 15 11:39:14 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 16 13:15:29 2017 +0000"
      },
      "message": "Separate android.test.mock from test-runner source\n\nExtracts the source for the android.test.mock library from the\nframeworks/base/test-runner directory into its own\nframeworks/base/test-mock directory. They are already treated separately\nat runtime and compile time so this just makes the separation complete.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I20e5b06ba79677e76117c82e9f9e2ecd15e5fed6\n"
    }
  ]
}
