)]}'
{
  "log": [
    {
      "commit": "cc9d960049251b9b2a395a3b403c3487ea7d66ae",
      "tree": "36879a6d01503cbb490a4aacc1444c95a67ac632",
      "parents": [
        "103465dd615c86ec277c6678192764a56d058237"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Jan 23 16:07:24 2015 +0000"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Jan 23 16:07:24 2015 +0000"
      },
      "message": "Added a type to backend_status\n"
    },
    {
      "commit": "103465dd615c86ec277c6678192764a56d058237",
      "tree": "804a434da1cd8e4d07d8b233a6893f4837e27d21",
      "parents": [
        "67400adfe5377093faace50ceab25c5e30f0591b"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Jan 23 16:02:09 2015 +0000"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Jan 23 16:02:09 2015 +0000"
      },
      "message": "Added timestamp for model policy scheduling to the User class\n"
    },
    {
      "commit": "67400adfe5377093faace50ceab25c5e30f0591b",
      "tree": "54b0ece204a6e61cd13f58dfba4ded8bd9dd66d9",
      "parents": [
        "24fe511938e2d3a4b971421effd2c8ae05f220af"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Jan 23 15:59:55 2015 +0000"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Fri Jan 23 15:59:55 2015 +0000"
      },
      "message": "Added timestamp to support model policy scheduling\n"
    },
    {
      "commit": "cb5c24a97506076445201bcb0cd854f1cd55d0d7",
      "tree": "1b219027c670c65f2cc1948eae562421f40bb357",
      "parents": [
        "c3876fbbd2a779f45a3c5a57337e41ae3ee195a0"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Jan 20 20:59:24 2015 +0000"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Jan 20 20:59:24 2015 +0000"
      },
      "message": "Add uuid field to sliver\n"
    },
    {
      "commit": "78d4c3d47940f21d1451e4095bf51d60c3ea01a8",
      "tree": "fc4696eb881cdb80aa05126338b9f146e9ce6d79",
      "parents": [
        "887d4a8d98544127e2d20f1220a83eb28d3a9cbd"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Jan 19 15:05:42 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Jan 19 15:05:42 2015 -0500"
      },
      "message": "Controller.backend_type is required\n"
    },
    {
      "commit": "b8f3cab93de66db1c84364bb488854141ef6ccd6",
      "tree": "29f55b7288c2f3532e690c781812b17294a737ce",
      "parents": [
        "5e4d823de98e9ef4b3cce6a6a7a077000912507a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sun Jan 18 16:33:30 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sun Jan 18 16:33:30 2015 -0800"
      },
      "message": "add ability to disable dashboards\n"
    },
    {
      "commit": "71dda3bc8030728180033ddd610332f6b7190d1e",
      "tree": "07396b977c6ba6f815b3d92f2ab5c1f0f46c88ef",
      "parents": [
        "1215424c4079c838127c8c5712a20376f49e7372"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sun Jan 18 15:42:10 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sun Jan 18 15:42:10 2015 -0500"
      },
      "message": "fix sliver.name\n"
    },
    {
      "commit": "82df1d05060a709f5e64cf75bc8c3a8bebfe4155",
      "tree": "8df481647445c262fee7240a0d67b66f75c10431",
      "parents": [
        "e7a904520168b4dac9d3f9e1343fb344f4a96bdf"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Jan 14 20:58:38 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Jan 14 20:58:38 2015 -0500"
      },
      "message": "add nodes tab to site admin\n"
    },
    {
      "commit": "c36cafb4aa0e949ac44b600cc2330ff28699c40a",
      "tree": "6314d78dc86331457f58dd381b8e80360899f738",
      "parents": [
        "9b1f2a07ce881cdbb1f1a0e9776518384e3fefaa"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 13 17:33:08 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 13 17:33:22 2015 -0500"
      },
      "message": "only admins can save/update controllers\n"
    },
    {
      "commit": "200181e6ae7564b3737b0fe85d79b25475703d29",
      "tree": "8360f38f071c032ec7e365c08e65aa238bb3fb5d",
      "parents": [
        "c94091a724d10b2e381ae5433afe06dac1d03129"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jan 12 13:13:05 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jan 12 13:13:05 2015 -0800"
      },
      "message": "remove image_preference, add default_image, default_flavor to slice\n"
    },
    {
      "commit": "3c01ff9b822c3b12fb2ce8948a5a6229f6357b34",
      "tree": "1879fa1b96580dc013d6b709ce28ec834e7218c1",
      "parents": [
        "bf0a90e625b4dcb9becf030739d21ddbc88f862b"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 10 23:08:10 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 10 23:08:10 2015 -0500"
      },
      "message": "cleanup controller links in admin.py\n"
    },
    {
      "commit": "ffe6d8b0139819d238c279ed5f2df78f26f3b879",
      "tree": "9f7ca2bcbac2e4f31889fec9cacb2a6f6c5f39fb",
      "parents": [
        "3375088f267ab5f527f64e62787e13de890f9303"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 06 23:48:02 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 06 23:48:02 2015 -0500"
      },
      "message": "checking in missing site/slice privilege steps\n"
    },
    {
      "commit": "4511248c0836080a8db910a07be7df4b4b16ad1b",
      "tree": "ff61eed6ce0af008b17c88c8db7c045828ecb123",
      "parents": [
        "bf7bc4a1590782e01e8b19d4283468907abd83c0",
        "26564363b7b36fe560f8fe872192cdbfdfa5de4d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Jan 06 15:13:34 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Jan 06 15:13:34 2015 -0800"
      },
      "message": "conflict resolution\n"
    },
    {
      "commit": "bf7bc4a1590782e01e8b19d4283468907abd83c0",
      "tree": "bf074dc023b6182cde8bd435f330f2712e4cb160",
      "parents": [
        "d277f0aa3fe8adbe08b64d794a797aa43989e1d5"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Jan 06 15:11:29 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Jan 06 15:11:29 2015 -0800"
      },
      "message": "network.py warning messages to stderr instead of stdout\n"
    },
    {
      "commit": "26564363b7b36fe560f8fe872192cdbfdfa5de4d",
      "tree": "d0e7722159fbfe002b2de945358e76398c7b6b84",
      "parents": [
        "8f30ebe689bffe4bbdd2548a80629fb8f2b38ef4"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 06 17:49:25 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Tue Jan 06 17:49:25 2015 -0500"
      },
      "message": "bug fixes\n"
    },
    {
      "commit": "a7dbd42b23b33ddcf9a5476bad62f9f26cc58983",
      "tree": "b89e1d323ab485e1a84a61ea5214638428654771",
      "parents": [
        "9d8962391b178631f8bc6b34adf9729ee23e36f6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Jan 05 22:48:11 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Jan 05 22:48:42 2015 -0500"
      },
      "message": "removing plural from model names. some cleanup\n"
    },
    {
      "commit": "9d8962391b178631f8bc6b34adf9729ee23e36f6",
      "tree": "e12c120810e9abfa0cde34cabb487b495046225c",
      "parents": [
        "ad840585b4b96ed6aedabd133f0d826ab46bb99f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jan 05 17:26:36 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jan 05 17:26:36 2015 -0800"
      },
      "message": "user model needed its GetValidators method\n"
    },
    {
      "commit": "ee9736d293d14d161d3baaf0df4bb58461606285",
      "tree": "aa76745d4d15b0cd5d3353193fbc8464d39cceac",
      "parents": [
        "94b95604120b4c20070fe18ba2066119008d6bd7"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 16:26:38 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 16:26:38 2015 -0800"
      },
      "message": "rename camelcase fields in slice\n"
    },
    {
      "commit": "a99fbb296adbf4f729e91348f64defbd83393609",
      "tree": "dea737a105687958832cb473cf9670a9ace16866",
      "parents": [
        "a1728931980535003641c320ef0809923209a480"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 17:37:36 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 17:37:36 2015 -0500"
      },
      "message": "removing ControllerSiteDeployment object. Move tenant_id field to SiteDeployments model\n"
    },
    {
      "commit": "a1728931980535003641c320ef0809923209a480",
      "tree": "623e17fa78ee7cbf9e6a0384ba6178f4f9411597",
      "parents": [
        "7f542c68b8af1ea14f7c79bab82962dde271c052"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 17:32:23 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 17:32:23 2015 -0500"
      },
      "message": "removing ControllerSiteDeployment object. Move tenant_id field to SiteDeployments model\n"
    },
    {
      "commit": "7f542c68b8af1ea14f7c79bab82962dde271c052",
      "tree": "f9f6e7fe1d3f637bd7a0819d9e8c0cb6744870e0",
      "parents": [
        "09f046b655708477088875d9f7460ab2ae398302"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 17:26:06 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 17:26:06 2015 -0500"
      },
      "message": "removing ControllerSiteDeployment object. Move tenant_id field to SiteDeployments model\n"
    },
    {
      "commit": "bbfd8f217308165a6076a6874dc9d885d356f995",
      "tree": "3824a16ba36673ec25866d1757d50e25b427375f",
      "parents": [
        "0451fb665e63732b3f25090282d0c7e6fbfae811",
        "cd5fded13c29f23cc4f75b50313b5ed4aa06d25f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 12:29:43 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 12:29:43 2015 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "0451fb665e63732b3f25090282d0c7e6fbfae811",
      "tree": "0d5800b0f905385c676d956b09110fa1bd45a1d2",
      "parents": [
        "d6f85e4f853ffd2966d74f59e61b0c81982e88ce"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 12:29:29 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 12:29:29 2015 -0800"
      },
      "message": "update code to use renamed network fields\n"
    },
    {
      "commit": "2f5be4284ede2912180252f46a247f3bead63400",
      "tree": "30c2b95ec82420cba38660133a32a676f827e125",
      "parents": [
        "6c9584028999c0a929d843b763099dce5c471af0"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 14:26:15 2015 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Sat Jan 03 15:22:09 2015 -0500"
      },
      "message": "added \u0027remote_password\u0027 property to User model\n"
    },
    {
      "commit": "81fa17f11009ea8f42e6267ce8886cef582c650f",
      "tree": "1a6cbf7904f38bebe8b480c89fe6a6519f3ceb17",
      "parents": [
        "2dced86b460614a891fa40bae60842a61f87c058"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 12:03:38 2015 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat Jan 03 12:03:38 2015 -0800"
      },
      "message": "update to make use of renamed NetworkTemplate fields\n"
    },
    {
      "commit": "bf6aa30679d8194347ee4d93d66f0612cfaf040f",
      "tree": "481abb4b60445c327ed9c73d5ceb2c59fc30d507",
      "parents": [
        "cd8f875ee59fbc88909df47b7e914f0b2533fc07"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Fri Dec 26 13:38:02 2014 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Fri Dec 26 13:38:02 2014 -0500"
      },
      "message": "replaced sliver.controllerNetwork with sliver.deployment\n"
    },
    {
      "commit": "cd8f875ee59fbc88909df47b7e914f0b2533fc07",
      "tree": "3d41f1e1ae759f972c8c7b03691252f0e646da2f",
      "parents": [
        "e982fcd52f496a4ba9124f40649a84d8399051ea"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Fri Dec 26 12:15:42 2014 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Fri Dec 26 12:15:42 2014 -0500"
      },
      "message": "added version to Controller string representation\n"
    },
    {
      "commit": "a3134fe2998bf4e8acb4fb97b0b97ffe8b96fe78",
      "tree": "984bca58566035b5bda5d441be13d3d70d7e3a31",
      "parents": [
        "7934885544b5a9fba465d3ae01816cfd477e2203"
      ],
      "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": "f0f5073edcba0b4b0737a763b693916f8f867312",
      "tree": "68bc4a7c645be391df51ed2f68bade5eeee6aa81",
      "parents": [
        "c6870e71483a0eeb438c1e0482e6f18f1eadc824"
      ],
      "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": "75930d8aa39a42fc7f84137de6ed90469bd57503",
      "tree": "01e4b1f308d16c2418bcdf29a09d09f478f7df23",
      "parents": [
        "a6a0c77c9fcaeda7fcb146e451de73a276e663d2"
      ],
      "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": "a6a0c77c9fcaeda7fcb146e451de73a276e663d2",
      "tree": "50eae0b219842901683d406b09be0cc0a55f0c4e",
      "parents": [
        "93a79a941257a3e8d2e00629f08a364a8e8935a7"
      ],
      "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": "5308f0a5e616f668f3514774a90ead4a8cc98ea6",
      "tree": "7f09208b64d37b1fd00b7bc19c00059ce489811b",
      "parents": [
        "325e3e225949b1108119bc3a50148aba0060565d"
      ],
      "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": "c4ec14b02d9c12a3d510a793d03fefa366e8e77d",
      "tree": "5ce517830919199354fa2d4fd5407f2e1db89f38",
      "parents": [
        "cbc865c384512ae95608d03594893cba3940324d"
      ],
      "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": "eef5a6b49fd9b32f6ea94c4ecfa931714c45d167",
      "tree": "c960b27cdae3c4476321722397604e72a00f5429",
      "parents": [
        "7ca05ab4eef3f6b3727a754b90b993edfde9421b"
      ],
      "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": "7ca05ab4eef3f6b3727a754b90b993edfde9421b",
      "tree": "d19090e0b231d335d9237dd586e5f7ef3e45c188",
      "parents": [
        "19c22dba78bed98ade00e6fb5860b3c5f55cfec9"
      ],
      "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": "301eee3bddd4a2f8a39f28db217b4732b8ffe35c",
      "tree": "98068345391dd7872c2efebc6c3c21f18a5d98d9",
      "parents": [
        "f42c132efead732fcd877d629caac91e96f0d85a"
      ],
      "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": "93d1b038ce4f19244f931bab4fc85df5d3d590b4",
      "tree": "c893d0987a562c49ee3e49fb7231e20e1e9662a6",
      "parents": [
        "528d422d6c16a708b0440fbeef9b9e9d8cb7efaa"
      ],
      "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": "528d422d6c16a708b0440fbeef9b9e9d8cb7efaa",
      "tree": "85933804751ecce258f8cfaa0411674955119821",
      "parents": [
        "336e0f9c04a776e2aed57cd7eca4aa8d3dbe2e2a"
      ],
      "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": "336e0f9c04a776e2aed57cd7eca4aa8d3dbe2e2a",
      "tree": "11eb24cc61c998a32bbfb22c4cda8a4b16ccd936",
      "parents": [
        "f3bbe471d954d5cf4fa6e710499027471e10d2db"
      ],
      "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": "f3bbe471d954d5cf4fa6e710499027471e10d2db",
      "tree": "622d505667c6c6d83c1a8e5a14acbea06965a8de",
      "parents": [
        "148f5e1036f1dc2e5bb6904e6b8f046233b214b7"
      ],
      "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": "4d7cdf2229b4a3c19a140c196be8caa41cd41887",
      "tree": "2601e1f964c5bf01a1a6bd15c35f07326211e6e5",
      "parents": [
        "78de56d825ece1f4f1dfa5784cc7ce28812ddc2d"
      ],
      "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": "78de56d825ece1f4f1dfa5784cc7ce28812ddc2d",
      "tree": "970660d605830904cd4369591a9f317c356d19e1",
      "parents": [
        "56410d552025ecd7c1e2e9ec056872f8108b5a41"
      ],
      "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": "2a72eaf7951d80f01cdf683945732357b8405253",
      "tree": "83cfb81ef9029aaaf803bddabc53b2341e7b5e33",
      "parents": [
        "921527555e5cae05ec85dc3ef313d8edb4687517"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 01 21:42:59 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Dec 01 21:42:59 2014 -0800"
      },
      "message": "allow blank for enacted field\n"
    },
    {
      "commit": "0d1086712bbe49fdf989dd0757b41d0d4cede892",
      "tree": "0ee84678006bd341a5e063991ad1e7a2e8cb07ce",
      "parents": [
        "1e47d9e3bc649271e473b48fb4a55bfac7b31318"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Nov 26 00:53:19 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Nov 26 00:53:19 2014 -0800"
      },
      "message": "validation of URL fields\n"
    },
    {
      "commit": "56f799be4d83226d7a8df947aa1f850f47c9c5cc",
      "tree": "91671fda62c3472dc4d7e7ded2029dfa110f58bb",
      "parents": [
        "ab2a1688a64b29e5e13b0b31eab511b0b3a6a243"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Nov 25 11:35:19 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Nov 25 11:35:19 2014 -0800"
      },
      "message": "validators for xoslib\n"
    },
    {
      "commit": "afbede899533fdb2884ec8ea27cb0e93cb39b58f",
      "tree": "b41c417959ea142d373efecd223a095b42b7570f",
      "parents": [
        "e40fbd41ebb3c0199363185e3bd6c3dc706fd047",
        "e0abef3b25ed043ea5a3f299bc65b6b96e23ac5a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Nov 25 00:49:30 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Nov 25 00:49:30 2014 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "e40fbd41ebb3c0199363185e3bd6c3dc706fd047",
      "tree": "8f5989760e680ffb0563a6c5ba9a80bcd8a51233",
      "parents": [
        "562d595706e7c80bf004b12dde9c42286fbb403f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Nov 25 00:49:17 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Nov 25 00:49:17 2014 -0800"
      },
      "message": "add getValidators function\n"
    },
    {
      "commit": "e0abef3b25ed043ea5a3f299bc65b6b96e23ac5a",
      "tree": "7dd6466958d98ff0b61f03b4ecf30c3cb9ce77c2",
      "parents": [
        "1da9b4c72442fc8e8c5bf71c6872a4fffa349711"
      ],
      "author": {
        "name": "Sapan",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Nov 24 16:44:48 2014 -0500"
      },
      "committer": {
        "name": "Sapan",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Nov 24 16:44:48 2014 -0500"
      },
      "message": "Typo\n"
    },
    {
      "commit": "1da9b4c72442fc8e8c5bf71c6872a4fffa349711",
      "tree": "ccd2a1a23d03c1e798dbf7c2137ef1b28e5e34b8",
      "parents": [
        "c73d19e189139cde373d237e28bb6266182861f7"
      ],
      "author": {
        "name": "Sapan",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Nov 24 15:16:18 2014 -0500"
      },
      "committer": {
        "name": "Sapan",
        "email": "sapanb@cs.princeton.edu",
        "time": "Mon Nov 24 15:16:18 2014 -0500"
      },
      "message": "Fixed a naming issue s/SliceDeploymentss/ss/s\n"
    },
    {
      "commit": "3f87969b0d07bb3375b6896f6dd5758f8d5245d0",
      "tree": "1a40ac4a02fcc7a8877ff1948b2a9d841e634ec9",
      "parents": [
        "e9f96f65a6bdddebe0f342c4075b682420b247f9"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:10:51 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:10:51 2014 -0500"
      },
      "message": "Renamed UserDeployment back to UserDeployments\n"
    },
    {
      "commit": "e9f96f65a6bdddebe0f342c4075b682420b247f9",
      "tree": "c4a71272f3ac0745cf0ddc39ed738cd7e6758a36",
      "parents": [
        "bf7856b225a2f40192f72f998ca2c1d3c1850536"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:10:16 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:10:16 2014 -0500"
      },
      "message": "Renamed ImageDeployment back to ImageDeployments\n"
    },
    {
      "commit": "bf7856b225a2f40192f72f998ca2c1d3c1850536",
      "tree": "1bd7dbfb5f3fc7aa000a03d4ed99649c26aac537",
      "parents": [
        "39e8558d04c4f4bfc176cb140b6c3f07447195ca"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:09:38 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:09:38 2014 -0500"
      },
      "message": "Renamed SliceDeployment back to SliceDeployments\n"
    },
    {
      "commit": "39e8558d04c4f4bfc176cb140b6c3f07447195ca",
      "tree": "4372abfe5137cf163371c75bc4025d9dbf235ec6",
      "parents": [
        "c2dd1656e31f24ffddea027c79d8b502e1fb30d0"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:07:36 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 19 15:07:36 2014 -0500"
      },
      "message": "Renamed SliceDeployment back to SliceDeployments\n"
    },
    {
      "commit": "7b6722e8f5351b2e80cd7fe89810d4e6c269e36f",
      "tree": "2ab8befc71b272a087ee8e6f46db39e13cb3665b",
      "parents": [
        "4024871516740ac3eb8fa49a327aecadfe4252dd"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Nov 17 16:18:00 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Nov 17 16:18:00 2014 -0800"
      },
      "message": "add controllerUrl to network object\n"
    },
    {
      "commit": "f2e0cfc6fda80ff7dbf5845780720eff6b47320b",
      "tree": "c1b581ee065d39c4d25ea647f242a53a24b19099",
      "parents": [
        "89e9d25e333c598d3338cce6fc532c121db5fa43"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Nov 17 16:03:49 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Nov 17 16:03:49 2014 -0800"
      },
      "message": "check in network migrations\n"
    },
    {
      "commit": "0bb6be166f1ae56f8d2b66bb8ab1f10b193f58c3",
      "tree": "0becaf880bbe098b6e81305ea0da07f26544c2e6",
      "parents": [
        "40bbfd9f234e29bfce640e85c381c06c61f5c280",
        "3f72d085b92f208d87bc88b882e55d42b1dde171"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 12 10:38:53 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 12 10:38:53 2014 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.planet-lab.org/plstackapi\n"
    },
    {
      "commit": "40bbfd9f234e29bfce640e85c381c06c61f5c280",
      "tree": "58e6eff04a3a11aa07105e697c669a21ba8b277b",
      "parents": [
        "998b32e6225e98a4444ae05f2a08825068f309cf"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 12 10:38:23 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 12 10:38:23 2014 -0500"
      },
      "message": "Added list of ephemeral models to be autodeleted\n"
    },
    {
      "commit": "998b32e6225e98a4444ae05f2a08825068f309cf",
      "tree": "e57cb3119d51c949dda3d3c045daa7e73f4320e5",
      "parents": [
        "acba4fa7e6cdcdff758de9c4f6fcd6d18799a695"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 12 10:06:23 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 12 10:06:23 2014 -0500"
      },
      "message": "Added is_ephemeral: a flag that determines if a model is automatically deleted when its related models are deleted\n"
    },
    {
      "commit": "9b53a4c787f77769f57f6946e97a6334aa7130fe",
      "tree": "1131919471db0ae50b040ae52044986c0dc92b90",
      "parents": [
        "d0eeed8f23b75c4cab5af772e55e3adcf3ac945c"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Nov 12 10:01:26 2014 -0500"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Nov 12 10:01:38 2014 -0500"
      },
      "message": "cleanup\n"
    },
    {
      "commit": "18b779cedfdf459776c96fdd9f6d33f67e3a3b5c",
      "tree": "70bdbd46fa3c77a09b21cdce4e9b9d70dd68034a",
      "parents": [
        "ab9f84b59ba4340eb8561f34b4f7df2446cf655e"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 23:05:53 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 23:05:53 2014 -0500"
      },
      "message": "Renamed ImageDeployments-\u003eImageDeployment\n"
    },
    {
      "commit": "ab9f84b59ba4340eb8561f34b4f7df2446cf655e",
      "tree": "fb5a51448cec1a550d13cd2e71338307fdb05f3d",
      "parents": [
        "13d2db93b1f2406074020e8f8be4f96e5635e653"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 22:01:30 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 22:01:30 2014 -0500"
      },
      "message": "Migration script for conventions-related renaming\n"
    },
    {
      "commit": "13d2db93b1f2406074020e8f8be4f96e5635e653",
      "tree": "31745dce6ea4d4f117f7c8d07d4a97c4bb9dacd4",
      "parents": [
        "84ba65dba9ca540238488ad52dee2bfbad7cd198"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:47:45 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:47:45 2014 -0500"
      },
      "message": "This change renamed a number of misnamed related fields (e.g. site_privileges-\u003esiteprivileges), adds them where they are missing, and changes the corresponding accessors.\n"
    },
    {
      "commit": "84ba65dba9ca540238488ad52dee2bfbad7cd198",
      "tree": "9d0a514da6ff4edf748dcac31727b1aeaf6cc9bb",
      "parents": [
        "7a8b7e91c9a9d32b6c5396eb9cfc75743b62a656"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:44:35 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:44:35 2014 -0500"
      },
      "message": "Renamed UserDeployments-\u003eUserDeployment\n"
    },
    {
      "commit": "7a8b7e91c9a9d32b6c5396eb9cfc75743b62a656",
      "tree": "9b2d038160cbab18a8cdce91bc52002b02bb12b6",
      "parents": [
        "6d21da378cf315de6b3f68ea5ebec3901f926e60"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:43:31 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:43:31 2014 -0500"
      },
      "message": "Renamed SliceDeployments --\u003e SliceDeployment\n"
    },
    {
      "commit": "6d21da378cf315de6b3f68ea5ebec3901f926e60",
      "tree": "5673c4c31400b8ea7a43c267d0d330f1a3c9328b",
      "parents": [
        "900baf9deb3d4c510e984f896877ca4179a3b15d"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:41:12 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:41:12 2014 -0500"
      },
      "message": "Renamed SiteDeployments-\u003eSiteDeployment\n"
    },
    {
      "commit": "900baf9deb3d4c510e984f896877ca4179a3b15d",
      "tree": "dfda25e933d29771d762c439b76f371627716e8c",
      "parents": [
        "fb8707da90447e09ee7676cccf1794c9aa62ff94"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:10:07 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Tue Nov 11 21:10:07 2014 -0500"
      },
      "message": "Adjust to enforce field naming conventions\n"
    },
    {
      "commit": "46e50affd5d353d1bee31c9c6f1c1a5a0485b6b1",
      "tree": "0a657a4f809228ff9840de21d015632620daa0cc",
      "parents": [
        "9061a933bbb15bf40e977527b394ed1d13d9ab6e"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Nov 06 17:33:27 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Nov 06 17:33:27 2014 -0800"
      },
      "message": "deal with migrations problem\n"
    },
    {
      "commit": "475c597082a6b4c888e6ea11f606cd062882c732",
      "tree": "4fd3857c6e332fc037e992ba288876d29ba31196",
      "parents": [
        "98e3177c94196f961c6f2ab04543e0227cee3c7d"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 05 10:32:41 2014 -0500"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "sapanb@cs.princeton.edu",
        "time": "Wed Nov 05 10:32:41 2014 -0500"
      },
      "message": "Merged ansible branch into master\n"
    },
    {
      "commit": "c767c982df39abe9fd2a806bd1306e592beacb66",
      "tree": "2ae4f19e2ae47c5c3874872f2fc0e2b393b64bfd",
      "parents": [
        "585cb192d502d41a73a38d791226c459c6a8ad78"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Oct 22 13:30:41 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Oct 22 13:30:41 2014 -0400"
      },
      "message": "cleanup network objects associated with slice that\u0027s deleted\n"
    },
    {
      "commit": "6c68484c15cbea872267e3d863e5b79372910041",
      "tree": "4430db66a2d3c0ad41d03342d4db5f7c8e93506b",
      "parents": [
        "fbb4586a2424f1f79ce19d7e9cce2092dd4fec23"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 18:45:00 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 18:45:00 2014 -0700"
      },
      "message": "fix user admin showing deleted users\n"
    },
    {
      "commit": "198fda14ce395a3cc3a9b835ab5c6e51a1ebc278",
      "tree": "2e66173229a568375dee90b34feca676acaaf3dd",
      "parents": [
        "5c4326965191529e0f8dadfd6241421b31521483"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 16:22:20 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 16:22:20 2014 -0700"
      },
      "message": "validate ports field in network object\n"
    },
    {
      "commit": "c5b506015f3d80354c6def6ca702d877b15fcad7",
      "tree": "fcdfe6de12c39cbb3551d6268a69db2e4e605fdf",
      "parents": [
        "fd8c7c41e9420212435e76d6f0f6ba9c6f18ca14"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:22:00 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:22:00 2014 -0700"
      },
      "message": "fix keyerror in plcorebase.delete\n"
    },
    {
      "commit": "fd8c7c41e9420212435e76d6f0f6ba9c6f18ca14",
      "tree": "0f594b8acefa6b8420c548029dd8a62413699e5d",
      "parents": [
        "c1f9ccee50b74237eb9538ac4806730b99b4ca6b"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:16:02 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:16:02 2014 -0700"
      },
      "message": "observer_disabled was not being imported into core/models/user.py\n"
    },
    {
      "commit": "b3c838a27e9c95be68db210d343e44c31633d65d",
      "tree": "9621f5762d72c777fdc5cade1fe7ace37a4d3870",
      "parents": [
        "5ed8130195c0f1419fa65db3882d92e428f43d75"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 08 09:38:21 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 08 09:38:21 2014 -0400"
      },
      "message": "For backend-specific observers, filter out deployments without backend\ntypes set\n"
    },
    {
      "commit": "0119c15c6e671edf08ec2e74376b7e1d9fc70aac",
      "tree": "7146649acc0f316a54d0277b68f8f6e707c288e9",
      "parents": [
        "0a5633b14bae9ed8948d5f4ba9430453fcecdf8a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Oct 06 22:58:48 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Oct 06 22:58:48 2014 -0700"
      },
      "message": "re-did the fine grained permission checking stuff again\n"
    },
    {
      "commit": "165f70c241b47fb95498f83e3753545b437993f7",
      "tree": "111033dac36076ebaaeae5834ff104a03e9a926e",
      "parents": [
        "86c83ab095ff0782a996b6d41b2eeac3052af14f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 14:48:06 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 14:48:06 2014 -0700"
      },
      "message": "add default select_by_user to plcorebase, hunt down and destroy select_by_user methods in other classes that were redundant with the new default\n"
    },
    {
      "commit": "cbfb6000627dce00e79de7f92dffbd72b1a41e06",
      "tree": "434cce5f441168402d8dc709ef2f79f34ed122db",
      "parents": [
        "0bec56f4f31cfcc014c5f66cc56130b844475f4f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 00:32:37 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 00:32:37 2014 -0700"
      },
      "message": "add support for fine-grained field permissions for user model\n"
    },
    {
      "commit": "0bec56f4f31cfcc014c5f66cc56130b844475f4f",
      "tree": "410f07be14bacf21cb9fc93b15f42b1b111a528c",
      "parents": [
        "d56ccd742ef6ba59a5ec8dc61040deb7024eba99"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 02 22:50:18 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 02 22:50:18 2014 -0700"
      },
      "message": "raise PermissionDenied if someone tries to save an object without can_update rights\n"
    },
    {
      "commit": "2cbd380b813ea82fb5564f4f6f4a486e3d07e047",
      "tree": "f7fff401ddb900335ff8de254139ff1f3039aefb",
      "parents": [
        "f8fe45b529c3b4f21f154202a4654aa223db8cff"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Sep 29 16:10:52 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Sep 29 16:10:52 2014 -0400"
      },
      "message": "added availability_zone field to Deployment model\n"
    },
    {
      "commit": "ab5d88751d4db0f149bed51ddc4763bdc887e2c5",
      "tree": "a2d7868d47ba692b6e0b7a3cf4c973803549dca4",
      "parents": [
        "413e0d6a610ad15179635b4475c4c385902d54b3"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 12:44:22 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 12:44:22 2014 -0400"
      },
      "message": "allow only enforce login base prefix on new slices\n"
    },
    {
      "commit": "80f1a4b507e27dd6064066021fa805b23fad2a67",
      "tree": "0c80ba47c52b822f190b1f7231774861b974e611",
      "parents": [
        "36fd7a01f4d597ac286e0d72e408a3a73c9070b9"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 10:08:51 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 10:08:51 2014 -0400"
      },
      "message": "set sliver name in save()\n"
    },
    {
      "commit": "36fd7a01f4d597ac286e0d72e408a3a73c9070b9",
      "tree": "24b7c4938082f851b314f91fd3728deabb722e80",
      "parents": [
        "456c826ffed2fd4c73c975ab4e5455ce35476497",
        "cb076a2231a03692d03d96a998e8b747dc58e04f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:54:06 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:54:06 2014 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "5dc87a6ec1b77077b627f42ec718e2c3b3df12e6",
      "tree": "fbc09aa37b4ff44470380779072d4fd4d2483985",
      "parents": [
        "432330c76c11426206c783855ad0bb65b4246ca5"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:41:17 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:41:17 2014 -0700"
      },
      "message": "also allow \u0027silent\u0027 to be set as an instance variable\n"
    },
    {
      "commit": "cb076a2231a03692d03d96a998e8b747dc58e04f",
      "tree": "4391c1e95803bf031a85820d80661a3f91daf20f",
      "parents": [
        "90025d7b9c251c5f5ee727980b1542b22ac38165",
        "432330c76c11426206c783855ad0bb65b4246ca5"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:50 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:50 2014 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "90025d7b9c251c5f5ee727980b1542b22ac38165",
      "tree": "6995f280c1ee1df564bce50df80bec2244c2521d",
      "parents": [
        "bf5397f43f12b00d56451b752602e5895ddafc9b"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:44 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:44 2014 -0400"
      },
      "message": "Fixed a typo\n"
    },
    {
      "commit": "0491f6ff73d32719a88f2ebaaf6a56a5eed9581a",
      "tree": "ea4bd1150d1bfa48856e9409676150ff2e425910",
      "parents": [
        "bf5397f43f12b00d56451b752602e5895ddafc9b"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 16:04:36 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 16:04:36 2014 -0700"
      },
      "message": "add silent kwarg to delete() and save()\n"
    },
    {
      "commit": "bf5397f43f12b00d56451b752602e5895ddafc9b",
      "tree": "86cb33c717ed3904d083654af19d7e756f88a1ce",
      "parents": [
        "973b740cffdda5fd383238892db026633e79bcf7"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:40 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:40 2014 -0400"
      },
      "message": "DeploymentRole is not linked to deployments\n"
    },
    {
      "commit": "973b740cffdda5fd383238892db026633e79bcf7",
      "tree": "4fcd39091dd2b25b019a7fbce1897431d905d55e",
      "parents": [
        "b8cc1148d83d3211006f3090244424e5e5daada9"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:23 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:23 2014 -0400"
      },
      "message": "Don\u0027t use config backend type if it\u0027s not set\n"
    },
    {
      "commit": "b8cc1148d83d3211006f3090244424e5e5daada9",
      "tree": "ca2e475822bff76f66482224bf5f26985ce66278",
      "parents": [
        "96e44077550e649348816141f56b90c182729193"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:14:31 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:14:31 2014 -0400"
      },
      "message": "Disable deployment filtering if the backend_type config option is not set\n"
    },
    {
      "commit": "c1f20efb68b322ed0f7d98dc99e20fc98fb63634",
      "tree": "29f5713275974c12cfd3565ac1ae6c78a2350dbb",
      "parents": [
        "f427c92381c554d86a6852d0f720b2de2d286034"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:47:53 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:47:53 2014 -0400"
      },
      "message": "Missing import\n"
    },
    {
      "commit": "f427c92381c554d86a6852d0f720b2de2d286034",
      "tree": "d667c09da9c8cb831d0755a1a6e4ac500332bacd",
      "parents": [
        "4b3c046f345c44a945c7479a5e18a5029831ca35"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:44:39 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:44:39 2014 -0400"
      },
      "message": "We can only import site.py after slice.py, because of a dependency\n"
    },
    {
      "commit": "4b3c046f345c44a945c7479a5e18a5029831ca35",
      "tree": "0d67d40e8b4703d33a499123d9202d82f022ec0b",
      "parents": [
        "40f1ae06b5cf39748bbd26ad9742b3f4e425f871"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:42:13 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:42:13 2014 -0400"
      },
      "message": "Typo .site\u003c-.deployment\n"
    },
    {
      "commit": "a2d1b13c1d00a9fca93a228cf5280cebc9300528",
      "tree": "1ed9adb5de052c54220f4fedd11cd7ef65dedde1",
      "parents": [
        "f6394731d935e8c35e42b6384254329341c73c87"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:41:15 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:41:15 2014 -0400"
      },
      "message": "Re-added imports to __init__.py\n"
    },
    {
      "commit": "30ffe5a65705669d968e214778824ef9af208347",
      "tree": "5b5c806f7f449d2cf6c2075ac892007b23e45294",
      "parents": [
        "a9ed5b06841674a3b5fc7a8641cd7215d4f68f64"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:32:35 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:32:35 2014 -0400"
      },
      "message": "Companion to renaming core/models/planetstack\n"
    },
    {
      "commit": "699a044172550ccfb5b120fb545ba6e5c766d7ee",
      "tree": "a114d02fd80869c586a7b0ee59b64c15725e1481",
      "parents": [
        "e93cc94d5c33a416b95c97e769d3a8d47a488ed8"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:25:06 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:25:06 2014 -0400"
      },
      "message": "Added config import back\n"
    },
    {
      "commit": "435766c7d087da2a47026aee9dd95d0608a801fa",
      "tree": "7817bf9693db513e9e01518a61f462cfaa05a212",
      "parents": [
        "d0c61c5bb95b7a923d77ccde3345f2dedc998e60"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:20:03 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:20:03 2014 -0400"
      },
      "message": "Renamed namespace-polluting file\n"
    },
    {
      "commit": "d0c61c5bb95b7a923d77ccde3345f2dedc998e60",
      "tree": "41313bdd8431bc44dfc7c8629d631a85bb718d5e",
      "parents": [
        "375a5e8d28663466e9859de1a07149957ad49538"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:44 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:44 2014 -0400"
      },
      "message": "Deployment filtering for UserDeployment objects\n"
    },
    {
      "commit": "375a5e8d28663466e9859de1a07149957ad49538",
      "tree": "68ad7bc8566dce3023f556a108c1f7f8b85939bd",
      "parents": [
        "2d3a9d83265a6010ee265fb93778b35d5bdbe08f"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:09 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:09 2014 -0400"
      },
      "message": "Deployment filtering for deployment images\n"
    },
    {
      "commit": "2d3a9d83265a6010ee265fb93778b35d5bdbe08f",
      "tree": "e080fd6b68f9debb31c8aa7718cc555fa44f7705",
      "parents": [
        "a16be6950a05a37c1a5cbc62288ed2cfef3467ae"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:07:26 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:07:26 2014 -0400"
      },
      "message": "Deployment filtering for deployment credentials\n"
    },
    {
      "commit": "a16be6950a05a37c1a5cbc62288ed2cfef3467ae",
      "tree": "cb0722b063d592eb07045f2b6743f191417acada",
      "parents": [
        "6fc6e2bf2212437fb863e8e2753241f917473649"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:55:08 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:55:08 2014 -0400"
      },
      "message": "Deployment filtering for SliceDeployment objects\n"
    }
  ],
  "next": "6fc6e2bf2212437fb863e8e2753241f917473649"
}
