)]}'
{
  "log": [
    {
      "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": "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": "c7ca655c09113dbfedc9b1fa9abadaecca447d5d",
      "tree": "b94c788149ea239354e195bb45a6a2748a654aac",
      "parents": [
        "c132d09eb4dcb394a6c942cc756f3e301df5d3a9"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 05 14:48:38 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 05 14:48:38 2014 -0700"
      },
      "message": "ensure db connection is closed at the end of each thread\n"
    },
    {
      "commit": "adc73173227267a8272fa22efb95c06b77c3d7fc",
      "tree": "88844376996c50cd07382b7fce2a0ddcd94dc4a3",
      "parents": [
        "27af5e62996830490598ffeade7ad189c2dd5a28"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Sep 04 10:36:51 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Sep 04 10:36:51 2014 -0700"
      },
      "message": "more logging; fix SyncSiteDeployments waiting on self; fix unknown identifier when adding failed step\n"
    },
    {
      "commit": "ab202a6d8c546a6202351eb4fdcf6940bd2c75c2",
      "tree": "7e6dda7f81c5256991c606d1f7bdc41911bf65f6",
      "parents": [
        "d1f1df83306fab171ac7bb2a000476605c841639"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 03 11:30:21 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 03 11:30:21 2014 -0400"
      },
      "message": "Updated OpenStack observer to parallel implementation\n"
    },
    {
      "commit": "51f489340de333158a57d0fafeb5c284cd34b946",
      "tree": "9e60c9736f38f10c825e2ee83237814f6fb0a75a",
      "parents": [
        "9c308fca43f8248a4d0880791b6fd3a8a2acc71d"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Aug 25 04:17:12 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Aug 25 04:17:12 2014 -0400"
      },
      "message": "Initial plumbing for parallel Observer\n"
    },
    {
      "commit": "0f727b8796356ff8b416f23ca97b61bea46adbe3",
      "tree": "391accee600ff33925b7f1cb9911adde5503a9e2",
      "parents": [
        "f1d3d273b14a40859229c0d03bc4b2b16e2d93c2"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Aug 18 02:44:20 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Aug 18 02:44:20 2014 -0400"
      },
      "message": "Make it easier to disable deletions for debugging.\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": "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": "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": "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": "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": "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": "cc877f7bbfe942705faf3228ee70e923c32c6685",
      "tree": "e6f9b1497b30b013a50e45b6f8547774ad7ff5ad",
      "parents": [
        "d687e810c6a59273d9774876bf56ce9fca7b95a7"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 02 22:14:49 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 02 22:14:49 2014 -0700"
      },
      "message": "stop silently absorbing exceptions inside of sync steps\n"
    },
    {
      "commit": "7659920cfbb032f4bc9ea90662cc1c7835437e9f",
      "tree": "4f74cd82d321cfe95c2bdc1c0e496d4034907308",
      "parents": [
        "f4db3814901b5d8cbd628aad2659afc7dec1198d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat May 10 15:36:08 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Sat May 10 15:36:08 2014 -0700"
      },
      "message": "fix error importing steps\n"
    },
    {
      "commit": "2e0dc7fc4b93aa75a673619a5a764cd47187f583",
      "tree": "12c3df681e338351c4d5c67816cf44a3c0b61a06",
      "parents": [
        "61aefcfadf9a872902f834444c9e94252e97d420"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 29 12:24:58 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 29 12:26:22 2014 -0400"
      },
      "message": "remove debuging code\n"
    },
    {
      "commit": "45cbbc396013d526b3aa96cab9f95517196b45a6",
      "tree": "5191ea70ae2a688d83b912ac078d4107d9f58fe4",
      "parents": [
        "1a89a076fb16172e5ceb3aa1479eff339aa80d98"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Mar 11 17:48:30 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Mar 11 17:48:30 2014 -0400"
      },
      "message": "Rewrote toposort to handle loops in Step graph. Simpler implementation\n"
    },
    {
      "commit": "7771f417ec3fa0089fe1ebae21a6a52d285db217",
      "tree": "187918e25a07126fe96c996596525068314124bf",
      "parents": [
        "d8ebe8cb91ae3eaa9f74e5e8f552edd28bfaea47"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Jan 02 16:36:41 2014 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Jan 02 16:36:41 2014 -0800"
      },
      "message": "add support for non-openstack drivers, rename step_dir config param\n"
    },
    {
      "commit": "45fb7a1408fbf14c1ffcd4f6c93e72644866e861",
      "tree": "203677a2d459217403fd10951416c3bb2b5c67e8",
      "parents": [
        "1eff85deddc953cedcc8b93068540665d2e74da1"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 31 00:56:19 2013 -0800"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Dec 31 00:56:19 2013 -0800"
      },
      "message": "use Config().step_dir to load steps dynamically\n"
    },
    {
      "commit": "04111b7ca6d69048e3be696a93fb25dc6c935642",
      "tree": "089b823d378fb9b15244e4e6effc5f1d2cef2519",
      "parents": [
        "37146d2b1ce3d8b91e81dab8e9ed90d107c10619"
      ],
      "author": {
        "name": "Andy Bavier",
        "email": "acb@cs.princeton.edu",
        "time": "Tue Oct 22 16:47:10 2013 -0400"
      },
      "committer": {
        "name": "Andy Bavier",
        "email": "acb@cs.princeton.edu",
        "time": "Tue Oct 22 16:47:10 2013 -0400"
      },
      "message": "Log to /var/log/planetstack.log instead of observer.log in current directory."
    },
    {
      "commit": "808b239586c8b082d7bb51c26c6c5eb26a83e720",
      "tree": "d00170943d91f7c424a4346680531c7863d625ab",
      "parents": [
        "2d5642cf4b5e60190763d1c6a603eaecbb6076ef"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Oct 16 11:34:32 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Oct 16 11:34:32 2013 -0400"
      },
      "message": "store failed step object in set instead of list\n"
    },
    {
      "commit": "2d5642cf4b5e60190763d1c6a603eaecbb6076ef",
      "tree": "7097486408c16fcf0b84a352d00c85cc6d37cb65",
      "parents": [
        "3587dc723c73035cde964c5e12d9a9cf1d3deca5"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Oct 15 21:29:32 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Oct 15 21:29:32 2013 -0400"
      },
      "message": "dont raise exceptions inside of event loop\n"
    },
    {
      "commit": "3587dc723c73035cde964c5e12d9a9cf1d3deca5",
      "tree": "089bea8873de9d5e983283438951fd2bd64de4a8",
      "parents": [
        "04054f547193f774cd77133d70e61309860e18b9"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Oct 14 22:01:43 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Mon Oct 14 22:01:43 2013 -0400"
      },
      "message": "rename config option\n"
    },
    {
      "commit": "46c2d5056e93a5f60987cfe9fa7604f010ceb613",
      "tree": "0388663c24a9911f19510a9894aa71cd225878a4",
      "parents": [
        "e1509e86fb337d86fb377248340181f786821b12"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Oct 09 13:04:28 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Oct 09 13:04:28 2013 -0400"
      },
      "message": "sync images\n"
    },
    {
      "commit": "e1509e86fb337d86fb377248340181f786821b12",
      "tree": "1178d558b046f776e2aec375b4ca5360478563a4",
      "parents": [
        "012ecff89c70f711501acd68504cbc218b9d6f01"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Oct 09 12:38:04 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Oct 09 12:38:04 2013 -0400"
      },
      "message": "sync nodes\n"
    },
    {
      "commit": "6986ab3c7b6676c228c3ac157852546298f35a40",
      "tree": "389bd1b270d3f977d9e2610e0ccd5061467a9104",
      "parents": [
        "27c73907f0be62a3f9893fc855f318f0abddde07"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Oct 08 14:40:16 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Oct 08 14:40:16 2013 -0400"
      },
      "message": "enable SyncRoles\n"
    },
    {
      "commit": "c61cab0c174ecf319497cac923541a3c44a45d06",
      "tree": "9bc4eda8352b6d923f7175d18c1a6a1c4edce24d",
      "parents": [
        "2fd8d300b629af8ab0427dddbd396b3af093b4df"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Oct 05 20:02:41 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Oct 05 20:02:41 2013 -0400"
      },
      "message": "fix check_schedule\n"
    },
    {
      "commit": "2fd8d300b629af8ab0427dddbd396b3af093b4df",
      "tree": "15c25f30ba3efe2407b53b27a468b7aa5879b74c",
      "parents": [
        "98a6a1dfe9b692cfde47e25a504d2a9ee80bcf29"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Oct 05 09:59:38 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Sat Oct 05 09:59:38 2013 -0400"
      },
      "message": "fix check_class_dependency()\n"
    },
    {
      "commit": "d667627ebc39f0426992b698d8e992fc5f59e894",
      "tree": "886b1354a808a5fb80ca359749e84e0cdc702f68",
      "parents": [
        "a2227d1a64fdd5d14a449a5aea14e9a1ee283a65"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 09:53:29 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 09:53:29 2013 -0400"
      },
      "message": "Drop debugging code\n"
    },
    {
      "commit": "a483ab9b9eb5f40d6b5fa2a182314e021b6148d6",
      "tree": "d0f51708e3ef86d0f0ac77023a9da411cc95e9dd",
      "parents": [
        "467b7ce16a1f37b5d75992cd05ef201cab927d1d"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 09:33:24 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 09:33:24 2013 -0400"
      },
      "message": "Fixed tabulation in the file\n"
    },
    {
      "commit": "467b7ce16a1f37b5d75992cd05ef201cab927d1d",
      "tree": "a23c5da23ce93fc5088a5da03339bd6d2a680c4f",
      "parents": [
        "22e0ffef62f4882772203edaa41bf97c98a0ffc6"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 09:25:46 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 09:25:46 2013 -0400"
      },
      "message": "Major bugfix to toposort.\n"
    },
    {
      "commit": "ca2e21fd16bdad6fff95c44bfac87f31263056fd",
      "tree": "25df2c33a2b3d0667457b82f80e9cbf634bb38a9",
      "parents": [
        "972a2e82a316ef2fc042a82d9380d8c2b79b22b2"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 01:10:02 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 01:10:02 2013 -0400"
      },
      "message": "Fixed issues in object dependencies\n"
    },
    {
      "commit": "972a2e82a316ef2fc042a82d9380d8c2b79b22b2",
      "tree": "d35ace08691a80c4148b189990b169f8e56bbfb8",
      "parents": [
        "4fa85fb13f41338f263ae0b2b9d39aec87703d8b"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 00:03:02 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 02 00:03:02 2013 -0400"
      },
      "message": "Steps not in the dependency graph should also be executed\n"
    },
    {
      "commit": "4fa85fb13f41338f263ae0b2b9d39aec87703d8b",
      "tree": "f95db0c80a94cfb78d0b0d6c693091b0ba99b6a0",
      "parents": [
        "68e818d7784c2c1950962f9890c8ee3ef0685924"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 14:39:57 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 14:39:57 2013 -0400"
      },
      "message": "fix bugs\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": "ea41f56b95951ae9c5e73906c3803b815fb64278",
      "tree": "85274050212b47b14b6c193c4b9ab479e07b0468",
      "parents": [
        "3bf77b0117ee01565276e9a9c50627510ab2a5df"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 08:10:40 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 08:10:40 2013 -0400"
      },
      "message": "fix bugs\n"
    },
    {
      "commit": "3bf77b0117ee01565276e9a9c50627510ab2a5df",
      "tree": "5f00de9e0a746d18af1c9729a3b38050e7991a78",
      "parents": [
        "dacfb982bf93387efbc3e5907281ac788ab09070"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 00:49:50 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Wed Sep 25 00:49:50 2013 -0400"
      },
      "message": "bug fixes\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": "c12d5ca159b7808a3f35beae4ec76b0eb090d7c0",
      "tree": "eb6b38cae55f4d558c1f39a1f6bd099994b03540",
      "parents": [
        "ce79de09a6a65b2be1de89c0ad9e74cf544f2db2"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 10:30:39 2013 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Sep 24 10:30:39 2013 -0400"
      },
      "message": "bugfixes\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": "757e0b6430223c2de7e9ecf885f307867c373574",
      "tree": "29e99dca323186c130f0220a16c1b7f3171b6dea",
      "parents": [
        "34ed9931f8a09ab950993c03528e942f2d5fbfc7"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 16:55:00 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 16:55:00 2013 -0400"
      },
      "message": "Fixed import issues\n"
    },
    {
      "commit": "36938cad1a7ab1064f1903f349f06064012a42e4",
      "tree": "cb30359587e958a1f0c60fac048c3c7dff33f185",
      "parents": [
        "2ef36c8c77bcec0b92906896e7e89b67106a49ae"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 14:35:24 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 14:35:24 2013 -0400"
      },
      "message": "Load and save run times\n"
    },
    {
      "commit": "13c7f114712b9b49abc1c46357dc309afdbe7fb1",
      "tree": "264aa25b39acda9ed05dd763546fb0245788f27b",
      "parents": [
        "24836f18c96de50f93cacb2be40f311f66e4876a"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 14:19:35 2013 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 02 14:19:35 2013 -0400"
      },
      "message": "Class and object dependencies, schedules\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"
    }
  ]
}
