)]}'
{
  "log": [
    {
      "commit": "50fc97deca1213738ae2e8d23a0195c92d109f57",
      "tree": "16c987225e2f4a14a992f39af268ada526b58104",
      "parents": [
        "52d30766f193cab00618eb5a4ccacc2e75df948d"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Jul 16 12:29:01 2015 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Jul 16 12:29:01 2015 +0200"
      },
      "message": "make the comment a bit more relevant\n"
    },
    {
      "commit": "52d30766f193cab00618eb5a4ccacc2e75df948d",
      "tree": "8d9e8bc3fbc7e466c91639712e67c657557552e7",
      "parents": [
        "b9396a1d6805d428b033ea59e86d0247ae10f21a"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Jul 16 10:07:05 2015 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Jul 16 10:07:05 2015 +0200"
      },
      "message": "add explanatory comment\n"
    },
    {
      "commit": "08096234182b4c2b4d319ae26dc40ebb81aa4bc7",
      "tree": "a5d54a5072a4a55ebe0a18e33435c0022584d8de",
      "parents": [
        "f956c6c6c0c55844eff4b153b5071ef6e3ab4ab4"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Jul 13 12:47:28 2015 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Jul 13 12:47:28 2015 +0200"
      },
      "message": "Add MD5 checksum check to file uploads\n"
    },
    {
      "commit": "24c2083ca82e89f341491669ab8d6d9a0ebc1856",
      "tree": "0cdde386415e50118fbd6c7cb2f3c86bc0c0e2f1",
      "parents": [
        "d6b600407bab798547d0194f21aab91bd560880a"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Jun 30 09:57:00 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Jun 30 09:57:00 2015 -0600"
      },
      "message": "IDFromName functions\n"
    },
    {
      "commit": "5d1d8354d69fe8b3938db7d147f01bf5af1375e1",
      "tree": "b59a69df89ff5414f30457ff78aedc41a5c2b057",
      "parents": [
        "14f716bde917104bfc4326cc0ec8ea78c54322d0"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:08:09 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:08:09 2015 -0600"
      },
      "message": "fix typo in comment"
    },
    {
      "commit": "14f716bde917104bfc4326cc0ec8ea78c54322d0",
      "tree": "d26e774ffde3fe9c151945a253dd47a1f50c685b",
      "parents": [
        "376d4f756f26bc2d85a03a495fcf6e7e4d91abaf"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:07:52 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:07:52 2015 -0600"
      },
      "message": "fix typo in comment"
    },
    {
      "commit": "376d4f756f26bc2d85a03a495fcf6e7e4d91abaf",
      "tree": "3c8404f9dc9191aa13d17ac777dd7f91be08d956",
      "parents": [
        "0ba79da787e1813aa798928e8e53d82e61e782a2"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:07:34 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:07:34 2015 -0600"
      },
      "message": "fix typo in comment"
    },
    {
      "commit": "0ba79da787e1813aa798928e8e53d82e61e782a2",
      "tree": "f19d8422f5a7383a4aba9fba95ee9878117df655",
      "parents": [
        "5c1d7336141b31fe2353aa1fb9256e8255ef28ae"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:07:18 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:07:18 2015 -0600"
      },
      "message": "fix typo in comment"
    },
    {
      "commit": "5c1d7336141b31fe2353aa1fb9256e8255ef28ae",
      "tree": "22b5b821898767bfb39e9cca5ba8f1033ed4edd1",
      "parents": [
        "00399b4b18cfe53277b66cdf896fae9c671c6534"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:01:39 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:01:39 2015 -0600"
      },
      "message": "fix resource name in error msgs"
    },
    {
      "commit": "00399b4b18cfe53277b66cdf896fae9c671c6534",
      "tree": "d19eaddfa68e33f78469a41822cfbedad9364daa",
      "parents": [
        "dbec8c063f741a9de0da76ff7b1f25ad2ca0bfc9"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:00:45 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 19:00:45 2015 -0600"
      },
      "message": "fix resource name in error msgs"
    },
    {
      "commit": "dbec8c063f741a9de0da76ff7b1f25ad2ca0bfc9",
      "tree": "5cf1ab31c674f1d33c587be0f18727134dc92dda",
      "parents": [
        "7ab1328f3a8af724d8cfe424c3418bec84bd0b61"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 18:59:43 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 18:59:43 2015 -0600"
      },
      "message": "fix resource name in error msgs"
    },
    {
      "commit": "7ab1328f3a8af724d8cfe424c3418bec84bd0b61",
      "tree": "c7c55b0785fa37f9e38452d30cd592a9c952b776",
      "parents": [
        "e52d480bf91eca5a6ff7f2e1ae46839eae3c8ff3"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 18:47:19 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Sun Jun 28 18:47:19 2015 -0600"
      },
      "message": "IDFromName for networking resources\n"
    },
    {
      "commit": "6b0a8835f2c650ab147e658d7e6dbc9cc5a03d5c",
      "tree": "df67fcaeb70129d21977e8270415a84a19e90dbd",
      "parents": [
        "fab1f3d270f58c199398e892c2c9c234fe2147d8"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Jun 04 14:32:30 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Jun 04 14:32:30 2015 -0600"
      },
      "message": "IDFromName for servers\n"
    },
    {
      "commit": "4267c944ff18537b89b358303ba6a2b82f787ecb",
      "tree": "9d4465bd02dfd07ccc828f35ac39e61f43b14dfb",
      "parents": [
        "ad5f1cb6a9b514f83a3c00c0512eed7231a89b3f"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Fri May 22 10:59:35 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Fri May 22 10:59:35 2015 -0600"
      },
      "message": "fix formatting in bfv"
    },
    {
      "commit": "ad5f1cb6a9b514f83a3c00c0512eed7231a89b3f",
      "tree": "7c0834f236b7c3749f655a553c4da2189ef700a4",
      "parents": [
        "13e171c4aedda11ba89d2fa383c2048d02a0ea4f"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed May 20 10:38:13 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed May 20 10:38:13 2015 -0600"
      },
      "message": "create server helper fields\n"
    },
    {
      "commit": "a2c88b2489af97a4d91044c89124c03c28fd7872",
      "tree": "1321f1e903cc2babee7f578faf2c28a2a4d5a09a",
      "parents": [
        "9ad4137a6b3e786b9c1e161b8d354b44482ab6d7"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon May 18 11:23:30 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon May 18 11:23:30 2015 -0600"
      },
      "message": "fix object storage nil pointer deref error\n"
    },
    {
      "commit": "9ad4137a6b3e786b9c1e161b8d354b44482ab6d7",
      "tree": "4d49df1486ee4b686af18df5ed07b5a93aecc159",
      "parents": [
        "f0815a0e314ce696b0bb4e464bf81b446c7a06fe",
        "4d6c6e7448c7ad1fcad4a47163d859effda8751c"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed May 06 10:16:05 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed May 06 10:16:05 2015 -0600"
      },
      "message": "Merge pull request #413 from doubledutch/personality\n\nServer personality"
    },
    {
      "commit": "4d6c6e7448c7ad1fcad4a47163d859effda8751c",
      "tree": "90e1cec177166c343a54c7d51a789e9739e55373",
      "parents": [
        "60c1e89989c02563a8ec2d154897c9f2888e6893"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue May 05 17:09:27 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue May 05 17:09:27 2015 -0700"
      },
      "message": "remove duplicate test from bad merge\n"
    },
    {
      "commit": "7d6989cff7d273d5baa9ce2bb995e5df4f332545",
      "tree": "6870e275d5f278d852a347f6cc4070a98f8b75c7",
      "parents": [
        "eb4e44cfe13264adbd924c0fbbbdfe802ed68c5f"
      ],
      "author": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Tue May 05 20:38:08 2015 +0000"
      },
      "committer": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Tue May 05 20:38:08 2015 +0000"
      },
      "message": "Allows for more complex scheduling queries.\n"
    },
    {
      "commit": "9748b7b31b1ffaf151585efddc604b4c2e568d55",
      "tree": "173e7efc368ac74efd2c3df2b32491755307942a",
      "parents": [
        "9546f89ca628fa47d34f8f731f38b22fdb988def"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue May 05 07:34:07 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue May 05 07:34:07 2015 -0700"
      },
      "message": "improves File documentation\n"
    },
    {
      "commit": "9546f89ca628fa47d34f8f731f38b22fdb988def",
      "tree": "663da461c233f136d8de6a05f02099b62d1fd0bc",
      "parents": [
        "b11111a28070df34a6ee5d6cc7a885b32705840e",
        "25d4569e391add43e08c9fa745ea04d375c1596b"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue May 05 07:33:26 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue May 05 07:33:26 2015 -0700"
      },
      "message": "Merge branch \u0027personality\u0027 of https://github.com/doubledutch/gophercloud into personality\n\nConflicts:\n\topenstack/compute/v2/servers/requests_test.go\n"
    },
    {
      "commit": "eb4e44cfe13264adbd924c0fbbbdfe802ed68c5f",
      "tree": "fe04dd57ba9b439f446af46d2f9ccf3a071d8a7c",
      "parents": [
        "a3ee2e8d4660909264d6182aef1b9da39e00f99f",
        "a69b347c1f44f04da9014a6acc623fe62c557bf2"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon May 04 13:50:54 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon May 04 13:50:54 2015 -0600"
      },
      "message": "Merge pull request #425 from b0d0nne11/brendan/fix-swift-upload-retries\n\nUse a ReadSeeker for upload content and rewind the offset on retries"
    },
    {
      "commit": "27a624346bcb6dbdb05188699446b555c6918224",
      "tree": "ddd4d790587b816b4d5a898b5cc739650756a6da",
      "parents": [
        "f3ced00552c1c7d4a6184500af9062cfb4ff4463"
      ],
      "author": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Sat Apr 18 01:48:50 2015 +0000"
      },
      "committer": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Mon May 04 06:06:41 2015 +0000"
      },
      "message": "Scheduler Hints\n\nThis commit adds the ability to specify scheduling hints for the\ninstances. Scheduling hints alter the placement of instances in\nthe OpenStack cloud by using a variety of attributes.\n"
    },
    {
      "commit": "a69b347c1f44f04da9014a6acc623fe62c557bf2",
      "tree": "4f5293f8061465269c5616a0fe7a37ae004ddb6d",
      "parents": [
        "f3ced00552c1c7d4a6184500af9062cfb4ff4463"
      ],
      "author": {
        "name": "Brendan ODonnell",
        "email": "brendan.james.odonnell@gmail.com",
        "time": "Mon Apr 27 13:59:41 2015 -0500"
      },
      "committer": {
        "name": "Brendan ODonnell",
        "email": "brendan.james.odonnell@gmail.com",
        "time": "Tue Apr 28 10:01:24 2015 -0500"
      },
      "message": "Use a ReadSeeker for upload content and rewind the offset on retries\n"
    },
    {
      "commit": "25d4569e391add43e08c9fa745ea04d375c1596b",
      "tree": "3ea6751a2cde5dce426336fb274b5199731aaa52",
      "parents": [
        "f3ced00552c1c7d4a6184500af9062cfb4ff4463",
        "a2bfaeafd64f3f6079970a8277a90917eaa84a6c"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Thu Apr 23 17:20:09 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Thu Apr 23 17:20:09 2015 -0700"
      },
      "message": "Merge branch \u0027personality\u0027 of github.com:doubledutch/gophercloud\n\nConflicts:\n\topenstack/compute/v2/servers/requests_test.go\n"
    },
    {
      "commit": "b11111a28070df34a6ee5d6cc7a885b32705840e",
      "tree": "ccd29a263e842aebc3df8d2781945a9391489aaf",
      "parents": [
        "a2bfaeafd64f3f6079970a8277a90917eaa84a6c",
        "f3ced00552c1c7d4a6184500af9062cfb4ff4463"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Thu Apr 23 17:14:22 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Thu Apr 23 17:14:22 2015 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of https://github.com/rackspace/gophercloud into personality\n\nConflicts:\n\topenstack/compute/v2/servers/requests_test.go\n"
    },
    {
      "commit": "a2bfaeafd64f3f6079970a8277a90917eaa84a6c",
      "tree": "de56818647568fd9498f238a0a30e418cff3dd58",
      "parents": [
        "92e10b5121e95c71bd15fbd6e41588f89e9c1e90"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue Apr 21 11:45:59 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Tue Apr 21 11:45:59 2015 -0700"
      },
      "message": "use MarshalJSON\n"
    },
    {
      "commit": "f3ced00552c1c7d4a6184500af9062cfb4ff4463",
      "tree": "13b5ead28697d82d5dbcfdb50598f3f82abd9545",
      "parents": [
        "358892c1c3a179ee177324c713af136de6df746c",
        "4e5fdafae36fa6e6a9d6a93434ac09caf28bf9ec"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Fri Apr 17 10:43:18 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Fri Apr 17 10:43:18 2015 -0600"
      },
      "message": "Merge pull request #421 from ZettaIO/serveraction-createimage\n\nserver action to create a server image / snapshot"
    },
    {
      "commit": "4e5fdafae36fa6e6a9d6a93434ac09caf28bf9ec",
      "tree": "18bb769f664f0288f38f0e57d5d9fbb0f9d8052d",
      "parents": [
        "2fc665ec3ca945f0bcc070f64eb0fbf4bb3d1a3a"
      ],
      "author": {
        "name": "einarf",
        "email": "eforselv@gmail.com",
        "time": "Thu Apr 16 23:14:59 2015 +0000"
      },
      "committer": {
        "name": "einarf",
        "email": "eforselv@gmail.com",
        "time": "Thu Apr 16 23:14:59 2015 +0000"
      },
      "message": "Naming convention and better parsing of Location\n"
    },
    {
      "commit": "358892c1c3a179ee177324c713af136de6df746c",
      "tree": "7a4ec73d1a597c32adce3e146e8a80d3b7b4446d",
      "parents": [
        "224a0cf7bd29e7f70f2434d564ca61afa31cd9e9",
        "8c1e03721d5bbc6cdbdd0c94cbfa30091ad7c60f"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Apr 16 15:55:47 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Apr 16 15:55:47 2015 -0600"
      },
      "message": "Merge pull request #417 from pantheon-systems/imageDelete\n\nadd image.Delete operation"
    },
    {
      "commit": "2fc665ec3ca945f0bcc070f64eb0fbf4bb3d1a3a",
      "tree": "f5a123231bcc1719620562ec0ac27cd7cfa4a34d",
      "parents": [
        "224a0cf7bd29e7f70f2434d564ca61afa31cd9e9"
      ],
      "author": {
        "name": "einarf",
        "email": "eforselv@gmail.com",
        "time": "Thu Apr 16 20:16:21 2015 +0000"
      },
      "committer": {
        "name": "einarf",
        "email": "eforselv@gmail.com",
        "time": "Thu Apr 16 20:16:21 2015 +0000"
      },
      "message": "Added support for a server action to create a server image / snapshot\n"
    },
    {
      "commit": "8c1e03721d5bbc6cdbdd0c94cbfa30091ad7c60f",
      "tree": "8c79c77c27e1bdb22af4dc62182ffd48ed142a3f",
      "parents": [
        "ab02e57b4ccdda04b56c057fcb8f2dfb4e2164b0"
      ],
      "author": {
        "name": "Jesse Nelson",
        "email": "spheromak@gmail.com",
        "time": "Thu Apr 16 10:54:40 2015 -0700"
      },
      "committer": {
        "name": "Jesse Nelson",
        "email": "spheromak@gmail.com",
        "time": "Thu Apr 16 10:54:40 2015 -0700"
      },
      "message": "Fixup URL assembly, add simple test\n"
    },
    {
      "commit": "c9fb21bc0eb90bac419a4634e873f5132d57dea7",
      "tree": "8e23845f9a82de259e6eb04cfce28e9618254c97",
      "parents": [
        "d2c2ad58822782f3bc283c6c342229417cb8b538"
      ],
      "author": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Sun Feb 22 05:55:48 2015 +0000"
      },
      "committer": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Wed Apr 15 03:13:09 2015 +0000"
      },
      "message": "Adds os-server-groups\n\nThis commit adds support for the os-server-groups extension. This allows\nusers to create scheduling policies for launching instances.\n"
    },
    {
      "commit": "ab02e57b4ccdda04b56c057fcb8f2dfb4e2164b0",
      "tree": "c8df958f184ad4da4ac0c2bfbcabd41f89b040bb",
      "parents": [
        "d2c2ad58822782f3bc283c6c342229417cb8b538"
      ],
      "author": {
        "name": "Jesse Nelson",
        "email": "spheromak@gmail.com",
        "time": "Tue Apr 14 16:28:21 2015 -0700"
      },
      "committer": {
        "name": "Jesse Nelson",
        "email": "spheromak@gmail.com",
        "time": "Tue Apr 14 16:42:48 2015 -0700"
      },
      "message": "add image.Delete operation\n"
    },
    {
      "commit": "92e10b5121e95c71bd15fbd6e41588f89e9c1e90",
      "tree": "3b38a7080e0be474aef23d9f3793cc82629d8c90",
      "parents": [
        "edcbc3175144ab62e7305f499f554fbb484a649e"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Fri Apr 10 15:16:57 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Fri Apr 10 15:40:41 2015 -0700"
      },
      "message": "Encapsulate Personality. Encode contents for user\n"
    },
    {
      "commit": "edcbc3175144ab62e7305f499f554fbb484a649e",
      "tree": "4fbed7c7c282c85cc071074786a74710fd4973b1",
      "parents": [
        "7bf54c546dd62115ad81f35135f0a1e8f13e49e4",
        "ce0f487f6747ab43c4e4404722df25349385bebd"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Fri Apr 10 11:07:14 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Fri Apr 10 11:07:14 2015 -0700"
      },
      "message": "Merge branch \u0027master\u0027 into personality\n"
    },
    {
      "commit": "7bf54c546dd62115ad81f35135f0a1e8f13e49e4",
      "tree": "50328d27eacc50ebd137f5b99d575e7844aab94f",
      "parents": [
        "b0ca32199b099f4e7a47e1b1f6c2f9e0b8c60e84"
      ],
      "author": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Thu Apr 09 11:27:29 2015 -0700"
      },
      "committer": {
        "name": "Kevin Pike",
        "email": "kpike@doubledutch.me",
        "time": "Fri Apr 10 09:23:12 2015 -0700"
      },
      "message": "updates personality to []map[string]string where map has path and contents\n"
    },
    {
      "commit": "08b33d54f1a13a91bf3ea1e1318480296b6fe1c2",
      "tree": "b04037f7cdc62e43f32e6070c940d90f9cfc2350",
      "parents": [
        "b2663b2470bd12e1ce3c8b0b688afbb474ae4b85"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Wed Apr 01 01:34:17 2015 +0200"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Wed Apr 01 02:31:11 2015 +0200"
      },
      "message": "Build v3 auth scope from AuthOptions\n"
    },
    {
      "commit": "b2663b2470bd12e1ce3c8b0b688afbb474ae4b85",
      "tree": "86c1b64c9d069b10a0dbb35a252086aefc64d438",
      "parents": [
        "c043a3dbbfe4bd62b05d311aa320719181dd9058"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Wed Apr 01 01:23:29 2015 +0200"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Wed Apr 01 02:31:11 2015 +0200"
      },
      "message": "Use service catalog to get services URLs\n"
    },
    {
      "commit": "c043a3dbbfe4bd62b05d311aa320719181dd9058",
      "tree": "b6694d203901b597c03638d535e92f0d112916b4",
      "parents": [
        "ff20f722cc715b76aa2e1e12b00e1a49995dd736"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Wed Apr 01 01:19:55 2015 +0200"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Wed Apr 01 01:35:23 2015 +0200"
      },
      "message": "Extract Keystone v3 service catalog\n\nFix #407\n"
    },
    {
      "commit": "d341609d4e0ee984e1af1f70a5b7d220b9293f85",
      "tree": "6aca3ce6905b0e2fe1732f4ff15412cdb065e8ec",
      "parents": [
        "0797429f43b1c961b9bcfebc935772f26a59f53e"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Fri Mar 27 10:36:34 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Fri Mar 27 10:36:34 2015 -0600"
      },
      "message": "go fmt\n"
    },
    {
      "commit": "1d27afae4f5fbb0698293de9cf769c1c88de861a",
      "tree": "9145675ad60d3423ab8ad1cfe5017d4a5f1e260a",
      "parents": [
        "059e1509bb576ce67993d0dd66a2e4dbf7757be3"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 16:20:45 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 16:20:45 2015 +0100"
      },
      "message": "Add Orchestration + ObjectStore HTTP operations\n"
    },
    {
      "commit": "059e1509bb576ce67993d0dd66a2e4dbf7757be3",
      "tree": "ec2ee4b82fe5e4f133a36b1000f74387d8c564b5",
      "parents": [
        "562a7d55b3b9673b4804ce470f9dbe0c24c14895"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 16:20:32 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 16:20:32 2015 +0100"
      },
      "message": "Add Networking HTTP operations\n"
    },
    {
      "commit": "562a7d55b3b9673b4804ce470f9dbe0c24c14895",
      "tree": "713a38a08e7c342e2f227eda1375dc553e839561",
      "parents": [
        "6a3a78f48ebb00f9bb919cfbae5d1d84bfacb550"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 16:20:16 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 16:20:16 2015 +0100"
      },
      "message": "Add Identity HTTP operations\n"
    },
    {
      "commit": "6a3a78f48ebb00f9bb919cfbae5d1d84bfacb550",
      "tree": "a49521cc70d39a069695a2d88838f26d47cc7bed",
      "parents": [
        "22aa42bf3b0532275ebc850f6f790f8e7d7f3a1c"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 14:56:12 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 14:56:12 2015 +0100"
      },
      "message": "Change HTTP methods for OpenStack Compute\n"
    },
    {
      "commit": "22aa42bf3b0532275ebc850f6f790f8e7d7f3a1c",
      "tree": "e87d6137e3658595eb9cbecd8023ad4af2e6e54c",
      "parents": [
        "6181fdb81e80a982325be345d0882b218df3ef71"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 14:56:04 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 14:56:04 2015 +0100"
      },
      "message": "Change HTTP methods for OpenStack CDN\n"
    },
    {
      "commit": "6181fdb81e80a982325be345d0882b218df3ef71",
      "tree": "cbed519c4b36beb1720b790db4b943a4e9dc0cdc",
      "parents": [
        "2a9e74ffddc4e0ec779a4ca0415c06f86358371a"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 14:55:50 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Mar 24 14:55:50 2015 +0100"
      },
      "message": "Change HTTP methods for OpenStack block storage\n"
    },
    {
      "commit": "c530ba1ac117c3a2c381e9aedc31f687480f6e79",
      "tree": "ee58233e264142c13b107241db19fc8e6aca654b",
      "parents": [
        "647cea513a78fedb64875ed62c6064db1534a030"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Mar 23 17:50:46 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Mar 23 17:50:46 2015 +0100"
      },
      "message": "Refactor OpenStack services to use default OkCodes\n"
    },
    {
      "commit": "bae34462ca5287123aab5cf9f5a80d25b9d172eb",
      "tree": "ad952db231a30fa1e331a660110e91f91ac43cc7",
      "parents": [
        "8bacd0e5066ce23549f3450b7de17c304d7eeb34",
        "24019b15824e19f56fe9744a982f143159958710"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Mar 11 09:36:54 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Mar 11 09:36:54 2015 -0600"
      },
      "message": "Merge pull request #395 from jrperritt/rs-security-groups\n\n[wip] Rackspace Neutron Security Groups; Closes #391"
    },
    {
      "commit": "24019b15824e19f56fe9744a982f143159958710",
      "tree": "fddd662d637d163c8da0d2f1efd5f06975a17b7c",
      "parents": [
        "8c2139d257131b522eb653853e5d27010f9a43d1"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Mar 11 09:31:15 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Mar 11 09:31:15 2015 -0600"
      },
      "message": "are -\u003e is in docs\n"
    },
    {
      "commit": "b0b9c0d5d1b89c56c38534a138d12c902a522de0",
      "tree": "18e938d374ca7f66fd2e3d23ce93100e2f474e07",
      "parents": [
        "590bb047a9a84a879a3e31db2beb70db050bc358"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Mar 10 17:24:08 2015 -0600"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Mar 10 17:24:08 2015 -0600"
      },
      "message": "weak decode NetworkExtAttrs\n"
    },
    {
      "commit": "590bb047a9a84a879a3e31db2beb70db050bc358",
      "tree": "fa8b19562fafd3833db24309d68b779a991c8b8b",
      "parents": [
        "b832838a229c10ebe6a0eae2bd05a5f88d1c9706",
        "1b2bafe5696277012382a0b8c9d5504176032195"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Mar 10 08:52:10 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Mar 10 08:52:10 2015 -0600"
      },
      "message": "Merge pull request #394 from kazegusuri/fix_reauth\n\nfix recursive reauth failure"
    },
    {
      "commit": "b832838a229c10ebe6a0eae2bd05a5f88d1c9706",
      "tree": "f93e68525110110a8b347896fe23a2bac4d43407",
      "parents": [
        "b0ca32199b099f4e7a47e1b1f6c2f9e0b8c60e84",
        "7a54fe193c9c7f42148aec4d2387ec804fc189f7"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon Mar 09 09:31:36 2015 -0600"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon Mar 09 09:31:36 2015 -0600"
      },
      "message": "Merge pull request #378 from jrperritt/list-server-addresses\n\nList Server Addresses; Closes #286"
    },
    {
      "commit": "1b2bafe5696277012382a0b8c9d5504176032195",
      "tree": "28c971c8adbb9f9c5b34dc29548c8d8256c1d17e",
      "parents": [
        "6753165c3bb83a2b41bc495210509eacb12926d6"
      ],
      "author": {
        "name": "Masahiro Sano",
        "email": "sabo.ttenda@gmail.com",
        "time": "Fri Mar 06 23:26:54 2015 +0900"
      },
      "committer": {
        "name": "Masahiro Sano",
        "email": "sabo.ttenda@gmail.com",
        "time": "Fri Mar 06 23:34:49 2015 +0900"
      },
      "message": "fix recursive reauth failure\n\nIf both password and token are specified, token is always used in Identity API v2.\nEven after token is expired, the expired token is used for re-authentication. This\nfixes recursive re-authetication failure by clearing token before calling reauth method.\n\n# Please enter the commit message for your changes. Lines starting\n# with \u0027#\u0027 will be kept; you may remove them yourself if you want to.\n# An empty message aborts the commit.\n# On branch fix_reauth\n# Your branch is up-to-date with \u0027origin/fix_reauth\u0027.\n#\n# Changes to be committed:\n#\tmodified:   openstack/client.go\n#\n"
    },
    {
      "commit": "a11b5df8a7b14fb0e5adfdcab41a3b8a9b757ead",
      "tree": "11740609a3fab8059848fee5c709cdddab77872b",
      "parents": [
        "6753165c3bb83a2b41bc495210509eacb12926d6"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Mar 05 13:51:59 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Mar 05 13:54:25 2015 -0700"
      },
      "message": "add logic to handle AllPages result page\n"
    },
    {
      "commit": "6753165c3bb83a2b41bc495210509eacb12926d6",
      "tree": "49af95157f8bf122ea45f3afc91c31aed707c5e5",
      "parents": [
        "be9b37d06505588577c18a0baecfd3d81a9504f1",
        "7f658c19287c73ad4df82ae2eb16f9958a95b892"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Mar 05 12:07:54 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Mar 05 12:07:54 2015 -0500"
      },
      "message": "Merge pull request #392 from jrperritt/go-tip-failing-unit-test\n\nUnit test failing on Go Tip"
    },
    {
      "commit": "7f658c19287c73ad4df82ae2eb16f9958a95b892",
      "tree": "0bdd4814b91a3bb04d25dfa64d79fef1162070e2",
      "parents": [
        "2474fbb6d4f4586bc7de1c1b3c53cd40ad66a0aa"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Mar 05 09:58:44 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Mar 05 09:58:44 2015 -0700"
      },
      "message": "add comment about go version\n"
    },
    {
      "commit": "2474fbb6d4f4586bc7de1c1b3c53cd40ad66a0aa",
      "tree": "2596ca820bf48ec43cb550ae1da35de30f300c3e",
      "parents": [
        "cf6e524c08446812381e71befaaa4182ed853629"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Mar 05 09:49:50 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Mar 05 09:49:50 2015 -0700"
      },
      "message": "comment for filler line\n"
    },
    {
      "commit": "cf6e524c08446812381e71befaaa4182ed853629",
      "tree": "49815a8c326b80d2ecfabc3ac5e4f3d2327c02e0",
      "parents": [
        "32d0a893a8ef70abe76dc5153e2925b39cbea7f7"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Mar 04 09:36:19 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Mar 04 09:36:19 2015 -0700"
      },
      "message": "add filler line to avoid runtime issue\n"
    },
    {
      "commit": "c21202d77bc24112dec44632c11c9c4ee666f669",
      "tree": "930d37e14f0f460570b8c812101fbdb58efafd50",
      "parents": [
        "75c3fecab50deff8ff90bce2147a9d3140c5a13f"
      ],
      "author": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Fri Feb 27 21:32:58 2015 +0000"
      },
      "committer": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Wed Mar 04 04:00:15 2015 +0000"
      },
      "message": "os-tenant-networks\n\nThis commit adds support for the os-tenant-networks extension.\n"
    },
    {
      "commit": "b51ba9c71d184791cf7d0333d7a08ed55f66ba01",
      "tree": "28817646275b50545c0ec7c8721a8a9dfb661183",
      "parents": [
        "7ed68551e4a7f3047566741b51fd5a352ff341b3"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon Feb 23 10:56:35 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon Feb 23 11:02:25 2015 -0700"
      },
      "message": "return slice (!map) from ExtractNetworkAddresses\n"
    },
    {
      "commit": "cff75ecb818be718953150263d6b48f28d3c4ad6",
      "tree": "45720eb210e091769169f651404c6b63cec81497",
      "parents": [
        "7ca169d371b29e3dbab9e631c3a6151896b06330",
        "3d0a185cd0120ba88b983a57772602645cf76ba4"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Fri Feb 20 15:17:58 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Fri Feb 20 15:17:58 2015 +0100"
      },
      "message": "Merge pull request #377 from jrperritt/get-all-pages\n\nGet All Pages; Closes #298"
    },
    {
      "commit": "04d073cf46393bae002a26ce5b0e2a0d9af6efca",
      "tree": "23f7852eff0c2b88527861815ca227a92df1b798",
      "parents": [
        "5cb4948e6e7b268edfb6459e035508e71c2100eb"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Feb 19 21:46:23 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Feb 19 21:46:23 2015 -0700"
      },
      "message": "openstack ListAddressesByNetwork op and unit test\n"
    },
    {
      "commit": "5cb4948e6e7b268edfb6459e035508e71c2100eb",
      "tree": "1f230aff46915d035c149cdc3e11be7f766faac6",
      "parents": [
        "7ca169d371b29e3dbab9e631c3a6151896b06330"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Feb 19 12:19:58 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Feb 19 12:19:58 2015 -0700"
      },
      "message": "list server addresses operation and unit tests\n"
    },
    {
      "commit": "3d0a185cd0120ba88b983a57772602645cf76ba4",
      "tree": "a416648bf9bd7b90798f5c27411ceaf647f75168",
      "parents": [
        "521cc680dda893a82bf0c4afa2ff4eeaefbcc4b4"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Feb 19 08:51:39 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Feb 19 08:51:39 2015 -0700"
      },
      "message": "remove need for Pager.PageType\n"
    },
    {
      "commit": "fe5e73545148dcc454440f41b062ea90e8d7d6dc",
      "tree": "dee07be734d532a929ee74d3f3cb761fcf06edaf",
      "parents": [
        "0ed1fa97e23d253d4473e3dc77cb095148e0800e"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Feb 18 13:51:01 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Feb 18 13:51:01 2015 -0700"
      },
      "message": "add all pages test on marker-page (containers)\n"
    },
    {
      "commit": "d27a9c76304c1da8de56b2a2908de76299fcf427",
      "tree": "5b28a321920f13bb2c1a71c64e493cad5ee44528",
      "parents": [
        "e7017d63496688c53c4efde4020a6ced5202c3d1"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Feb 18 11:33:28 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Feb 18 11:33:28 2015 -0700"
      },
      "message": "unit test for linked-page resource (servers)\n"
    },
    {
      "commit": "e7017d63496688c53c4efde4020a6ced5202c3d1",
      "tree": "f65acaca401c716136fd29cc612e01321ec4fc23",
      "parents": [
        "71bf00e15e9fbee32276eaf7c316766d6cafabec"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Feb 18 10:53:53 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Feb 18 10:53:53 2015 -0700"
      },
      "message": "unit test for sinlge-page resource (volumes)\n"
    },
    {
      "commit": "8e5c3f235e820fb606e97c2d79aec2bdda434874",
      "tree": "989286f960c65f693ebd104fbf4ca9ed984bac1e",
      "parents": [
        "ea5b3ff6c5b56c0f342dd19e6a7496779b6c2bb0"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Tue Feb 17 21:14:51 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Tue Feb 17 21:16:28 2015 +0100"
      },
      "message": "Use client.Request instead of perigee\n"
    },
    {
      "commit": "ea5b3ff6c5b56c0f342dd19e6a7496779b6c2bb0",
      "tree": "d33864092164b12f916bd28b5369126d82c45e44",
      "parents": [
        "374de6c494cad5c211254bfb6fd805f839d5cb41",
        "6fe7c40778b1853ccf316dcf33fd6220fb7cc6ff"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Feb 17 14:30:29 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Feb 17 14:30:29 2015 -0500"
      },
      "message": "Merge pull request #373 from jrperritt/auto-reauth\n\nAuto reauth; Closes #152"
    },
    {
      "commit": "6fe7c40778b1853ccf316dcf33fd6220fb7cc6ff",
      "tree": "a487b64ac1c8d2d6820c3bdb44cffd23129924de",
      "parents": [
        "b260acfbb8a3ad61fab1b90ab5336e7192c56ebc"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Feb 17 12:24:53 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Tue Feb 17 12:24:53 2015 -0700"
      },
      "message": "include AuthOptions in ReauthFunc closure\n"
    },
    {
      "commit": "0059767712f38031fde22e0c525b01f64ff1c800",
      "tree": "4ff84666957e6d8ed70a2072ebba585b02b9caa5",
      "parents": [
        "f1503992ae06977cd900c760170aa54305094e54"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:44:22 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:45:55 2015 +0100"
      },
      "message": "Introduce OptsBuilder for code style consistency\n"
    },
    {
      "commit": "f1503992ae06977cd900c760170aa54305094e54",
      "tree": "d6823e5320255ab294206269aa1ecedfba8f6e81",
      "parents": [
        "ed2ed803577f3900af57d74dfaae6ffb79847ba3"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:01:35 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:04:51 2015 +0100"
      },
      "message": "Change type *string to string for fields `name` \u0026 `description`\n"
    },
    {
      "commit": "ed2ed803577f3900af57d74dfaae6ffb79847ba3",
      "tree": "35b95fcfd8ca624c48ee414d45962ec4ea4bb5c1",
      "parents": [
        "092b45f07c96410ffe14731a9c813e0b1aa78a22"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Thu Feb 12 01:51:31 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:10 2015 +0100"
      },
      "message": "Error handling on struct to map mappings\n"
    },
    {
      "commit": "092b45f07c96410ffe14731a9c813e0b1aa78a22",
      "tree": "c35f15c94030b8c608a86890920d58fbf4e98f38",
      "parents": [
        "5571b6fc5d3e3c174fc868a72435ba0a569bc3e9"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Thu Feb 12 00:41:32 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:10 2015 +0100"
      },
      "message": "Use solid types for *bool attributes\n"
    },
    {
      "commit": "6d3d0067d9610e49d5458b8ea1da7807282cdaf7",
      "tree": "8ed1240aff1a3631de715d4f2e7ef5985441c263",
      "parents": [
        "3e5b293a6a05c17349a81fa71603c604aa88f8fb"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 09 00:00:37 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:10 2015 +0100"
      },
      "message": "Add unit tests for firewalls\n"
    },
    {
      "commit": "3e5b293a6a05c17349a81fa71603c604aa88f8fb",
      "tree": "845d5b17234a254a6a183ac0aee628c11c25e9d3",
      "parents": [
        "b8dca24a2beb2af7fff19f741dbb94d20824e51e"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 09 00:00:25 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:10 2015 +0100"
      },
      "message": "Add unit tests for firewall policies\n"
    },
    {
      "commit": "b8dca24a2beb2af7fff19f741dbb94d20824e51e",
      "tree": "b8f62bf1baab5e11b4d1552467de1465a58e9ecc",
      "parents": [
        "d9f939fb5e0af9cf498f6f6ef3881f1edf7efb40"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 09 00:00:11 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:10 2015 +0100"
      },
      "message": "Add unit tests for firewall rules\n"
    },
    {
      "commit": "d9f939fb5e0af9cf498f6f6ef3881f1edf7efb40",
      "tree": "7b5172f392a408410d9322b430325ab07e33c62e",
      "parents": [
        "4645912b1851522ab625fd55c290660b0535240d"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Sun Feb 08 23:49:59 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:10 2015 +0100"
      },
      "message": "Replace struct based mapping by manual mapping\n\nThe old way does not allow to handle updates correctly. When a nullable\nfield is set and we want to remove the value we need to be able to set\na null value in the json request body. For instance this happen in\nfirewall rules for field source_ip_address (among others).\n"
    },
    {
      "commit": "4645912b1851522ab625fd55c290660b0535240d",
      "tree": "143f6bfd80bcec7bc5674fec304008ea63d77c9d",
      "parents": [
        "914b10f05b7fc0db18bfef46d30393f1a4e792e2"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Sun Feb 08 22:03:35 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:09 2015 +0100"
      },
      "message": "Add mapstructure tags on Policy result\n"
    },
    {
      "commit": "914b10f05b7fc0db18bfef46d30393f1a4e792e2",
      "tree": "c5eabb7f26b4b706ecd85cae2e9b8c8c86390d9e",
      "parents": [
        "68c49f8cce8c8e5903154c631982c591fcd19a71"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Wed Feb 04 00:46:16 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:09 2015 +0100"
      },
      "message": "Fix bugs \u0026 warnings\n"
    },
    {
      "commit": "68c49f8cce8c8e5903154c631982c591fcd19a71",
      "tree": "3bc52b937accafef5f2c4a14f2daf2ce7c44c662",
      "parents": [
        "9441b814a55bff16d79d0e9a76c2b2f573441c95"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 02 01:14:21 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:09 2015 +0100"
      },
      "message": "Firewall rules bugfixes \u0026 enhancements\n"
    },
    {
      "commit": "9441b814a55bff16d79d0e9a76c2b2f573441c95",
      "tree": "bda68a4c5ff4b7583185495ce11710d300d09749",
      "parents": [
        "506d1504c1bca59e54ac1a09da619dadaff70d8d"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Tue Jan 27 01:22:45 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:09 2015 +0100"
      },
      "message": "Support FWaaS - Firewalls\n"
    },
    {
      "commit": "506d1504c1bca59e54ac1a09da619dadaff70d8d",
      "tree": "74733e031eb8f7bbfcd8dc51057e93256a441733",
      "parents": [
        "0e695145091b00ec0c28b90b200538fa18765409"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Tue Jan 27 01:21:18 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:09 2015 +0100"
      },
      "message": "Support FWaaS - Policies\n"
    },
    {
      "commit": "0e695145091b00ec0c28b90b200538fa18765409",
      "tree": "337c933708889f41c475e5680d584df91759c6f5",
      "parents": [
        "f245fe77244263d24fe9099ad179f972143cdcc3"
      ],
      "author": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Tue Jan 27 01:18:51 2015 +0100"
      },
      "committer": {
        "name": "Guillaume Giamarchi",
        "email": "guillaume.giamarchi@gmail.com",
        "time": "Mon Feb 16 23:02:09 2015 +0100"
      },
      "message": "Support FWaaS - Rules\n"
    },
    {
      "commit": "ca51f013092b143784b87bc9435f284b4cb4ba87",
      "tree": "62744657578da73e71b4416138602574a6f7e35e",
      "parents": [
        "4ef9c551eac4043db304056a04fc561f983c6fb6"
      ],
      "author": {
        "name": "Long Nguyen",
        "email": "long.nguyen11288@gmail.com",
        "time": "Mon Feb 16 15:52:22 2015 -0500"
      },
      "committer": {
        "name": "Long Nguyen",
        "email": "long.nguyen11288@gmail.com",
        "time": "Mon Feb 16 15:52:22 2015 -0500"
      },
      "message": "fixed issue with group id\n"
    },
    {
      "commit": "b260acfbb8a3ad61fab1b90ab5336e7192c56ebc",
      "tree": "435a494629c4406014ecf67ab1d7a3b6c5e716b3",
      "parents": [
        "d7c4886f9c53df1cb8875accd31a2a8ff8f86652"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon Feb 16 11:25:30 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Mon Feb 16 11:25:30 2015 -0700"
      },
      "message": "only cache credentials if AllowReauth is set to true\n"
    },
    {
      "commit": "f4052c6e3415e6453dff01a15a39417b94844d62",
      "tree": "01c09fc13562a8ac1bd289c42e8eafe6d3da2a1b",
      "parents": [
        "4ef9c551eac4043db304056a04fc561f983c6fb6"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Sat Feb 14 09:48:18 2015 -0700"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Sat Feb 14 09:48:18 2015 -0700"
      },
      "message": "OpenStack/Rackspace reauth functionality\n"
    },
    {
      "commit": "decfed73f9fde3c8d5627ff1481eb570461c635a",
      "tree": "0a9e44ab09951844324672e7fa9996419ec64010",
      "parents": [
        "accf2f5d1381a10350faa4e3ea578a2d6c54726e"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:14:55 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:14:55 2015 -0500"
      },
      "message": "Convert Orchestration and the new Compute extension.\n"
    },
    {
      "commit": "322a7e6b9599d2124c67e722cbe204852a98dbdd",
      "tree": "747c71b495243851052ea239685ab5db40327486",
      "parents": [
        "7cb4dabd5a15668265d9c6e70b00eca796e1e58d"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 16:25:26 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:09:47 2015 -0500"
      },
      "message": "Object Storage special case.\n"
    },
    {
      "commit": "7cb4dabd5a15668265d9c6e70b00eca796e1e58d",
      "tree": "132b0c4382f0f817527b50e774f5728a7aedef66",
      "parents": [
        "59fb6c4b0726753bc5fa2cf945b86f0cff10a6c6"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 16:22:58 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:09:47 2015 -0500"
      },
      "message": "Manually convert a perigee.Get call.\n"
    },
    {
      "commit": "59fb6c4b0726753bc5fa2cf945b86f0cff10a6c6",
      "tree": "0dbcfb0c72b524015d388542f2d86bcdd3e271cf",
      "parents": [
        "2199f10bc7ca61fbb16531b79edc78fa9d2c6eec"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 16:21:13 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:09:46 2015 -0500"
      },
      "message": "Adjust regexps and do another pass.\n"
    },
    {
      "commit": "2491b4cda0f3eca813d3a959526cd8678240363b",
      "tree": "ec865d53db7a045cae085154b788ef2323a49bdd",
      "parents": [
        "4bf41a37c959caa2aa450e11b8df1493b5919379"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 16:13:39 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:09:46 2015 -0500"
      },
      "message": "Manual follow-on tweaks to get the build green again.\n"
    },
    {
      "commit": "4bf41a37c959caa2aa450e11b8df1493b5919379",
      "tree": "42eb547a31378ad8fa8f965a01a47dde6d411bd1",
      "parents": [
        "f98df8d05c2289b83fef5b817a5c7cbb700024a2"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 15:52:44 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:09:46 2015 -0500"
      },
      "message": "openstack/ :knife: perigee\n"
    },
    {
      "commit": "f98df8d05c2289b83fef5b817a5c7cbb700024a2",
      "tree": "0172fe65172740293a126e41cbfa9579097b7cb2",
      "parents": [
        "33465258a00eeeffb2481a636e9a439d33dd8082"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 15:46:40 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:09:46 2015 -0500"
      },
      "message": "openstack/cdn :knife: perigee\n"
    },
    {
      "commit": "33465258a00eeeffb2481a636e9a439d33dd8082",
      "tree": "f5b49916b583aa343663ea24d651f90b4a54e712",
      "parents": [
        "d3dfaa1db774030b0abc4af273bb509d6e073619",
        "9716ec3b072d29e66f20883d73ec086f0e550e30"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:06:19 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Feb 13 09:06:19 2015 -0500"
      },
      "message": "Merge pull request #365 from smashwilson/centralize-http\n\nCentralize HTTP handling and allow custom http.Clients"
    },
    {
      "commit": "d3dfaa1db774030b0abc4af273bb509d6e073619",
      "tree": "6b80d07ced97224981924a983b673e530265a751",
      "parents": [
        "8eaf67b5b513cd0743fa92fcacd8477e9a80b42d",
        "e43f3de04cbba5434ae5445eb7190a3839c514bb"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Fri Feb 13 09:52:55 2015 +0100"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Fri Feb 13 09:52:55 2015 +0100"
      },
      "message": "Merge pull request #357 from jrperritt/orchestration\n\nOpenStack/Rackspace Orchestration"
    },
    {
      "commit": "dee32228115fcc48fc7b37ebc4d7deac15f9e843",
      "tree": "ddb5cb56d64580f26a1c2ad329ac1e3ec13aff3f",
      "parents": [
        "afe36f921adc4d3903b7bcd539f4c6d5544fc6fc"
      ],
      "author": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Mon Feb 09 23:56:26 2015 +0000"
      },
      "committer": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Fri Feb 13 04:41:20 2015 +0000"
      },
      "message": "Added support for os-floating-ips extension\n\nThis commit adds support for the os-floating-ips extention. This allows\nusers to allocate and deallocate floating IPs as well as have instances\nassociate and disassociate floating IPs in a nova-network based cloud.\n"
    },
    {
      "commit": "978bb50c1f7a07e861ea10b95227a1ab8d805a98",
      "tree": "71aa64d24d776cfa6293c45811cca92094dddae6",
      "parents": [
        "1e58a83cc9ef6aec1e639202fee5f44f9729271e"
      ],
      "author": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Thu Feb 12 20:55:31 2015 +0000"
      },
      "committer": {
        "name": "Joe Topjian",
        "email": "joe@topjian.net",
        "time": "Thu Feb 12 20:55:31 2015 +0000"
      },
      "message": "Added the SecurityGroup attribute to servers result\n"
    },
    {
      "commit": "acb1b90d9c255e616943e07c4c3b73bf8018e997",
      "tree": "b7e135db26c4f6a4ea30054bac6f7a9c75fd4c82",
      "parents": [
        "89eec330122140f0e042570130ed54911015e025"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 14:29:31 2015 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Thu Feb 12 14:29:31 2015 -0500"
      },
      "message": "Use the new API in openstack/blockstorage.\n"
    }
  ],
  "next": "12c04a41a2d57dafdcd8a65f33c0e9980ecc34c9"
}
