)]}'
{
  "log": [
    {
      "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": "cf219ce51ea3b9dacce089e82ac78345b9a1a741",
      "tree": "d69d4a50ecf415805c34f0688b1b9ae22c51ec3c",
      "parents": [
        "1d5ec8da9aa352d8e35559c63730ace1ef1ccff3"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Aug 19 03:01:37 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Aug 19 03:01:37 2014 -0400"
      },
      "message": "Switched sync_users to new style of deletion\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": "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": "91463d92cb5f49822fa4935b4dc424c2ab84df35",
      "tree": "dfacbf945a1e387d7de21a38d84ad4a565fe9936",
      "parents": [
        "944669238676b007ba5ec7144dc50b4e7e174132"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Jun 19 20:42:03 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Thu Jun 19 20:42:03 2014 -0400"
      },
      "message": "fix import errors\n"
    },
    {
      "commit": "d4a6429c5fad57465e10d7d2d6ae5bb5abf1aa47",
      "tree": "a29dd5bb2f8106e505f342e1823dba93cb5fdca1",
      "parents": [
        "2c911105657decbf28b7e9d83ce28a3c386b349e"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 16 19:53:21 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Apr 16 19:53:21 2014 -0400"
      },
      "message": "update user account across deployments when user record is updated\n"
    },
    {
      "commit": "278f995eb0e26d120c4e78b5095e92f1d3205a50",
      "tree": "b8534adaedce330878edc3f34e38fc33e75ba6b4",
      "parents": [
        "07f49762faa189aa1442fbc03667bf609d60c2b2"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 07 19:48:09 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Apr 07 19:49:13 2014 -0400"
      },
      "message": "do not save user record in sync_user step\n"
    },
    {
      "commit": "e4be32fc2c0530a6148cc93e354c95680d370598",
      "tree": "9567e099c1ae18e1d3e35d0457af232f50296b4b",
      "parents": [
        "45cbbc396013d526b3aa96cab9f95517196b45a6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 11 20:45:25 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Mar 11 20:45:39 2014 -0400"
      },
      "message": "observer now supports remote openstack deployments\n"
    },
    {
      "commit": "22e0ffef62f4882772203edaa41bf97c98a0ffc6",
      "tree": "4d46681194266a8fde14f0ef62ca4f79e0b39de6",
      "parents": [
        "ca2e21fd16bdad6fff95c44bfac87f31263056fd"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 01:12:10 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 01:12:10 2013 -0400"
      },
      "message": "Missing import\n"
    },
    {
      "commit": "ae7f30c5ff0830dbd413a83003b936ba607fc3ba",
      "tree": "30b5cda84811b8cbb28eb6c53400669430ee5a73",
      "parents": [
        "16f04743327d002cd153ed17bcb9b928b7f14b5a"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 12:46:50 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 12:46:50 2013 -0400"
      },
      "message": "fix NameError and AttribteError\n"
    },
    {
      "commit": "66646d55de74e54e91ccd08db04f326ae8e5f522",
      "tree": "f4289de4b3b12036b8986f9bb4cf7793b8c95739",
      "parents": [
        "c12d5ca159b7808a3f35beae4ec76b0eb090d7c0"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 21:47:12 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 21:47:12 2013 -0400"
      },
      "message": "implement fetch_pending()\n"
    },
    {
      "commit": "ce79de09a6a65b2be1de89c0ad9e74cf544f2db2",
      "tree": "0025277076bff070b303ee3442b873a4a185cfb9",
      "parents": [
        "57c162818d297f8e075eca3bd954b0c26674b861"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 10:12:33 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 10:12:33 2013 -0400"
      },
      "message": "tabs, bugfixes\n"
    },
    {
      "commit": "387a73f79ab3fb6b9c2168f9c8975956281d4bfc",
      "tree": "4550760115e794c63d92a15ab3dd978283fee22e",
      "parents": [
        "3a0e66b78faf39ea99cd574b56deec2155ec80b6"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 18 07:59:14 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 18 07:59:14 2013 -0400"
      },
      "message": "instantiate sycn steps with openstack driver. Implement garbage collector and deleters\n"
    },
    {
      "commit": "04c94ad7d56a164d1f1a5d05c3b5ced5d792bae2",
      "tree": "6df9d951f1e4b0ab620d9d46d0bce5021de3dbcc",
      "parents": [
        "f48c0444527cdc597dcd913658d743d9d098f942"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 18:00:28 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 18:00:28 2013 -0400"
      },
      "message": "Wide range of debugging changes\n"
    },
    {
      "commit": "2ef36c8c77bcec0b92906896e7e89b67106a49ae",
      "tree": "5a940a24fcaad3f1b385e129928518eff6cd6b38",
      "parents": [
        "13c7f114712b9b49abc1c46357dc309afdbe7fb1"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 14:30:37 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 14:30:37 2013 -0400"
      },
      "message": "Schedules for various steps\n"
    },
    {
      "commit": "24836f18c96de50f93cacb2be40f311f66e4876a",
      "tree": "5791adb35bddaadab9a011cf1238a724bf71d4d5",
      "parents": [
        "f61e17af98a435ab1eac843ee865abff81f5fa4c"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Aug 27 10:16:05 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Aug 27 10:16:05 2013 -0400"
      },
      "message": "Sync refactored into abstract steps\n"
    }
  ]
}
