)]}'
{
  "log": [
    {
      "commit": "82d901bd55cd6177100cfa0d6fda5246e036215b",
      "tree": "2ae4f19e2ae47c5c3874872f2fc0e2b393b64bfd",
      "parents": [
        "cc9e2590570e3ada475f1eae9274cd4a1e795e90"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Oct 22 13:30:41 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Oct 22 13:30:41 2014 -0400"
      },
      "message": "cleanup network objects associated with slice that\u0027s deleted\n"
    },
    {
      "commit": "f22e73a25ebcf3928c61c8144807eac3aaf5e218",
      "tree": "4430db66a2d3c0ad41d03342d4db5f7c8e93506b",
      "parents": [
        "8806cdf519b3131da827d7914e072e935524a332"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 18:45:00 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 18:45:00 2014 -0700"
      },
      "message": "fix user admin showing deleted users\n"
    },
    {
      "commit": "a289ed7f253f98b483b5a643f5bd40bef7d66704",
      "tree": "2e66173229a568375dee90b34feca676acaaf3dd",
      "parents": [
        "9b3c1af87371f0318a12f2dfdd66c35e19577644"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 16:22:20 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 17 16:22:20 2014 -0700"
      },
      "message": "validate ports field in network object\n"
    },
    {
      "commit": "3d2d3e46d33967414833fc93f3420787a1cd0c08",
      "tree": "fcdfe6de12c39cbb3551d6268a69db2e4e605fdf",
      "parents": [
        "d29431ba255b9d182e8ac2f87897290e3cbcb7bd"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:22:00 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:22:00 2014 -0700"
      },
      "message": "fix keyerror in plcorebase.delete\n"
    },
    {
      "commit": "d29431ba255b9d182e8ac2f87897290e3cbcb7bd",
      "tree": "0f594b8acefa6b8420c548029dd8a62413699e5d",
      "parents": [
        "6021fa81be0a226a6da9cf7ade4f9d7661026ded"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:16:02 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 09 16:16:02 2014 -0700"
      },
      "message": "observer_disabled was not being imported into core/models/user.py\n"
    },
    {
      "commit": "40e1813fba37bf8009bc629ac39f41ae2f6ebd85",
      "tree": "9621f5762d72c777fdc5cade1fe7ace37a4d3870",
      "parents": [
        "192277c1ed787d60716753be4b00c45810414fe5"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 08 09:38:21 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Oct 08 09:38:21 2014 -0400"
      },
      "message": "For backend-specific observers, filter out deployments without backend\ntypes set\n"
    },
    {
      "commit": "1bffe9444cfb5eb07fd69469ada59927ec083d58",
      "tree": "7146649acc0f316a54d0277b68f8f6e707c288e9",
      "parents": [
        "6a99535fe3ed50e9635595836c488a76b8e43682"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Oct 06 22:58:48 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Oct 06 22:58:48 2014 -0700"
      },
      "message": "re-did the fine grained permission checking stuff again\n"
    },
    {
      "commit": "5e5f455b8842da5047948773c65bec8b06872cdb",
      "tree": "111033dac36076ebaaeae5834ff104a03e9a926e",
      "parents": [
        "f4aeedc779e6984a261076715aa55bb845a2ac84"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 14:48:06 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 14:48:06 2014 -0700"
      },
      "message": "add default select_by_user to plcorebase, hunt down and destroy select_by_user methods in other classes that were redundant with the new default\n"
    },
    {
      "commit": "1a6a39055a6180f7c8ca63361a278bd46d0fe32c",
      "tree": "434cce5f441168402d8dc709ef2f79f34ed122db",
      "parents": [
        "e5f41b0ada6f519a07e3d34e82c569c6027aa8ae"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 00:32:37 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Oct 03 00:32:37 2014 -0700"
      },
      "message": "add support for fine-grained field permissions for user model\n"
    },
    {
      "commit": "e5f41b0ada6f519a07e3d34e82c569c6027aa8ae",
      "tree": "410f07be14bacf21cb9fc93b15f42b1b111a528c",
      "parents": [
        "2ba348503e956666b076f1aa4de94cdefa9e4d9c"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 02 22:50:18 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Oct 02 22:50:18 2014 -0700"
      },
      "message": "raise PermissionDenied if someone tries to save an object without can_update rights\n"
    },
    {
      "commit": "e75841e6be6cdac7ebeaf463c81050d29fbe6e41",
      "tree": "f7fff401ddb900335ff8de254139ff1f3039aefb",
      "parents": [
        "e4226cf830887e172a644ee4ecb38b22845be344"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Sep 29 16:10:52 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Mon Sep 29 16:10:52 2014 -0400"
      },
      "message": "added availability_zone field to Deployment model\n"
    },
    {
      "commit": "7807035001a0e2975e41f673730c9ce66c384827",
      "tree": "a2d7868d47ba692b6e0b7a3cf4c973803549dca4",
      "parents": [
        "959252867cf8f419acfe78b497bd82190bc8f3f5"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 12:44:22 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 12:44:22 2014 -0400"
      },
      "message": "allow only enforce login base prefix on new slices\n"
    },
    {
      "commit": "38e7ae55a99391ade1c01c7c296caa7360a50860",
      "tree": "0c80ba47c52b822f190b1f7231774861b974e611",
      "parents": [
        "2faa969719be17dee75554110ac19a41c1cb04b3"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 10:08:51 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 24 10:08:51 2014 -0400"
      },
      "message": "set sliver name in save()\n"
    },
    {
      "commit": "2faa969719be17dee75554110ac19a41c1cb04b3",
      "tree": "24b7c4938082f851b314f91fd3728deabb722e80",
      "parents": [
        "82c0bed968af122c6cc29d92f411a92af258f2fe",
        "a5b107251337aed041cc400b2efa3ac382c74407"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:54:06 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:54:06 2014 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "f3f895cc6cf53f97ef582c56f28f849ccbb3275d",
      "tree": "fbc09aa37b4ff44470380779072d4fd4d2483985",
      "parents": [
        "3ea1127154218b93879f6a7501a4bbd7412a47ab"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:41:17 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 22:41:17 2014 -0700"
      },
      "message": "also allow \u0027silent\u0027 to be set as an instance variable\n"
    },
    {
      "commit": "a5b107251337aed041cc400b2efa3ac382c74407",
      "tree": "4391c1e95803bf031a85820d80661a3f91daf20f",
      "parents": [
        "f77d01afd2c22b53106789c2c1ad682a2717f700",
        "3ea1127154218b93879f6a7501a4bbd7412a47ab"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:50 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:50 2014 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "f77d01afd2c22b53106789c2c1ad682a2717f700",
      "tree": "6995f280c1ee1df564bce50df80bec2244c2521d",
      "parents": [
        "90240767d2af1e6344bb5b629b33ca5521ee7dd3"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:44 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 24 00:34:44 2014 -0400"
      },
      "message": "Fixed a typo\n"
    },
    {
      "commit": "6594bea429640a937aa682154e74c1bfcfd6a15e",
      "tree": "ea4bd1150d1bfa48856e9409676150ff2e425910",
      "parents": [
        "90240767d2af1e6344bb5b629b33ca5521ee7dd3"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 16:04:36 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 23 16:04:36 2014 -0700"
      },
      "message": "add silent kwarg to delete() and save()\n"
    },
    {
      "commit": "90240767d2af1e6344bb5b629b33ca5521ee7dd3",
      "tree": "86cb33c717ed3904d083654af19d7e756f88a1ce",
      "parents": [
        "833d3168089ec6f686e118e4d8a04a534d496bd3"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:40 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:40 2014 -0400"
      },
      "message": "DeploymentRole is not linked to deployments\n"
    },
    {
      "commit": "833d3168089ec6f686e118e4d8a04a534d496bd3",
      "tree": "4fcd39091dd2b25b019a7fbce1897431d905d55e",
      "parents": [
        "d0a176c6a4729f24b57436e9e3cf862d3d677e23"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:23 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:42:23 2014 -0400"
      },
      "message": "Don\u0027t use config backend type if it\u0027s not set\n"
    },
    {
      "commit": "d0a176c6a4729f24b57436e9e3cf862d3d677e23",
      "tree": "ca2e475822bff76f66482224bf5f26985ce66278",
      "parents": [
        "c217c0ffbd7280bb233c072b805d61fed571b462"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:14:31 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Tue Sep 23 13:14:31 2014 -0400"
      },
      "message": "Disable deployment filtering if the backend_type config option is not set\n"
    },
    {
      "commit": "4a62a2faa334d888da49e252060c6b4baee787ee",
      "tree": "29f5713275974c12cfd3565ac1ae6c78a2350dbb",
      "parents": [
        "9c8dc28cbb69bb9664c22d1711a525eb8d636ec2"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:47:53 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:47:53 2014 -0400"
      },
      "message": "Missing import\n"
    },
    {
      "commit": "9c8dc28cbb69bb9664c22d1711a525eb8d636ec2",
      "tree": "d667c09da9c8cb831d0755a1a6e4ac500332bacd",
      "parents": [
        "2dccff0dca7ca774d11af5c46499f542912f39d0"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:44:39 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:44:39 2014 -0400"
      },
      "message": "We can only import site.py after slice.py, because of a dependency\n"
    },
    {
      "commit": "2dccff0dca7ca774d11af5c46499f542912f39d0",
      "tree": "0d67d40e8b4703d33a499123d9202d82f022ec0b",
      "parents": [
        "56b4f7d80e300088dc6a401a0c2db2ad055bc6fb"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:42:13 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:42:13 2014 -0400"
      },
      "message": "Typo .site\u003c-.deployment\n"
    },
    {
      "commit": "d780d3c57621d9092de63d103cbb8e9f46d3f029",
      "tree": "1ed9adb5de052c54220f4fedd11cd7ef65dedde1",
      "parents": [
        "61e0ba96a7e479954c37f707399c2eac7fbf3589"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:41:15 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 18:41:15 2014 -0400"
      },
      "message": "Re-added imports to __init__.py\n"
    },
    {
      "commit": "130c9a43b3aad6a4efc6f48065f931234f5b5a84",
      "tree": "5b5c806f7f449d2cf6c2075ac892007b23e45294",
      "parents": [
        "037e6f2215caa5496a6ca93fed4e095a8e99d3e9"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:32:35 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:32:35 2014 -0400"
      },
      "message": "Companion to renaming core/models/planetstack\n"
    },
    {
      "commit": "1d1b2b1b8227dec437b98e836b1d08afc85862ed",
      "tree": "a114d02fd80869c586a7b0ee59b64c15725e1481",
      "parents": [
        "59dd0aed279a9f8b67f1b1f36b9cfb1a3cf71134"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:25:06 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:25:06 2014 -0400"
      },
      "message": "Added config import back\n"
    },
    {
      "commit": "f41c5192dbf8b91cd12dd7699783aaffecebcc0a",
      "tree": "7817bf9693db513e9e01518a61f462cfaa05a212",
      "parents": [
        "85b26c8e76978752c5272e9bf428507e50f0e009"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:20:03 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 17:20:03 2014 -0400"
      },
      "message": "Renamed namespace-polluting file\n"
    },
    {
      "commit": "85b26c8e76978752c5272e9bf428507e50f0e009",
      "tree": "41313bdd8431bc44dfc7c8629d631a85bb718d5e",
      "parents": [
        "a828b7efe1104436bddb71e68e43e9cbe43f22b8"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:44 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:44 2014 -0400"
      },
      "message": "Deployment filtering for UserDeployment objects\n"
    },
    {
      "commit": "a828b7efe1104436bddb71e68e43e9cbe43f22b8",
      "tree": "68ad7bc8566dce3023f556a108c1f7f8b85939bd",
      "parents": [
        "d92f8a61b06513031700d9965dd0a04cb756399f"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:09 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:08:09 2014 -0400"
      },
      "message": "Deployment filtering for deployment images\n"
    },
    {
      "commit": "d92f8a61b06513031700d9965dd0a04cb756399f",
      "tree": "e080fd6b68f9debb31c8aa7718cc555fa44f7705",
      "parents": [
        "a660903adfbabcc52460e1ae57b87cacfec1f9a1"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:07:26 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 15:07:26 2014 -0400"
      },
      "message": "Deployment filtering for deployment credentials\n"
    },
    {
      "commit": "a660903adfbabcc52460e1ae57b87cacfec1f9a1",
      "tree": "cb0722b063d592eb07045f2b6743f191417acada",
      "parents": [
        "51ddecd0aa014ac036e3935714d13490461dd1d2"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:55:08 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:55:08 2014 -0400"
      },
      "message": "Deployment filtering for SliceDeployment objects\n"
    },
    {
      "commit": "51ddecd0aa014ac036e3935714d13490461dd1d2",
      "tree": "5f327f2eddc36eb8c984a3353068b720d7818345",
      "parents": [
        "16778cd13fb7a35e6b8b1d99bf00225ab25d6711"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:56 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:56 2014 -0400"
      },
      "message": "Deployment filtering for SiteDeployment objects\n"
    },
    {
      "commit": "16778cd13fb7a35e6b8b1d99bf00225ab25d6711",
      "tree": "482c3a44a9897c8cf62548e563c2c7aecf197301",
      "parents": [
        "9d21dc717c3a927514b471e72e39fd24e97eaa01"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:39 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:39 2014 -0400"
      },
      "message": "Deployment filtering for Deployment Privilege objects\n"
    },
    {
      "commit": "9d21dc717c3a927514b471e72e39fd24e97eaa01",
      "tree": "6bb34e821a6e622e156f0e0f611adb1badb19c82",
      "parents": [
        "abfdb807b73002b2f10c0e5cd308e00f77986839"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:26 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:26 2014 -0400"
      },
      "message": "Deployment filtering for deployment role objects\n"
    },
    {
      "commit": "abfdb807b73002b2f10c0e5cd308e00f77986839",
      "tree": "39b8cfc8e1f952054f45ab2845f830196c52c0b6",
      "parents": [
        "ed7b83bd2916dfaf509772d67ab6744342600645"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:10 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:54:10 2014 -0400"
      },
      "message": "Deployment filtering for deployment objects\n"
    },
    {
      "commit": "ed7b83bd2916dfaf509772d67ab6744342600645",
      "tree": "8e664ace117b487e759845b446fbf8aa86610cee",
      "parents": [
        "c4b980757a0b498de4584757532f8c5ec5475cad"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:52:59 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 22 14:52:59 2014 -0400"
      },
      "message": "Deployment filtering for NetworkDeployment objects\n"
    },
    {
      "commit": "c4b980757a0b498de4584757532f8c5ec5475cad",
      "tree": "1a6688e5cca8a224a142eb779015a3426b6b12f6",
      "parents": [
        "15fdcdbc65092e7bdd398788f2e3c85d1f8ec4aa"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:48:36 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:48:36 2014 -0400"
      },
      "message": "DeploymentLinkDeletionManager for filtering deployment-linked objects\nsuch as UserDeployments and SliceDeployments.\n"
    },
    {
      "commit": "15fdcdbc65092e7bdd398788f2e3c85d1f8ec4aa",
      "tree": "51935e95f61d8ecaf99679b76c1e0517382545ea",
      "parents": [
        "48df09f075c086346254866525b677ac7c69a893"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:48:11 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:48:11 2014 -0400"
      },
      "message": "DeploymentDeletionManager for filtering deleted deployments\n"
    },
    {
      "commit": "48df09f075c086346254866525b677ac7c69a893",
      "tree": "e35047e6919d18f1bf48e2cdade52270d9114abd",
      "parents": [
        "ad6dbd82ca664b682f898076bc2e8839bbdb846e"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:47:40 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:47:40 2014 -0400"
      },
      "message": "DeploymentLinkManager, for filtering deployment-linked objects such as\nUserDeployments, SliceDeployments etc.\n"
    },
    {
      "commit": "ad6dbd82ca664b682f898076bc2e8839bbdb846e",
      "tree": "e48e56b18f5034b5b5559cfec9b1c43049cbfa7f",
      "parents": [
        "79a2e8025d4d1a85e003e4ce3ce29ac0d815db41"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:47:07 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Sep 19 16:47:07 2014 -0400"
      },
      "message": "Deployment manager for filtering deployments based on backend\n"
    },
    {
      "commit": "79a2e8025d4d1a85e003e4ce3ce29ac0d815db41",
      "tree": "990dda8f901bd40faf79f76f356c5cbad27966f7",
      "parents": [
        "ed9cd4f806ca489fb23a299aa18f2d947250c079",
        "0cc3c917c619a8f4f60d8166dfcba7b687105982"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Thu Sep 18 16:25:15 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Thu Sep 18 16:25:15 2014 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n"
    },
    {
      "commit": "02b59521e1cf980a44403bbad84241c71da1f4d5",
      "tree": "d172fee126ab76d57f65120e51fc57953a10aab1",
      "parents": [
        "f80c2bec6d8030a45e16b0951250c71681f259ee"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Sep 17 22:18:46 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Sep 17 22:18:46 2014 -0700"
      },
      "message": "switch from naive timestamps to timezone-aware timestamps\n"
    },
    {
      "commit": "ed9cd4f806ca489fb23a299aa18f2d947250c079",
      "tree": "d58d1f6fb5b633281236f2e006d642c0e12beb31",
      "parents": [
        "f80c2bec6d8030a45e16b0951250c71681f259ee"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Thu Sep 18 00:13:46 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Thu Sep 18 00:13:46 2014 -0400"
      },
      "message": "Added backend_type field to migrations\n"
    },
    {
      "commit": "92f1422ed8232a9330311d3c272d23fea8b2f694",
      "tree": "dd05118981982ec99b6da842c6b93d6198354ea0",
      "parents": [
        "0dd7abd55a099fd35146e6b196c9beeecfa42e93"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 12 12:57:27 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 12 12:57:27 2014 -0700"
      },
      "message": "clean up some deprecation warnings in django 1.7\n"
    },
    {
      "commit": "d6dc5059256412e00fce3cf13ac5613333444120",
      "tree": "0e6d3c65a5e834e0d9dfc88f55f22d8ad0b1bf2e",
      "parents": [
        "09dd0c09d7ae0437a399bd5880d7c5fdc5b18d58"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 12 12:24:24 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 12 12:24:24 2014 -0700"
      },
      "message": "set default for omf_friendly, move get_default_serviceclass outside of model for compaitibility with migrations\n"
    },
    {
      "commit": "09dd0c09d7ae0437a399bd5880d7c5fdc5b18d58",
      "tree": "1e6041b069a23f9b63ad0dc5758b4a8cc1d16940",
      "parents": [
        "87ef01a9f7e96a32f78f030cc3dc66db11522d05"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 12 12:05:51 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Sep 12 12:05:51 2014 -0700"
      },
      "message": "evaluate default for plcorebase.created and plcorebase.updated at time of model creation rather than when python file is loaded\n"
    },
    {
      "commit": "ff5a108680f8586d928e52d69653c2d0f3f0b967",
      "tree": "22ec2f1955e0573ac0723709c7bf66f7a5fbfec8",
      "parents": [
        "fdd62ec7b422b2b0aa9bfad99d32d9352fe698f3"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 01 02:12:01 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 01 02:12:01 2014 -0400"
      },
      "message": "Added missing import for Deployment\n"
    },
    {
      "commit": "fdd62ec7b422b2b0aa9bfad99d32d9352fe698f3",
      "tree": "53b38553153fd6520414a6aec867b4a630f067ee",
      "parents": [
        "4b6d944e0106774f6165e25edd51705ab60deed1"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 01 01:45:28 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 01 01:45:28 2014 -0400"
      },
      "message": "Added DeploymentCredential to set of supported credentials\n"
    },
    {
      "commit": "48426b63bd4123ed6f63a38f3e4e2b401cd5c188",
      "tree": "a77b5b59e837c9d4598ec9373499620127c71398",
      "parents": [
        "2ff2db54bb7000cf536f43970e4b56ad7450a42d"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 08 10:42:39 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 08 10:42:39 2014 -0400"
      },
      "message": "Add credentials module to core list\n"
    },
    {
      "commit": "2ff2db54bb7000cf536f43970e4b56ad7450a42d",
      "tree": "d601e48bd5708f10c2bb344f5a5486af9b3a426f",
      "parents": [
        "f70b9afebb8d0470257bb7ca2450f3d2235b1a9e"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 08 10:42:23 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Mon Sep 08 10:42:23 2014 -0400"
      },
      "message": "Added credentials models for User, Slice and Site objects\n"
    },
    {
      "commit": "39097195176dc08814d8b299b5863f5fb8aabf0c",
      "tree": "78c255d05ca516a46234aaa432b3d00e42b9dc18",
      "parents": [
        "c012017f1ec7c85d651f00cee42739093ec20406"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Thu Sep 04 00:39:19 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Thu Sep 04 00:39:19 2014 -0400"
      },
      "message": "Bug: Models should import model_policy, not model_policies\n"
    },
    {
      "commit": "3a5ef2b669fa08a0d700636efc6f89ccf773ca4e",
      "tree": "bc9212eb5e68b661da77403b76490158e017fae6",
      "parents": [
        "b3aeb1b1270e86d8c85a286de3a5f8443cfee2e5"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 03 15:39:33 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 03 15:39:33 2014 -0400"
      },
      "message": "Add policies feature to user objects\n"
    },
    {
      "commit": "dac8576a7476470b30e1edd4cdf50eb3d2985b03",
      "tree": "414d39797f2a0d6d1679151e08012402893bd26b",
      "parents": [
        "7d4599052f314c3708b58aa2ba058283033369af"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 03 13:19:42 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Sep 03 13:20:06 2014 -0400"
      },
      "message": "raise validation error if slice name prefix is incorrect\n"
    },
    {
      "commit": "0235e983ec665f46ca9dc75d3341c77603cdfd1d",
      "tree": "772ba98041bdf68e2bbb0109f5bd3d7c9539cadb",
      "parents": [
        "29ad9b6ad3a49bda4c8a1c6ee03271b1997d63c1"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 03 13:14:40 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Sep 03 13:14:40 2014 -0400"
      },
      "message": "Include model policies\n"
    },
    {
      "commit": "c19444b2744d3d4b90f2631b27f49cfc0d50d589",
      "tree": "b36fa8397481067d4f5aad1d28d8cdf31868ff55",
      "parents": [
        "7a61dc4281a01fe1be001b4501080f8ceeaecbe3"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 02 17:31:59 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 02 17:31:59 2014 -0700"
      },
      "message": "remove debug code\n"
    },
    {
      "commit": "7a61dc4281a01fe1be001b4501080f8ceeaecbe3",
      "tree": "8acea78f2ee72627c69569ae8001cd6615756eb7",
      "parents": [
        "0a78cb5004687e349f4689a43cb35f26a37c52d9"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 02 17:08:20 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 02 17:08:20 2014 -0700"
      },
      "message": "replace sliver.numberCores with sliver.Flavor, add flavor filtering by deployment to sliver inline\n"
    },
    {
      "commit": "37b47903082795bbbcd6066540e8448e9cb23d9d",
      "tree": "fb36f64c11b3015737c128a03dc94b15daedeb3c",
      "parents": [
        "65b3deb8b0353a5a2599a8302b804fcdfedff213"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 02 14:37:41 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Tue Sep 02 14:37:41 2014 -0700"
      },
      "message": "flavor data model objects and admin\n"
    },
    {
      "commit": "51e7d40824c31c634ea32d76a911360e3a7ee7cf",
      "tree": "6670c34893ee463312f3cde39cdd52f0fee92ab9",
      "parents": [
        "01ef649428b0452c059b679928f324470342bc18"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 29 12:32:46 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 29 12:32:46 2014 -0700"
      },
      "message": "HTTP_ORIGIN wasn\u0027t working on Firefox, changed it to get_host() instead\n"
    },
    {
      "commit": "a36d77e0c9716b0f28b9fda031a751bac2ee11c1",
      "tree": "2ade8d7a4072ae8d3828c3e0d122e5f8541deba5",
      "parents": [
        "866c5b39223e027f89b8e467b8afa35cb4d9c9b0"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 29 11:43:23 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 29 11:43:23 2014 -0700"
      },
      "message": "merge Amisha changes\n"
    },
    {
      "commit": "33df82b61851bfac3e69ac2133d1f75f4eafe6e8",
      "tree": "70b9cfe7b8084d2c7b7380903efa7821d2db8cd0",
      "parents": [
        "c195d72893dc98d0c897619c0c087a07a4917457"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Aug 20 11:29:40 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Aug 20 11:29:40 2014 -0400"
      },
      "message": "pis can view slices at their sites\n"
    },
    {
      "commit": "c195d72893dc98d0c897619c0c087a07a4917457",
      "tree": "80b69d22bd4d670717d3448368f68d77a857a52c",
      "parents": [
        "5cde5f8902b9b6a03bca030c68024e8c5830bf36"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Aug 20 11:15:17 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Aug 20 11:15:17 2014 -0400"
      },
      "message": "pis can update slice objects\n"
    },
    {
      "commit": "5cde5f8902b9b6a03bca030c68024e8c5830bf36",
      "tree": "b637d6b8192d64c1ee17306bac94ff5b66af1a1a",
      "parents": [
        "be8f85044e13571d6901982575d41a2ad82a755b"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Aug 20 09:06:55 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@tux.cs.princeton.edu",
        "time": "Wed Aug 20 09:06:55 2014 -0400"
      },
      "message": "pis can update slice objects\n"
    },
    {
      "commit": "434ca7e2a5452e6992d64800053db560fb517a9a",
      "tree": "5e73b38a37f94aca7e8d3cfc05e504e8db1e17fd",
      "parents": [
        "f24b92753bfc40d16bb7a4e254bd328ffd58dc7a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 15 12:29:20 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Aug 15 12:29:20 2014 -0700"
      },
      "message": "helper code for getting a list of IP addresses from a sliver\n"
    },
    {
      "commit": "5bbaa23b56772545221bf59e632d74c8ab1ca617",
      "tree": "ab48653df0fd9f8e61b595805ad7868262734fab",
      "parents": [
        "feb13440d8d9ddbf40496a0003130d94e9286f6c"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Aug 14 17:23:15 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Aug 14 17:23:15 2014 -0700"
      },
      "message": "punch through portfwd; fix not all ports used in sync_network_slivers\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": "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": "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": "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": "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": "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": "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": "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": "ec06ebad21122feedc6dcb12e9ee1375e8196a84",
      "tree": "07b13949c6e77a966dfff08bd7eedac5e6b85a44",
      "parents": [
        "b2da4d05d2b35046661a1ec467e2d4ef4c0e1036"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 20 18:03:04 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 20 18:03:04 2014 -0700"
      },
      "message": "disable test_acl during sliver save until compatibility issue is worked out\n"
    },
    {
      "commit": "378baea8c78ccd566b8338e342b260df69de5831",
      "tree": "0803c52ed9a8677f0e47a9749b1f6664d2155219",
      "parents": [
        "690f8031c0dccac12375ec4bcf8a017915d42080"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Jun 13 13:37:46 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Jun 13 13:37:46 2014 -0400"
      },
      "message": "Make it possible to go from deployments to sites in the data model.\n"
    },
    {
      "commit": "690f8031c0dccac12375ec4bcf8a017915d42080",
      "tree": "37617e5236e8ca552d6767bfedf5f8d44718db13",
      "parents": [
        "dea3943a380d8a5bcd22a7263cdb626fd439ee58"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Jun 13 12:50:36 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Fri Jun 13 12:50:36 2014 -0400"
      },
      "message": "Added the select_by_user method to the Node object\n"
    },
    {
      "commit": "e5774f96416642de8bba108387643fb27315de0a",
      "tree": "720cb7a34644b6c843a34c2f35aecaf671e0f5e8",
      "parents": [
        "f7b29d209934e04409ec16bb4f66a520b70b10aa",
        "7b836b685f36434a65afc6cf2e5e8fc0ccf0a3b8"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jun 11 17:51:32 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jun 11 17:51:32 2014 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of ssh://git.planet-lab.org/git/plstackapi\n\nConflicts:\n\tplanetstack/core/models/user.py\n"
    },
    {
      "commit": "7b836b685f36434a65afc6cf2e5e8fc0ccf0a3b8",
      "tree": "bbca419f5f2e6841b8b3489fa1c62c87be3b3aee",
      "parents": [
        "b3a7bca64b256dcc09b8ad49a7491e7a3717e74f"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Jun 11 14:37:48 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Wed Jun 11 14:37:48 2014 -0700"
      },
      "message": "move UserDeployments to a separate file to resolve circular reference\n"
    },
    {
      "commit": "f7b29d209934e04409ec16bb4f66a520b70b10aa",
      "tree": "19c62e613a5a1b78ea28cddba0139059dfaab566",
      "parents": [
        "86fd8a38d6ce40991b86c5378e2286ca2dc33420"
      ],
      "author": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jun 11 17:10:11 2014 -0400"
      },
      "committer": {
        "name": "Sapan Bhatia",
        "email": "gwsapan@gmail.com",
        "time": "Wed Jun 11 17:10:11 2014 -0400"
      },
      "message": "Deployment is imported out of Site.\n"
    },
    {
      "commit": "709831872dcc963a661ab01a1e5d355df82c2bee",
      "tree": "2870d2ebea5caa691837a52542989d5144325790",
      "parents": [
        "3f128f2049f947f2d3ae9ef1a5a4ae71edcc91ef"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 09 22:10:00 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 09 22:10:00 2014 -0700"
      },
      "message": "help text for deployment sites\n"
    },
    {
      "commit": "01a4cd0d6ee2346d4af9eb9849da0681ef76c786",
      "tree": "5a557292515635e5b1724e08c5f299c4935ef6b7",
      "parents": [
        "3b678740bc0feedb21870b06fbc15a5dfb0ffeec"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 09 13:12:40 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 09 13:12:40 2014 -0700"
      },
      "message": "fix filtering of deployments when adding slivers\n"
    },
    {
      "commit": "cb95fdea5aba8d5af12e33a342727acc34fb8beb",
      "tree": "39a801319d606b509f6cfb6afb856300c4b8c5ad",
      "parents": [
        "57ec5d3f258d11bbd4516d65b910eac9841c6908"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 06 16:09:51 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 06 16:09:51 2014 -0700"
      },
      "message": "fix select_by_acl to return a queryset\n"
    },
    {
      "commit": "57ec5d3f258d11bbd4516d65b910eac9841c6908",
      "tree": "0e33fcf69aa3a5478eaf97c1055a062658639a92",
      "parents": [
        "e6ac0f2d4eb3f5a20e816524af6e89294d430281"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 06 14:56:20 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 06 14:56:20 2014 -0700"
      },
      "message": "merge tony\u0027s changes to deployment\n"
    },
    {
      "commit": "5380c524b5abe5f85f6322bda393af53ea171ee2",
      "tree": "368b25f3fd63ae7fca890d35022589b43d2224c2",
      "parents": [
        "94383519b0e4e1f7cf8777c3a9784ed2dd2aad26"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 06 14:49:43 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri Jun 06 14:49:43 2014 -0700"
      },
      "message": "acl support for deployments\n"
    },
    {
      "commit": "94383519b0e4e1f7cf8777c3a9784ed2dd2aad26",
      "tree": "db143d51cd0664248543438cf87b38e40065551b",
      "parents": [
        "3bcf71ec77be4d44007e02837c0ee79701fbb91a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Jun 05 17:21:49 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Thu Jun 05 17:21:49 2014 -0700"
      },
      "message": "models in deployment.py appear to have been moved to site.py\n"
    },
    {
      "commit": "67699937b3125093706810249b2134d615096b11",
      "tree": "eacb50c0e90b62d9b685ebb9a1ac23e702474169",
      "parents": [
        "e3969b2367283415f7ff474e243de02aa13acc75"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 02 23:19:08 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon Jun 02 23:19:08 2014 -0700"
      },
      "message": "include imagedeployments\n"
    },
    {
      "commit": "9c7a1e1391145d425227dd6da7dabd429bb53844",
      "tree": "a540aebc6df15720d5d8fa7504f7810ab309e2db",
      "parents": [
        "d57ace7656f8ead07559f4e267d00f4f30656d1d"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri May 30 14:42:42 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri May 30 14:42:42 2014 -0700"
      },
      "message": "userdata support for instance creation\n"
    },
    {
      "commit": "65d5a9a875cf308e5a074dcf2e21064a3a0c0949",
      "tree": "fdb62037f8a79b6d660d639e8dbb64662258a5cb",
      "parents": [
        "268b7249bb64273b939b36807bca06106b7eedb7"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon May 26 15:58:09 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon May 26 15:58:09 2014 -0700"
      },
      "message": "send error message to stderr instead of stdout\n"
    },
    {
      "commit": "fd44dfcb7504e49b93adbb5ddc9b4613b0e394c0",
      "tree": "fd673af5c223d2ea2bcfbfa64cd99a72a212202d",
      "parents": [
        "f66ffc527af3322375724899db2e5f0275e28932"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri May 23 13:20:53 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Fri May 23 13:20:53 2014 -0700"
      },
      "message": "fix observer notification error\n"
    },
    {
      "commit": "2c3cb64a0a5f79e657afb456413e7fbc5c67903f",
      "tree": "d3759e5ba8f412a857b0e214ec72e521420384a0",
      "parents": [
        "5cc598dfd42d9e990aec735a2ae232c09cc4e92a"
      ],
      "author": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon May 19 17:55:56 2014 -0700"
      },
      "committer": {
        "name": "Scott Baker",
        "email": "smbaker@gmail.com",
        "time": "Mon May 19 17:55:56 2014 -0700"
      },
      "message": "dynamic home view with customization\n"
    },
    {
      "commit": "bf39d9fcc245717369dc938fc47db69be6e4ac08",
      "tree": "285d50e6657ce362f109167433a94197aedf8d97",
      "parents": [
        "09fad0257209bde94b5ec38da63d7583f7f632be"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue May 06 21:42:36 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue May 06 21:42:36 2014 -0400"
      },
      "message": "sync images across deployments\n"
    },
    {
      "commit": "29bf5e8edb855d32e671e4ebcaf15eecc40258d0",
      "tree": "3a078555ed744db1a459dbee2f557b9dadb1eeba",
      "parents": [
        "7cc6c7fc9190bd1931982cc828030b83b1edc72c"
      ],
      "author": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 29 21:40:24 2014 -0400"
      },
      "committer": {
        "name": "Tony Mack",
        "email": "tmack@paris.CS.Princeton.EDU",
        "time": "Tue Apr 29 21:40:35 2014 -0400"
      },
      "message": "added max_slivers (instance) quota attribute to slice model\n"
    }
  ],
  "next": "27b5a8a219c9e458a00952f21f0b1d61bec91d97"
}
