)]}'
{
  "log": [
    {
      "commit": "7a3681e5b6c39bc2b3b62031ca5941dbf7bc4e63",
      "tree": "78c25e2a38b7efed8db770a623a5cbfb7eaab11d",
      "parents": [
        "ca5e0f49ca5df873a20c996755175b5c9c1e2ed9"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Apr 24 17:48:32 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed May 03 08:50:43 2017 -0700"
      },
      "message": "Move libc_log code into libasync_safe.\n\nThis library is used by a number of different libraries in the system.\nMake it easy for platform libraries to use this library and create\nan actual exported include file.\n\nChange the names of the functions to reflect the new name of the library.\n\nRun clang_format on the async_safe_log.cpp file since the formatting is\nall over the place.\n\nBug: 31919199\n\nTest: Compiled for angler/bullhead, and booted.\nTest: Ran bionic unit tests.\nTest: Ran the malloc debug tests.\nChange-Id: I8071bf690c17b0ea3bc8dc5749cdd5b6ad58478a\n"
    },
    {
      "commit": "f44b232d85e9d8be6242251d570742d49a7066db",
      "tree": "1815588b5a604e10ecffeef11c6299efb830c863",
      "parents": [
        "a3c2df93789bb7536bd96a01bbf952b6fcee269b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 26 17:35:00 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 27 15:49:31 2016 -0700"
      },
      "message": "Remove libstdc++ include files.\n\nWe still need \u003cnew\u003e for bionic, and to build libstdc++.\n\nChange-Id: Ic7b26340576a5355007a06db9c1bec395be49ae1\n"
    },
    {
      "commit": "ae558d6b4bcee740f7e61434982eb5f2c999fb97",
      "tree": "443b26ce7513f9ee430e4f639c5436fd11dbc9a5",
      "parents": [
        "a4a8c4feb8cf3cebf8aceace70e699e128095b5c"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Aug 25 12:08:19 2014 -0700"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Aug 25 21:16:14 2014 +0000"
      },
      "message": "Add standard throw() spec to delete operators.\n\nWithout these specs, clang will reports mismatch between standard definitions and these declarations/definitions. These specs are ignored when compiled with -fno-exceptions.\n\nBUG: 17136236\nChange-Id: I386c712a61dc4fc74dfde45f9ec2d3d037f2e9f1"
    },
    {
      "commit": "989725940e765f0065b2bc06b881cde864b62595",
      "tree": "2fd93597a6381dc47e362c2d2a84faae59bbf2af",
      "parents": [
        "3a3b27e04df395b789b92af3d0ed05d2a0f3bf04"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri May 30 16:00:53 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 02 18:48:53 2014 -0700"
      },
      "message": "Use __libc_fatal() for failed malloc in new\n\nThis way we can print a useful message to the log isntead of just dying\nmysteriously.\n\nChange-Id: Ib660c2fd8ce8bb9aa0d0bb634ae08c645d3901e5\n"
    },
    {
      "commit": "15b641a26731a7e42455c3ed22e1e9bdf31ea79c",
      "tree": "c06577c257be144af1d59f9f23e1f1117b22c3aa",
      "parents": [
        "bc7f8a791b4a510914fd5cac713415acb80fb806"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 18:18:55 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 18:18:55 2014 -0700"
      },
      "message": "Move libstdc++ into libc.\n\nThe Android build system always links against libstdc++.so anyway. Having\noperator new and operator delete in a separate library means we can\u0027t use\nconstructors and destructors on heap-allocated objects inside the C library,\nwhich is quite an unfortunate limitation.\n\nThis will be cheaper too; on LP64 we can stop linking against the [now empty]\nlibstdc++.so giving the dynamic linker one less library to worry about for\nevery process.\n\nThere\u0027s precedent too --- we already have no libpthread or librt.\n\nFor now I\u0027m leaving the include files where they are, and I\u0027m generating a\ndummy libstdc++.so and libstdc++.a. We can come back and clean that up later\nif all goes well.\n\nBug: 13367666\nChange-Id: I6f3e27ea7c30d03d6394965d0400c9dc87fa83db\n"
    }
  ]
}
