)]}'
{
  "log": [
    {
      "commit": "2a6d9b25437c42fd3e0284a6e7a607c842f59fe0",
      "tree": "b1154afd67ab484cd468e2c3dcb9d7960878d383",
      "parents": [
        "b3473f20db82fdc16b1c2dc8b51249277de399ca"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Sat Mar 11 14:35:38 2017 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 13 16:25:51 2017 -0700"
      },
      "message": "Extract format_string function.\n\nExtract format_string function and add a test.\n\nTest: run linker-unit-tests\nChange-Id: I794a29aaf62e184438ce1a9224b88aa0586c17b5\n"
    },
    {
      "commit": "bcc4da9b752f0def46d63ed7b31f3f49cc2435ad",
      "tree": "b4e59da798a4f613507a79072eabbaaa995fa447",
      "parents": [
        "606ba2762e6d1062a2cbf4599b7bdb60ce5cc404"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Feb 15 15:31:13 2017 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Feb 15 15:35:33 2017 -0800"
      },
      "message": "Unify linker files under one license (BSD)\n\nHistorically we had part of the linker licensed under BSD and\nanother part under Apache 2 license. This commit makes all the\nlinker code licensed under BSD license.\n\nTest: m\nChange-Id: I11b8163ae75966b5768d3fe992679de376106515\n"
    },
    {
      "commit": "01fdb6ad571187498f47e570ba17441f560ba65c",
      "tree": "cf392237c51890dc8019a6857c9bb79ea6f99f3e",
      "parents": [
        "dd14725eeb1e5496e92ad777db165b21ad4651f0"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Sep 07 14:48:27 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Sep 07 14:48:27 2016 -0700"
      },
      "message": "Silently ignore empty path elements\n\nresolve_paths function used to print a warning if an input path\nwas empty. This commit fixes this by explicitly skipping\nempty paths during path resolution.\n\nTest: Run adb shell LD_LIBRARY_PATH\u003d: /system/bin/ping\nTest: make sure there are no warnings\nBug: http://b/31346121\nChange-Id: Ifd79040943dc62fc6e07d9828ff91d1050572809\n"
    },
    {
      "commit": "48ec288d40d272e6fe5e68c4c0a9778b55e24f8a",
      "tree": "4070843ac34ee5924221c2885b9ed6a26d03a5dd",
      "parents": [
        "b943f303a2d67d1e4c2fc8c4df3b4407888d777b"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Aug 04 11:50:36 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Aug 08 16:12:53 2016 -0700"
      },
      "message": "Extract soinfo and globals to separate files.\n\nMove soinfo and globals out of linker.cpp to\nseparate files.\n\nBreaking up huge linker.cpp into smaller peaces\nin order to make it easier to extract part of the\ncode that belongs to libdl.so and remove parts of\nthe code that do not belong to linker\n\n(refactoring part 2 of many)\n\nChange-Id: I868417f4b8d2b84d0e8265e354bc7977161497e2\n"
    },
    {
      "commit": "769b33fadf45a039741f932672ac2c4f901d7d4a",
      "tree": "bf29858de176dd3bf144c547174eb99e1727e85a",
      "parents": [
        "c5e79567e0b02eb3a02d6b2820b901d4ba392e87"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Jul 21 11:33:40 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Aug 01 19:47:27 2016 +0000"
      },
      "message": "Sync linker with internal branch\n\nThis change includes dlwarning implementation and\nthe compatibility greylist for apps targeting pre-N.\n\nChange-Id: Ibf02a07cc58cbbb1a5aef4ac34558c5d43e4305f\nTest: Run bionic-unit-tests --gtest_filter\u003ddl*:Dl*\n"
    },
    {
      "commit": "284ae3559ed909613b189b98bdc3efab94373a30",
      "tree": "7f525b5244599a2caa7692d3d179dde4bbb61fe3",
      "parents": [
        "df196131f3c16f1eddb1542c7e04c675e7f1fbda"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Dec 08 10:47:13 2015 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Dec 09 13:54:01 2015 -0800"
      },
      "message": "Add permitted_when_isolated_path to linker namespaces\n\nThe permitted_when_isolated_path is a way to white-list\ndirectories not present in search-path. It is ignored for\nnot isolated namespaces.\n\nBug: http://b/25853516\nBug: http://b/22548808\nChange-Id: Ib1538037268eea69323ea49968a34a4a1d1938a5\n"
    },
    {
      "commit": "84bab5a9552cebf57795ade0e1abd5f7aee46479",
      "tree": "0c6fd9d36cd69f86c377a772b3d4b8f8e9ef333b",
      "parents": [
        "a1ab0d8ed1c4025233b0d816164eefb1b84159b9"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Nov 20 13:34:11 2015 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Nov 20 21:37:51 2015 +0000"
      },
      "message": "Move some utility functions to linker_utils\n\nAlso adds unit-tests for page_start, page_offset, and safe_add\n\nChange-Id: Ia1325b4682d367328a01599a19848e4ffcd2c0ea\n"
    },
    {
      "commit": "42d5fcb9f494eb45de3b6bf759f4a18076e84728",
      "tree": "8f653810d3ddecf30bb0b744d4564d406808fe3e",
      "parents": [
        "ffe5c24c8693f1f4fc8edb68075fb36df558b801"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Oct 29 17:01:24 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Sun Nov 15 12:09:16 2015 -0800"
      },
      "message": "Introducing linker namespaces\n\nBug: http://b/22548808\nChange-Id: Ia3af3c0a167f1d16447a3d83bb045d143319b1e1\n"
    },
    {
      "commit": "a1feb117e4d5614548574f28dede3443e073512b",
      "tree": "6078618ff745b802f986119d0534433a8d7df2d1",
      "parents": [
        "748421beef0ed8625920a27b3753a79c2652b6ef"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Oct 01 18:41:57 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Oct 07 11:44:53 2015 -0700"
      },
      "message": "Make dt_runpath work for libraries opened from apk\n\nThis patch also fixes realpath for libraries opened directly\nfrom apks.\n\nBug: http://b/21960914\nBug: http://b/21961857\nChange-Id: I35ade661c87f1d448191f385811f6e9fd3cacf11\n"
    }
  ]
}
