)]}'
{
  "log": [
    {
      "commit": "03181a828cd493545b278e0aa4f150fdaf1e3325",
      "tree": "eda89723d770a75c104170b6e1a09feb44053e3d",
      "parents": [
        "499c5133d361e7c659fc38e5ccfeb1280a7996f5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 17 17:22:21 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 17 17:41:59 2011 -0800"
      },
      "message": "Implement debugger support for getting thread stacks.\n\nYou can now \"where all\" in jdb.\n\nChange-Id: Iccff0427f39b2f2ab3786f05b89850d50b87adb2\n"
    },
    {
      "commit": "499c5133d361e7c659fc38e5ccfeb1280a7996f5",
      "tree": "1b7d865502e90b32483f3cf69f7b3217ea821e0f",
      "parents": [
        "a2e54f61453a2072181d5dd7aa2d5e845f5b53f6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 17 14:55:11 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 17 14:55:11 2011 -0800"
      },
      "message": "Implement debugger support for the \"threads\" command.\n\nChange-Id: I266d28ee00d87fdc7ecb179ddf52634db96e573c\n"
    },
    {
      "commit": "a2e54f61453a2072181d5dd7aa2d5e845f5b53f6",
      "tree": "4ca063dd40b4c246097aa31d4d79ddf14d0420a7",
      "parents": [
        "761928d24e4e7ed7776b52243eaf9095ad35f448"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 17 13:01:30 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 17 13:01:30 2011 -0800"
      },
      "message": "More debugger support.\n\nThis lets you attach jdb. Quitting will let your program run to completion.\nThis also fixes the \"class\", \"fields\", and \"methods\" commands.\n\nChange-Id: I6645f52dd8b5847454a553c31c80a2f5bf8f1000\n"
    },
    {
      "commit": "a215526d5c789cbef0f81a1f9aba22541a841cca",
      "tree": "4d6baa6e24d41027300bd22a7b7746267dd45f23",
      "parents": [
        "254db0ff7ea6509a1c2914b1d9532e2041a0c4c4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 16:26:58 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 16:56:41 2011 -0800"
      },
      "message": "Implement enough JDWP functionality that we can attach jdb.\n\nYou can also try \"classes\" and \"classpath\", though anything else\ndeadlocks because we\u0027re suspended but jdb thinks we aren\u0027t. I don\u0027t\nthink that\u0027s a new bug with this patch, though, so I\u0027ll look at that\nnext.\n\nChange-Id: I54456b6a7fe72642be696c66aa485dc0c8a7f913\n"
    },
    {
      "commit": "21f32d704a21bcd67d7b87b149b6314ff92946cb",
      "tree": "5546826bb2f700d88f3561c660b6e74eefc52b7d",
      "parents": [
        "545a064aca775ba801790fced3d713d8a87bfc61"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 09 17:44:13 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 09 18:21:37 2011 -0800"
      },
      "message": "Fix some DDMS stuff I\u0027d broken, and fix HexDump\u0027s double-spacing.\n\nChange-Id: I6583458a818406197744cc640b0993f73cfd5384\n"
    },
    {
      "commit": "545a064aca775ba801790fced3d713d8a87bfc61",
      "tree": "5c7aefe4e2ec7736f1fc8eea3b99a9df05bbae1c",
      "parents": [
        "3697d2459983c1f0a3d6efaefb2b6a1110af28df"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 08 19:10:03 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 09 15:58:49 2011 -0800"
      },
      "message": "Implement DDMS recent allocation tracking.\n\nChange-Id: I7cec7311ba496f93e147ae17fbce94d4d17b5269\n"
    },
    {
      "commit": "8218847294600bbfcdc041a46c2b579b6e70cf3b",
      "tree": "4beb913b0a0d3410fb1b6f9b690c63c7aefb53bd",
      "parents": [
        "6c9c06dbb0b16714079afaedbebd3d548aa832b2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 07 18:11:48 2011 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 07 18:11:48 2011 -0800"
      },
      "message": "Implement thread name change notification for DDMS.\n\nChange-Id: If63d89991951989f27ee267895244e115661dce9\n"
    },
    {
      "commit": "6a5bd495ff2f614f1495f652c86f3902d3bde537",
      "tree": "421434975640d4ddc592ac3caba6198277f83369",
      "parents": [
        "e1fab56ffa50364fd08d4a935a2a3339f7faa509"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 28 14:33:57 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 28 15:30:08 2011 -0700"
      },
      "message": "Implement the DDMS heap walking (for native and managed heaps).\n\nThis gets you the DDMS histograms of what\u0027s on your heaps.\n\nChange-Id: I7133d044030b10a787277faf3a77e20c565e69c5\n"
    },
    {
      "commit": "7162ad937f5f6bec32bf78d4675ff65cd6d1a233",
      "tree": "78bd960316746977400a9fc1772fbedeb821faae",
      "parents": [
        "f7c3b6625d710a8700325eea447f65e9f963b7f2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 27 14:08:42 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 27 14:08:42 2011 -0700"
      },
      "message": "Implement DDMS heap info (\"HPIF\") chunks.\n\nThis lets you see how many bytes/objects are in your managed heap.\n\nChange-Id: Ie925207e9c48989a24968633e60b99314d220865\n"
    },
    {
      "commit": "767a147529da3ee8240f3ce4cd3af22ae454be64",
      "tree": "69901f2bd7721bb48f1379734908708f2eca96c8",
      "parents": [
        "39723d3bdd9532af903efeac8908391bb94a12ac"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 26 18:49:02 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 27 10:58:05 2011 -0700"
      },
      "message": "Wire in the DDMS heap stuff.\n\n(It\u0027s still UNIMPLEMENTED at the bottom, though.)\n\nChange-Id: I0f4c1c90cafb48b045685ae67300170fd696f386\n"
    },
    {
      "commit": "bfe487be25652c5456236661b9d9c3579d2296c1",
      "tree": "03e98cfc794946a85a5dfcc3170ae138f78da9b1",
      "parents": [
        "234ab15b00f8120282d1833e5d7480eca2e35a29"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 26 15:48:55 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 26 16:52:02 2011 -0700"
      },
      "message": "Makes objects known to the debugger GC roots, implements the THST message, and lets DDMS request stack traces.\n\nThis fills out correct data in all columns of the \"Threads\" table, and\ndouble-clicking on a thread shows that thread\u0027s stack.\n\nChange-Id: I48f63c3612e12d35269158dc3a283f07db28c8e7\n"
    },
    {
      "commit": "47fce01c0f27dba716fa6b97242562fbc5c26eea",
      "tree": "4a95d4bbc2a53ec765000e73cf026d404a667f73",
      "parents": [
        "ed6d78ed93c9b5b1988af6ca502a7e2eee0f2aaf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 25 18:37:19 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 25 18:37:19 2011 -0700"
      },
      "message": "Basic DDMS thread support.\n\nDDMS can now see our running threads...\n\nChange-Id: I42d2fce4db9eb846fa0b4aac46ca6bb3443a6c9f\n"
    },
    {
      "commit": "475fc23a4a7f35d1be87ea0b06c80df317a720ac",
      "tree": "91954099b3f4168a4bb97613219d1f5e329c1597",
      "parents": [
        "6ba581a6711c4fed24828c9a294b1b49ac6bbb30"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 25 15:00:35 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 25 15:00:35 2011 -0700"
      },
      "message": "More debugger support.\n\nThis gets us as far as the first DDMS-specific message, which means\nit\u0027s time to bring in a bunch more code.\n\nChange-Id: I3f9d75706d5ddde0aa21fcca558132282b94eff4\n"
    },
    {
      "commit": "d1cc8363d4f4bbac7568b1d02a5ca481cd10830f",
      "tree": "df0c401ed6d5e4e9153268c3f336ead459a84cfc",
      "parents": [
        "4ffd31315bc0d00ec278e85feed15985de5ac3dc"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 16:58:50 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 16:58:50 2011 -0700"
      },
      "message": "Wire up enough of the pieces that we can connect ddms or jdb.\n\n(And die with an UNIMPLEMENTED as soon as they connect, of course.)\n\nChange-Id: I9abb25d581384361c215b3cd96b8278c751e79ea\n"
    },
    {
      "commit": "4ffd31315bc0d00ec278e85feed15985de5ac3dc",
      "tree": "9008b944618f4d422cb050d7d1c5aeb74fb39dd9",
      "parents": [
        "d81871cbbaa34c649e488f94f61a981db33123e5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 12:06:42 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 12:06:42 2011 -0700"
      },
      "message": "Implement the zygote debug options (late-enabling -Xcheck:jni and so on).\n\nChange-Id: I03772e7fb95fce1a19dac13f6c5f870164a4d874\n"
    },
    {
      "commit": "3bb81563481d02b5a6349b8ed918392454e761d8",
      "tree": "d409347516f215acba0ac7090a44e0b536cba100",
      "parents": [
        "4514d3c0e69a49f5dbe19138330a2bb2aee36d63"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 21 18:52:59 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 21 18:52:59 2011 -0700"
      },
      "message": "Basic JDWP option parsing...\n\n...and just enough code to silence all the UNIMPLEMENTED warnings you get\nduring normal usage.\n\nChange-Id: I56820ac971b88581c4cb1f462c13331d8fa04c43\n"
    },
    {
      "commit": "872d4ec7225444d9400d30f9027247deb91012fd",
      "tree": "f293f31987efc6b43ab64fe043390959dc59c816",
      "parents": [
        "8f903f2c1832a93d3b479d412664e0972cc14d6a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 21 17:07:15 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 21 17:51:01 2011 -0700"
      },
      "message": "Bring across the JDWP implementation.\n\nThis compiles and links, but does nothing until we fill out the 100 or so\nunimplemented methods in \"debugger.cc\". Note that I also need to add the\nextra command-line handling for the JDWP agent stuff, and add calls from\nthe runtime to the various \"something interesting is going on\" hooks.\n\nChange-Id: I477cf3caf9e248c384ce1d739cbfadb60e2008bc\n"
    }
  ]
}
