)]}'
{
  "log": [
    {
      "commit": "a8242c7909c4e21e508bd82b0555f234c9b0bb2d",
      "tree": "2aeb1330fc76743cb24940b2547173f7e3721e08",
      "parents": [
        "99064ba7a2a171bb1edaba7dff6db79dd814d434"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Thu Dec 25 19:17:54 2014 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Thu Dec 25 19:17:54 2014 -0500"
      },
      "message": "adding initial migrations\n"
    },
    {
      "commit": "99064ba7a2a171bb1edaba7dff6db79dd814d434",
      "tree": "5d0cfb3bae839c3b1b038b736a12be03477cdf2b",
      "parents": [
        "f14089d91202e0ed1e02af02c08ef43c0c9763b6"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 17:24:00 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 17:24:00 2014 -0800"
      },
      "message": "add ControllerSiteDeployment to xoslib\n"
    },
    {
      "commit": "f14089d91202e0ed1e02af02c08ef43c0c9763b6",
      "tree": "b3486d02e4d002b2a5b2a44975e2f0e122a906f2",
      "parents": [
        "a009d5610b96e824fbf429d29e4e052eb1516906"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 17:17:27 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 17:17:27 2014 -0800"
      },
      "message": "fix javascript error if enacted is undefined\n"
    },
    {
      "commit": "a009d5610b96e824fbf429d29e4e052eb1516906",
      "tree": "7b2f985da18e640268f38e444512a91c0bb61773",
      "parents": [
        "f0480fbeea68ae36b1e66084a1c9f67923c39da5"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:13:52 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:13:52 2014 -0800"
      },
      "message": "rest_framework doesn\u0027t have a serializers.ReadOnlyField\n"
    },
    {
      "commit": "f0480fbeea68ae36b1e66084a1c9f67923c39da5",
      "tree": "56cb3f1a2b94d88534181a47f7f9354f176996e2",
      "parents": [
        "e5e44eb7c0edf688ad1bf35fe42b013e3e3eda63"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:12:07 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:12:07 2014 -0800"
      },
      "message": "rest_framework doesn\u0027t have a serializers.ReadOnlyField\n"
    },
    {
      "commit": "e5e44eb7c0edf688ad1bf35fe42b013e3e3eda63",
      "tree": "c27376266bd8c890d978ba747d1fe71351de496e",
      "parents": [
        "c865508a6910e8831e20477f9610e0250e2db6a4"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:04:27 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:04:27 2014 -0800"
      },
      "message": "fix plus mixin for rest_framework 3.0\n"
    },
    {
      "commit": "c865508a6910e8831e20477f9610e0250e2db6a4",
      "tree": "c107eec026c0e7adc199f59419a1e6afff4004be",
      "parents": [
        "201f7da54150c653c152eee16faaf3fcb1eaaea8"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:03:58 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 11:03:58 2014 -0800"
      },
      "message": "sliceplus: return role string instead of role object\n"
    },
    {
      "commit": "201f7da54150c653c152eee16faaf3fcb1eaaea8",
      "tree": "984bca58566035b5bda5d441be13d3d70d7e3a31",
      "parents": [
        "0461aee1c8aba320af4219c0ef9af61186ba049d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 10:56:06 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 10:56:06 2014 -0800"
      },
      "message": "latest auto-generated genapi\n"
    },
    {
      "commit": "0461aee1c8aba320af4219c0ef9af61186ba049d",
      "tree": "5d14ba8bf38555503be9590671a50ef0ba34944c",
      "parents": [
        "c04e1421862b51e59675c8210f666bb3e1eae599"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 10:43:03 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 10:43:03 2014 -0800"
      },
      "message": "make \u0027id\u0027 fields readonly, set query_set for manytomany and foreignkey fields\n"
    },
    {
      "commit": "c04e1421862b51e59675c8210f666bb3e1eae599",
      "tree": "68bc4a7c645be391df51ed2f68bade5eeee6aa81",
      "parents": [
        "b35adc4eb5d85efbe5146576fb7848473551f548"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 09:39:06 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 23 09:39:06 2014 -0800"
      },
      "message": "fix error when displaying dashboards in home view\n"
    },
    {
      "commit": "b35adc4eb5d85efbe5146576fb7848473551f548",
      "tree": "4a4d2efe98144e73e217af4ff9664fa752481fbf",
      "parents": [
        "3c7c3582dffaae804bf53fc6e76424fea49d5093"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:56:44 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:56:44 2014 -0800"
      },
      "message": "add SiteDeployment to xoslib\n"
    },
    {
      "commit": "3c7c3582dffaae804bf53fc6e76424fea49d5093",
      "tree": "cd50f7661163d1f0adc7c75702c873f5f317c5b9",
      "parents": [
        "d2ab6c519d2ce2add37d08bb2e9fdf2d20d887f3"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:47:30 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:47:30 2014 -0800"
      },
      "message": "add controller to xoslib\n"
    },
    {
      "commit": "d2ab6c519d2ce2add37d08bb2e9fdf2d20d887f3",
      "tree": "01e4b1f308d16c2418bcdf29a09d09f478f7df23",
      "parents": [
        "f2c0c51e7440bb6c0c0dfc7a498289fe94508649"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:43:25 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:43:25 2014 -0800"
      },
      "message": "change capitolization of related_name for ControllerDashboardView\n"
    },
    {
      "commit": "f2c0c51e7440bb6c0c0dfc7a498289fe94508649",
      "tree": "50eae0b219842901683d406b09be0cc0a55f0c4e",
      "parents": [
        "bf4ef6d513255a6b3deeef3b4f02c9fab5df37ea"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:35:34 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 17:35:34 2014 -0800"
      },
      "message": "rename ControllerDashboard to ControllerDashboardView\n"
    },
    {
      "commit": "bf4ef6d513255a6b3deeef3b4f02c9fab5df37ea",
      "tree": "4aedcb868947837f0545ae3e9e956c755f1edee6",
      "parents": [
        "f958984772de533cc7212946e21cebce5dc7fb53"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 15:59:33 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 15:59:33 2014 -0800"
      },
      "message": "latest auto-generated genapi.py\n"
    },
    {
      "commit": "f958984772de533cc7212946e21cebce5dc7fb53",
      "tree": "7f09208b64d37b1fd00b7bc19c00059ce489811b",
      "parents": [
        "ff19f52bcc783dea1e4d86129bb2031a3a1a2957"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 15:59:05 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 15:59:05 2014 -0800"
      },
      "message": "add ManyToMany for (Image, Deployment)\n"
    },
    {
      "commit": "ff19f52bcc783dea1e4d86129bb2031a3a1a2957",
      "tree": "9b030aae8c711255a7b48fb0946b48b30c166acb",
      "parents": [
        "3cd9c2d6f5b4bfe6bef7a313398266a19aa5f0d0"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 15:54:13 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 15:54:13 2014 -0800"
      },
      "message": "eliminate from xoslib models deleted due to introduction of controllers\n"
    },
    {
      "commit": "3cd9c2d6f5b4bfe6bef7a313398266a19aa5f0d0",
      "tree": "ffe711262628347101b72c179d9883cda0462d46",
      "parents": [
        "160d88b27b9eed963d63d2ca362c918c567a0959"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Dec 22 16:40:44 2014 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Dec 22 16:40:44 2014 -0500"
      },
      "message": "fix inconsistencies\n"
    },
    {
      "commit": "160d88b27b9eed963d63d2ca362c918c567a0959",
      "tree": "163e326e6b99455b2317da6044ced1e0bfe2b7c1",
      "parents": [
        "6bc4328db8df1123d54d694acb751567396073da",
        "35d588026c0f1ea0e95b47ba49b24ddbd7fbaff0"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 13:01:53 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 13:01:53 2014 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.planet-lab.org/plstackapi\n"
    },
    {
      "commit": "6bc4328db8df1123d54d694acb751567396073da",
      "tree": "51f19b0cebe4dec098399cf03f4ddc2bf2dc4916",
      "parents": [
        "b04f51aab325cc7b168b4a74176681c6e7498e07"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 13:01:18 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 13:01:18 2014 -0500"
      },
      "message": "BUGFIX: Use sliver.controllerNetwrok instead of sliver.node.controller\n"
    },
    {
      "commit": "b04f51aab325cc7b168b4a74176681c6e7498e07",
      "tree": "5ce517830919199354fa2d4fd5407f2e1db89f38",
      "parents": [
        "6eb9391fef0e05756603d7ccfce30e641b2bcc21"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 12:49:55 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 12:49:55 2014 -0500"
      },
      "message": "BUGFIX: Controller related field change\n"
    },
    {
      "commit": "35d588026c0f1ea0e95b47ba49b24ddbd7fbaff0",
      "tree": "bd4e73f1e021778d1925f34e7b91a8e5815dec99",
      "parents": [
        "549e429fec47f73d0abad99f8e40f68ef45abeab"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 09:31:09 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 09:31:09 2014 -0800"
      },
      "message": "perm fix\n"
    },
    {
      "commit": "549e429fec47f73d0abad99f8e40f68ef45abeab",
      "tree": "41168f9711340cc3fa8ea9901d6faa3d8b315b89",
      "parents": [
        "515dc9ef7dedd78d1bf14527028aca06dd90df5c",
        "6eb9391fef0e05756603d7ccfce30e641b2bcc21"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 09:30:26 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 09:30:26 2014 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "515dc9ef7dedd78d1bf14527028aca06dd90df5c",
      "tree": "0a582766c783e9bb32aefeb65888242cc720c20d",
      "parents": [
        "279c4c653e47d7fa3bed2e1ae745c974627b562b"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 09:29:05 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 09:29:05 2014 -0800"
      },
      "message": "latest auto-generated genapi.py\n"
    },
    {
      "commit": "6eb9391fef0e05756603d7ccfce30e641b2bcc21",
      "tree": "1b6829ef2265c8537a89b78b21557f3d991d0056",
      "parents": [
        "eeaf5fd708fb723e3cd633e645b36b665a9b73f9",
        "279c4c653e47d7fa3bed2e1ae745c974627b562b"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:51:06 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:51:06 2014 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.planet-lab.org/plstackapi\n"
    },
    {
      "commit": "eeaf5fd708fb723e3cd633e645b36b665a9b73f9",
      "tree": "7e915b07b613926b9887bb38d878e37922ba409a",
      "parents": [
        "92b1dbfde6303852ad8ce04f060452d958377870"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:50:47 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:50:47 2014 -0500"
      },
      "message": "Fixes to sync_slivers moved over from alpha\n"
    },
    {
      "commit": "279c4c653e47d7fa3bed2e1ae745c974627b562b",
      "tree": "9dcdeb55a884b7fbc90c04e6ad97ff8e5a170678",
      "parents": [
        "97a71c3c0efb4ad865093ce5def9a1375d406024",
        "92b1dbfde6303852ad8ce04f060452d958377870"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 08:32:02 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 08:32:02 2014 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "97a71c3c0efb4ad865093ce5def9a1375d406024",
      "tree": "182980a8fb2f18975f4cc683bac419bd0f54b633",
      "parents": [
        "ecbdab16d7f4ed66c62ea868a881720b84812d2f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 08:28:55 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 08:28:55 2014 -0800"
      },
      "message": "force version 2.4 of django rest framework\n"
    },
    {
      "commit": "92b1dbfde6303852ad8ce04f060452d958377870",
      "tree": "b39244796fdd7b8095414dc2ce55a1a5d30ddbd5",
      "parents": [
        "1941de1370c48de0beda82712cc8c2cebd68ec03"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:27:55 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:27:55 2014 -0500"
      },
      "message": "Manually added required dependency\n"
    },
    {
      "commit": "1941de1370c48de0beda82712cc8c2cebd68ec03",
      "tree": "7abe63b92476b6eb7abd8fb2fb2972703ba23046",
      "parents": [
        "3f3fce1ea8545038ca6b64b0a30cd5863067c092"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:25:31 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 11:25:31 2014 -0500"
      },
      "message": "Switched sync_controller_slices back to using the API instead of CLI\n"
    },
    {
      "commit": "ecbdab16d7f4ed66c62ea868a881720b84812d2f",
      "tree": "0c4782350a23bf5fc25b20710c6d884e539bd4b2",
      "parents": [
        "9de6c44954c6a340773589ea20b4b59ae8b8e06c"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 07:55:53 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 22 07:55:53 2014 -0800"
      },
      "message": "fix javascript fail if xosvalidators.js not loaded by html\n"
    },
    {
      "commit": "3f3fce1ea8545038ca6b64b0a30cd5863067c092",
      "tree": "e932c2387a7559a89ecbacf68016c4937e85b0b0",
      "parents": [
        "4aec9543a5a47d047edd61480265417e5411a871"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:45:04 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:45:04 2014 -0500"
      },
      "message": "BUGFIX\n"
    },
    {
      "commit": "4aec9543a5a47d047edd61480265417e5411a871",
      "tree": "a0c4c4a0947ddec7de2819d8ee6ace7c7fef3427",
      "parents": [
        "75d6765d393aafd9502be533d919a088b3301f05"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:44:38 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:44:38 2014 -0500"
      },
      "message": "Controller-related updates to sync_controller_slices\n"
    },
    {
      "commit": "75d6765d393aafd9502be533d919a088b3301f05",
      "tree": "e540f395fd320d7460e0b3b48195718dddf5567c",
      "parents": [
        "100f9972c02415dcef59c3503b4d3c2e16879164"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:44:13 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:44:13 2014 -0500"
      },
      "message": "Minor bug fix in sync_site_deployments\n"
    },
    {
      "commit": "100f9972c02415dcef59c3503b4d3c2e16879164",
      "tree": "a5be622a88d018f4d85ec2cf539b444e690d1599",
      "parents": [
        "afa037dc6d29fc475ecedb8d42bededa410c9272"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:43:32 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:43:32 2014 -0500"
      },
      "message": "Fixed several typos and tab issues in sync_controller_networks\n"
    },
    {
      "commit": "afa037dc6d29fc475ecedb8d42bededa410c9272",
      "tree": "fa52e015fd1ecf55768d9bd5fae8a25edae59128",
      "parents": [
        "06ac22151f3a93bb6ece0225dedd18534a82cd62"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:43:05 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:43:05 2014 -0500"
      },
      "message": "Adapted sync_nodes to controller objects\n"
    },
    {
      "commit": "06ac22151f3a93bb6ece0225dedd18534a82cd62",
      "tree": "40b1a11e466c7068a5456172269654a6d3f19e95",
      "parents": [
        "dedc41eff339288f5d885f6d1c099eaabf1ff01a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:42:38 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:42:38 2014 -0500"
      },
      "message": "Bug fixes to sync_controller_images.yaml\n"
    },
    {
      "commit": "dedc41eff339288f5d885f6d1c099eaabf1ff01a",
      "tree": "235ee8d26136ea03d8b5bcc3652da036f55856f2",
      "parents": [
        "77f9f30790bfc01829cf6b44e777f346f2612f1e"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:42:18 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:42:18 2014 -0500"
      },
      "message": "Bug fixes to sync_controller_networks\n"
    },
    {
      "commit": "77f9f30790bfc01829cf6b44e777f346f2612f1e",
      "tree": "828f6c60a3475f0c257d4f9690c9f0760ee7795f",
      "parents": [
        "9adb2d1852a7b23748199f5525ff44a18f65b941"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:41:55 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:41:55 2014 -0500"
      },
      "message": "BUG Fixes to sync_controller_images\n"
    },
    {
      "commit": "9adb2d1852a7b23748199f5525ff44a18f65b941",
      "tree": "ec9de51de8fe7d8f2d1bcbda90452d9f0364fffd",
      "parents": [
        "a554a017b99e83593c4cb9e0d47f659d768bc7f1"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:41:28 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:41:28 2014 -0500"
      },
      "message": "BUGFIX\n"
    },
    {
      "commit": "a554a017b99e83593c4cb9e0d47f659d768bc7f1",
      "tree": "bd53accf5c86d2ef66f79069ad1d82787f8dbf89",
      "parents": [
        "e5e2f2eb03f57ff4c23d02bb18af679a6bb4341e"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:38:33 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:38:33 2014 -0500"
      },
      "message": "Updated client driver for controller objects\n"
    },
    {
      "commit": "e5e2f2eb03f57ff4c23d02bb18af679a6bb4341e",
      "tree": "f734c56d6f92999d25d44950987c84b599becd0e",
      "parents": [
        "d5e8371d248d03ab332a9532cf3c549fc10000e4"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:38:00 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:38:00 2014 -0500"
      },
      "message": "Bug fix. Networks were not automaticaly getting added to slices.\n"
    },
    {
      "commit": "d5e8371d248d03ab332a9532cf3c549fc10000e4",
      "tree": "d5beb818ce93386818a6f79e7201dbb0c4c6e527",
      "parents": [
        "5af0637042d54188289585f0214e54ae5f2ec1c2"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:37:26 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Dec 22 01:37:26 2014 -0500"
      },
      "message": "Fixed a UI error in admin\n"
    },
    {
      "commit": "5af0637042d54188289585f0214e54ae5f2ec1c2",
      "tree": "b8c8250999101a59a086997d1c448c44de7903fb",
      "parents": [
        "963831e9327fd8dd057c72c5a3afc0cf9e3f80ef",
        "9de6c44954c6a340773589ea20b4b59ae8b8e06c"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:35:39 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:35:39 2014 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.planet-lab.org/plstackapi\n"
    },
    {
      "commit": "963831e9327fd8dd057c72c5a3afc0cf9e3f80ef",
      "tree": "181124ee569565472fe71c04cb3a9438e324be0f",
      "parents": [
        "b2cef885fc966fb33796ecb16bc4ed42a25a8eab"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:33:52 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:33:52 2014 -0500"
      },
      "message": "Changed placement of ansible on filesystem\n"
    },
    {
      "commit": "b2cef885fc966fb33796ecb16bc4ed42a25a8eab",
      "tree": "db11a86ab44f05defe7f6a11744e657eca8b8ccf",
      "parents": [
        "6d1241c13d228284708c6c17c9bf3649887dd6aa"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:33:13 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:33:13 2014 -0500"
      },
      "message": "Checked in a missing changeset\n"
    },
    {
      "commit": "6d1241c13d228284708c6c17c9bf3649887dd6aa",
      "tree": "4a2062e7f2efce933512c35a061b51ff512d56dc",
      "parents": [
        "fbf61270d3356e0841e7a990cdc6f6224dbba143"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:32:50 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:32:50 2014 -0500"
      },
      "message": "Worked around an exception\n"
    },
    {
      "commit": "fbf61270d3356e0841e7a990cdc6f6224dbba143",
      "tree": "f7fe55216013d14948fc9438d0b98a93f82162eb",
      "parents": [
        "83f5b62d9eef8678b912301788ccf3be092063b3"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:32:15 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Sun Dec 21 02:32:15 2014 -0500"
      },
      "message": "Worked around an exception: FieldError\n"
    },
    {
      "commit": "9de6c44954c6a340773589ea20b4b59ae8b8e06c",
      "tree": "9b6bb9a75f7902cd4c5927f810f0c29c6084147a",
      "parents": [
        "786a9c1d7741c60c882f827769d034aec385caff"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 17:15:59 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 17:15:59 2014 -0800"
      },
      "message": "per-controller view display\n"
    },
    {
      "commit": "786a9c1d7741c60c882f827769d034aec385caff",
      "tree": "c960b27cdae3c4476321722397604e72a00f5429",
      "parents": [
        "83f5b62d9eef8678b912301788ccf3be092063b3"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 16:41:12 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 16:41:12 2014 -0800"
      },
      "message": "models for per-controller dashboard views\n"
    },
    {
      "commit": "83f5b62d9eef8678b912301788ccf3be092063b3",
      "tree": "d19090e0b231d335d9237dd586e5f7ef3e45c188",
      "parents": [
        "50f9377d6b5d6db9294304e8c7a5d8bc0a541252"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 13:02:31 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 13:02:31 2014 -0800"
      },
      "message": "fix \u0027sys not defined\u0027 error when displaying observer not installed warning\n"
    },
    {
      "commit": "50f9377d6b5d6db9294304e8c7a5d8bc0a541252",
      "tree": "09899491ec820688b90476e5c2379626dd3ff97b",
      "parents": [
        "7e277d322ee6da144ece5fb6f97432e0da50e6af"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 12:35:37 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 12:35:37 2014 -0800"
      },
      "message": "upload make target\n"
    },
    {
      "commit": "7e277d322ee6da144ece5fb6f97432e0da50e6af",
      "tree": "076744002b77884c706ab66215c477a1b621d588",
      "parents": [
        "c1057711052af69ee1dcbb281e0a3525a407ca52"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 12:31:35 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 12:31:35 2014 -0800"
      },
      "message": "new version number\n"
    },
    {
      "commit": "c1057711052af69ee1dcbb281e0a3525a407ca52",
      "tree": "98068345391dd7872c2efebc6c3c21f18a5d98d9",
      "parents": [
        "7419af0efe16c8b7c609a26e7786cfefa1993e64"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 12:22:51 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 19 12:22:51 2014 -0800"
      },
      "message": "fix migration creation issue due to DiffModelMixin\n"
    },
    {
      "commit": "7419af0efe16c8b7c609a26e7786cfefa1993e64",
      "tree": "f06b66334ab7ad39c4e5ba9e00e51550dd5564a4",
      "parents": [
        "ba746bd479764e6aef1833bb2a35d74e0c129a08"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:24:56 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:11:00 2014 -0500"
      },
      "message": "Added ansible recipes for images, networks\n"
    },
    {
      "commit": "ba746bd479764e6aef1833bb2a35d74e0c129a08",
      "tree": "3d4219e80dbbb327e181210d5184fe6b6b868386",
      "parents": [
        "011a50c4d6bb5abc91784b18cc07f115ff96efc0"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:10:42 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:10:42 2014 -0500"
      },
      "message": "Fixed credentials in sync_slivers\n\nConflicts:\n\tplanetstack/openstack_observer/steps/sync_slivers.yaml\n"
    },
    {
      "commit": "011a50c4d6bb5abc91784b18cc07f115ff96efc0",
      "tree": "1b283fa10f5d308688c18883204171ccf4e02b5e",
      "parents": [
        "c220f2a54056b191e60774aacd8931790e203624"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:24:00 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:44 2014 -0500"
      },
      "message": "fixed a typo\n"
    },
    {
      "commit": "c220f2a54056b191e60774aacd8931790e203624",
      "tree": "8c3e140f15cb77345a536e076a36907a8ef037c0",
      "parents": [
        "bc13cb7d664e9496e57ae376320a0ffeadfe9f26"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:22:16 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:44 2014 -0500"
      },
      "message": "Dropped dead code in sync_controller_slices\n"
    },
    {
      "commit": "bc13cb7d664e9496e57ae376320a0ffeadfe9f26",
      "tree": "4bf0ec88275c1f00b267819b7ee0477077a56516",
      "parents": [
        "d9a4e1f05e81231ada8317f7067adf54a4c94ec6"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:21:30 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:44 2014 -0500"
      },
      "message": "Sync networks fully converted over to ansible\n"
    },
    {
      "commit": "d9a4e1f05e81231ada8317f7067adf54a4c94ec6",
      "tree": "d1ead858438f7a697b9d780e458b4cf07df939d3",
      "parents": [
        "03b6c52ae618e71a18e7aeab3eb093db48807e50"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:21:06 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:44 2014 -0500"
      },
      "message": "Sync images converted over to Ansible\n"
    },
    {
      "commit": "03b6c52ae618e71a18e7aeab3eb093db48807e50",
      "tree": "0a90dc3329076e256514ff17857605b2c8245d0f",
      "parents": [
        "ac0bf9a2db83e5c971ce8709012bb0d3da0ab70a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:20:02 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:44 2014 -0500"
      },
      "message": "Drop try/catch that causes uncaught errors in the Observer to be silently ignored\n"
    },
    {
      "commit": "ac0bf9a2db83e5c971ce8709012bb0d3da0ab70a",
      "tree": "44291a8e654702ee78d0c0f61c174029f8f8a61e",
      "parents": [
        "d4ab7823d758dd3266b5e0ca4a675411948e16f6"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:19:29 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:44 2014 -0500"
      },
      "message": "Updated model deps file with Controller-based objects\n"
    },
    {
      "commit": "d4ab7823d758dd3266b5e0ca4a675411948e16f6",
      "tree": "38eea34cec067581080933981e8e221cef7703ac",
      "parents": [
        "f83d6038547ef34c3598cac20e36cbe20fed5b3d"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Dec 15 12:37:59 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:44 2014 -0500"
      },
      "message": "fix bug that caused flavors to be permanently deleted\n"
    },
    {
      "commit": "f83d6038547ef34c3598cac20e36cbe20fed5b3d",
      "tree": "6bbff38c42535a2ac5021f5273d78fd7e4607658",
      "parents": [
        "b2fde610167913a48d54d3bb8985541f566ee4ba"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Dec 15 12:32:13 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:43 2014 -0500"
      },
      "message": "update beta fixture to work with new schema\n"
    },
    {
      "commit": "b2fde610167913a48d54d3bb8985541f566ee4ba",
      "tree": "6bbff38c42535a2ac5021f5273d78fd7e4607658",
      "parents": [
        "2d73512ebc3f99283ca8bff13d9d3099ce072518"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Dec 15 11:45:02 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:43 2014 -0500"
      },
      "message": "fix bug preventing deployment admin from updating deployment flavors on ssave. fix nameError bug\n"
    },
    {
      "commit": "2d73512ebc3f99283ca8bff13d9d3099ce072518",
      "tree": "76791586d62cb11613cb36d7331ca74f68bb923b",
      "parents": [
        "68a1e425692caffbfc54c0229b9abd2c5be315a2"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Dec 08 21:03:40 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:43 2014 -0500"
      },
      "message": "removing migrations\n"
    },
    {
      "commit": "68a1e425692caffbfc54c0229b9abd2c5be315a2",
      "tree": "c893d0987a562c49ee3e49fb7231e20e1e9662a6",
      "parents": [
        "d14d48f26d89055a14b2dc38fe3997c7b2c5c654"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Dec 08 16:43:02 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:43 2014 -0500"
      },
      "message": "refactor and bug fixes\n"
    },
    {
      "commit": "d14d48f26d89055a14b2dc38fe3997c7b2c5c654",
      "tree": "85933804751ecce258f8cfaa0411674955119821",
      "parents": [
        "06c8e4784530ddfb55757d9f0fe4c63756a206b4"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Fri Dec 05 17:13:08 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:01:38 2014 -0500"
      },
      "message": "refactor\n"
    },
    {
      "commit": "06c8e4784530ddfb55757d9f0fe4c63756a206b4",
      "tree": "11eb24cc61c998a32bbfb22c4cda8a4b16ccd936",
      "parents": [
        "51c4a7da168cc676ff8b6bc1b7db35b0c1fbe1b8"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sun Nov 30 15:53:08 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 14:00:11 2014 -0500"
      },
      "message": "Controller replaces Deployment\n"
    },
    {
      "commit": "51c4a7da168cc676ff8b6bc1b7db35b0c1fbe1b8",
      "tree": "622d505667c6c6d83c1a8e5a14acbea06965a8de",
      "parents": [
        "d923b813adf079320f90208dbb949a72a9a67d78"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sun Nov 30 15:33:35 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Dec 19 13:58:11 2014 -0500"
      },
      "message": "introduce Controller model\n"
    },
    {
      "commit": "d923b813adf079320f90208dbb949a72a9a67d78",
      "tree": "b3304a777c31481cb6a8a47390479f6281f12dc5",
      "parents": [
        "71b21f6153026089c8e000e42b20af03e0b715b6"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Dec 18 12:59:04 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Dec 18 12:59:04 2014 -0800"
      },
      "message": "finished support for ManyToMany with through relations in REST API\n"
    },
    {
      "commit": "71b21f6153026089c8e000e42b20af03e0b715b6",
      "tree": "a6e217285b4d1239ab3aaa0cbda5402ba3ca1f7c",
      "parents": [
        "6a7a17cf0cc10aa1239cbc062f9cf0609a49b84a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Dec 17 18:22:33 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Dec 17 18:22:33 2014 -0800"
      },
      "message": "support for through relations in REST API, WIP\n"
    },
    {
      "commit": "6a7a17cf0cc10aa1239cbc062f9cf0609a49b84a",
      "tree": "b06d8f41f016ca1e07e0be56bf06f9305bfe19bd",
      "parents": [
        "999881153000ec9933a3e2b1b0b6a03d50660039"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Dec 17 16:29:59 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Dec 17 16:29:59 2014 -0800"
      },
      "message": "syphonall support for picker\n"
    },
    {
      "commit": "999881153000ec9933a3e2b1b0b6a03d50660039",
      "tree": "4bf1ef4f8559c13b5931223148f74223a7aee070",
      "parents": [
        "cde19e613b34531584fc71118d62b92d17357873",
        "0305b7df3dc4ec95279e94266ac9b833a1bef407"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 16 22:51:05 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 16 22:51:05 2014 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "cde19e613b34531584fc71118d62b92d17357873",
      "tree": "c52ea0f3703714d66eb75b3f1353c646945e795d",
      "parents": [
        "ab7c81537d02c66e4d1ec5348e12acff90dde985"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 16 22:49:42 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 16 22:49:42 2014 -0800"
      },
      "message": "2 column picker WIP\n"
    },
    {
      "commit": "0305b7df3dc4ec95279e94266ac9b833a1bef407",
      "tree": "3a05e5ef65df9c32e66ff2a45b9a45ad09440386",
      "parents": [
        "772c7c2cc1d07c1b9500b58ef63a94aad2178401",
        "ab7c81537d02c66e4d1ec5348e12acff90dde985"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:09:35 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:09:35 2014 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi into HEAD\n"
    },
    {
      "commit": "772c7c2cc1d07c1b9500b58ef63a94aad2178401",
      "tree": "2601e1f964c5bf01a1a6bd15c35f07326211e6e5",
      "parents": [
        "eec8acc123c9e3c16273ef76128ce0abb5593c61"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:09:04 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:09:04 2014 -0500"
      },
      "message": "Ability to pull slice stats\n"
    },
    {
      "commit": "eec8acc123c9e3c16273ef76128ce0abb5593c61",
      "tree": "970660d605830904cd4369591a9f317c356d19e1",
      "parents": [
        "6d7e7bd7048fb47d8e940a31aab18ef1f72ea4ce"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:08:51 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:08:51 2014 -0500"
      },
      "message": "Ability to pull Sliver stats\n"
    },
    {
      "commit": "6d7e7bd7048fb47d8e940a31aab18ef1f72ea4ce",
      "tree": "9b50aa445b350a52b5ef612b6c8d8a4c857e379d",
      "parents": [
        "df3130c5ab6a86a91e05f443ddac6577560eacae"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:08:23 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:08:23 2014 -0500"
      },
      "message": "Added ceilometer as monitor driver\n"
    },
    {
      "commit": "df3130c5ab6a86a91e05f443ddac6577560eacae",
      "tree": "a85742d4e10f14a470cee37c082f9952f8a127aa",
      "parents": [
        "67b1521554871c81e64001c1f4438f5c6dc0a71f"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:07:33 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Dec 16 01:07:33 2014 -0500"
      },
      "message": "Added monitor layer of abstraction for dashboard statistics\n"
    },
    {
      "commit": "ab7c81537d02c66e4d1ec5348e12acff90dde985",
      "tree": "b1528e44942bd70680d621fafcb647f82da5b987",
      "parents": [
        "a766b3d272bb2772d23606275b162acf5c80baea"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:49:24 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:49:24 2014 -0800"
      },
      "message": "complicated sliver logic implemented\n"
    },
    {
      "commit": "a766b3d272bb2772d23606275b162acf5c80baea",
      "tree": "b189fcc146b423137b26f22af71a74378778b755",
      "parents": [
        "9a24c8b1de98285c61027ffe1a8fa0f01fd210c5"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:48:48 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:48:48 2014 -0800"
      },
      "message": "flavor and imageDeployments objects\n"
    },
    {
      "commit": "9a24c8b1de98285c61027ffe1a8fa0f01fd210c5",
      "tree": "fe92bddafc47ea6cf8c84bc5ab168b38cfd36bc2",
      "parents": [
        "015e13df7ef91592039372eeabafb246e79db763"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:47:19 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:47:19 2014 -0800"
      },
      "message": "support for different detail views for each model\n"
    },
    {
      "commit": "015e13df7ef91592039372eeabafb246e79db763",
      "tree": "9901ef3f69af23a99f435a719019f4a80a9bc802",
      "parents": [
        "77195463f9b4fec9c2d14ea48b89181adcafebe8"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:12:43 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:12:43 2014 -0800"
      },
      "message": "fix one half of ManyToMany relations stored in wrong obj\n"
    },
    {
      "commit": "77195463f9b4fec9c2d14ea48b89181adcafebe8",
      "tree": "41c1536729108ebef21f26d373c388af179b0945",
      "parents": [
        "cf37db2887903db3c08fbda0c3b196cd60f479b7"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:12:17 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 16:12:17 2014 -0800"
      },
      "message": "get rid of hyperlinks in *IDSerializer\n"
    },
    {
      "commit": "cf37db2887903db3c08fbda0c3b196cd60f479b7",
      "tree": "39519d800fc2949c5eb4d1972589f435d2de87a5",
      "parents": [
        "67b1521554871c81e64001c1f4438f5c6dc0a71f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 14:54:55 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 15 14:54:55 2014 -0800"
      },
      "message": "generic applyConstraints, before abandoning\n"
    },
    {
      "commit": "67b1521554871c81e64001c1f4438f5c6dc0a71f",
      "tree": "54c42657f983333b0652f63018633f8ce123842c",
      "parents": [
        "b297bbd93d4d296ae3e352f18fe5e2159e383e30"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 15:21:44 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 15:21:44 2014 -0800"
      },
      "message": "no column title or sort button for delete and backend_status columns\n"
    },
    {
      "commit": "b297bbd93d4d296ae3e352f18fe5e2159e383e30",
      "tree": "a2af32f881baa1befbadc33d4e43761acbb0c632",
      "parents": [
        "eb253d500ff8b8704ca14fd9bb707f356a02ec1c"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:50:17 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:50:17 2014 -0800"
      },
      "message": "backend_status fields in all models\n"
    },
    {
      "commit": "eb253d500ff8b8704ca14fd9bb707f356a02ec1c",
      "tree": "7f4c7a1ff6bf788d8b6877866bca26c27c4d83b2",
      "parents": [
        "d58952c7e3462fa8c275f8a8f0f31661c704289d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:46:24 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:46:24 2014 -0800"
      },
      "message": "backend status text for detail views\n"
    },
    {
      "commit": "d58952c7e3462fa8c275f8a8f0f31661c704289d",
      "tree": "f4dba5398c41e42d0793633911373a1c60a6ec4f",
      "parents": [
        "a515007616da1c7025ebaa34d7851b6f6d60251d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:45:40 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:45:40 2014 -0800"
      },
      "message": "replace the CompositeView list with the DataTable list\n"
    },
    {
      "commit": "a515007616da1c7025ebaa34d7851b6f6d60251d",
      "tree": "0e9dd40c22dbdfdbf5c4a5eb1b9f43bf693215a9",
      "parents": [
        "8a7abefedb21e46c4444e8aaba1e70da1a83a6cd"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:26:21 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 14:26:21 2014 -0800"
      },
      "message": "backend_status icon\n"
    },
    {
      "commit": "8a7abefedb21e46c4444e8aaba1e70da1a83a6cd",
      "tree": "f2efef27ee4994a6056807a29407420b9d876dcf",
      "parents": [
        "8c340ca26c6f2c7f4f797e0d266ebb6c2a2590c7"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 00:18:11 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Dec 12 00:18:11 2014 -0800"
      },
      "message": "refresh and add buttons working\n"
    },
    {
      "commit": "8c340ca26c6f2c7f4f797e0d266ebb6c2a2590c7",
      "tree": "f95c37a3c13ef91430a0e348c40675ef15540b77",
      "parents": [
        "d45aa0078e5d408d6a680c0fa58a6dbe9b9bd4f3"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Dec 11 23:08:31 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Dec 11 23:08:31 2014 -0800"
      },
      "message": "pagination, search, and sort now working in datatables views\n"
    },
    {
      "commit": "d45aa0078e5d408d6a680c0fa58a6dbe9b9bd4f3",
      "tree": "2ddd355f3ed753478a243ad21f908a9a15fd5419",
      "parents": [
        "66efc02c451a51fc9914d9ffb62f81a51f8fbb59"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Dec 11 02:27:04 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Dec 11 02:27:04 2014 -0800"
      },
      "message": "datatable in a marionette view, WIP\n"
    },
    {
      "commit": "66efc02c451a51fc9914d9ffb62f81a51f8fbb59",
      "tree": "5df7024cb5cbe7511171cd22a312a90c993bd22c",
      "parents": [
        "30092043c70ae6a851558d37ce723fdb2541cc4d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 19:39:45 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 19:39:45 2014 -0800"
      },
      "message": "add ability to force route\n"
    },
    {
      "commit": "30092043c70ae6a851558d37ce723fdb2541cc4d",
      "tree": "56a70a1e04a7b322dfa33ee1c8f841f6eb84e708",
      "parents": [
        "32a0f1a37600af0f062e48b8375c22d3d9afaf3a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 18:38:13 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 18:38:13 2014 -0800"
      },
      "message": "button panels done right\n"
    },
    {
      "commit": "32a0f1a37600af0f062e48b8375c22d3d9afaf3a",
      "tree": "67accce404c834294b47562bb1ea56ff94ce7243",
      "parents": [
        "31621221912be0c9276ac48370f6f22a33b93aec"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 17:27:52 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 17:27:52 2014 -0800"
      },
      "message": "fix wrong parentfieldName in add link, fix filters using incorrect attributes\n"
    },
    {
      "commit": "31621221912be0c9276ac48370f6f22a33b93aec",
      "tree": "b46ad68b2a06300523a56cc0fcd6bfa410691d72",
      "parents": [
        "a322dba7aab47d6557c4fbbd9abfaee287351c9a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 16:59:08 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 09 16:59:08 2014 -0800"
      },
      "message": "all list and listitem views now use generic templates\n"
    },
    {
      "commit": "a322dba7aab47d6557c4fbbd9abfaee287351c9a",
      "tree": "facb4e9799022e5da85018e49a6b1d66ded3e22f",
      "parents": [
        "3debf3abc88cd800184e077159a479539edb2697"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 08 23:54:18 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 08 23:54:18 2014 -0800"
      },
      "message": "readonly fields, wip\n"
    },
    {
      "commit": "3debf3abc88cd800184e077159a479539edb2697",
      "tree": "017beb3a2c25f97ff17c31e054df8f3eca6e3611",
      "parents": [
        "5c76b1625ead2d0506b4a277c7107b9e8ac8639f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 08 21:35:06 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 08 21:35:06 2014 -0800"
      },
      "message": "move idToName into xos-backbone.js, add preSave hook, add preSave action for slivers to set name to slicename\n"
    }
  ],
  "next": "5c76b1625ead2d0506b4a277c7107b9e8ac8639f"
}
