)]}'
{
  "log": [
    {
      "commit": "cc8477d4ec8d1820575eb31f2111efbbcd2074fb",
      "tree": "3e93288deb041a48ac944d5f02a1821a63958a5a",
      "parents": [
        "95d81c77f6b457cd5108f03a0dc2acccea47ea86"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:29:52 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:29:52 2014 -0700"
      },
      "message": "fix NetworkTemplate url pointing to wrong models\n"
    },
    {
      "commit": "95d81c77f6b457cd5108f03a0dc2acccea47ea86",
      "tree": "da15d50786d575d998d4b71b72de0b53ea475d36",
      "parents": [
        "f2ddddf98ee07906645ecfc49b6d947c260081e0"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:29:27 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:29:27 2014 -0700"
      },
      "message": "add select_by_user for NetworkTemplate\n"
    },
    {
      "commit": "f2ddddf98ee07906645ecfc49b6d947c260081e0",
      "tree": "650cc40a5f7a7478c3bf161d68aadb2db6b3e955",
      "parents": [
        "8f5d518e49a01d3727f9fba9da42181e7ba367e1"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:14:34 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:14:34 2014 -0700"
      },
      "message": "modify to use NetworkSlivers instead of sliver.ip\n"
    },
    {
      "commit": "8f5d518e49a01d3727f9fba9da42181e7ba367e1",
      "tree": "db8f38048f90a0873d7fd49d60ccedeb55630d27",
      "parents": [
        "f3e71518204c1b20f9ee4e144602c16f0bf2144e"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:05:56 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:05:56 2014 -0700"
      },
      "message": "remove comment\n"
    },
    {
      "commit": "f3e71518204c1b20f9ee4e144602c16f0bf2144e",
      "tree": "6fbb682d9bfe483f256adc039f39483184191be3",
      "parents": [
        "378b322001e3a6f984d6ff5b3f3411dd7050fa8d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:05:04 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:05:04 2014 -0700"
      },
      "message": "use shared network id for shared networks; stop creating private nets for shared nets\n"
    },
    {
      "commit": "378b322001e3a6f984d6ff5b3f3411dd7050fa8d",
      "tree": "c08ad4359bc6236138d65938ad6b15f84762bc1e",
      "parents": [
        "53567da440907bfbfcfd8515cfd1a606e993defc"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:00:35 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 18:00:35 2014 -0700"
      },
      "message": "fix NetworkSliver objects not created, and not working with shared network templates\n"
    },
    {
      "commit": "53567da440907bfbfcfd8515cfd1a606e993defc",
      "tree": "2d2651116f5f4bf4626289edd69c5db5b90ada9e",
      "parents": [
        "e53b6b2f8e0fb43f1fc4a449a8cb97fc3ee5f394"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 12:05:41 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 12 12:05:41 2014 -0700"
      },
      "message": "add networkslivers to REST API\n"
    },
    {
      "commit": "e53b6b2f8e0fb43f1fc4a449a8cb97fc3ee5f394",
      "tree": "6003c42e214df0abe4e240ef9290efdf25005efd",
      "parents": [
        "72c2e70653b589c54dbc9b137da024025e57e63e"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 19:21:14 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 19:21:14 2014 -0700"
      },
      "message": "tool to get public IP of an instance\n"
    },
    {
      "commit": "72c2e70653b589c54dbc9b137da024025e57e63e",
      "tree": "07d1e071f80a2b7ba609805ddbba91891688f7df",
      "parents": [
        "dea04a58e99a38905c7279d0041615917c9a489e"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 18:58:52 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 18:58:52 2014 -0700"
      },
      "message": "fix ips not set in sliver.ip\n"
    },
    {
      "commit": "dea04a58e99a38905c7279d0041615917c9a489e",
      "tree": "836e5dd968f684f6a37aae33cb8eb0dcbd132a29",
      "parents": [
        "d5deaa3f47a17fc6f482a408f1755a4f265d458b"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 18:04:04 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 18:04:04 2014 -0700"
      },
      "message": "sample script using get-instance-name\n"
    },
    {
      "commit": "d5deaa3f47a17fc6f482a408f1755a4f265d458b",
      "tree": "a57c8a2fc1b07a92ec194b69079c94529b3fa864",
      "parents": [
        "798881268d3586ecbaf4483b69d71cf8ec27583b"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 17:52:39 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 17:52:39 2014 -0700"
      },
      "message": "tool for getting instance name via rest API\n"
    },
    {
      "commit": "798881268d3586ecbaf4483b69d71cf8ec27583b",
      "tree": "aeea0afbb717d6d40fd797f298fd46200bef947d",
      "parents": [
        "46b58540fe8bb59273c9add6b1cb7fbea2856eaf",
        "7a3deca42b1f3d4e9addeabe816568cee55e95bc"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 17:27:24 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 17:27:24 2014 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "46b58540fe8bb59273c9add6b1cb7fbea2856eaf",
      "tree": "7fb2a3a1097bd537c1248a7fda5a1d2de7d4af38",
      "parents": [
        "db0a110b779b68f11d311fef5e2f6e359ef328a4"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 17:26:12 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Aug 11 17:26:12 2014 -0700"
      },
      "message": "add id serializers to genapi, add filtering support to genapi, fix _rel_+\n"
    },
    {
      "commit": "f7f79a16d519b0ffeb663b267d77d118c444bfc2",
      "tree": "049c5bd816c1109d1452719d09c66542a6870511",
      "parents": [
        "2721d6ffd59dbfe290e432e601e41f663f991fc8"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Aug 11 11:21:42 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Aug 11 11:21:42 2014 -0400"
      },
      "message": "use slicename attribute as slice\u0027s keystone tenant name\n"
    },
    {
      "commit": "2721d6ffd59dbfe290e432e601e41f663f991fc8",
      "tree": "4a2cbac244edea7a6e587809ca090715ca73e1ed",
      "parents": [
        "db0a110b779b68f11d311fef5e2f6e359ef328a4"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Aug 11 11:14:58 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Aug 11 11:14:58 2014 -0400"
      },
      "message": "add slicename prop\n"
    },
    {
      "commit": "db0a110b779b68f11d311fef5e2f6e359ef328a4",
      "tree": "af11f3afedd2a598207f28d0fbeef7602ca86f76",
      "parents": [
        "c3439c3b5bf57e550115a6c2bf5be60d841585b4"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 08 09:57:28 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 08 09:57:28 2014 -0700"
      },
      "message": "set default userdata\n"
    },
    {
      "commit": "511137ccc07ea6f7ca5d24beba4101a1777ebc74",
      "tree": "42931a7e7125ebb2286fdf004955362d6fee9ef1",
      "parents": [
        "df65d883056c195f17080d46a79984a1246151f9"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Aug 06 13:46:14 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Aug 06 13:46:14 2014 -0400"
      },
      "message": "added default siterole\n"
    },
    {
      "commit": "df65d883056c195f17080d46a79984a1246151f9",
      "tree": "c55764b1e88e8623fa76284fda26e486c213b703",
      "parents": [
        "34b502f51d2fc727249a1185f3a586311a8fdea5"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 18:52:14 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 18:52:14 2014 -0700"
      },
      "message": "cleaner version of selector\n"
    },
    {
      "commit": "34b502f51d2fc727249a1185f3a586311a8fdea5",
      "tree": "dba6402d88000650629c7a73801a98f273ca39e5",
      "parents": [
        "510fdbbda11dac37d2b02b6186bcf38c235655c1"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 18:33:31 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 18:33:31 2014 -0700"
      },
      "message": "filtering of select in sliverinline now working\n"
    },
    {
      "commit": "510fdbbda11dac37d2b02b6186bcf38c235655c1",
      "tree": "fbea7b2c8f431e9cacd051511c9aebad8c1cfec0",
      "parents": [
        "5face3a51e012b741a48302207fc1b025e0909ca"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 17:19:24 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 17:19:24 2014 -0700"
      },
      "message": "inject node_deployment info into change_form for slice admin\n"
    },
    {
      "commit": "5face3a51e012b741a48302207fc1b025e0909ca",
      "tree": "5acfd9ea2bdeabce5c03ddd283ebed6c8e94db61",
      "parents": [
        "6985cd54f4ac4734d5251bca4f4b5e6f3a27666b"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 10:15:26 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 10:15:26 2014 -0700"
      },
      "message": "dynamically get list of sites for request account page\n"
    },
    {
      "commit": "6985cd54f4ac4734d5251bca4f4b5e6f3a27666b",
      "tree": "99a6787f51532139afa893211c7c2c903ff3b9d1",
      "parents": [
        "a4d3e38eb05a470ae937213d1815facc9873de54"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 09:51:40 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Aug 05 09:51:40 2014 -0700"
      },
      "message": "merge amisha changes\n"
    },
    {
      "commit": "95470622600c66d3d76aa0ecdacd56559604c175",
      "tree": "1aed51f6a140954db32a6c61e882d0b2d03bebfa",
      "parents": [
        "f93c26bdcd296bb529fac93fd89f48322130afb1"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Aug 04 10:48:28 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Aug 04 10:48:28 2014 -0400"
      },
      "message": "If an object\u0027s peer is not set, it implies no dependency. So rather than\nfailing the dependency check, we pass it.\n"
    },
    {
      "commit": "f93c26bdcd296bb529fac93fd89f48322130afb1",
      "tree": "6fdeb8c802e9898f6e3119d007987243dc140217",
      "parents": [
        "aefe502ad44219d63cc2780298bdbb379edfeb61"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 01 14:56:49 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 01 14:56:49 2014 -0700"
      },
      "message": "put legacyapi in the xmlrpc dir, since it was being hidden by the admin api\n"
    },
    {
      "commit": "aefe502ad44219d63cc2780298bdbb379edfeb61",
      "tree": "5883edefe76b88bcd9865114aef9baf53c454049",
      "parents": [
        "7b13010e59750f1b0e3c831ddbcc778be669ee1b"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 17:24:13 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 17:24:13 2014 -0400"
      },
      "message": "Log exception when graph cannot be loaded\n"
    },
    {
      "commit": "7b13010e59750f1b0e3c831ddbcc778be669ee1b",
      "tree": "91806479a88d02dcd3d153179ab2d2b1613b4673",
      "parents": [
        "9a45c0a4732396979d80c15bd62f5d857dc0f109"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:39:41 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:39:41 2014 -0400"
      },
      "message": "Fixed tabulations\n"
    },
    {
      "commit": "9a45c0a4732396979d80c15bd62f5d857dc0f109",
      "tree": "ed323d11e79de0109e2ef1fd144180f3bb9ebf29",
      "parents": [
        "13d8915e1ee1f120441c2591040c3349c84d8bb9"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:31:16 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:31:16 2014 -0400"
      },
      "message": "Updated fixtures to latest versoin in master\n"
    },
    {
      "commit": "13d8915e1ee1f120441c2591040c3349c84d8bb9",
      "tree": "43d83cf8152cb739b20a112d9134428b8439c2fe",
      "parents": [
        "a3d15a72afe2f1c73b4d75e04645c03fe6a5c161"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:35:33 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:54 2014 -0400"
      },
      "message": "Minor bug fixes\n"
    },
    {
      "commit": "a3d15a72afe2f1c73b4d75e04645c03fe6a5c161",
      "tree": "445e39d458cf509bd73376fdf87a0fcf7825f1eb",
      "parents": [
        "5555945a06b334926b69deed2859a8573e11f8d4"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:27:49 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:54 2014 -0400"
      },
      "message": "Point default observer back to OpenStack observer\n"
    },
    {
      "commit": "5555945a06b334926b69deed2859a8573e11f8d4",
      "tree": "37842ae35851596d182a8bf487cdd80f7e38d95b",
      "parents": [
        "f49ed9c5bf0bd2652a84f00d8c80a8b77cd51665"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:26:25 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:54 2014 -0400"
      },
      "message": "Removed deleters, which are not used in 3.0\n"
    },
    {
      "commit": "f49ed9c5bf0bd2652a84f00d8c80a8b77cd51665",
      "tree": "72ee651d016e53b82e6492cc28be9ffb5d64a7c1",
      "parents": [
        "1b9051a5be96239e6ea29ea66a8fd1191d96c1fd"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:25:21 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:54 2014 -0400"
      },
      "message": "Service provider deleter, refactored\n"
    },
    {
      "commit": "1b9051a5be96239e6ea29ea66a8fd1191d96c1fd",
      "tree": "35037673856182fc9d842a0d307b66da9579de65",
      "parents": [
        "ed66644fcb97cb9222e398a71b8076cfff8cc594"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:25:00 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:54 2014 -0400"
      },
      "message": "Origin server deleter, refactored\n"
    },
    {
      "commit": "ed66644fcb97cb9222e398a71b8076cfff8cc594",
      "tree": "d0be9c97024774b7377c8f849d66660e4bdfa2b8",
      "parents": [
        "b2b4484421b94ff9d92b84d69c567fd14a61ecb1"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:18:31 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:54 2014 -0400"
      },
      "message": "HPC service does not support deletion\n"
    },
    {
      "commit": "b2b4484421b94ff9d92b84d69c567fd14a61ecb1",
      "tree": "e2a2e56b7881d6955d1ef149940263dbfefa76b5",
      "parents": [
        "c7de77816062ea8658e60d23496c7f0737916b44"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:17:28 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:54 2014 -0400"
      },
      "message": "Typographic error\n"
    },
    {
      "commit": "c7de77816062ea8658e60d23496c7f0737916b44",
      "tree": "656ac6b31dabb92eb3f213538b1b2bf36c9ddec0",
      "parents": [
        "6ac3eccf3f5e24ada938864b50faf63a915f2a58"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:13:10 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:53 2014 -0400"
      },
      "message": "Content provider deleter, refactored\n"
    },
    {
      "commit": "6ac3eccf3f5e24ada938864b50faf63a915f2a58",
      "tree": "305f5aff0c28526f0516cc63079b60a0a3a6183e",
      "parents": [
        "3e32835c1d93b074eb53322936e1bc0b1ff70730"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:12:42 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:53 2014 -0400"
      },
      "message": "CDN Prefix deleter, refactored\n"
    },
    {
      "commit": "3e32835c1d93b074eb53322936e1bc0b1ff70730",
      "tree": "bc82f1c4970a89e7968142558ce00ec7f87a655b",
      "parents": [
        "e82f5e5d223182820127c6ddd26e0c568d5bded3"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:03:50 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:53 2014 -0400"
      },
      "message": "Merge changes to sync steps in OpenStack Observer back into EC2\nObserver.\n"
    },
    {
      "commit": "e82f5e5d223182820127c6ddd26e0c568d5bded3",
      "tree": "ed042cf144d31aa8fbe16b7c6014f737ce7efcb9",
      "parents": [
        "393db39737a82008bfe84f63bf19b2b96e88cd3a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:02:45 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:53 2014 -0400"
      },
      "message": "Update OpenStack Observer\u0027s event loop from EC2 observer\n"
    },
    {
      "commit": "393db39737a82008bfe84f63bf19b2b96e88cd3a",
      "tree": "7c5367d485f031c483b102955c0bd0a3a162e13c",
      "parents": [
        "b83643ce3eae320f38520812fb733d0e1ce4d4f6"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:01:22 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "Removed old-style deleters\n"
    },
    {
      "commit": "b83643ce3eae320f38520812fb733d0e1ce4d4f6",
      "tree": "6d68d3325ceb8205bd0bbf30efce8af6c711f2b6",
      "parents": [
        "d97caf30a4d58e52c5a9881510938d9d51484fcf"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:59:32 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "Steps in which deletion is not supported have to return an empty list\nwhen queried for deleted objects.\n"
    },
    {
      "commit": "d97caf30a4d58e52c5a9881510938d9d51484fcf",
      "tree": "d83ada6020dca5d8077c8ed07fcd69983986311f",
      "parents": [
        "663626eecf08d38c076f3b0565a840ee97957284"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:53:53 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "Slice deployment deleter, refactored\n"
    },
    {
      "commit": "663626eecf08d38c076f3b0565a840ee97957284",
      "tree": "a04f98d40c71661b9fc923fdd1ba36ce683e8c4b",
      "parents": [
        "5f4aff27c6003239fd10594dd097e69431412cc2"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:50:33 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "Site deployment step, refactored\n"
    },
    {
      "commit": "5f4aff27c6003239fd10594dd097e69431412cc2",
      "tree": "3e33cdc17727fb65e8e272051303778e5283d05c",
      "parents": [
        "881f62e9595dbeda783f46ac52916a22ad6f821c"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:48:55 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "Network sliver deleter, refactored\n"
    },
    {
      "commit": "881f62e9595dbeda783f46ac52916a22ad6f821c",
      "tree": "ffeb206ca987767a681650a8e7b55aac6965a9d7",
      "parents": [
        "ef3ae35afe674ee096a46ada49cab94ec702cf73"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:45:23 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "Network deployment deleter, refactored\n"
    },
    {
      "commit": "ef3ae35afe674ee096a46ada49cab94ec702cf73",
      "tree": "d423d5fed34ff5746cb6e9e06145eb768868b94d",
      "parents": [
        "9650004cea2667f8f9f458f4aecb834b31ead06a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:43:20 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "User deployments deleter refactored\n"
    },
    {
      "commit": "9650004cea2667f8f9f458f4aecb834b31ead06a",
      "tree": "ba58661bd95fbeea35a07aca8909df09f3b18865",
      "parents": [
        "cd99f4d0b3e0b13dd8c4cb7b4c938af7353c0298"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:37:19 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:16 2014 -0400"
      },
      "message": "Sliver deleter, refactored\n"
    },
    {
      "commit": "cd99f4d0b3e0b13dd8c4cb7b4c938af7353c0298",
      "tree": "0e9e91f2d6d85c5d14d51d07708ecdd9923e3d33",
      "parents": [
        "4f4591df95bfa3d1d2ea5cee3ebd4ff7075afd66"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:34:16 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Deleters should not be calling delete on the data model.\n"
    },
    {
      "commit": "4f4591df95bfa3d1d2ea5cee3ebd4ff7075afd66",
      "tree": "d107b4e5db5e573bedbd4ec4b02a646373a5bb9d",
      "parents": [
        "88a2369a9c0ef77ac481fd5fe88bc1f11493ac1a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:34:02 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "User deleter, refactored\n"
    },
    {
      "commit": "88a2369a9c0ef77ac481fd5fe88bc1f11493ac1a",
      "tree": "c873f3eea7fed03314f98cc9fa128875964ababf",
      "parents": [
        "18c64cfa92ca76a4e170527c5bc5d6231fca7111"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:33:44 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Slice deleter, refactored\n"
    },
    {
      "commit": "18c64cfa92ca76a4e170527c5bc5d6231fca7111",
      "tree": "c961e32b46a50fcdd458fe332850cdf838b0a92c",
      "parents": [
        "c3827068b21aa78a7e7d4826c6831d7ecfb31236"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:05:38 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Refactored site deleter.\n"
    },
    {
      "commit": "c3827068b21aa78a7e7d4826c6831d7ecfb31236",
      "tree": "cef2596cd121c7eafe46cc9ec219446efe09d8de",
      "parents": [
        "217656607c29b37706b21ad487f9b9f37d04eb28"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 09:03:42 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "This is in the default implementation of sync_step now\n"
    },
    {
      "commit": "217656607c29b37706b21ad487f9b9f37d04eb28",
      "tree": "daad21185d7d851434854a1477f46a6a7063e463",
      "parents": [
        "a5593a23a625c033f5133df873c819daacb31e98"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 08:59:30 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Provide default implementation of fetch_pending to remove redundant code\nfrom steps.\n"
    },
    {
      "commit": "a5593a23a625c033f5133df873c819daacb31e98",
      "tree": "c855b69a205c99784d5135f03e9cd16389ce1eed",
      "parents": [
        "e7e4ca172fd160c9a589ecd3206abae08e948356"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 08:51:18 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Networks deleter for OpenStack\n"
    },
    {
      "commit": "e7e4ca172fd160c9a589ecd3206abae08e948356",
      "tree": "722b46983e58339aeb5b4227473828c4bdce1521",
      "parents": [
        "1fc85c98f5041739e2a3a4b8d22a0a41375100f5"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 01:27:02 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Explicitly prevent deletion processing in steps in which it doesn\u0027t make\nsense.\n"
    },
    {
      "commit": "1fc85c98f5041739e2a3a4b8d22a0a41375100f5",
      "tree": "90cc1e2827b9587b732dbd1a543110ef3e5f7c34",
      "parents": [
        "06ca508d0db22810db23ca8bd3bca0a20e887810"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 01:22:15 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Fixed indentations.\n"
    },
    {
      "commit": "06ca508d0db22810db23ca8bd3bca0a20e887810",
      "tree": "1133facc6879aa3ef5a8e182d6add1b40ff673ff",
      "parents": [
        "bab33765501fd1abde83cdf71f95951239f732a7"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 01:22:00 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Bug fix\n"
    },
    {
      "commit": "bab33765501fd1abde83cdf71f95951239f732a7",
      "tree": "349dc45e78bf274abe5ed35ad82e0bdfbf8a7ff2",
      "parents": [
        "ad2c4a1210bd91f5f5e7208313a435382fc66e01"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 01:21:36 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Deletion\n"
    },
    {
      "commit": "ad2c4a1210bd91f5f5e7208313a435382fc66e01",
      "tree": "6b5de68e49c17992c6525aa7b65dc3c500d17530",
      "parents": [
        "bbcc190c0ab6e70f76e88f811193e194bdc22a65"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 01:21:05 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Django\u0027s delete method does not accept unknown keywords\n"
    },
    {
      "commit": "bbcc190c0ab6e70f76e88f811193e194bdc22a65",
      "tree": "fe28e380da5888b1bdcf6f9207d28482f6cb2e11",
      "parents": [
        "743bed19b41dead59dd0db0c327cc1bcb1fb4fe7"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 01:11:36 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Fixed a typo\n"
    },
    {
      "commit": "743bed19b41dead59dd0db0c327cc1bcb1fb4fe7",
      "tree": "f21131bef568e78880c39436322890e86ebc34f7",
      "parents": [
        "6cf1ef820d20a5036dd8ba1e64640cf6625b4024"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:48:09 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Continuing removal of delters from EventManager\n"
    },
    {
      "commit": "6cf1ef820d20a5036dd8ba1e64640cf6625b4024",
      "tree": "8bc7ca3eb0641c870c1f700b1c850527f3e04dc0",
      "parents": [
        "ed83cf67935e5f7595144ab64710d90d956bd703"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:43:55 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Don\u0027t load deleters, they don\u0027t exist anymore\n"
    },
    {
      "commit": "ed83cf67935e5f7595144ab64710d90d956bd703",
      "tree": "d63a6e3242fd787d6a307971dff18634ffbcfe93",
      "parents": [
        "9ae9f8f2c092766eda6809e7fd304a3f2a53c5a5"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:35:56 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Let\u0027s not have an outer exception try/catch... it only hides inner\nexceptions.\n"
    },
    {
      "commit": "9ae9f8f2c092766eda6809e7fd304a3f2a53c5a5",
      "tree": "fe60fd32a41177d8a557fecf03b858dae9c180c8",
      "parents": [
        "b7262195d6402cc05d426657946972af106f19cd"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:32:42 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "More cleanups\n"
    },
    {
      "commit": "b7262195d6402cc05d426657946972af106f19cd",
      "tree": "a53d740eda4b9c17eed327c00f2689c4a8bea0fd",
      "parents": [
        "35ecc411041424293f58df7d370168a40a54796b"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:30:16 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:15 2014 -0400"
      },
      "message": "Merged some changes that SCott made to event_manager\n"
    },
    {
      "commit": "35ecc411041424293f58df7d370168a40a54796b",
      "tree": "ff5c541caf59883d543b4a276e47d3e0353ab0a9",
      "parents": [
        "cf06d6fb56aab20ad327e13103936161f382b111"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:27:35 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:14 2014 -0400"
      },
      "message": "Dropped extraneous sync steps in ec2_observer/steps directory\n"
    },
    {
      "commit": "cf06d6fb56aab20ad327e13103936161f382b111",
      "tree": "477ac94e07b7e9197840415f95e92d0b90b6fa8d",
      "parents": [
        "4dd107226400f685d9b4ba6e9ec8bd92b1b11247"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:22:58 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:14 2014 -0400"
      },
      "message": "Added awslib, for interacting with Amazon AWS.\n"
    },
    {
      "commit": "4dd107226400f685d9b4ba6e9ec8bd92b1b11247",
      "tree": "ba7efee0efcd065adc9f304fe450b79c5c7b2ead",
      "parents": [
        "82006417421f5157f4423ddfc1fa2f40a4b69635"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Jul 22 00:14:29 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:14 2014 -0400"
      },
      "message": "Imported bug fixes\n"
    },
    {
      "commit": "82006417421f5157f4423ddfc1fa2f40a4b69635",
      "tree": "c99658389065f9b6a64c1119a4784991e7804ae8",
      "parents": [
        "a358f0fb280d3da6938575be3d9c5d4a4a7e3f7a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Jul 21 23:23:36 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:25:14 2014 -0400"
      },
      "message": "Made \u0027observer\u0027 a symlink\n"
    },
    {
      "commit": "a358f0fb280d3da6938575be3d9c5d4a4a7e3f7a",
      "tree": "1ded187cbecc3c1a2068839a98547d35da21ff50",
      "parents": [
        "511ea5f61a5db72e000c801789bf5f88e8c7009a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Jul 21 23:21:23 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:23:48 2014 -0400"
      },
      "message": "Rename observer to openstack_observer, making room for more convenient\nswitching to a different observer.\n"
    },
    {
      "commit": "511ea5f61a5db72e000c801789bf5f88e8c7009a",
      "tree": "ec6e38b6a7cda8fa66baf9cd1f551a3387fe21cb",
      "parents": [
        "fc69f3d5d48b30de6f519a4b3ed65d00529e589a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Jul 21 22:53:58 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:23:12 2014 -0400"
      },
      "message": "This tree was mixed up, with an old version of the EC2 Observer. This\nchange copies across the version demo\u0027d the OpenCloud developer meeting.\n"
    },
    {
      "commit": "fc69f3d5d48b30de6f519a4b3ed65d00529e589a",
      "tree": "042ca432b478822f53da5427d407421354f39bbd",
      "parents": [
        "5d605ff788815db0a11a5e672cb304d448cf4be3"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Jul 21 20:09:06 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:23:12 2014 -0400"
      },
      "message": "Fixed indentation\n"
    },
    {
      "commit": "5d605ff788815db0a11a5e672cb304d448cf4be3",
      "tree": "6c3f15a5ad748a9e201ad54221dd769f676a1dc9",
      "parents": [
        "77d1d89e983b687d818427fbf66d37b2a1e79c47"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Jul 21 20:08:04 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:21:49 2014 -0400"
      },
      "message": "Implement new mark/purge deletion for User Model\n"
    },
    {
      "commit": "77d1d89e983b687d818427fbf66d37b2a1e79c47",
      "tree": "4afbcaf5706465f6b5075dd02925aa43f8e07c4a",
      "parents": [
        "15bf5ac0450d96b2ae5f1ce18c228ef520843026"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Jul 21 20:07:23 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:21:49 2014 -0400"
      },
      "message": "Default to purging on delete if the Observer cannot be loaded.\n"
    },
    {
      "commit": "15bf5ac0450d96b2ae5f1ce18c228ef520843026",
      "tree": "1824fad44a8ad4cb5100cf1b2e1369431dc85dbe",
      "parents": [
        "26d40bc6b5b274c4aa3e53c63ad3a0b3bbfb838c"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Jul 21 20:06:59 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:21:49 2014 -0400"
      },
      "message": "Move queries for deleted objects into a new manager\n"
    },
    {
      "commit": "26d40bc6b5b274c4aa3e53c63ad3a0b3bbfb838c",
      "tree": "3c8876d1ca1381a4467e7df44791046064d49e3f",
      "parents": [
        "e17bc5b218299074240e10d7c1082f85ff9d731c"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon May 12 15:28:02 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:20:22 2014 -0400"
      },
      "message": "Added ec2 observer, WIP\n"
    },
    {
      "commit": "e17bc5b218299074240e10d7c1082f85ff9d731c",
      "tree": "a273062a3240b850827c05daa595a0f983e97b03",
      "parents": [
        "6082336af70681006aea618f28b951bbf47460a8"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Apr 30 00:53:06 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:20:22 2014 -0400"
      },
      "message": "Added deletion field to fetch pending method.\n"
    },
    {
      "commit": "6082336af70681006aea618f28b951bbf47460a8",
      "tree": "e41026d8d784f7b41bc363fc1c1ee3e813b9bedd",
      "parents": [
        "130278134f19945d61e26bbd80d3f5416a8294df"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Apr 30 00:52:32 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:20:22 2014 -0400"
      },
      "message": "Execute deletors and purge record.\n"
    },
    {
      "commit": "130278134f19945d61e26bbd80d3f5416a8294df",
      "tree": "52e89a3977c164c0fe44a5b9cff76a01e8d5d46e",
      "parents": [
        "285decbfb49359489309449c60de59216d9ca94b"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Apr 30 00:51:02 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:20:22 2014 -0400"
      },
      "message": "Purge operation.\n"
    },
    {
      "commit": "285decbfb49359489309449c60de59216d9ca94b",
      "tree": "ecd375c3a233b570ba29b503ad82e98a7f3f5e15",
      "parents": [
        "1b84d66359fe082fc82b5d4f0b7adacf3bc25f7a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Apr 30 00:31:44 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:20:21 2014 -0400"
      },
      "message": "Changed core Observer logic to incorporate explicit deletions.\n"
    },
    {
      "commit": "1b84d66359fe082fc82b5d4f0b7adacf3bc25f7a",
      "tree": "fd9ed5468d73a3581de3ed64693f8544428e5942",
      "parents": [
        "667539142ed5476b24e171104a4f19ef46f425d7"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 23:45:48 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:20:21 2014 -0400"
      },
      "message": "Drop original deleter logic. Deletions will not be explicit.\n"
    },
    {
      "commit": "667539142ed5476b24e171104a4f19ef46f425d7",
      "tree": "5f7cbf5a4e764075ea8ac1cba23528e12e3dbf87",
      "parents": [
        "c860243627a68de0ee40961f4a902a8d5c0aed06"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 23:05:53 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:11:58 2014 -0400"
      },
      "message": "Decommissioning the garbage collector, no longer needed with explicit\ndeletions.\n"
    },
    {
      "commit": "c860243627a68de0ee40961f4a902a8d5c0aed06",
      "tree": "3d83ed197f45f769cc6f48d910b37f7c0815c53f",
      "parents": [
        "3a6811e649a57c905df924d868f309d62b3101ef"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 20:33:51 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:08:38 2014 -0400"
      },
      "message": "New version of delete, which marks as delete instead of removing an\nobject.\n"
    },
    {
      "commit": "3a6811e649a57c905df924d868f309d62b3101ef",
      "tree": "306b04823f52ff574d3f12dd54254d001b409429",
      "parents": [
        "3089d83e7699efa0d302a882e1afa0bdc892cc92"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 14:41:23 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:08:38 2014 -0400"
      },
      "message": "Added deletion check as a default filter of the User model.\n"
    },
    {
      "commit": "3089d83e7699efa0d302a882e1afa0bdc892cc92",
      "tree": "6d416c8e1d28648d8b04f35b31ceaed833eb9bd6",
      "parents": [
        "4eb663ab14fcd1e97b9d1390b7cc98a468483c2f"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 14:36:51 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:08:38 2014 -0400"
      },
      "message": "Make the deletion check a default filter on the base model, inherited by\nsubclasses of the base model.\n"
    },
    {
      "commit": "4eb663ab14fcd1e97b9d1390b7cc98a468483c2f",
      "tree": "f20e3532dfd720e68fa60ed1bdd37b8b35ea67c5",
      "parents": [
        "bcc1899d59e14b160f8b3db73e0cd93f6c744723"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 14:26:10 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:08:38 2014 -0400"
      },
      "message": "This change makes a \u0027deletion check\u0027 a default filter for object\nretrievals.\n"
    },
    {
      "commit": "bcc1899d59e14b160f8b3db73e0cd93f6c744723",
      "tree": "ae16865b4d9bb243f7ce4bcc7c085a4e8defaa3a",
      "parents": [
        "ea53ad37d13f45ed98cbf9270080d60124bde576"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 10:32:14 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:07:58 2014 -0400"
      },
      "message": "Added a \u0027deleted\u0027 field to all models. Specifically to:\n- plcorebase\n- user (which does not derive from plcorebase)\n"
    },
    {
      "commit": "ea53ad37d13f45ed98cbf9270080d60124bde576",
      "tree": "a05b0ac6f69d6ca3a3619422a92e15b628f08ea7",
      "parents": [
        "d507f43cf1391b182dfe7e9f6929ff48d55801bb"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 00:42:40 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:07:58 2014 -0400"
      },
      "message": "Updated backend status during call\n"
    },
    {
      "commit": "d507f43cf1391b182dfe7e9f6929ff48d55801bb",
      "tree": "7f0e457347d18658b80d48186ca22fca3924c064",
      "parents": [
        "9f4f99de4d7f3541eea77ca9bbddc5d08dba5ae6"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 00:41:39 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:07:58 2014 -0400"
      },
      "message": "Make default value of status field \"pending\"\n"
    },
    {
      "commit": "9f4f99de4d7f3541eea77ca9bbddc5d08dba5ae6",
      "tree": "5d318c24115f553dfe44ead93b29fe9a34a2c26c",
      "parents": [
        "31ebe5c101fdad8f3252df972c2774845460f961"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 00:34:45 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:07:58 2014 -0400"
      },
      "message": "Updated fixtures with backend_status field\n"
    },
    {
      "commit": "31ebe5c101fdad8f3252df972c2774845460f961",
      "tree": "d56277b84774c8417a55da918aa75b9e1f0c0ab2",
      "parents": [
        "eba084322f606b37466cd86b55c27e9edab7f633"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Apr 29 00:24:09 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:06:51 2014 -0400"
      },
      "message": "Map errors and feed them into the database.\n"
    },
    {
      "commit": "eba084322f606b37466cd86b55c27e9edab7f633",
      "tree": "04a1cf43c801784fb865dc770de66c9ce07ccca7",
      "parents": [
        "47b9bf2ce479bfe5a162f54c6601d69797e1dcb4"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Apr 28 23:58:36 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:06:51 2014 -0400"
      },
      "message": "Feed errors that occur in the back end in the backend_status field\n"
    },
    {
      "commit": "47b9bf2ce479bfe5a162f54c6601d69797e1dcb4",
      "tree": "1f14c41d3e849608cedc4b67387779af28179e9b",
      "parents": [
        "34aee756bd33468f5989a2b5a76ebdf7ad46ee61"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Apr 28 21:09:53 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:06:16 2014 -0400"
      },
      "message": "Added backend_status field to user object\n"
    },
    {
      "commit": "34aee756bd33468f5989a2b5a76ebdf7ad46ee61",
      "tree": "de9028ef0ec4c1730e430f19627ee9d358cc0b51",
      "parents": [
        "f73664b29adb20452674d1c3da2dd70662259653"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Apr 28 21:06:39 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:06:16 2014 -0400"
      },
      "message": "Added a new field called \u0027backend_status\u0027 to the core model. This field\nis to be used by the Observer to convey the status of object\nprovisioning to the end user.\n"
    },
    {
      "commit": "f73664b29adb20452674d1c3da2dd70662259653",
      "tree": "d58b6233768996d2bf707f476026c348eef57d7b",
      "parents": [
        "f07101d663705a1c00fd2c89f9bf001fccf708cb"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Apr 28 13:07:18 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 16:06:15 2014 -0400"
      },
      "message": "This patch logs exceptions in the core of the Observer, which might\noccur in case of a misconfiguration or in case there\u0027s an Observer bug.\n"
    },
    {
      "commit": "f07101d663705a1c00fd2c89f9bf001fccf708cb",
      "tree": "fd958228d5b9321e667325814e6115846d6956f0",
      "parents": [
        "cb947cef6c61fd4205002f0713a75ecc9f68d331"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:51:39 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:51:39 2014 -0400"
      },
      "message": "Deleters are no longer used\n"
    },
    {
      "commit": "cb947cef6c61fd4205002f0713a75ecc9f68d331",
      "tree": "cc4b1e06d3cfb6026d007468530526d71d3bcade",
      "parents": [
        "bdd1a934a9d13be36f19deb484af58dbd1e0304e"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:51:16 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:51:16 2014 -0400"
      },
      "message": "Refactored teh sync_volume_slice step with new style of deletion\n"
    },
    {
      "commit": "bdd1a934a9d13be36f19deb484af58dbd1e0304e",
      "tree": "c59b9b4dadc945a83557e807dbf41833fed0cc49",
      "parents": [
        "44be95eebacf1de3c1d2bd70229d6a8f3852632a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:50:51 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:50:51 2014 -0400"
      },
      "message": "Refactored the sync_volume step with new style of deletion\n"
    },
    {
      "commit": "44be95eebacf1de3c1d2bd70229d6a8f3852632a",
      "tree": "09fa240642df84fb93970ee9438de364d6c42a06",
      "parents": [
        "266113a751af017af1b7958aa3b66f826b41b1ff"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:46:56 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jul 23 10:46:56 2014 -0400"
      },
      "message": "Refactored volume access right step\n"
    },
    {
      "commit": "266113a751af017af1b7958aa3b66f826b41b1ff",
      "tree": "811dfa09904b5e136c13a0bc6001f98e8cd69a42",
      "parents": [
        "94ce1e1cea4905a91485d1ced96ba3c8b726eafe"
      ],
      "author": {
        "name": "jcnelson",
        "email": "jcnelson@cs.princeton.edu",
        "time": "Wed Jul 16 15:50:27 2014 -0400"
      },
      "committer": {
        "name": "jcnelson",
        "email": "jcnelson@cs.princeton.edu",
        "time": "Wed Jul 16 15:50:27 2014 -0400"
      },
      "message": "Restage to pl/master\n"
    },
    {
      "commit": "94ce1e1cea4905a91485d1ced96ba3c8b726eafe",
      "tree": "e509ff2cb5d51d3427ed7a0ff26f39c09778ffba",
      "parents": [
        "33bc04a2cf7b1a37681c4fa0c12b1100d034041a"
      ],
      "author": {
        "name": "jcnelson",
        "email": "jcnelson@cs.princeton.edu",
        "time": "Wed Jul 16 15:32:29 2014 -0400"
      },
      "committer": {
        "name": "jcnelson",
        "email": "jcnelson@cs.princeton.edu",
        "time": "Wed Jul 16 15:32:29 2014 -0400"
      },
      "message": "Make principal_id a unique field in SyndicatePrincipal\n"
    }
  ],
  "next": "33bc04a2cf7b1a37681c4fa0c12b1100d034041a"
}
