)]}'
{
  "log": [
    {
      "commit": "45be5dfe989143ff5ba1f2a72fd86b8cebb61c73",
      "tree": "e8e782b4af97446e3938460330631fa4c3b56caa",
      "parents": [
        "01a8e5bce3c72627f6ac57f181b98a3c0fc7c3ca",
        "3f6eee9793e4c41c7f4b15a723c777ae67fb1e51"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 10 01:23:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 10 01:23:26 2017 +0000"
      },
      "message": "Revert \"Revert \"move android_ids into bionic\"\"\nam: 3f6eee9793\n\nChange-Id: I6a65710f926a76e48705fa4594f479f5d48df068\n"
    },
    {
      "commit": "54891837a0d80325a15b6706fccef33e42552bad",
      "tree": "83c1d8d5f5d74cc628a3c84823b4f2e3221d22fc",
      "parents": [
        "f7e793ef7fcfc8f20be3cadd2f5a233151d4b9c9",
        "934bc86df3e9593551e1a09e242c72f0ee1afb3e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Dec 15 21:46:30 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 15 21:46:30 2016 +0000"
      },
      "message": "Merge \"Define range of GIDs for cached app data.\""
    },
    {
      "commit": "3f6eee9793e4c41c7f4b15a723c777ae67fb1e51",
      "tree": "8dae7fc7d418fdf69d34057f8b80add179eeb351",
      "parents": [
        "77cb68d9f2621639ec7f4e1b124ceeee5c80a66a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 23:47:25 2016 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 23:47:25 2016 +0000"
      },
      "message": "Revert \"Revert \"move android_ids into bionic\"\"\n\nThis reverts commit 77cb68d9f2621639ec7f4e1b124ceeee5c80a66a.\n\nChange-Id: Ibc9f775c4cd418be90fd8a6f192dd72ca5dff09a\n"
    },
    {
      "commit": "9f9c73bb2e4e2dd5533d2f6258d6deaf753c38e9",
      "tree": "42f56f290b0353e65fa89daff87869e96a0cb698",
      "parents": [
        "755ecdead53ef344251a98ecd3569b275bc9bf4d",
        "5367d1b9d97a01499b5b46849b06dbbf74865de9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 22:53:24 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 13 22:53:25 2016 +0000"
      },
      "message": "Merge \"Rename \u003cgrp.h\u003e/\u003cpwd.h\u003e tests to fit the usual pattern.\""
    },
    {
      "commit": "934bc86df3e9593551e1a09e242c72f0ee1afb3e",
      "tree": "747e62fbc5af8f2f1ad6f658bcb5c6080c441f76",
      "parents": [
        "2eaba9343f1726d3c4a23717ba3a5cc66c8374d2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 13 14:03:19 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 13 14:22:55 2016 -0700"
      },
      "message": "Define range of GIDs for cached app data.\n\nTo support upcoming disk usage calculation optimizations, this change\ncreates a new GID for each app that will be used to mark its cached\ndata.  We\u0027re allocating these unique GIDs so that we can use\nquotactl() to track cached data on a per-app basis.\n\nTest: builds, boots, tests pass\nBug: 27948817\nChange-Id: Ic00c39ccedc23d5d43988029e9921679126f8f2d\n"
    },
    {
      "commit": "5367d1b9d97a01499b5b46849b06dbbf74865de9",
      "tree": "6e97134100924742a7c30e40eb15b028bb7b46a3",
      "parents": [
        "858ec7abec87f573f624434c3d969169640979c8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 12 17:32:14 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 12 17:32:14 2016 -0800"
      },
      "message": "Rename \u003cgrp.h\u003e/\u003cpwd.h\u003e tests to fit the usual pattern.\n\nBug: N/A\nTest: ran tests\nChange-Id: I5ec30cc17f94e631f3376b671055a0e82fb472c3\n"
    },
    {
      "commit": "77cb68d9f2621639ec7f4e1b124ceeee5c80a66a",
      "tree": "ed8d084df93ed051a0688432dac858a6987f381e",
      "parents": [
        "1a13db5b2675759316a8529873c5d29831a9ba32"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 12 22:11:37 2016 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 12 22:11:37 2016 +0000"
      },
      "message": "Revert \"move android_ids into bionic\"\n\nThis reverts commit 1a13db5b2675759316a8529873c5d29831a9ba32.\n\nChange-Id: I7f571b3a9d542694d16fb9cf1131ef9e59d330ea\n"
    },
    {
      "commit": "1a13db5b2675759316a8529873c5d29831a9ba32",
      "tree": "8dae7fc7d418fdf69d34057f8b80add179eeb351",
      "parents": [
        "fa1a85d0031c1846f7c2a6137c614f6a12dd2279"
      ],
      "author": {
        "name": "William Roberts",
        "email": "william.c.roberts@intel.com",
        "time": "Fri Apr 08 13:44:19 2016 -0700"
      },
      "committer": {
        "name": "William Roberts",
        "email": "william.c.roberts@intel.com",
        "time": "Wed Nov 30 12:54:08 2016 -0800"
      },
      "message": "move android_ids into bionic\n\nGenerate the android_ids array and include into the\nbuild.\n\nTest: The bionic is built and that core AIDs work as\nexpected with commands like chown, mkdir and init services\nand builtins.\nBug: 27999086\nChange-Id: Ib575bf85326c91801c5674db475dcb9cf44c00dc\nSigned-off-by: William Roberts \u003cwilliam.c.roberts@intel.com\u003e\n"
    },
    {
      "commit": "722ab05b255070e6c8add450c94eeb790618c98e",
      "tree": "23156dbf2afd440a10973ecf3b93aa9635132b92",
      "parents": [
        "130bec7103561fc3657e8a431ca55026430b843e"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Apr 06 10:35:48 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Apr 22 10:44:19 2016 -0700"
      },
      "message": "bionic: Implement getpwent and getgrent\n\nNot efficient to iterate through given the large number of Android\nids (AID). Compile warning will result if you use these functions,\ntelling you as much. Not for general consumption, however for\nexample, some filesystem tests would like to see these to perform\nall corners.\n\nAbout 1/4 second for getpwent, and 1/8 second for getgrent to iterate\nthrough all reserved Android aids.\n\nBug: 27999086\nChange-Id: I7784273b7875c38e4954ae21d314f35e4bf8c2fc\n"
    },
    {
      "commit": "8d387ee1ecbcde6d7435a909476e50afc9bed464",
      "tree": "8638b1be5d0c1fb6523fdf76340c19ccc9272340",
      "parents": [
        "9deb01c5a6b98e1b5d33a8f44168884f01bf96d5"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Tue Apr 05 09:24:59 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Apr 06 21:18:49 2016 +0000"
      },
      "message": "fix oem_XXXX ids to incorporate both ranges\n\nThe XXXX now lines up to the underlying uid and has no offset.\nWork with AID_OEM_RESERVED uids.\n\nTest uses hard coded values to catch changes in the API expectations\nthat may occur in private/android_filesystem_config.h.\n\nSideEffects: names change, some product dependencies.\n\nBug: 27999086\nChange-Id: Ic2b4c36de74ae009a44e14711c75834293828207\n"
    },
    {
      "commit": "3735539fc3bcf21b0d994110f359f9f4d7fd16af",
      "tree": "cf4fb79b57e5db7e2aff2b3e31f30dc21889d0b5",
      "parents": [
        "af11ec2e9283c7bc2f28953841573ea7ac31bba4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 06 08:38:21 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Apr 06 09:04:17 2016 -0700"
      },
      "message": "Rename the \u003cgrp.h\u003e/\u003cpwd.h\u003e tests to reflect that they\u0027re no longer in stubs.cpp.\n\nBug: http://b/27999086\nChange-Id: I3255ad5861a705beeb9b462e22f79ae1e5a85a79\n"
    },
    {
      "commit": "a39e30141d46c268ca66d6ad786d244275c4e827",
      "tree": "c193ab12774edd189253ddd914c35654ad74fcfd",
      "parents": [
        "822c40a3389a953d9b43f05ad6e40640fd55f9c4"
      ],
      "author": {
        "name": "Jorge Lucangeli Obes",
        "email": "jorgelo@google.com",
        "time": "Tue Sep 22 11:46:43 2015 -0700"
      },
      "committer": {
        "name": "Jorge Lucangeli Obes",
        "email": "jorgelo@google.com",
        "time": "Tue Sep 22 13:33:17 2015 -0700"
      },
      "message": "Add preliminary OEM UID/GID support.\n\nUntil we implement full support for passwd/group files, add a simple\nway to use the new OEM UID/GID range (5000-5999).\n\noem_XXX -\u003e 5000 + XXX iff 0 \u003c\u003d XXX \u003c 1000.\n\nBug: 23225475\n\nChange-Id: If48b88135d5df538313414f747d6c4c63bf0a103\n"
    },
    {
      "commit": "c4786d366b11ed81165d43ee7f23e0d4965fc00f",
      "tree": "a45d2e9e2dfe936f9c4f74005255a7cea192325a",
      "parents": [
        "e70d7a78f0bfba8b09d37c145769cb8d1d7c5fb6"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Mon Jul 20 19:46:26 2015 -0700"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Jul 21 19:33:34 2015 -0700"
      },
      "message": "Add getgrgid_r/getgrnam_r.\n\nBug: 22568551\nChange-Id: I3c0772d119d6041063c6be53f5bcc5ea1768f0d5\n"
    },
    {
      "commit": "a04c79b9d38cf9c8d3c79f4bbbfc45c9da9c0143",
      "tree": "5b50e3bbabd78ddcac3ada8564814aeac6f96086",
      "parents": [
        "ee4c8febb7bd1f5492486cc11980f925425b02ec"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Nov 18 16:14:54 2014 -0800"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Nov 18 19:58:04 2014 -0800"
      },
      "message": "fix shared gid support in getpwnam/getgrnam\n\nBug: 18374693\nChange-Id: I5353403cbbead6f6abac87bee2cf53a60dba408c\n"
    },
    {
      "commit": "c768874c667794bee278b9fbf207b5ca5df4e7a6",
      "tree": "9c2ea42770011f6f3bf80238f5ca394c2c8c6b5f",
      "parents": [
        "790890fd5c896a098142e0783b10fa8246462249"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri May 09 21:50:53 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri May 09 22:29:23 2014 +0100"
      },
      "message": "Align struct passwd definition with other variations of libc\n\nAdd pg_gecos (\"real name\") field to struct passwd.\n\nBug: 14679430\nBug: 12875898\nChange-Id: I833ec2c46f6a6259b7232a8e3f7942968ef0b50d\n"
    },
    {
      "commit": "f04935c85e0b466f0d30d2cd4c0fa2fff62e7d6d",
      "tree": "8f1c6af75517892648f49adad9d4d5d44c20f49c",
      "parents": [
        "e163a3986aa7d1c67fe3274eb9204812be0a6245"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Dec 20 18:43:21 2013 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Feb 06 20:12:21 2014 -0800"
      },
      "message": "Make sure that the same tests are on all platforms.\n\nIn order to be able to generate a list of tests for cts, the same set of\ntests must exist across all platforms. This CL adds empty tests where a\ntest was conditionally compiled out.\n\nThis CL creates a single library libBionicTests that includes all of\nthe tests found in bionic-unit-tests-static.\n\nAlso fix a few missing include files in some test files.\n\nTested by running and compiling the tests for every platform and\nverifying the same number of tests are on each platform.\n\nChange-Id: I9989d4bfebb0f9c409a0ce7e87169299eac605a2\n"
    },
    {
      "commit": "5e3fc43ddeada547a155c6f561a12ff0b16e02d3",
      "tree": "9becf3a8442387f408f7f9ee73ab06ab7f8865d1",
      "parents": [
        "1fea0f258a45d918fe5ae8e9769f45c0348bd095"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 11 16:36:48 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 11 16:39:10 2013 -0800"
      },
      "message": "Fix __pthread_clone on ARM to set errno on failure.\n\nMIPS and x86 appear to have been correct already.\n\n(Also fix unit tests that ASSERT_EQ with errno so that the\narguments are in the retarded junit order.)\n\nBug: 3461078\nChange-Id: I2418ea98927b56e15b4ba9cfec97f5e7094c6291\n"
    },
    {
      "commit": "ac184b21425a0681c51ef152f0567168b575da49",
      "tree": "08d0842acb148aa0ec9c01a455cefb28240b8fe6",
      "parents": [
        "8e630dacf61307e4681f04fc6b5ee593f30d91d0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Sep 26 14:20:22 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Sep 26 14:20:22 2012 -0700"
      },
      "message": "Fix several compiler warnings.\n\nChange-Id: I55caa50a5937442734f4fcbdb4edf1c70f335bf8\n"
    },
    {
      "commit": "8a05a01de75d78a45d646115b20b2a3e3c12ba9e",
      "tree": "5cefd13caf66aede2241cca2b8cc9200a11edd86",
      "parents": [
        "2a54e5ecd0a96398e8d7d9b1629ecf8fb1633a2b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 13 14:31:50 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 13 15:25:09 2012 -0700"
      },
      "message": "Print out shared app gids correctly\n\nFor applications that share resources across users such as\nforward-locked applications, print out their group name correctly.\n\nChange-Id: I06ee0b67e4325cfa415ffd7a03e301700399a66d\n"
    },
    {
      "commit": "2a54e5ecd0a96398e8d7d9b1629ecf8fb1633a2b",
      "tree": "0fa9a13009d0f9e215921fa3bc58b8b8b23d158c",
      "parents": [
        "fa36875df423af968d053c584c0de18a2448516b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 13 10:52:52 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 13 15:25:09 2012 -0700"
      },
      "message": "Add tests for Android-specific stubs\n\nAlso fix problem with multi-user IDs that the home directory was\nreturned as \"/data\" instead of \"/\" unlike all the other uids.\n\nChange-Id: I914d22052e5a86552989f8969b85aadbc748c65d\n"
    }
  ]
}
