)]}'
{
  "log": [
    {
      "commit": "6251999e24704974a24f6de22bd193e8bef0095f",
      "tree": "d147967f2f0bf4459b4a675923fcf8a00592a4b7",
      "parents": [
        "a96073165a75924461ca330b511fd1b0c2b9b681",
        "387414999777ac61e247740408b25887473376b7"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 24 14:38:33 2014 -0500"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 24 14:38:33 2014 -0500"
      },
      "message": "Merge pull request #207 from DonSchenck/win-issues\n\nAdded very small parenthetical note regarding Windows."
    },
    {
      "commit": "387414999777ac61e247740408b25887473376b7",
      "tree": "8d02c1467c695c225d2d21214bf707ddca00de80",
      "parents": [
        "41cfcdcc023e5c0aebcdeb8ad338663dad402cc8"
      ],
      "author": {
        "name": "Don Schenck",
        "email": "don.schenck@gmail.com",
        "time": "Wed Sep 24 15:23:35 2014 -0400"
      },
      "committer": {
        "name": "Don Schenck",
        "email": "don.schenck@gmail.com",
        "time": "Wed Sep 24 15:23:35 2014 -0400"
      },
      "message": "Added very small parenthetical note regarding Windows.\nFixed a typo.\n"
    },
    {
      "commit": "a96073165a75924461ca330b511fd1b0c2b9b681",
      "tree": "f0cf6fdf870ad40168146a3bbea780a5fc37577d",
      "parents": [
        "eebbf9f24b39fc55b09ffb4114316c9670c0f5b3",
        "f311483c7eaadd2afd4eec192eb6a488844eaed4"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 24 10:34:43 2014 -0500"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 24 10:34:43 2014 -0500"
      },
      "message": "Merge pull request #204 from jamiehannaford/os-network-v2\n\nNeutron v2"
    },
    {
      "commit": "f311483c7eaadd2afd4eec192eb6a488844eaed4",
      "tree": "f0cf6fdf870ad40168146a3bbea780a5fc37577d",
      "parents": [
        "6abf928a6d54989347b5dcfeae61914ca5425a92"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 11:00:43 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 11:00:43 2014 +0200"
      },
      "message": "Adding struct documentation\n"
    },
    {
      "commit": "6abf928a6d54989347b5dcfeae61914ca5425a92",
      "tree": "8ef45753497abddc4ff1f7a4edcc2496b25e2fb7",
      "parents": [
        "d903642c1e975bae5e0b545f6087569e5cd1e73a"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:54:13 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:54:13 2014 +0200"
      },
      "message": "Moving MaybeString to root package\n"
    },
    {
      "commit": "d903642c1e975bae5e0b545f6087569e5cd1e73a",
      "tree": "c4c944854e7735dead636984a2dc2a4e375a05d5",
      "parents": [
        "f2835409680f4c4be8544bfe895920e6d8fa561d"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 23 17:50:24 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Introducing new FooResult idiom :shipit:\n"
    },
    {
      "commit": "f2835409680f4c4be8544bfe895920e6d8fa561d",
      "tree": "bcc3b1ebcb81cc6bf95bebde6cff37df3bd5a16a",
      "parents": [
        "686c496d384b7dea1f71fef01b6e96678ffe9f90"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 23 11:01:21 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Removed all extension functionality from core package\n"
    },
    {
      "commit": "686c496d384b7dea1f71fef01b6e96678ffe9f90",
      "tree": "faec040a3ca555922ece04561b13ff4cf370b6cb",
      "parents": [
        "5e45ccb532ad55377397308ba8a4306196e6c843"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 23 10:46:20 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Finishing documentation\n"
    },
    {
      "commit": "5e45ccb532ad55377397308ba8a4306196e6c843",
      "tree": "80ca2d5ae38a0e4380f9837a98facc4e73680842",
      "parents": [
        "965ae7029ab18ff4245af0e273a64c22babf8097"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 22 15:41:10 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Moving shared logic into common file\n"
    },
    {
      "commit": "965ae7029ab18ff4245af0e273a64c22babf8097",
      "tree": "8b6e0cf11562cd8f77d9ebf6479f4364a72e16af",
      "parents": [
        "d0f090c68c85ae196e7770ed49426eb682f71c23"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 22 14:58:19 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Modifying opts and model structs with stricter types\n"
    },
    {
      "commit": "d0f090c68c85ae196e7770ed49426eb682f71c23",
      "tree": "f44b28043e069fe157bb0a696b563ce722ce74ed",
      "parents": [
        "c65e192081f65d1fcbae13759a9b7241046d802d"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 22 13:44:34 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Adding sort_key and sort_dir query params\n"
    },
    {
      "commit": "c65e192081f65d1fcbae13759a9b7241046d802d",
      "tree": "10e4379abb923784c28374b187acebb8a34afd56",
      "parents": [
        "d9961b3c7ae63728c9a23929843d5abc98b841b2"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 22 13:20:58 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Starting documentation and privatising unnecessary exports\n"
    },
    {
      "commit": "d9961b3c7ae63728c9a23929843d5abc98b841b2",
      "tree": "8fc6578fba64273089e16bc92dbd04b28b9787fe",
      "parents": [
        "2a0492a2e0a939b1d1e5eda76414199b20413473"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 22 13:20:24 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:56 2014 +0200"
      },
      "message": "Adding forgotten port test\n"
    },
    {
      "commit": "2a0492a2e0a939b1d1e5eda76414199b20413473",
      "tree": "2f46dae5aa4029ed096d566b9394f4acc4e4d01e",
      "parents": [
        "d444b7ad3c7318832c6d64b838affe8ec510384a"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 22 12:02:11 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "All acceptance/unit tests pass :raised_hands:\n"
    },
    {
      "commit": "d444b7ad3c7318832c6d64b838affe8ec510384a",
      "tree": "7990956ef9ad8c3cd850ab652d8c901a00ca2fe9",
      "parents": [
        "a5fb782cd39862916d6b95a612a0023b96de141d"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Fri Sep 19 15:08:27 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Adding delete subnet operation\n"
    },
    {
      "commit": "a5fb782cd39862916d6b95a612a0023b96de141d",
      "tree": "34e7d7ce1e26dc20a74e2c235dee6d75034fc8d4",
      "parents": [
        "a311f18dc246ac4607747cfaf36dbbc48c6cab2c"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Fri Sep 19 15:07:02 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Adding update port operation\n"
    },
    {
      "commit": "a311f18dc246ac4607747cfaf36dbbc48c6cab2c",
      "tree": "24eaa371eb14a6cbc1c2fc25b148402fb3eb8f53",
      "parents": [
        "548d340002fb01565c39bb07d9af73d0e920f4f4"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Fri Sep 19 11:19:10 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Adding get port operation\n"
    },
    {
      "commit": "548d340002fb01565c39bb07d9af73d0e920f4f4",
      "tree": "33209022f5824fea95f30a4f98d94aef8ab79bb0",
      "parents": [
        "f84171d19da9d298e635528d46ddb9068c7b71b0"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 18 15:50:08 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Adding list ports operation\n"
    },
    {
      "commit": "f84171d19da9d298e635528d46ddb9068c7b71b0",
      "tree": "7ba881384a4dbe1d43d27e20a7ad01b021210cc6",
      "parents": [
        "d11e20cd44ded8b4dd7d2a179a5805541aa88f06"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 18 14:00:01 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Finalizing acceptance tests for subnets\n"
    },
    {
      "commit": "d11e20cd44ded8b4dd7d2a179a5805541aa88f06",
      "tree": "71331158795087fd33273a0b07eabf95d503d197",
      "parents": [
        "6363143f3bf4a3e4c81a950a5e935e8dd9b7e2b4"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 18 12:03:01 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Add update and delete subnet operations :cool:\n"
    },
    {
      "commit": "6363143f3bf4a3e4c81a950a5e935e8dd9b7e2b4",
      "tree": "2bbf68aa34d01fb7c911a8d7f38ef52c580c050b",
      "parents": [
        "0708c0078a83a8d20ca2dea9808016ed22914e22"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 18 11:40:09 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Add create subnet operation\n"
    },
    {
      "commit": "0708c0078a83a8d20ca2dea9808016ed22914e22",
      "tree": "8c612e81f2229e73d41dd04be8a1772c900704af",
      "parents": [
        "89f9af2595a89698efa3704773e924523e81370d"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 17 16:08:49 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Adding list and get operations for subnets\n"
    },
    {
      "commit": "89f9af2595a89698efa3704773e924523e81370d",
      "tree": "97359b72e03e7ba7045e04a3b0cdb343aa14ed6f",
      "parents": [
        "f0c615b4c39d8807894051af2ec825ac9e15a307"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 17 12:21:48 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Starting subnets\n"
    },
    {
      "commit": "f0c615b4c39d8807894051af2ec825ac9e15a307",
      "tree": "d34bdbe13fe1e8c6505beca665895384c0be24b1",
      "parents": [
        "4721abc4950cedd5bfa817a7cd779b6de3a8b9b2"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 17 10:56:52 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Moving network v2 to new(est) pagination idiom\n"
    },
    {
      "commit": "4721abc4950cedd5bfa817a7cd779b6de3a8b9b2",
      "tree": "e2f5f64f6bdcf7b220cb313f86ec8ee14aee3058",
      "parents": [
        "1ce30f2d820649d2859c01626215824af0e09a39"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 16 16:29:04 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Shuffled resources into sub-packages and upgraded to new pagination idiom\n"
    },
    {
      "commit": "1ce30f2d820649d2859c01626215824af0e09a39",
      "tree": "e08600e494b0847988ac8bf814a301fdca6ed3d8",
      "parents": [
        "a13f067ecabe838a2e667d39c9f449b535e50d55"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 16 11:23:34 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Moving extensions and API versions into different sub-packages; fixing test helper methods\n"
    },
    {
      "commit": "a13f067ecabe838a2e667d39c9f449b535e50d55",
      "tree": "a72251fca71ab507e41d01bb3c4323a2d8bf5996",
      "parents": [
        "b859cfa415e56fa2d42839b83f86f49b1aecab60"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 16 10:59:06 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:55 2014 +0200"
      },
      "message": "Refactoring tests to use helper funcs :ok_hand:\n"
    },
    {
      "commit": "b859cfa415e56fa2d42839b83f86f49b1aecab60",
      "tree": "fd39c587e32de877f7b97009829e52f3023fd1dc",
      "parents": [
        "794750515a346e93f03ac85a379b2b86330d8f61"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 16 10:46:11 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Adding tests for delete network\n"
    },
    {
      "commit": "794750515a346e93f03ac85a379b2b86330d8f61",
      "tree": "8cfe04d767c45c90c06c21dcca65be1b417567f9",
      "parents": [
        "d2d9f563391e987bb84f9872c74b019d964bfa8d"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 17:08:06 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Making return types more consistent :boom:\n"
    },
    {
      "commit": "d2d9f563391e987bb84f9872c74b019d964bfa8d",
      "tree": "71a56d10bc2e44c500c44a35ddc154d07aab545b",
      "parents": [
        "d01a3c76ee1340b99396f864324369dc3b813d9c"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 15:35:07 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Adding create network operation\n"
    },
    {
      "commit": "d01a3c76ee1340b99396f864324369dc3b813d9c",
      "tree": "ba2dcfc01b23e2339586849f8583595d77a755b1",
      "parents": [
        "12bc247cbc95dede62efc902f5e661de08553217"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:51:00 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Adding get network operation\n"
    },
    {
      "commit": "12bc247cbc95dede62efc902f5e661de08553217",
      "tree": "005f59ab6ea5278603295eee49158f321479076b",
      "parents": [
        "f14d4569a520f787d8c328ce182102f1c34c2735"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:14:31 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Adding get extension operation\n"
    },
    {
      "commit": "f14d4569a520f787d8c328ce182102f1c34c2735",
      "tree": "23a84774a7c31ede4e123fa2bb52d6a8fdfc6c00",
      "parents": [
        "7ea2958df6b97816789c5887a86f51b79ebad421"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 11 17:46:18 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Adding API resource operation\n"
    },
    {
      "commit": "7ea2958df6b97816789c5887a86f51b79ebad421",
      "tree": "b709d6dc855d816e7ba4d4fcc3aef7872baa82bc",
      "parents": [
        "01e1492193f46cd211d91f417ed2d6ad88f085ec"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 11 15:49:46 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Fixes to client setup and build tags\n"
    },
    {
      "commit": "01e1492193f46cd211d91f417ed2d6ad88f085ec",
      "tree": "30c8fc16b53611c3b7b5dca3357d79ddc01f692a",
      "parents": [
        "6250ff2b2915696a6166648aec61c46b6a729f32"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 11 15:23:49 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Adding ListAPIVersions operation\n"
    },
    {
      "commit": "6250ff2b2915696a6166648aec61c46b6a729f32",
      "tree": "714f6b90c2db7784575ce8c662df58295e7182e3",
      "parents": [
        "a7f671aa58048c7866cac64b30b953842dfc0ed8"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 11 13:38:10 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Rename and refactor tests to use common service logic\n"
    },
    {
      "commit": "a7f671aa58048c7866cac64b30b953842dfc0ed8",
      "tree": "9e4f6019368461caaf1162d8b86ecfb2fc56c196",
      "parents": [
        "6e3d566746e555b2cffcdf886b65b3df203ed527"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 11 10:25:08 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Rename v2_0 and add remaining boilerplate\n"
    },
    {
      "commit": "6e3d566746e555b2cffcdf886b65b3df203ed527",
      "tree": "62118bdd171b74e7917bd42c997d8c6771622164",
      "parents": [
        "eebbf9f24b39fc55b09ffb4114316c9670c0f5b3"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Thu Sep 11 10:24:49 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Wed Sep 24 10:38:54 2014 +0200"
      },
      "message": "Add initial top-level acceptance tests\n"
    },
    {
      "commit": "eebbf9f24b39fc55b09ffb4114316c9670c0f5b3",
      "tree": "f9ecc179a4cd1eb9c2b08bd870793a96aff66f1f",
      "parents": [
        "41cfcdcc023e5c0aebcdeb8ad338663dad402cc8",
        "4baa1236420df05bb4c232e47dd71b83b716582d"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 23 10:09:10 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 23 10:09:10 2014 -0400"
      },
      "message": "Merge pull request #206 from jamiehannaford/common-result\n\nAdding common result struct"
    },
    {
      "commit": "4baa1236420df05bb4c232e47dd71b83b716582d",
      "tree": "f9ecc179a4cd1eb9c2b08bd870793a96aff66f1f",
      "parents": [
        "b3120f5e84e7984b28d9019e8ba138cdef1def33"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 23 15:23:04 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 23 15:23:04 2014 +0200"
      },
      "message": "Shifting to root pkg\n"
    },
    {
      "commit": "b3120f5e84e7984b28d9019e8ba138cdef1def33",
      "tree": "b2e1a7cbf2ca201eab4fb93c112aeb66176bcd31",
      "parents": [
        "41cfcdcc023e5c0aebcdeb8ad338663dad402cc8"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 23 15:17:57 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Tue Sep 23 15:17:57 2014 +0200"
      },
      "message": "Adding common result struct\n"
    },
    {
      "commit": "41cfcdcc023e5c0aebcdeb8ad338663dad402cc8",
      "tree": "b2583fe27c659528209d57d63af99a8ca6a4e188",
      "parents": [
        "34794555114fb1e3b5525d26bb2c568bad7be58b",
        "d88186c46208b22513b3c6443e188157eb2cd8b2"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 16:13:29 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 16:13:29 2014 -0400"
      },
      "message": "Merge pull request #203 from smashwilson/paginate-storage\n\nMark-and-limit pagination and storage"
    },
    {
      "commit": "d88186c46208b22513b3c6443e188157eb2cd8b2",
      "tree": "b2583fe27c659528209d57d63af99a8ca6a4e188",
      "parents": [
        "ca6f75642cd3d8794715ed4287b5cdab9c542083"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:44:13 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:44:13 2014 -0400"
      },
      "message": "Adjust storage acceptance tests accordingly.\n"
    },
    {
      "commit": "ca6f75642cd3d8794715ed4287b5cdab9c542083",
      "tree": "2016f34bd8aadfedb6da061ee976341ee895e37d",
      "parents": [
        "da7c09f6dc8111a8c4360d5c0ca146366799d837"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:43:54 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:43:54 2014 -0400"
      },
      "message": "Paginate the objects.List call.\n"
    },
    {
      "commit": "da7c09f6dc8111a8c4360d5c0ca146366799d837",
      "tree": "a276ca546a429137b7918f9b3a64eea71cf5f0ac",
      "parents": [
        "0faafccfa6b3dedc3a200450fe3dac987877d825"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:20:44 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:20:44 2014 -0400"
      },
      "message": "Update the acceptance tests to use pagination.\n"
    },
    {
      "commit": "0faafccfa6b3dedc3a200450fe3dac987877d825",
      "tree": "8aef2220d4b021ca53cdba81a7a0d24f34680a96",
      "parents": [
        "a74024709d4c44521fa069196409b10f70362177"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:20:17 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:20:17 2014 -0400"
      },
      "message": "Paginate the results of containers.List().\n"
    },
    {
      "commit": "a74024709d4c44521fa069196409b10f70362177",
      "tree": "2b3ff4a0dfd9f6598c47e55e45901c4f72711ac3",
      "parents": [
        "cd95a0c9154d011610dbed0d56bb2eb3390bf232"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:18:34 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 15:18:49 2014 -0400"
      },
      "message": "Allow implementation code to specify headers.\n"
    },
    {
      "commit": "cd95a0c9154d011610dbed0d56bb2eb3390bf232",
      "tree": "97785003d330be1af87071cf5d17d31d1f56102e",
      "parents": [
        "7049af4c36bdbfeb38ab4cb1a41bb5d28ed23b6c"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 13:07:31 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 13:07:31 2014 -0400"
      },
      "message": "Adjust callers again.\n"
    },
    {
      "commit": "7049af4c36bdbfeb38ab4cb1a41bb5d28ed23b6c",
      "tree": "babe08b3956fd891192edfc85d0eef9490618312",
      "parents": [
        "58c4f6761fd6177a29462bbbd9136a7f5e051d72"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 13:04:48 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 13:04:48 2014 -0400"
      },
      "message": "Turns out I can eliminate NewXyzPager funcs.\n"
    },
    {
      "commit": "58c4f6761fd6177a29462bbbd9136a7f5e051d72",
      "tree": "383820994a30bfbc6767695cf2d2647efffd1020",
      "parents": [
        "7486351f84e689e694fa2a5788dc51582b3406b9"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:50:56 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:50:56 2014 -0400"
      },
      "message": "Rename \"Self\" to \"Owner\".\n"
    },
    {
      "commit": "7486351f84e689e694fa2a5788dc51582b3406b9",
      "tree": "e538100df2db3e3d9edaff2b635d909c69cad198",
      "parents": [
        "387d1bda99d77818d7a412dd579f33a2dd27ad4b"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:45:51 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:45:51 2014 -0400"
      },
      "message": "Rename `LastMark` to `LastMarker`.\n"
    },
    {
      "commit": "387d1bda99d77818d7a412dd579f33a2dd27ad4b",
      "tree": "1aaf344452669a0709cb767d99678c8f54bcaa80",
      "parents": [
        "3c8cc77770c9e8798c0dee7a17f9f93145db52db"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:43:24 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:43:24 2014 -0400"
      },
      "message": "Update acceptance tests.\n"
    },
    {
      "commit": "3c8cc77770c9e8798c0dee7a17f9f93145db52db",
      "tree": "6ec582caa65ddf573ff6262098657c8b723bb568",
      "parents": [
        "c8e68871919567d3a36145a3acf58d9cb636b6cc"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:40:49 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 11:40:49 2014 -0400"
      },
      "message": "Change identity endpoints and services.\n"
    },
    {
      "commit": "c8e68871919567d3a36145a3acf58d9cb636b6cc",
      "tree": "4e8d994f2a87daf84bc3cbcaa03d6bb98792b2e3",
      "parents": [
        "c93fde7d5a05ff650dd86a7d80551e36d97daa91"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 10:36:56 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 10:36:56 2014 -0400"
      },
      "message": "Move pagination to its own package.\n"
    },
    {
      "commit": "c93fde7d5a05ff650dd86a7d80551e36d97daa91",
      "tree": "6899a7b91a63870b0eb6f855deccf75f6c11f710",
      "parents": [
        "ab6be617dbe22e66124bda2381fb09725b09d51b"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 10:06:22 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Tue Sep 16 10:06:22 2014 -0400"
      },
      "message": "Use base structs and embedding.\n"
    },
    {
      "commit": "ab6be617dbe22e66124bda2381fb09725b09d51b",
      "tree": "36c538923f7123d8a96e983945b3fdd0e2f18261",
      "parents": [
        "5a25f5482718530716918b56d1b6d4b716179c95"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 15:51:22 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 15:51:22 2014 -0400"
      },
      "message": "Adjust callers to match.\n"
    },
    {
      "commit": "5a25f5482718530716918b56d1b6d4b716179c95",
      "tree": "247a22bd2b54ca6a646bbba195a057e77d075c68",
      "parents": [
        "993cf3295ff2dca20807d08bd531baa2589defb9"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 15:43:20 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 15:43:20 2014 -0400"
      },
      "message": "Use closures to count and mark.\n"
    },
    {
      "commit": "993cf3295ff2dca20807d08bd531baa2589defb9",
      "tree": "691ed9c98fb216d95c438a95ed9180872f974f1d",
      "parents": [
        "34794555114fb1e3b5525d26bb2c568bad7be58b"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 14:34:12 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 14:37:25 2014 -0400"
      },
      "message": "Initial implementation of MarkerPage.\n"
    },
    {
      "commit": "34794555114fb1e3b5525d26bb2c568bad7be58b",
      "tree": "684467f711863aebd5fc1c67263736a08f0955c9",
      "parents": [
        "0f79dcf47699b63eeea50a0f93594a6b4b86b722",
        "0f26e5c2d5caeab5636e2110b4a2a2be458e9e22"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:48:23 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:48:23 2014 -0400"
      },
      "message": "Merge pull request #201 from jamiehannaford/test-helper-convenience\n\nAdding test helper functions"
    },
    {
      "commit": "0f79dcf47699b63eeea50a0f93594a6b4b86b722",
      "tree": "872d69ce146c965481077803592f23598a5120c9",
      "parents": [
        "50737d6965ebafbe0aee99d5140eb90c229a86cd",
        "f52b08b66bd5f35cebb22d1ed8f5415c7db6a99b"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 16:39:53 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 16:39:53 2014 +0200"
      },
      "message": "Merge pull request #200 from smashwilson/pagination-improvements-question-mark\n\n[wip] Alternative pagination idiom"
    },
    {
      "commit": "f52b08b66bd5f35cebb22d1ed8f5415c7db6a99b",
      "tree": "872d69ce146c965481077803592f23598a5120c9",
      "parents": [
        "36986c6f5690f568e5ef8e4ff9e1a9bb0648d0fc"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:00:43 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Parse into an `interface{}` to accommodate arrays.\n"
    },
    {
      "commit": "36986c6f5690f568e5ef8e4ff9e1a9bb0648d0fc",
      "tree": "588b868ed1be921d0ea5765d4fea9ea8207e4340",
      "parents": [
        "a99685f70d166df1b15e8c581ba775fabd6c2fe2"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 09:56:34 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Shuffle around source organization.\n\nUtility -\u003e Pages -\u003e Pagers\n"
    },
    {
      "commit": "a99685f70d166df1b15e8c581ba775fabd6c2fe2",
      "tree": "aa94d7017b3da794fac8ed0248de407057f6aeff",
      "parents": [
        "152d75a1a694e9d1387493a9a13a52b7d3a8c5af"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 09:49:00 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Rename collections files to pagination.\n"
    },
    {
      "commit": "152d75a1a694e9d1387493a9a13a52b7d3a8c5af",
      "tree": "8808dfc265bc368d6e50c3c25c1dffb6919eb21c",
      "parents": [
        "4bf4fac974d521f2ddf63c30cd07bd79f37d355d"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 09:35:03 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Remove the closures from the New.*Pager calls.\n"
    },
    {
      "commit": "4bf4fac974d521f2ddf63c30cd07bd79f37d355d",
      "tree": "d49feeffd3359256139a60f4a05a32d3e69424ef",
      "parents": [
        "18f32523143c5abeb81624806ff1add4b79afa47"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 09:16:13 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Root package tests pass.\n"
    },
    {
      "commit": "18f32523143c5abeb81624806ff1add4b79afa47",
      "tree": "c8054c4bff5bfb9d542b9967b34a630f449fe01a",
      "parents": [
        "e0ba5b78835a63ea7816b49e15ff76847840347c"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 08:52:12 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": ":fire: the closure arguments.\n\nThey\u0027re all the same anyway.\n"
    },
    {
      "commit": "e0ba5b78835a63ea7816b49e15ff76847840347c",
      "tree": "ca800317bdd58c92315c6900949098ada0de6c5e",
      "parents": [
        "3658d38d73914f94f679dfa6feb50e186ab5050e"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 08:13:52 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Rename ConcretePage to LastHTTPResponse.\n"
    },
    {
      "commit": "3658d38d73914f94f679dfa6feb50e186ab5050e",
      "tree": "adc902607f2dade472acdb7d1fb89c19b1521def",
      "parents": [
        "3be15e13fc445bdf35e19e15e5345aa5ad3aa044"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 08:12:33 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Rename `advance` to `fetchNextPage`.\n"
    },
    {
      "commit": "3be15e13fc445bdf35e19e15e5345aa5ad3aa044",
      "tree": "6d1b25a00ec18166be830ee014c0183789023026",
      "parents": [
        "6b35e50127d2165e4ee304ba4dccd122697e8a35"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 15:25:21 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Bring acceptance tests up to date.\n"
    },
    {
      "commit": "6b35e50127d2165e4ee304ba4dccd122697e8a35",
      "tree": "b2c5edbc8fe40a3621230b85e5bd768f89b8951f",
      "parents": [
        "566613ec83571bf1089c3e9c563f80f63b22a951"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 15:15:23 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Add an error return to the EachPage closure.\n\nBecause the Extract functions, at the very least, have an error parameter, and it\u0027s\nkind of a pain to capture it outside the closure.\n"
    },
    {
      "commit": "566613ec83571bf1089c3e9c563f80f63b22a951",
      "tree": "e2e108b89ff985fa5ecfce892f5860cdf4b8079e",
      "parents": [
        "6269f2541b3fc4a1a524fd513ba80225ed5a6a16"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 14:51:46 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Consume the new pagination in openstack.Client.\n"
    },
    {
      "commit": "6269f2541b3fc4a1a524fd513ba80225ed5a6a16",
      "tree": "836fb43fe59ce7832b7b240ae5bad1068ba958b0",
      "parents": [
        "bddac13953144d485a90e4f9cba9d2bb9ed37f70"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 14:33:56 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Repaginate the identity/3/endpoints resource.\n"
    },
    {
      "commit": "bddac13953144d485a90e4f9cba9d2bb9ed37f70",
      "tree": "f56309610e78bd780e62bd40cad0586693079d06",
      "parents": [
        "583dc733f5e4657df30fe768ae8110aa67ed177d"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 14:20:16 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Use the new pagination in identity/3/services.\n"
    },
    {
      "commit": "583dc733f5e4657df30fe768ae8110aa67ed177d",
      "tree": "2a7711eede5868c93a5dd54e38985cf63b562e72",
      "parents": [
        "976d2e66e4b28a7bc062fd3721bd8b81912813d7"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 13:30:05 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Rename PaginatedLinksPage as LinkedPage.\n\nMainly because it\u0027s shorter.\n"
    },
    {
      "commit": "976d2e66e4b28a7bc062fd3721bd8b81912813d7",
      "tree": "27de90a5643382e1818a106be7aac48241f61fe5",
      "parents": [
        "75eae572af680e70d02b47689140e707bcf87f87"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 13:29:29 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "NextPageURL also returns an error.\n\nThis is useful if the JSON parse fails, for example.\n"
    },
    {
      "commit": "75eae572af680e70d02b47689140e707bcf87f87",
      "tree": "d2c43feadf2f717aace6665743396e86acd9dd51",
      "parents": [
        "5bf6f66b4e153068756ada81bd1ca89af0fe27e9"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 12:34:21 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "This passes, but I still want result types...\n"
    },
    {
      "commit": "5bf6f66b4e153068756ada81bd1ca89af0fe27e9",
      "tree": "ff29a6b6c7cd5a872eb857c2d8f746d099cc3254",
      "parents": [
        "e30b76b9b1e02d65f2393d2692cddb1afc27336c"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 12:31:17 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:07 2014 -0400"
      },
      "message": "Concrete Pagers strategy :wrench:\n"
    },
    {
      "commit": "e30b76b9b1e02d65f2393d2692cddb1afc27336c",
      "tree": "e2fafa2c01e0c628754bd6ef14b798c84641a1b3",
      "parents": [
        "50737d6965ebafbe0aee99d5140eb90c229a86cd"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Fri Sep 12 08:36:17 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:11:06 2014 -0400"
      },
      "message": "Testing out a new pagination idiom.\n"
    },
    {
      "commit": "50737d6965ebafbe0aee99d5140eb90c229a86cd",
      "tree": "69e771918a65cfc71d8171813f94f14c0e6e31e8",
      "parents": [
        "3cab6339e3bbfbf75a71f954ec417eed52dbe866",
        "d8aef1baae4434f93a62ae082df1b34bf186af53"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:10:15 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:10:15 2014 -0400"
      },
      "message": "Merge pull request #202 from smashwilson/fix-tests\n\nRemove Content-Type expectation from the Get token test"
    },
    {
      "commit": "d8aef1baae4434f93a62ae082df1b34bf186af53",
      "tree": "69e771918a65cfc71d8171813f94f14c0e6e31e8",
      "parents": [
        "3cab6339e3bbfbf75a71f954ec417eed52dbe866"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Thu Sep 11 17:50:04 2014 -0500"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Mon Sep 15 10:02:18 2014 -0400"
      },
      "message": "remove Content-Type expectation from Get token test\n"
    },
    {
      "commit": "0f26e5c2d5caeab5636e2110b4a2a2be458e9e22",
      "tree": "0ec13932e87348feb7d2a3f8d1f7aad7c0caf086",
      "parents": [
        "6bcf2582eeef037cf9d049064baf72ec022900b4"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 15:46:58 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 15:46:58 2014 +0200"
      },
      "message": "Changes to names based on code review\n"
    },
    {
      "commit": "6bcf2582eeef037cf9d049064baf72ec022900b4",
      "tree": "81a419d93974fe3970d9f98b01c9340f00e13763",
      "parents": [
        "2964aed5ba7f0129e916362dbe092c8a97b4cd93"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:52:51 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:52:51 2014 +0200"
      },
      "message": "Adding deep compare\n"
    },
    {
      "commit": "2964aed5ba7f0129e916362dbe092c8a97b4cd93",
      "tree": "5c0022f0d05841df87d136d7351cfd2dbf0ee674",
      "parents": [
        "b2b237fff73f0bf7c2a89224e3caa56f8afdcfc3"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:20:02 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:20:02 2014 +0200"
      },
      "message": "Add comments\n"
    },
    {
      "commit": "b2b237fff73f0bf7c2a89224e3caa56f8afdcfc3",
      "tree": "7c4546f382d863cc2c5678b5e2d34167c6c34f69",
      "parents": [
        "3cab6339e3bbfbf75a71f954ec417eed52dbe866"
      ],
      "author": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:17:47 2014 +0200"
      },
      "committer": {
        "name": "Jamie Hannaford",
        "email": "jamie.hannaford@rackspace.com",
        "time": "Mon Sep 15 12:17:47 2014 +0200"
      },
      "message": "Adding convenience methods to reduce test duplication\n"
    },
    {
      "commit": "3cab6339e3bbfbf75a71f954ec417eed52dbe866",
      "tree": "969d9bd0ccc93ef3e9b38d2ee1c8aa4da0b81682",
      "parents": [
        "2264e9da6467a1d6d77f2c62dbbf50610985f221",
        "aca58d888f934b56b877702e7f58e771c1c53468"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 18:41:07 2014 -0500"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 18:41:07 2014 -0500"
      },
      "message": "Merge pull request #198 from smashwilson/storage-consistency\n\nStorage consistency"
    },
    {
      "commit": "aca58d888f934b56b877702e7f58e771c1c53468",
      "tree": "8e1f8cc401d31031065c7f8ecc373c003e71ffe4",
      "parents": [
        "d88f32ba5655e93f9e2eb8848e61b245edb98ca6"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 17:00:35 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 17:00:35 2014 -0400"
      },
      "message": "Normalize endpoint URLs during endpoint location.\n\nRefactor URL normalization into a private function.\n"
    },
    {
      "commit": "d88f32ba5655e93f9e2eb8848e61b245edb98ca6",
      "tree": "4fc72e717d2458de950f4c42fd2a6f67f97c89fd",
      "parents": [
        "a26eea0caa3e204ef1604942ec85e67b20abc50f"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:59:58 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:59:58 2014 -0400"
      },
      "message": "Use the new EndpointOpts service instantiation.\n"
    },
    {
      "commit": "a26eea0caa3e204ef1604942ec85e67b20abc50f",
      "tree": "2cc2e6e7d482e1d1f4550cd666633ea9e95082ea",
      "parents": [
        "fc96135d0d2c1bb3eb79fe6364666912c842536d"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:21:49 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:42:38 2014 -0400"
      },
      "message": "Working on the acceptance test, now.\n\nBuilds but does not pass.\n"
    },
    {
      "commit": "2264e9da6467a1d6d77f2c62dbbf50610985f221",
      "tree": "82736dcbb017ca32f9da4dff8d7fe166c969b154",
      "parents": [
        "65fcb7a5ce8ed05d3de786aa28f2d9238c6ccca9",
        "f1bfb907acd7d680e01fc5f8ff462a2e4371a794"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 15:42:07 2014 -0500"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 15:42:07 2014 -0500"
      },
      "message": "Merge pull request #197 from smashwilson/rename-interface\n\n\"Availability\" documentation fixes"
    },
    {
      "commit": "fc96135d0d2c1bb3eb79fe6364666912c842536d",
      "tree": "aa69afc76271bfa15c9e4eb077423300ba247e5e",
      "parents": [
        "e47ea9e57fa34c14175dc294242d62e5b59f91fd"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:19:59 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:39:25 2014 -0400"
      },
      "message": "Put something non-test in acceptance/../identity/v3.\n"
    },
    {
      "commit": "e47ea9e57fa34c14175dc294242d62e5b59f91fd",
      "tree": "a83a9fdda0be77da6a2425e1814de32c4205e6fb",
      "parents": [
        "604320eb90b875b843cc03a55d25eee8e60cb995"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:03:44 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:39:25 2014 -0400"
      },
      "message": "Use the ServiceClient to generate URLs.\n\nAdd OkCodes to all of the perigee requests.\n"
    },
    {
      "commit": "604320eb90b875b843cc03a55d25eee8e60cb995",
      "tree": "98b2270cd73683d73a115f72332e16c9d3c1ad6f",
      "parents": [
        "65fcb7a5ce8ed05d3de786aa28f2d9238c6ccca9"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:02:28 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:39:25 2014 -0400"
      },
      "message": "Use gophercloud.ServiceClient in storage V1.\n"
    },
    {
      "commit": "65fcb7a5ce8ed05d3de786aa28f2d9238c6ccca9",
      "tree": "68ad3f72abf824f9f892b283bf9903a1177756c9",
      "parents": [
        "2dff1729b80d678df617ce40fa00812ab3fc4e4e",
        "8e15a5f546cf48380f9fc57ffa3f8c84dfb4f4d3"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:38:39 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:38:39 2014 -0400"
      },
      "message": "Merge pull request #195 from jrperritt/v0.2.0\n\nPass EndpointOpts during client creation"
    },
    {
      "commit": "f1bfb907acd7d680e01fc5f8ff462a2e4371a794",
      "tree": "3ebc2c07de2516d0238bcc5e32efd343a6e62b23",
      "parents": [
        "83f60cc108cf82abff5aa80b3e2ca6140b586bc9"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:35:08 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:35:08 2014 -0400"
      },
      "message": "Missed a spot.\n"
    },
    {
      "commit": "83f60cc108cf82abff5aa80b3e2ca6140b586bc9",
      "tree": "d2567582d8ede3138848d0966242400383580ac1",
      "parents": [
        "efac18b3ce3aa8a349ed3eeaf8bb1c9fde58d309"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:34:44 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 16:34:44 2014 -0400"
      },
      "message": "Explain differences in terminology between v[23].\n"
    },
    {
      "commit": "8e15a5f546cf48380f9fc57ffa3f8c84dfb4f4d3",
      "tree": "68ad3f72abf824f9f892b283bf9903a1177756c9",
      "parents": [
        "509fbb6cb21e7f74a0cea4f345f1ab4da6c43e93"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 12:39:56 2014 -0500"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 14:05:53 2014 -0500"
      },
      "message": "fix import path\n"
    },
    {
      "commit": "509fbb6cb21e7f74a0cea4f345f1ab4da6c43e93",
      "tree": "424c71f35462ca1a0717f105ee1c74384fd27735",
      "parents": [
        "2dff1729b80d678df617ce40fa00812ab3fc4e4e"
      ],
      "author": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 13:29:56 2014 -0500"
      },
      "committer": {
        "name": "Jon Perritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 14:05:37 2014 -0500"
      },
      "message": "add ApplyDefaults method for EndpointOpts\n"
    },
    {
      "commit": "2dff1729b80d678df617ce40fa00812ab3fc4e4e",
      "tree": "e4a3c4876f815ef2804bfab4c1a32c2b47f66c58",
      "parents": [
        "05a5c0fdbaf96507275e6c0343febc0582796038",
        "efac18b3ce3aa8a349ed3eeaf8bb1c9fde58d309"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 13:58:30 2014 -0500"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 13:58:30 2014 -0500"
      },
      "message": "Merge pull request #196 from smashwilson/rename-interface\n\nRename \"Interface\" to \"Availability\"."
    },
    {
      "commit": "efac18b3ce3aa8a349ed3eeaf8bb1c9fde58d309",
      "tree": "e4a3c4876f815ef2804bfab4c1a32c2b47f66c58",
      "parents": [
        "05a5c0fdbaf96507275e6c0343febc0582796038"
      ],
      "author": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 14:44:42 2014 -0400"
      },
      "committer": {
        "name": "Ash Wilson",
        "email": "smashwilson@gmail.com",
        "time": "Wed Sep 10 14:44:42 2014 -0400"
      },
      "message": "Rename \"Interface\" to \"Availability\".\n\nInterface is what the identity v3 docs call it, but that collides with an\nimportant concept from Go-the-language. Renaming it to \"Availability\" because\nthat\u0027s more descriptive.\n"
    },
    {
      "commit": "05a5c0fdbaf96507275e6c0343febc0582796038",
      "tree": "1c10c444d7683013e7b17886b9ec994eddc23a5c",
      "parents": [
        "5d7429c1357222d14fd28fac9639f7d4e34fc879"
      ],
      "author": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 12:11:18 2014 -0500"
      },
      "committer": {
        "name": "jrperritt",
        "email": "jrperritt@gmail.com",
        "time": "Wed Sep 10 12:11:18 2014 -0500"
      },
      "message": "Add myself, Ash, and Jamie.\n\nAlso change to table format."
    }
  ],
  "next": "5d7429c1357222d14fd28fac9639f7d4e34fc879"
}
