)]}'
{
  "log": [
    {
      "commit": "b640cfa489f29a58bed789ceec71afe3b5c4458e",
      "tree": "9fbba00ad8ff7a584d53b0f40e70bd2daada7bee",
      "parents": [
        "60b769ab743209c6c31db70f0dc7117c6adab8f2"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 28 10:01:13 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 28 10:37:53 2013 +0200"
      },
      "message": "Add TODO about node environments\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "60b769ab743209c6c31db70f0dc7117c6adab8f2",
      "tree": "c6906c0b184498c03102e37783d3f2855fd288c7",
      "parents": [
        "03266f6cdace27e0a2846f430e916e8ae5c82a87"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 28 10:37:17 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 28 10:37:52 2013 +0200"
      },
      "message": "Assume github remote is called origin\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "03266f6cdace27e0a2846f430e916e8ae5c82a87",
      "tree": "dacde6d8b4b8384944d73ffdfc63f42c58f4f013",
      "parents": [
        "afe1c50d39878f906d4d3d82b90c07fd21c55e0f"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 22:03:30 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 22:03:30 2013 +0200"
      },
      "message": "Augment info about Debian package\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "afe1c50d39878f906d4d3d82b90c07fd21c55e0f",
      "tree": "4443027a95239b52f6736b5d6062b7da06e37d3d",
      "parents": [
        "82c4b6f4459770e4980399c04b58f212c4d9d93d"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 20:46:09 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 20:46:09 2013 +0200"
      },
      "message": "Version number update\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "82c4b6f4459770e4980399c04b58f212c4d9d93d",
      "tree": "f30f43a6f557c1f41358a24040be621e63d71752",
      "parents": [
        "282ffb847256d512b3033714c550bee0512ceb30"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 19:05:11 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 19:08:48 2013 +0200"
      },
      "message": "add reference to dc13 talk to docs\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "282ffb847256d512b3033714c550bee0512ceb30",
      "tree": "1cfa093fa92ea92d0499f3041ea6874f2db50081",
      "parents": [
        "0b157d6d2619865b3412e1c9aaa6300ac8ee7121"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 19:08:08 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 19:08:23 2013 +0200"
      },
      "message": "Disable static path in sphinx config\n"
    },
    {
      "commit": "0b157d6d2619865b3412e1c9aaa6300ac8ee7121",
      "tree": "d4e9f455c2ddad1e00a767c2d379e47767f6426e",
      "parents": [
        "c0e9903a1ca576a038f5fa43e72ff1d7177bd060"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 18:52:47 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 18:52:47 2013 +0200"
      },
      "message": "add mailing list to docs\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "c0e9903a1ca576a038f5fa43e72ff1d7177bd060",
      "tree": "35e50e96f4e02d00df3ee4b6fbb967a8de62d3ab",
      "parents": [
        "069f53cdb7800c24b82a67e7e314c2d7ed67bfee"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 18:21:57 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 18:21:57 2013 +0200"
      },
      "message": "Link to Debian archive for tarball downloads\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "069f53cdb7800c24b82a67e7e314c2d7ed67bfee",
      "tree": "2445d0a628163680ef86cb758e30dba754312341",
      "parents": [
        "66b509fe9190ca4457a72e322fe15d6d828f93c5"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 17:50:03 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 17:50:03 2013 +0200"
      },
      "message": "Add a changelog to documenation\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "66b509fe9190ca4457a72e322fe15d6d828f93c5",
      "tree": "cf550fe1ba77dc80d0b468826a4cf811305fec70",
      "parents": [
        "5c36d294529bb5d8f93c34410a01296cfd44cd2d"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 17:41:05 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 17:41:05 2013 +0200"
      },
      "message": "factor out entrypoints list\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "5c36d294529bb5d8f93c34410a01296cfd44cd2d",
      "tree": "78e57d7f3c358b90e27a8c3dd4bc76d71ca16e24",
      "parents": [
        "3fe5f94411b772ff002707e4293969d61f920a98"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 16:33:10 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 17:15:08 2013 +0200"
      },
      "message": "Makefile update for new gh-pages hack\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "3fe5f94411b772ff002707e4293969d61f920a98",
      "tree": "fc14be4a05663cb85c4b64c867c404426eaadbd8",
      "parents": [
        "b00609559dcf69a5dd7071d9cfbde3ba8f2f1e94"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:58:51 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:58:51 2013 +0200"
      },
      "message": "include substs in new todo file\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "b00609559dcf69a5dd7071d9cfbde3ba8f2f1e94",
      "tree": "4df7893f6813b0c66cf0d4cf8888ed59cf2cc0df",
      "parents": [
        "72dc9cdb0c000c2428a5890b9b8a5f9019e81aeb"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:52:29 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:52:29 2013 +0200"
      },
      "message": "url update\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "72dc9cdb0c000c2428a5890b9b8a5f9019e81aeb",
      "tree": "f02af5328665f3dcc3e123315c34655b9a822fb4",
      "parents": [
        "9d19e19dc6af4b8de2705a212838e954e8fca121"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:51:25 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:51:28 2013 +0200"
      },
      "message": "add reference to github to main page\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "9d19e19dc6af4b8de2705a212838e954e8fca121",
      "tree": "ff78b657178bde78eb4bfe39a587939e7d194910",
      "parents": [
        "cbaf4c82292f093fb6e1b8ebbe785375ddf33563"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:43:57 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 15:43:57 2013 +0200"
      },
      "message": "update project homepage link\n"
    },
    {
      "commit": "cbaf4c82292f093fb6e1b8ebbe785375ddf33563",
      "tree": "67f3a89c6f97c2785f414aead399c5530273ca2e",
      "parents": [
        "cc8851d1e6f0410773b2372bec26afb1267b0719"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 13:47:59 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 13:47:59 2013 +0200"
      },
      "message": "add todo about common set of classes\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "cc8851d1e6f0410773b2372bec26afb1267b0719",
      "tree": "7cc3f6a4c391bca68c4bc62ca11c326320b46cca",
      "parents": [
        "c2ff09b444de2af17c101125d8efea96b5bfadab"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 13:43:16 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 13:43:16 2013 +0200"
      },
      "message": "Migrate TODOs into documentation\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "c2ff09b444de2af17c101125d8efea96b5bfadab",
      "tree": "1fff16289c914a4d178274bd0fb81654ff532ca9",
      "parents": [
        "a06cffcbe37eaee39afc1962b595bebbcacb39e5"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 12:46:20 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 12:46:20 2013 +0200"
      },
      "message": "Warn about lack of reclass in Salt pre-0.17\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "a06cffcbe37eaee39afc1962b595bebbcacb39e5",
      "tree": "d08a21bf256279da531688489e600d84e531ccbd",
      "parents": [
        "9c6a0f2aff8194cbe122169bfb5d6981cc65335f"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 12:46:11 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 27 12:46:11 2013 +0200"
      },
      "message": "Turn Ansible community notice into a warning\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "9c6a0f2aff8194cbe122169bfb5d6981cc65335f",
      "tree": "f6866f741ff6d821d7df16a3ad6e56d6ef1960ec",
      "parents": [
        "60a28a323c59a9a0c80eb6996bfede19482412ff"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 22:23:21 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 22:23:21 2013 +0200"
      },
      "message": "add docsclean target\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "60a28a323c59a9a0c80eb6996bfede19482412ff",
      "tree": "b0633875c96f24aa5a67498df8ddb50f5f5b69b6",
      "parents": [
        "3276910c9e64d25cd62edcd66994086ed31eac42"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 21:58:19 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 21:58:19 2013 +0200"
      },
      "message": "Disable jekyll processing on github pages\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "3276910c9e64d25cd62edcd66994086ed31eac42",
      "tree": "ef87826bf88304cb91370196375fa4e32d7de2dc",
      "parents": [
        "8acd49d6ec449fe890126553b04565de23907a46"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 21:35:28 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 21:51:10 2013 +0200"
      },
      "message": "add docs* targets to Makefile\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "8acd49d6ec449fe890126553b04565de23907a46",
      "tree": "7166c76613a17c73bdd211bff12657f3e72ad713",
      "parents": [
        "5ab2bf8610a6b506764f5c0bbd06c9347369bd7c"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 21:22:25 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 21:22:25 2013 +0200"
      },
      "message": "Migrate README docs to sphinxdoc\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "5ab2bf8610a6b506764f5c0bbd06c9347369bd7c",
      "tree": "d139bf84d97589daf6e97beb600f2e49c878e1a2",
      "parents": [
        "cbd9aed14c367f6f4fcde0f4cbe6d2b629f500a2"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 12:53:27 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Aug 26 12:53:34 2013 +0200"
      },
      "message": "Add Artistic Licence 2.0 text\n"
    },
    {
      "commit": "cbd9aed14c367f6f4fcde0f4cbe6d2b629f500a2",
      "tree": "b351a2daa18f2823829289b46e9a2ade047874a4",
      "parents": [
        "72f53ff2e63e71475db6e1c5a4689de722391137"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 20 11:31:27 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 20 11:31:31 2013 +0200"
      },
      "message": "Rename salt-reclass to reclass-salt in docs\n\nCloses #7, thanks Kent Tenney.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "72f53ff2e63e71475db6e1c5a4689de722391137",
      "tree": "08986fa8e2731c6a12e71a46d41dc727bf0422d9",
      "parents": [
        "ad8067e026ca24d3e1731f35c72194cf195d422e"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sun Aug 18 15:35:07 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sun Aug 18 15:35:11 2013 +0200"
      },
      "message": "Cast refs to string when assembling a string\n\nRefValue preserves the type of the referenced value only if it\u0027s not\nembedded in a string. If the referenced value is embedded in a string,\nit must be cast to a string before appending.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ad8067e026ca24d3e1731f35c72194cf195d422e",
      "tree": "4d502380644a1eb10b1f3181ca20ed542d4285ad",
      "parents": [
        "00b9331f3caf6f89989d95c4ea1f6cb02c74cb38"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 13 16:41:50 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 13 16:41:50 2013 +0200"
      },
      "message": "add TODO about merging with existing data/node data\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "00b9331f3caf6f89989d95c4ea1f6cb02c74cb38",
      "tree": "94dc061144f9d5b88f9e262471d4439fb19bbcec",
      "parents": [
        "1b6881793cae99e554179f33d886f1db4dd81525"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 13 11:41:58 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Aug 13 11:41:58 2013 +0200"
      },
      "message": "regexp-class mapping TODO\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "1b6881793cae99e554179f33d886f1db4dd81525",
      "tree": "e908d7f54b95be8c3ed4b6494b09b924ccaff10b",
      "parents": [
        "66e75589ec7181c727813f3e73ae2cd465c54d48"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Aug 08 13:57:25 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Aug 08 13:57:25 2013 +0200"
      },
      "message": "Code clarification and commenting for interpolation\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "66e75589ec7181c727813f3e73ae2cd465c54d48",
      "tree": "f362607254bca8ba0041ad821b9d5fa8f2705860",
      "parents": [
        "390954ed4baa2641b3949d7d68e5cc48df61af10"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Aug 08 13:15:01 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Aug 08 13:15:01 2013 +0200"
      },
      "message": "Improved cyclical reference detection\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "390954ed4baa2641b3949d7d68e5cc48df61af10",
      "tree": "df00932349941e12cb8ac05ac529bc4e8bc897a4",
      "parents": [
        "96a6affce929b5fdf0660c781c88c87a64d3d7d1"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 17:20:14 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 17:20:14 2013 +0200"
      },
      "message": "TODO update about interpolation\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "96a6affce929b5fdf0660c781c88c87a64d3d7d1",
      "tree": "727e0b5fb0db67524cbe842b51a398f5e9d4e0f6",
      "parents": [
        "c4f3b8324677432a0ff53f3f23444f85b06c8519"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:32:56 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:36:33 2013 +0200"
      },
      "message": "TODO and README.Hacking maintenance about testing\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "c4f3b8324677432a0ff53f3f23444f85b06c8519",
      "tree": "9091d011861368723c62437ba6d4c33e07f93269",
      "parents": [
        "fa27b9a39217d492872f1cc15486e2870b237b78"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:31:51 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:36:33 2013 +0200"
      },
      "message": "REAMDE maintenance\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "fa27b9a39217d492872f1cc15486e2870b237b78",
      "tree": "c68408df89e19d9983d6f4dcacde71f393966f95",
      "parents": [
        "adb10f1600f2a1be705a5e435dbfdb49dabdcd2f"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:07:14 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:36:33 2013 +0200"
      },
      "message": "Interpolate Parameters after merging from storage\n\nFollowing the merging of parameters, the storage base class now invokes\ninterpolate() on the Parameters instance (via the Entity) instance.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "adb10f1600f2a1be705a5e435dbfdb49dabdcd2f",
      "tree": "d50bebf3bb723f7e2ec987f37e03bf90815d654b",
      "parents": [
        "3d472e345530429bd8af6170a6ff2db1e0e6c642"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:01:53 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:36:33 2013 +0200"
      },
      "message": "Implement Parameter interpolation\n\nParameters can now reference each other, and resolution happens in\ntopological order. This is done in two steps: while merging already\nwalks the entire dictionary, a list of references and their occurrences\nis kept. After merging is complete, interpolate() is called on the\ninstance, which recursively resolves the references found during\nmerging. If a referenced value itself contains other references, those\nare resolved first (which is the topological ordering).\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "3d472e345530429bd8af6170a6ff2db1e0e6c642",
      "tree": "0d4ff2ca7f3b5bf901458a0b439936421030fdbc",
      "parents": [
        "ad1f89fd592063ff016def8a8905883cafd024bb"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 15:58:15 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 16:33:24 2013 +0200"
      },
      "message": "Provide utils.RefValue\n\nRefValue encapsulates string parameter values and can be used to isolate\nand resolve references to other parameter values.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ad1f89fd592063ff016def8a8905883cafd024bb",
      "tree": "367a71ead35a9fbaf828e4b32cea89840993a5b1",
      "parents": [
        "e09d37be3aa939f4bd9bf7d2497e926cda54bd12"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 15:50:09 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Aug 07 15:50:15 2013 +0200"
      },
      "message": "Provide utils.DictPath\n\nDictPath is a class used to represent \"paths\" to values in nested\ndictionaries. This works around Python\u0027s limitation of not being able to\nassign to the variable pointed to by a reference. It\u0027s used to translate\nvariable strings like ${foo:bar} into locations in the parameters\ndictionary.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "e09d37be3aa939f4bd9bf7d2497e926cda54bd12",
      "tree": "dfda675730937a43bcc162c937dda1511f7dd756",
      "parents": [
        "97c4cd980841b119bc971b1c8716687888203c72"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sun Jul 07 13:05:19 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 20 20:53:47 2013 +0200"
      },
      "message": "Interpolation specifics defined in defaults\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "97c4cd980841b119bc971b1c8716687888203c72",
      "tree": "f8bc37c3642842811cf7a8c0ef1c0d52e6b5aa68",
      "parents": [
        "c4625120f9e9eaee4b6d94679484ed0ef06d6d8e"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 19 07:43:27 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 19 07:43:27 2013 +0200"
      },
      "message": "Ensure Salt inventory dir default is absolute path\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "c4625120f9e9eaee4b6d94679484ed0ef06d6d8e",
      "tree": "74bae9cdbbed84e5cf0f1ce323ed6fbd2510663a",
      "parents": [
        "b159e7a88644ebaded007bf3e28c9a04d5629f96"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 19 07:42:43 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 19 07:42:43 2013 +0200"
      },
      "message": "Remove leftover mergers import\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "b159e7a88644ebaded007bf3e28c9a04d5629f96",
      "tree": "21f014e6a0dbcc4a0fc55389ebef2bd21299dfac",
      "parents": [
        "5092a0cc91c085a85c7afc9dbe66e72cfccc4bdb"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:35:21 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:35:21 2013 +0200"
      },
      "message": "Remove crap nosetests for yaml_fs\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "5092a0cc91c085a85c7afc9dbe66e72cfccc4bdb",
      "tree": "3cb21ccea463169ca0d0b5da4d76eaac72aa60f2",
      "parents": [
        "445f9ffd6550350ba624d21d3381004f9c0d6bdd"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:34:24 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:34:24 2013 +0200"
      },
      "message": "TODO update\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "445f9ffd6550350ba624d21d3381004f9c0d6bdd",
      "tree": "8008b3cc86f0f27fed38d0b7942f1d3f78011204",
      "parents": [
        "cd27b64f030e046b371804c804c0c9096fd07911"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:18:03 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:18:05 2013 +0200"
      },
      "message": "Purge mergers hierarchy\n\nThe rewrite of all the datatypes made the mergers unnecessary, i.e. they\nare now integrated with the datatypes.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "cd27b64f030e046b371804c804c0c9096fd07911",
      "tree": "34ac81335518765f69a82ffe81310dc0c01a5cc8",
      "parents": [
        "f8618130637ac88d01dd1f41bd6572dd45a70a43"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:17:40 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:17:40 2013 +0200"
      },
      "message": "datatypes.tests needs __init__.py to be a module\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "f8618130637ac88d01dd1f41bd6572dd45a70a43",
      "tree": "ce676f1ed1e4cb5f55ffef4ea0151c9cda0f561b",
      "parents": [
        "ec7d1a6a14e813c764a150b82ee573770d2e8725"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:13:58 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:14:20 2013 +0200"
      },
      "message": "Default inventory_base_uri to dirname of script for Salt adapter\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ec7d1a6a14e813c764a150b82ee573770d2e8725",
      "tree": "f455ee3dd0ef4638b6bb5ad8da1fecd29d22ac67",
      "parents": [
        "1a53cb0a5e790aaba1467d90ebe25555647ef806"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jul 09 17:18:36 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:14:20 2013 +0200"
      },
      "message": "Reimplement Parameters\n\nParameters is not a dict, so let\u0027s not pretend to be one. Instead, be\na very specific type doing exactly what it should and exposing only as\nmuch functionality as needed.\n\nThis is a complete rewrite and pulls in the entire mergers logic.\n\nAlso switches from nose to unittest.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "1a53cb0a5e790aaba1467d90ebe25555647ef806",
      "tree": "17b917662e5a4ea3946ce4a4e01783abe3d480e3",
      "parents": [
        "e81051f63eaaabed14dd11217b562fd830d83e53"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jul 09 00:17:04 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:14:20 2013 +0200"
      },
      "message": "Reimplement Applications as a subclass of Classes\n\nApplications are like Classes an ordered set, so we inherit from Classes\nand thus reuse the same, limited functionality.\n\nThe concept of negation requires to override extend() and append().\nSince we would like Applications to keep a memory of negations they\nembody, for instance for later merging (extending) into another list,\nthereby removing elements, the negations are kept in a separate list.\n\nAlso, switch from nose to unittest.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "e81051f63eaaabed14dd11217b562fd830d83e53",
      "tree": "22f605e3c44fe106819126b15c90bad97ca30832",
      "parents": [
        "ff57ea1071997c7fe0f4d55e31ea603fd30122c6"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 08 23:13:23 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:14:20 2013 +0200"
      },
      "message": "Reimplement Classes as simplified (not-fully-functional) ordered set\n\nClasses is essentially an ordered set, but we only need very limited\nfunctionality, so keep it simple and provide only the very basics.\n\nPurposely, Classes no longer derives from list so as to not give a false\nimpression.\n\nAlso, switch from nose to unittest.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ff57ea1071997c7fe0f4d55e31ea603fd30122c6",
      "tree": "a9ee0d3df4597890ba5922d0a2add68123fad976",
      "parents": [
        "59cf02afdf79328d3ad2b34b6662c269e34e3a94"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jul 09 16:39:35 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 18 21:04:31 2013 +0200"
      },
      "message": "Improve Entity class\n\nAmong a bit of cleanup, this mainly adds type-safety and a better\nrepresentation of instances.\n\nAlso, switch from nose to unittest.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "59cf02afdf79328d3ad2b34b6662c269e34e3a94",
      "tree": "6f74912163885924510165087bb1258bf0993ecf",
      "parents": [
        "df9f4afcf85fadfd1ed9337ee4a1f697f8e64af5"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jul 09 15:28:28 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jul 09 16:40:32 2013 +0200"
      },
      "message": "Switch to Python unittest\n\nNose has some inherent problems as it is file-based, so let\u0027s switch\nto the Python default anyway.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "df9f4afcf85fadfd1ed9337ee4a1f697f8e64af5",
      "tree": "d45123554ce1be9bde198cf42407beb5b60a8262",
      "parents": [
        "29be058d452ef5743b0355ccc36f3e65c18b8fb5"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jul 09 07:38:09 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jul 09 07:39:21 2013 +0200"
      },
      "message": "Avoid Py2.5 syntax\n\n\u0027foo\u0027 if condition else \u0027bar\u0027 is post-Python-2.5 syntax and while\nconvenient, just not necessary.\n"
    },
    {
      "commit": "29be058d452ef5743b0355ccc36f3e65c18b8fb5",
      "tree": "76d6cc31efb3445e983264cefdc75321ee4ab1dc",
      "parents": [
        "ce821e0ea21e7e9051ca32463a79b8377c20e53a"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 21:02:53 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 08 21:43:59 2013 +0200"
      },
      "message": "Properly handle negater, if not default\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ce821e0ea21e7e9051ca32463a79b8377c20e53a",
      "tree": "60472020cddb0004de43e29e1e5d16b630c88aef",
      "parents": [
        "5428b828a8c41afe95a03c1c683e7cf0edcc172c"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 20:58:04 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sun Jul 07 09:01:06 2013 +0200"
      },
      "message": "Add test target to Makefile\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "5428b828a8c41afe95a03c1c683e7cf0edcc172c",
      "tree": "833e996b0760def97f03ecf23f99acaa2c332124",
      "parents": [
        "7deb3d299876812cd3ca03ccd7bdb141b9c4fa57"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 20:50:26 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sun Jul 07 09:01:06 2013 +0200"
      },
      "message": "Do not use constructors in default arguments\n\nSomething like __init__(self, classes\u003dClasses(), …) causes Python to\ncreate a single Classes instance that gets used as default argument\nsubsequently. If something changes the variable then referenced by\nclasses, subsequent calls to the default constructor will cause the\nchanged object to be referenced.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "7deb3d299876812cd3ca03ccd7bdb141b9c4fa57",
      "tree": "013bf95a23672ee303409b3e95bce7dc0a992d43",
      "parents": [
        "a1750e3021db5bd708e300156b813c5544f4a100"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 20:22:59 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sun Jul 07 09:00:47 2013 +0200"
      },
      "message": "Add test for merging into empty Entity\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "a1750e3021db5bd708e300156b813c5544f4a100",
      "tree": "eca32645876389cdc3a0b2983454e0a3353c01d9",
      "parents": [
        "97a66f51dbcefea70a433b8cd094a0e4aaa85013"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 15:50:09 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 20:52:37 2013 +0200"
      },
      "message": "Simplify yaml_fs merge loop\n\nBy merging into an empty Entity, we can simplify the loop.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "97a66f51dbcefea70a433b8cd094a0e4aaa85013",
      "tree": "d50ed6870f9e0ae131f77b74559a199259a69c37",
      "parents": [
        "a5c998e0f19ca533ad9b23f6001909ebd9dbd398"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 19:55:46 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Sat Jul 06 19:55:46 2013 +0200"
      },
      "message": "Fix yaml_fs tests\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "a5c998e0f19ca533ad9b23f6001909ebd9dbd398",
      "tree": "4b28ec572883bc99987a53b7d3835fe43256be95",
      "parents": [
        "b17a7b733c78442fc37a1f77185213ab002e362e"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 08:50:10 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 08:50:10 2013 +0200"
      },
      "message": "Fix tests, add note about lint/coverage to hacking doc\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "b17a7b733c78442fc37a1f77185213ab002e362e",
      "tree": "e02ea932b2bf08ae3b01e89b6f96709ba2e758e5",
      "parents": [
        "bea29d1b440190a347084105368026cfaf8c382b"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 08:45:35 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 08:45:35 2013 +0200"
      },
      "message": "Add coverage.py invocation to Makefile\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "bea29d1b440190a347084105368026cfaf8c382b",
      "tree": "6ebebeddc2404cca2a8defb417f262d03ed40b03",
      "parents": [
        "035cdd74e6a85dc57cad7c81628e4b9dca60b6a1"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 08:35:19 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 08:35:23 2013 +0200"
      },
      "message": "Add pylintrc and Makefile for easier linting\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "035cdd74e6a85dc57cad7c81628e4b9dca60b6a1",
      "tree": "22a598ed76ac940ccdd93ef3bf349abc435f57e9",
      "parents": [
        "30943277e3d6c2e50a2bb43be751b69892e8789c"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 07:25:18 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jul 05 07:25:18 2013 +0200"
      },
      "message": "Add TODO for CLI and adapter tests\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "30943277e3d6c2e50a2bb43be751b69892e8789c",
      "tree": "a705a59a817298c99e56396ca5701bf234dac1aa",
      "parents": [
        "ac7fc53a29af9067febe59a9837d5566c8bb9b64"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 08:32:00 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 22:26:48 2013 +0200"
      },
      "message": "Massive refactoring\n\nThis commit does some massive refactoring of the Salt source:\n\n  - reclass and all adapters have been changed to support the distribute\n    (setuptools) entry-points interface, while they are also runnable\n    directly (using `/usr/bin/env python`);\n\n  - reclass and all adapters now use exactly the same approach to\n    configuration (sensible defaults + config file + command-line\n    options), but inventory/nodeinfo is properly parametrised (e.g.\n    top/pillar for Salt);\n\n  - the documentation has been updated accordingly;\n\n  - defaults and constants were factored out into common modules.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ac7fc53a29af9067febe59a9837d5566c8bb9b64",
      "tree": "c3c1633bcd4982775e97beeeacbde2feaa410acd",
      "parents": [
        "59765e6c306dafd00e0e2089c548867ce823efe3"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 19:23:50 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 22:21:09 2013 +0200"
      },
      "message": "Update docs to reflect ext_pillar taking a list\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "59765e6c306dafd00e0e2089c548867ce823efe3",
      "tree": "fd18cd1a6fdebee0313c6e66383b66e30fe01de9",
      "parents": [
        "0f473f732e4353ba00eec9c8c559fcc3551ab31b"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 16:17:20 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 22:21:09 2013 +0200"
      },
      "message": "Add deprecation notice to Ansible adapter module\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "0f473f732e4353ba00eec9c8c559fcc3551ab31b",
      "tree": "eea31923df5cf27b39ab9a1fc8deda7f7271f726",
      "parents": [
        "ec0e8d75ff3e00d025100cc33420b41d9b216094"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 16:14:30 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 22:21:09 2013 +0200"
      },
      "message": "Add an exception for permission errors\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ec0e8d75ff3e00d025100cc33420b41d9b216094",
      "tree": "4c9a95a11db5079ddf9656e993c6150f1d866bbd",
      "parents": [
        "a6f145b570c65598a00eac078b0f857f0b6d1d8d"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 16:14:12 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 22:21:09 2013 +0200"
      },
      "message": "Make exiting with message a function of the exception\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "a6f145b570c65598a00eac078b0f857f0b6d1d8d",
      "tree": "acd6ba2e61c70380d0bc9fbe31ac4044858f7a3a",
      "parents": [
        "c43c60d4763687bd5feb057f9093a97227c5aa13"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 16:12:21 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 22:21:09 2013 +0200"
      },
      "message": "Add verbosity/debugging output to TODO\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "c43c60d4763687bd5feb057f9093a97227c5aa13",
      "tree": "3b15a668eea702432be8e21a57c5c86b37b5b8ec",
      "parents": [
        "ff1bae8bc03d15531aea0b5f94ba75b312c0d6d7"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 16:08:23 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 22:21:09 2013 +0200"
      },
      "message": "Capitalize error messages from yaml_fs storage backend\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "ff1bae8bc03d15531aea0b5f94ba75b312c0d6d7",
      "tree": "cea086272569366923cc98eeb6fbd0a62f4cddc6",
      "parents": [
        "51406fb63b286b4be9fadb63afbdbe40197fa78f"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 07:52:30 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 07:52:30 2013 +0200"
      },
      "message": "Amended descriptions\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "51406fb63b286b4be9fadb63afbdbe40197fa78f",
      "tree": "49583abe32edb5a69016d093c8dd35d7ab823fc3",
      "parents": [
        "da52287043f8828d4359878fdd5ff40d2755868c"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 07:48:44 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Thu Jul 04 07:48:44 2013 +0200"
      },
      "message": "Provide additional meta information\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "da52287043f8828d4359878fdd5ff40d2755868c",
      "tree": "709a519a85bf6713f2ee134a1af561e16775bfc4",
      "parents": [
        "e85333b984fbe343da70d027dafda5535533bb13"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:31:55 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:31:55 2013 +0200"
      },
      "message": "Add note about running against example inventory\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "e85333b984fbe343da70d027dafda5535533bb13",
      "tree": "1a6c1c5fa690c084323c8912f27c6b14e73203fd",
      "parents": [
        "46c0652de840a36e373632f6c92dae30052ff5ef"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:24:25 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:24:25 2013 +0200"
      },
      "message": "Git-ignore egg-info files\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "46c0652de840a36e373632f6c92dae30052ff5ef",
      "tree": "3bea23048c3396b44bfe5f254481369d6d2def49",
      "parents": [
        "012103e1eddc7a7811232985ecbeae0c726c9d76"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:03:22 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:03:22 2013 +0200"
      },
      "message": "Move hacking-relevant docs to separate file\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "012103e1eddc7a7811232985ecbeae0c726c9d76",
      "tree": "1f5dfadb77cb959ac9b427f1d63c02676c2c7259",
      "parents": [
        "0eda02e0ce677a964cd18123ba9f11df40241032"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:02:02 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 20:02:02 2013 +0200"
      },
      "message": "Docs update for setuptools\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "0eda02e0ce677a964cd18123ba9f11df40241032",
      "tree": "b3821e8cd3e73198eb0f481a47dce78a677c82e0",
      "parents": [
        "a56b2ec4486ccab2dd11bdd23c1055be8a11e720"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 19:05:34 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 19:05:34 2013 +0200"
      },
      "message": "Header comment update\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "a56b2ec4486ccab2dd11bdd23c1055be8a11e720",
      "tree": "7ee9fd821aaba0aa72cb3e1e624e1e9b482886e0",
      "parents": [
        "0bcf5a9d7125340605e18e50ab6a3cfb8369504a"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 19:04:54 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 19:05:15 2013 +0200"
      },
      "message": "Factor out version information to central location\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "0bcf5a9d7125340605e18e50ab6a3cfb8369504a",
      "tree": "9ebbf39892bfe5cea846ef32b3f757de188b7f91",
      "parents": [
        "b029e75c8953b57254f6387bda71510d30a7035e"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 17:09:28 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 17:09:28 2013 +0200"
      },
      "message": "Remove unnecessary Makefile\n"
    },
    {
      "commit": "b029e75c8953b57254f6387bda71510d30a7035e",
      "tree": "dc20e560f621bee09ca798e333f4c1dab0ecf024",
      "parents": [
        "c70e4ee0ac7511dc93c47d0589732212262c2fe7"
      ],
      "author": {
        "name": "Ollie Walsh",
        "email": "ollie.walsh@geemail.kom",
        "time": "Sat Jun 29 14:14:23 2013 +0100"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 17:09:06 2013 +0200"
      },
      "message": "Basic setuptools support\n"
    },
    {
      "commit": "c70e4ee0ac7511dc93c47d0589732212262c2fe7",
      "tree": "bf667d47d23771c58f3f711071cfbe37c68f7338",
      "parents": [
        "243eb3d39768b86906b37bf8862be1e4dfd96ad9"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 15:37:01 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 15:37:19 2013 +0200"
      },
      "message": "Add variable interpolation TODO\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "243eb3d39768b86906b37bf8862be1e4dfd96ad9",
      "tree": "e0f9a7aa9ed5b54ac3b48877c9797d3396efdd2f",
      "parents": [
        "367532c77377dcbe5ada42d54757cd2e2acf2135"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 15:28:34 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 15:37:19 2013 +0200"
      },
      "message": "README update about contributing and pull requests\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "367532c77377dcbe5ada42d54757cd2e2acf2135",
      "tree": "59f159f80e75b548a5032350bfd062abc2e5be4f",
      "parents": [
        "e38475f484817c9d835e26a703a30cdf9d0a784b"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 21:08:18 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 15:37:19 2013 +0200"
      },
      "message": "Add README for Salt integration/adapter\n"
    },
    {
      "commit": "e38475f484817c9d835e26a703a30cdf9d0a784b",
      "tree": "a689ff671e009ef1c691055bff4a41fb0bb40fa6",
      "parents": [
        "42c475dfb3ab88794c89ad653c3978c6bddf9d71"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 01 15:08:47 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 15:37:19 2013 +0200"
      },
      "message": "Move Salt-internals to Salt\u0027s reclass adapters\n\nThe Salt reclass_adapter plugins now hide all the internals and provide\nreclass only with the information it needs, without having to make\nassumptions about Salt internals.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "42c475dfb3ab88794c89ad653c3978c6bddf9d71",
      "tree": "a57e9f3ae98ce50afd6ee3e3097a72f7e71aec4c",
      "parents": [
        "df1014f8b90c84bcaca4d269b0d01c6bec6f2ec8"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 18:39:06 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 15:22:47 2013 +0200"
      },
      "message": "Initial version of a Salt adapter\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "df1014f8b90c84bcaca4d269b0d01c6bec6f2ec8",
      "tree": "f7e710e5ff5877331d5ad97d2ad2c745a109c560",
      "parents": [
        "c2c355b09909ab57610b2832e2a9dd5cd8c83d20"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 14:37:53 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jul 03 14:37:53 2013 +0200"
      },
      "message": "Move applications_postfix to Ansible adapter\n\nIn its current incarnation, the applications_postfix configuration\nparameter, along with the concept of \"groups\" is only relevant to\nAnsible. Therefore, in the interest of simplicity, move it out of the\nmain code and into the Ansible adapter.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "c2c355b09909ab57610b2832e2a9dd5cd8c83d20",
      "tree": "93abb948dcb666fc1cd0707e4afa9e33d69f7807",
      "parents": [
        "cb93bc729bd5929c596c290e217aca545c6837bc"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 01 20:04:15 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 01 20:05:03 2013 +0200"
      },
      "message": "Add note about deprecation of ansible adapter\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "cb93bc729bd5929c596c290e217aca545c6837bc",
      "tree": "7ebf969dff0d4d89d1a81e630c302a4fd1049c9c",
      "parents": [
        "d3bc8bb6f07c8c9be97bf6d714a068c0c827cd1b"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 01 19:31:47 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 01 19:32:19 2013 +0200"
      },
      "message": "Add TODO about adapters and entrypoints\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "d3bc8bb6f07c8c9be97bf6d714a068c0c827cd1b",
      "tree": "02ae43616474e98f3ad11c1b0884c16851bab196",
      "parents": [
        "3664cf2f1aceaef680f986ddacd4f7979e0fe58f"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 01 15:17:56 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Mon Jul 01 15:17:56 2013 +0200"
      },
      "message": "Test update for 1de70cc\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "3664cf2f1aceaef680f986ddacd4f7979e0fe58f",
      "tree": "6ecc520c36bed7acc4e578396b8aa9cbf3a5e88b",
      "parents": [
        "db915945dec61075d0584015f64ed84b2e0b184b"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jun 28 13:24:40 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jun 28 13:24:59 2013 +0200"
      },
      "message": "Default inventory_base to .\n\nIf inventory_base_uri is not passed, default it to the current\ndirectory.\n\nIn either case, default nodes_uri and classes_uri to \u0027nodes\u0027 and\n\u0027classes\u0027 in all cases.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "db915945dec61075d0584015f64ed84b2e0b184b",
      "tree": "42461f03ca4839d53c573bb589025e42a1e86e88",
      "parents": [
        "90015d047925d7f0f67dd4147f1d2dc6fe72eef1"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jun 28 12:34:58 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Fri Jun 28 12:38:27 2013 +0200"
      },
      "message": "Add applications to groups only if postfix is defined\n\nIf applications_postfix is not set, then the groups list should only be\nthe classes list. Else there might be naming conflicts.\n\nIn any case, applications_postfix is probably not going to stay, so this\nis a hack.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "90015d047925d7f0f67dd4147f1d2dc6fe72eef1",
      "tree": "9b9c61b83d47fc5413359197c5bd9e635782f9b2",
      "parents": [
        "4cf004bacb317dceaf8ffb39becb682f4f59f14c"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 18:44:02 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:30 2013 +0200"
      },
      "message": "Add rudimentary error handling to yaml_fs\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "4cf004bacb317dceaf8ffb39becb682f4f59f14c",
      "tree": "4af62325cefa60958636b32bc7ede74cdcfbc452",
      "parents": [
        "4b855e62bd4f92c7aa9b2614cb6eb57e112d7db6"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 18:38:23 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:30 2013 +0200"
      },
      "message": "Make reclass key on return data look internal\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "4b855e62bd4f92c7aa9b2614cb6eb57e112d7db6",
      "tree": "6ab9475647ba34e8450af05a36702a244f6dccda",
      "parents": [
        "833936fe5838f6d52f0aae7c194f54cf0c7fb1b3"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:46:18 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:30 2013 +0200"
      },
      "message": "Allow node to be None to trigger inventory\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "833936fe5838f6d52f0aae7c194f54cf0c7fb1b3",
      "tree": "182a8addd96bb9de43df6b525f8f550da857db6d",
      "parents": [
        "1de70ccc9ec6161bfe167546f01e72c7570d75a1"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 17:58:30 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Default to pretty-printed YAML output\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "1de70ccc9ec6161bfe167546f01e72c7570d75a1",
      "tree": "1facbb6ce15f62d669a1a51b4637d97b3b703cc2",
      "parents": [
        "80c79e24bbcdea5c493af5bbb9b9004235a99565"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 16:11:58 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Put all information into inventory output\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "80c79e24bbcdea5c493af5bbb9b9004235a99565",
      "tree": "a3129920b93ed3673e4375c94fcd1d402631f83a",
      "parents": [
        "b37f9dfe83ee53b32c8756cbb66b7923d4bd9b9a"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 18:35:11 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Add timestamp to nodeinfo in storage\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "b37f9dfe83ee53b32c8756cbb66b7923d4bd9b9a",
      "tree": "d9045ce4ccf136ab4f7987a5c6b9c60c0c6659b3",
      "parents": [
        "97a554d4ed3d9971b9218152f0f2954f0e788833"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 15:41:31 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Refactor the Ansible adapter\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "97a554d4ed3d9971b9218152f0f2954f0e788833",
      "tree": "6b73c4aa6ccd0d51bf1521af203c7ce9f16a6968",
      "parents": [
        "9d3c6a451807792c1c7dfce143df9c4e7bc5d1a0"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 13:27:49 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Add an InvocationError exception\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "9d3c6a451807792c1c7dfce143df9c4e7bc5d1a0",
      "tree": "943fa53ec5eca2da0a4804e0397cce5739fac8f3",
      "parents": [
        "7c64f9cbc5961ddf06ec5eb06e493b6705ce23ac"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 13:27:36 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Refactor exceptions, reuse message\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "7c64f9cbc5961ddf06ec5eb06e493b6705ce23ac",
      "tree": "2bab6c994b2440f77a05dd58cb45d010d552b1b9",
      "parents": [
        "aeb1c8d96ae2723a5b13fdab90b337c50d945b52"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Tue Jun 25 13:26:23 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Restructure reclass into a Python module\n\nBy moving all code into ./reclass/, reclass can now be used as a Python\nmodule. The Ansible adapter and the CLI have been updated accordingly.\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    },
    {
      "commit": "aeb1c8d96ae2723a5b13fdab90b337c50d945b52",
      "tree": "f572561ac39be146738dcd55ae1e88813bc591d8",
      "parents": [
        "3924e89044fe445a663ffab4e1712634101ae9c1"
      ],
      "author": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 18:05:22 2013 +0200"
      },
      "committer": {
        "name": "martin f. krafft",
        "email": "madduck@madduck.net",
        "time": "Wed Jun 26 20:47:29 2013 +0200"
      },
      "message": "Default the inventory_base_uri to the current directory\n\nSigned-off-by: martin f. krafft \u003cmadduck@madduck.net\u003e\n"
    }
  ],
  "next": "3924e89044fe445a663ffab4e1712634101ae9c1"
}
