)]}'
{
  "log": [
    {
      "commit": "738e37148b2f7ecd86cbb8c271f9e033ae66eff8",
      "tree": "9683f9b4e36671ca0aedc29b7e52c880d0304b49",
      "parents": [
        "acba785c8a5c331edce05dfa760540b8ea8a81f1"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Oct 31 21:32:02 2022"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Oct 31 21:33:46 2022"
      },
      "message": "Bumped up the version number\n"
    },
    {
      "commit": "acba785c8a5c331edce05dfa760540b8ea8a81f1",
      "tree": "5ae0458da77df24d22f19accafb2862062d06946",
      "parents": [
        "3fa5eb357e0df9bb1a627bcb749c70c4e7b7b7c4"
      ],
      "author": {
        "name": "Kian Meng, Ang",
        "email": "kianmeng.ang@gmail.com",
        "time": "Tue Jan 11 15:10:11 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 11 15:10:11 2022"
      },
      "message": "Fix typos (#97)\n\n"
    },
    {
      "commit": "3fa5eb357e0df9bb1a627bcb749c70c4e7b7b7c4",
      "tree": "f2aa7f7cdc9b56775047f9154c32ba0f5a18ef4b",
      "parents": [
        "e8cd2a441804ffd3529b6ae342ad41983717668f"
      ],
      "author": {
        "name": "Bernhard M. Wiedemann",
        "email": "githubbmw@lsmod.de",
        "time": "Thu Jan 09 23:00:40 2020"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Jan 09 23:00:40 2020"
      },
      "message": "Made test_idle_thread_reuse more reliable (#92)\n\nDepending on machine load or other unknown influences\r\non the Linux scheduler, this would often fail with\r\n\r\n   File \"test_futures.py\", line 558, in test_idle_thread_reuse\r\n     self.assertEqual(len(executor._threads), 1)\r\n AssertionError: 2 !\u003d 1"
    },
    {
      "commit": "e8cd2a441804ffd3529b6ae342ad41983717668f",
      "tree": "18b5014083a95d183a81d958ed47a0dfec4305b1",
      "parents": [
        "456152f3dce69e7619ddf93f748fed9e914160b1"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Sep 27 08:07:19 2019"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Sep 27 08:07:19 2019"
      },
      "message": "Updated the changelog\n"
    },
    {
      "commit": "456152f3dce69e7619ddf93f748fed9e914160b1",
      "tree": "4c477f4525576244b0fcb435e563e74e11e1bb6a",
      "parents": [
        "f4fe3c36f794e1ada3442b5286ca6f71f277d665"
      ],
      "author": {
        "name": "Fahrzin Hemmati",
        "email": "fahhem@users.noreply.github.com",
        "time": "Fri Sep 27 07:55:30 2019"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Sep 27 07:55:30 2019"
      },
      "message": "Add thread initializer (from Python 3.7) (#93)\n\n"
    },
    {
      "commit": "f4fe3c36f794e1ada3442b5286ca6f71f277d665",
      "tree": "c295e7b46f52740a6f1eb8ed13a858d1b7201bd7",
      "parents": [
        "7e7638e8e1c2c625f89271063ef58d3c1fdbeaa1"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Sep 27 07:51:41 2019"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Sep 27 07:51:41 2019"
      },
      "message": "Reinforced the test suite against PyPy garbage collection issues\n"
    },
    {
      "commit": "7e7638e8e1c2c625f89271063ef58d3c1fdbeaa1",
      "tree": "c1282dd644ed46e913ae5653b99b65b08ed8b38c",
      "parents": [
        "ec78e222ece60721fc92a6c650df3116cb15d24e"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Sep 27 05:50:57 2019"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Sep 27 05:50:57 2019"
      },
      "message": "Fixed the Python 2.6 test run\n"
    },
    {
      "commit": "ec78e222ece60721fc92a6c650df3116cb15d24e",
      "tree": "5570c765598f7c7130328932066bdc61cef032c3",
      "parents": [
        "1f9c23f82cf760e4d085561cce21c5a52155905b"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Jul 15 09:21:53 2019"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Jul 15 09:25:34 2019"
      },
      "message": "Don\u0027t spin up new threads if there are existing idle ones\n\nFixes #88.\n"
    },
    {
      "commit": "1f9c23f82cf760e4d085561cce21c5a52155905b",
      "tree": "14387e197f71bfc030b54141850184d3e28bcb3f",
      "parents": [
        "5edbc65401fd578e195c2f0e2e8d3a6b5404f6bc"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Apr 29 17:48:35 2018"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Apr 29 17:48:50 2018"
      },
      "message": "Upgraded the Python 3 warnings\n\nSince some users have ignored the warnings and tried to use this on Python 3, the warning has been changed to a hard failure when running setup.py on py3. The README now also reflects this.\n"
    },
    {
      "commit": "5edbc65401fd578e195c2f0e2e8d3a6b5404f6bc",
      "tree": "201238f7257ed89527d0beae060beff7f37cde14",
      "parents": [
        "ab8a0526e3e013f7f31c5a2e7bea8514f8a7b635"
      ],
      "author": {
        "name": "Haochuan Guo",
        "email": "wooparadog@users.noreply.github.com",
        "time": "Mon Mar 19 07:03:06 2018"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Mar 19 07:03:06 2018"
      },
      "message": "More detailed warning towards Python2 users (#75)\n\n\r\n"
    },
    {
      "commit": "ab8a0526e3e013f7f31c5a2e7bea8514f8a7b635",
      "tree": "dfa996e1a57ca236aa7bd51444daae9d06f92933",
      "parents": [
        "eee42af39140dc226ca6f48ea646aab215a73c81"
      ],
      "author": {
        "name": "Jakub Wilk",
        "email": "jwilk@jwilk.net",
        "time": "Wed Feb 28 07:25:57 2018"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Wed Feb 28 07:25:57 2018"
      },
      "message": "Fix typo in changelog (#72)\n\n"
    },
    {
      "commit": "eee42af39140dc226ca6f48ea646aab215a73c81",
      "tree": "01faea5ddd25f0c76a0a9efb5e8f735fda23a647",
      "parents": [
        "9dcbb354fa26a1087462bbec2edcb32bbf85252d"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 23:26:41 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 23:26:41 2017"
      },
      "message": "Fixed alignment error in README.rst\n"
    },
    {
      "commit": "9dcbb354fa26a1087462bbec2edcb32bbf85252d",
      "tree": "92cccab5b030e97b8d21d4e271ae37768ab3ba53",
      "parents": [
        "13472e6a33ccd26a700a64a8091d83cea4b9af82"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 23:19:24 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 23:19:24 2017"
      },
      "message": "Bumped up the version number\n"
    },
    {
      "commit": "13472e6a33ccd26a700a64a8091d83cea4b9af82",
      "tree": "fe41afec0cfa537f1ff0db4ececf2c77242031dd",
      "parents": [
        "74608249f9f70e440186c62386404ccfa21d8564"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 22:59:14 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 23:15:46 2017"
      },
      "message": "Modernized the packaging/testing setup\n"
    },
    {
      "commit": "74608249f9f70e440186c62386404ccfa21d8564",
      "tree": "651fb54c4284d78a79238125e944421c2fbf9ed9",
      "parents": [
        "734643bf64bf2eeda2c05ccf11137f2b834ee8d2"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 22:50:29 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 22:53:41 2017"
      },
      "message": "Renamed CHANGES to CHANGES.rst\n\nIt was in rst format to begin with, but this allows Github to format\nit properly when people look at it.\n"
    },
    {
      "commit": "734643bf64bf2eeda2c05ccf11137f2b834ee8d2",
      "tree": "aada9a0a2763bcd0a93e3c32662ed7e7c72a594a",
      "parents": [
        "a4445f05f79e2e0090bf19d1d4d3c7e30a0bd7e1"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 22:44:18 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 22:45:23 2017"
      },
      "message": "Corrected minor details in packaging metadata\n"
    },
    {
      "commit": "a4445f05f79e2e0090bf19d1d4d3c7e30a0bd7e1",
      "tree": "754b7a150de926822b83fe9d0c0a0c8eb3aabcc8",
      "parents": [
        "718654e8142d229655d7322dbc2ede8855270e58"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 22:42:35 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Nov 30 22:42:35 2017"
      },
      "message": "Added a README\n"
    },
    {
      "commit": "718654e8142d229655d7322dbc2ede8855270e58",
      "tree": "42354aaeb2417b80a20de9390c009b44d13fe50b",
      "parents": [
        "552ca07c4103e6e96c189619eb5fb74cb6b1ef92"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Wed Nov 29 21:06:58 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Wed Nov 29 21:06:58 2017"
      },
      "message": "Fixed tests hanging on PyPy\n"
    },
    {
      "commit": "552ca07c4103e6e96c189619eb5fb74cb6b1ef92",
      "tree": "f2b212f70fc112c776ab6a797f7a4511636ce4ca",
      "parents": [
        "28fa404639a702c32a18a1a411409f1aab8ab464"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Wed Nov 29 21:06:32 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Wed Nov 29 21:06:32 2017"
      },
      "message": "Added notes from PR #66\n"
    },
    {
      "commit": "28fa404639a702c32a18a1a411409f1aab8ab464",
      "tree": "0d47f39e72c048a72ee6278f6391eabf5f4c0dd3",
      "parents": [
        "d0393ad626d25622927bb0ed47d35ddb2f6cd321"
      ],
      "author": {
        "name": "Lisandro Dalcin",
        "email": "dalcinl@gmail.com",
        "time": "Wed Nov 29 19:40:47 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Wed Nov 29 19:40:47 2017"
      },
      "message": "Backport fixes to as_completed and map iterators (bpo-27144) (#66)\n\nPython issues:\r\n\r\n+ python/cpython#1560\r\n+ python/cpython#3270\r\n+ python/cpython#3830"
    },
    {
      "commit": "d0393ad626d25622927bb0ed47d35ddb2f6cd321",
      "tree": "fbf044235abfad8681c3bb298f1709da8b82e5c8",
      "parents": [
        "4fcc2e0d53f53fc2fe7e27ed7ca38c035d4d5140"
      ],
      "author": {
        "name": "Eli Schwartz",
        "email": "eschwartz93@gmail.com",
        "time": "Fri Oct 27 22:07:12 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Oct 27 22:07:12 2017"
      },
      "message": "Specify python_requires to prevent installation on Python 3 (#67)\n\n"
    },
    {
      "commit": "4fcc2e0d53f53fc2fe7e27ed7ca38c035d4d5140",
      "tree": "d7ed5408274dcac1d39d3a96161f99b73d29c7d6",
      "parents": [
        "765e7e17975477b4e2fa60256007c970057e018d"
      ],
      "author": {
        "name": "Richard Hansen",
        "email": "rhansen@rhansen.org",
        "time": "Wed Oct 04 08:36:11 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Wed Oct 04 08:36:11 2017"
      },
      "message": "Wrap long lines in CHANGES. (#61)\n\n"
    },
    {
      "commit": "765e7e17975477b4e2fa60256007c970057e018d",
      "tree": "0d5d2f0d68d61b17b90205d11e42b4cb4650dba4",
      "parents": [
        "e8543e620d87f41f78751b4285a3f1af06023a62"
      ],
      "author": {
        "name": "Lisandro Dalcin",
        "email": "dalcinl@gmail.com",
        "time": "Tue Oct 03 18:35:10 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Oct 03 18:35:10 2017"
      },
      "message": "Make Future.__repr__ subclass-friendly (bpo-22033) (#65)\n\n+ https://bugs.python.org/issue22033\r\n\r\nMinor spelling fixes in docstrings (bpo-25523)\r\n\r\n+ https://bugs.python.org/issue25523"
    },
    {
      "commit": "e8543e620d87f41f78751b4285a3f1af06023a62",
      "tree": "26847621d100666b802b55ad561dc0bea69d4433",
      "parents": [
        "65552e4ae925451679ed9b8d40c0971366abc718"
      ],
      "author": {
        "name": "Steven Seguin",
        "email": "sseg@users.noreply.github.com",
        "time": "Tue Aug 08 15:34:27 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Aug 08 15:34:27 2017"
      },
      "message": "Backport `thread_name_prefix` from upstream (#64)\n\nChanges from https://github.com/python/cpython/pull/2315\r\n\r\nFixes #63.\r\n"
    },
    {
      "commit": "65552e4ae925451679ed9b8d40c0971366abc718",
      "tree": "f9d6e9f53f889d7cada24d6b4ca413b205e558e3",
      "parents": [
        "29534e3f3fe79b66c2083bafeb139bc3d8c64a18"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Apr 14 14:29:38 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Apr 14 14:29:38 2017"
      },
      "message": "Bumped up the version number\n"
    },
    {
      "commit": "29534e3f3fe79b66c2083bafeb139bc3d8c64a18",
      "tree": "165553732dfd53d3d2236b628b56dc8937e793c8",
      "parents": [
        "43bfc41626208d78f4db1839e2808772defdfdca"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Apr 14 13:47:46 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Apr 14 13:55:32 2017"
      },
      "message": "Switched to the PSF license\n\nThe original backport may have been licensed under the BSD license but the new backport was completely done using code from the standard library.\nThus licensing it using the BSD license was probably never a valid option.\nFixes #53.\n"
    },
    {
      "commit": "43bfc41626208d78f4db1839e2808772defdfdca",
      "tree": "febd4e24729c564f04cba55b140bd0227a02e3c5",
      "parents": [
        "e5a9e9bf9eac85a3d5fe4b588cf3d63c06d1ad5b"
      ],
      "author": {
        "name": "Richard Hansen",
        "email": "rhansen@rhansen.org",
        "time": "Fri Feb 24 21:33:39 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Feb 24 21:33:39 2017"
      },
      "message": "Mention old-style exception support in CHANGES. (#60)\n\n"
    },
    {
      "commit": "e5a9e9bf9eac85a3d5fe4b588cf3d63c06d1ad5b",
      "tree": "f685992a036ecf3aacb07115d124b9d89d5ad787",
      "parents": [
        "3ea11f927277ee193b911d7bf8aeb587439fea7c"
      ],
      "author": {
        "name": "Richard Hansen",
        "email": "rhansen@rhansen.org",
        "time": "Fri Feb 24 16:15:43 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Feb 24 16:15:43 2017"
      },
      "message": "Add support for old-style exception objects. (#58)\n\nPython 2 permits raising old-style objects (objects that aren\u0027t\r\ninstances of the object class).  Because these objects are not\r\ninstances of BaseException, clauses like \u0027except BaseException:\u0027\r\ndon\u0027t catch them.\r\n\r\nAdd support for handling old-style exception objects by:\r\n\r\n  * using a class-less \u0027except:\u0027 clause to catch old-style objects\r\n    raised by tasks and done callbacks\r\n  * using the proper exception object class type when raising a stored\r\n    old-type exception during result()"
    },
    {
      "commit": "3ea11f927277ee193b911d7bf8aeb587439fea7c",
      "tree": "0e70cb92578fe9e482b585f4479dd78da61aba4f",
      "parents": [
        "93889ac562ffb9f95bc5232201f96651fda3ff8a"
      ],
      "author": {
        "name": "Torstein Husebø",
        "email": "torstein@huseboe.net",
        "time": "Tue Jan 17 15:38:24 2017"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jan 17 15:38:24 2017"
      },
      "message": "docs: fix typo (#59)\n\n"
    },
    {
      "commit": "93889ac562ffb9f95bc5232201f96651fda3ff8a",
      "tree": "aef1ec54a6418e032db67baf060d6acaa5531d6b",
      "parents": [
        "09138538e446dbe7664bfab5b29fd2d51e625d4d"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Nov 08 23:47:54 2016"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Nov 08 23:47:54 2016"
      },
      "message": "Added Travis configuration\n"
    },
    {
      "commit": "09138538e446dbe7664bfab5b29fd2d51e625d4d",
      "tree": "122f03c8b635bb16b659ce883e752deb83b671d1",
      "parents": [
        "e3a43c15e5a0859c52122087e4e0e76f30185387"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Nov 08 23:31:44 2016"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Nov 08 23:31:44 2016"
      },
      "message": "Backported max_workers changes from upstream\n"
    },
    {
      "commit": "e3a43c15e5a0859c52122087e4e0e76f30185387",
      "tree": "cdf2245e969720ea2f30bb7e9a4bc9b82d0ff7e0",
      "parents": [
        "515263aa9548f9e180e2f2d3eef7a885d5a88514"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Feb 14 21:50:04 2016"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Feb 14 21:50:04 2016"
      },
      "message": "Fixed OverflowError with ProcessPoolExecutor on Windows\n"
    },
    {
      "commit": "515263aa9548f9e180e2f2d3eef7a885d5a88514",
      "tree": "c3979807704e5f77d846acd4a5e1f0944551da31",
      "parents": [
        "b60cc0645115a42a8ac71b8547ce667890f3d340"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Jan 18 00:38:41 2016"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Jan 18 00:38:41 2016"
      },
      "message": "Made thread joins interruptible by specifying a timeout (fixes #25)\n"
    },
    {
      "commit": "b60cc0645115a42a8ac71b8547ce667890f3d340",
      "tree": "eb08dfd0b5c887f864b33115b5a014940df74bb0",
      "parents": [
        "35e77648b7e63fa43ed5ee765cc735479910a432",
        "a6b180a71fb8cbc57cb06c711767ab30b25eb09a"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Jul 27 08:26:50 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Jul 27 08:26:50 2015"
      },
      "message": "Merge pull request #43 from leojay/master\n\nIssue #20319: concurrent.futures.wait() can block forever even if Fut…"
    },
    {
      "commit": "a6b180a71fb8cbc57cb06c711767ab30b25eb09a",
      "tree": "eb08dfd0b5c887f864b33115b5a014940df74bb0",
      "parents": [
        "35e77648b7e63fa43ed5ee765cc735479910a432"
      ],
      "author": {
        "name": "leojay",
        "email": "python.leojay@gmail.com",
        "time": "Mon Jul 27 08:21:05 2015"
      },
      "committer": {
        "name": "leojay",
        "email": "python.leojay@gmail.com",
        "time": "Mon Jul 27 08:21:05 2015"
      },
      "message": "Issue #20319: concurrent.futures.wait() can block forever even if Futures have completed\n\nApplied https://github.com/python/cpython/commit/403f8cf425cd45a3ffcdd277091be465dce35532"
    },
    {
      "commit": "35e77648b7e63fa43ed5ee765cc735479910a432",
      "tree": "40493f9fdb10c950f01d772d042712d0bdd10947",
      "parents": [
        "fdb0bd50e00ef542d5e591847e4085dbc79e4913",
        "e6d53407e57af405756b46d15fffd5019e83aa8f"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jul 21 08:48:28 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jul 21 08:48:28 2015"
      },
      "message": "Merge pull request #42 from mlsteele/master\n\nFix typo in docs"
    },
    {
      "commit": "e6d53407e57af405756b46d15fffd5019e83aa8f",
      "tree": "40493f9fdb10c950f01d772d042712d0bdd10947",
      "parents": [
        "fdb0bd50e00ef542d5e591847e4085dbc79e4913"
      ],
      "author": {
        "name": "Miles Steele",
        "email": "miles@milessteele.com",
        "time": "Tue Jul 21 08:39:10 2015"
      },
      "committer": {
        "name": "Miles Steele",
        "email": "miles@milessteele.com",
        "time": "Tue Jul 21 08:39:10 2015"
      },
      "message": "Fix typo in docs"
    },
    {
      "commit": "fdb0bd50e00ef542d5e591847e4085dbc79e4913",
      "tree": "70c72d6f1ca5699bad10721530273095ce7c92cd",
      "parents": [
        "6532a7449d8102c172ea5011f1552fcc163c09f1"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jun 12 21:46:10 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jun 12 21:48:57 2015"
      },
      "message": "Added pypy to tox environments and fixed tests on pypy\n"
    },
    {
      "commit": "6532a7449d8102c172ea5011f1552fcc163c09f1",
      "tree": "8a98cf2613456cf4246a080da7f1279957233830",
      "parents": [
        "135add761c0b8c3d837ec74368c8d10365887942"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jun 12 21:25:26 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jun 12 21:25:26 2015"
      },
      "message": "Updated the changelog and bumped up version\n"
    },
    {
      "commit": "135add761c0b8c3d837ec74368c8d10365887942",
      "tree": "e4801a47a17435be36b8cf4f00e6528ab5a376be",
      "parents": [
        "d2d37b946400ab998192d0cbfcfbedc839835bb8"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jun 06 13:18:05 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jun 06 13:18:05 2015"
      },
      "message": "Guard against TypeError in atexit handlers\n"
    },
    {
      "commit": "d2d37b946400ab998192d0cbfcfbedc839835bb8",
      "tree": "0dffe88d1055cc1d5e11d8242f74f0f8e08b5aab",
      "parents": [
        "bedac7cc11dec7072f2054ee85bbc336f2e4473e"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue May 12 06:38:04 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue May 12 06:38:04 2015"
      },
      "message": "Bumped up version\n"
    },
    {
      "commit": "bedac7cc11dec7072f2054ee85bbc336f2e4473e",
      "tree": "4f23342591202a5437ee399132e63966e066f2b5",
      "parents": [
        "9eb69a38ff2b6c0acde46004194fa3f98c139998"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue May 12 06:36:58 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue May 12 06:36:58 2015"
      },
      "message": "Removed an unused import\n"
    },
    {
      "commit": "9eb69a38ff2b6c0acde46004194fa3f98c139998",
      "tree": "4cd0eb9b7855be35ef0251c911f4a02481bbab2a",
      "parents": [
        "85bc8973eb30516b1d8e64b268745c67ad0320cc",
        "15200652eedfbd34bd4a4fa4b50a976dd27378dc"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue May 12 06:31:32 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue May 12 06:31:32 2015"
      },
      "message": "Merge pull request #37 from kived/patch-1\n\nMake multiprocessing optional, again"
    },
    {
      "commit": "15200652eedfbd34bd4a4fa4b50a976dd27378dc",
      "tree": "4cd0eb9b7855be35ef0251c911f4a02481bbab2a",
      "parents": [
        "85bc8973eb30516b1d8e64b268745c67ad0320cc"
      ],
      "author": {
        "name": "Ryan Pessa",
        "email": "dkived@gmail.com",
        "time": "Mon May 04 18:16:19 2015"
      },
      "committer": {
        "name": "Ryan Pessa",
        "email": "dkived@gmail.com",
        "time": "Mon May 04 18:16:19 2015"
      },
      "message": "Make multiprocessing optional, again"
    },
    {
      "commit": "85bc8973eb30516b1d8e64b268745c67ad0320cc",
      "tree": "61ba922f3bc02c00e49b6b4383674dfca68e75cf",
      "parents": [
        "fdbc9c31a0e68a48e33cb643ca12592f3ec3a074"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 06:31:47 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 06:31:47 2015"
      },
      "message": "Bumped up version\n"
    },
    {
      "commit": "fdbc9c31a0e68a48e33cb643ca12592f3ec3a074",
      "tree": "cc0b881454de144b9787e6488d774b488a8861c6",
      "parents": [
        "bf5eaa018ab2b2cbc75374a2cb676eef337d7cc9"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 06:29:08 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 06:29:08 2015"
      },
      "message": "Fixed Executor.map() being greedy\n"
    },
    {
      "commit": "bf5eaa018ab2b2cbc75374a2cb676eef337d7cc9",
      "tree": "4f61b5645a93536487b196d82c4042bd7be5c4de",
      "parents": [
        "bf9f88c28eb15738819d47fb67f31095f211e348"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 05:36:27 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 05:36:27 2015"
      },
      "message": "Bumped up version\n"
    },
    {
      "commit": "bf9f88c28eb15738819d47fb67f31095f211e348",
      "tree": "1483c2025765be7f1c01c3a1a49e3df456e07b8e",
      "parents": [
        "f3d2563b4345b108a6197a36411aec19064ee15f"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat May 02 22:40:34 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 05:36:12 2015"
      },
      "message": "Fixed Executor.map not submitting futures until iter.next() is called\n"
    },
    {
      "commit": "f3d2563b4345b108a6197a36411aec19064ee15f",
      "tree": "e0f466e0d57b0ad1ead0e1192ee390c83f3f8de2",
      "parents": [
        "dac160bf5c37e04962410ad9c87c9e3e7f9e2c2d"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat May 02 22:35:56 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 05:36:12 2015"
      },
      "message": "Fixed behavior of concurrent.futures.as_completed() for duplicate arguments\n"
    },
    {
      "commit": "dac160bf5c37e04962410ad9c87c9e3e7f9e2c2d",
      "tree": "85c77037a1379c5cddd81babd9454f36fb720f61",
      "parents": [
        "50453b257bd42b3255aeefbe7878890f68bb3a14"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat May 02 22:27:13 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 05:36:12 2015"
      },
      "message": "Fixed log message using nonexistent variables as input\n"
    },
    {
      "commit": "50453b257bd42b3255aeefbe7878890f68bb3a14",
      "tree": "4271cc757f6c72d64de6f7508fcb12425836c3b1",
      "parents": [
        "86ebe126e6c9a3b652feb7fe79a4a10fd5272127"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat May 02 22:21:13 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 05:36:12 2015"
      },
      "message": "Fixed memory leaks in thread and process pools\n"
    },
    {
      "commit": "86ebe126e6c9a3b652feb7fe79a4a10fd5272127",
      "tree": "92aee8f0867d94bb1f4e53c53fd798aa65e38e59",
      "parents": [
        "cb09ff1f52d2b5d62c1ed6363a60d728434b60f0"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat May 02 22:17:47 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun May 03 05:36:12 2015"
      },
      "message": "Dropped Python 2.5 and 3.1 support and the \"futures\" compatibility package\n"
    },
    {
      "commit": "cb09ff1f52d2b5d62c1ed6363a60d728434b60f0",
      "tree": "f8e3bbc07406ac1267e57343b50b9263f2558814",
      "parents": [
        "3249933301f9a35ea05c2b96c8cf198c11796444"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Mar 15 04:11:31 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Mar 15 04:11:31 2015"
      },
      "message": "Updated URLs in setup.py to point to Github\n"
    },
    {
      "commit": "3249933301f9a35ea05c2b96c8cf198c11796444",
      "tree": "8e34b815d8d49b104e8ae3d26424ea4e2e31986a",
      "parents": [
        "3bf273083eea8ecb10f7336434928ba6acaef571"
      ],
      "author": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Mar 15 04:11:11 2015"
      },
      "committer": {
        "name": "Alex Grönholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Mar 15 04:11:11 2015"
      },
      "message": "Converted .hgignore to .gitignore\n"
    },
    {
      "commit": "3bf273083eea8ecb10f7336434928ba6acaef571",
      "tree": "4d5d0127c7d679eb3659ca4c445b0d4b19116ebc",
      "parents": [
        "6342a77a56fa04ac9c9b28cbf4d1ac26be3f0476"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Sep 25 21:17:46 2014"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Sep 25 21:17:46 2014"
      },
      "message": "Added tag 2.2.0 for changeset 3540bcd722c4\n"
    },
    {
      "commit": "6342a77a56fa04ac9c9b28cbf4d1ac26be3f0476",
      "tree": "4d5d0127c7d679eb3659ca4c445b0d4b19116ebc",
      "parents": [
        "7b6ec83427bfcac569070ed7a82a50d6d297b974"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Sep 08 03:46:34 2014"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Mon Sep 08 03:46:34 2014"
      },
      "message": "Added the set_exception_info() and exception_info() methods to Future which provide the missing  traceback information on Python 2.x\n"
    },
    {
      "commit": "7b6ec83427bfcac569070ed7a82a50d6d297b974",
      "tree": "e8dab03779d94539c1c00d0fc4841605e2379e0d",
      "parents": [
        "375ad269d8e7173b2450c5371d6240775d07d156"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jan 14 09:06:35 2014"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jan 14 09:06:35 2014"
      },
      "message": "Added tag 2.1.6 for changeset b7b2c0c45e14\n"
    },
    {
      "commit": "375ad269d8e7173b2450c5371d6240775d07d156",
      "tree": "e8dab03779d94539c1c00d0fc4841605e2379e0d",
      "parents": [
        "7e58f1b604323b12a6fc1c5d47918c084fe03086"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jan 14 09:06:23 2014"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jan 14 09:06:23 2014"
      },
      "message": "Fixed files missing from the source distribution\n"
    },
    {
      "commit": "7e58f1b604323b12a6fc1c5d47918c084fe03086",
      "tree": "2f744999eaad9b1f6fd111339359143089b46180",
      "parents": [
        "1a5bd793e4aca15098a8437243f4054026d237de"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jan 14 08:57:39 2014"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Jan 14 08:57:39 2014"
      },
      "message": "Added tag 2.1.5 for changeset 474b01a6d978\n"
    },
    {
      "commit": "1a5bd793e4aca15098a8437243f4054026d237de",
      "tree": "2f744999eaad9b1f6fd111339359143089b46180",
      "parents": [
        "5d5b743fa85bf7eaf9c0a05bd572de3a3d55691f"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Nov 12 18:32:46 2013"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Tue Nov 12 18:32:46 2013"
      },
      "message": "Fixed Jython compatibility by making the ProcessPoolExecutor import optional\nAdded metadata for wheel support\n"
    },
    {
      "commit": "5d5b743fa85bf7eaf9c0a05bd572de3a3d55691f",
      "tree": "810b408eff45e7507e131e6f4f7eed6c798c7206",
      "parents": [
        "60968b344d9bf4ac501a9b13411563ff1ff84fda"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Jun 23 22:22:08 2013"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Jun 23 22:22:08 2013"
      },
      "message": "Added tag 2.1.4 for changeset 1c3e8d491aa6\n"
    },
    {
      "commit": "60968b344d9bf4ac501a9b13411563ff1ff84fda",
      "tree": "810b408eff45e7507e131e6f4f7eed6c798c7206",
      "parents": [
        "ecc0a67bb4d2dd65ff43e65016532a8ab17583da"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Jun 23 22:21:31 2013"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Jun 23 22:21:31 2013"
      },
      "message": "Added tag 2.1.3 for changeset 696dfb37afde\n"
    },
    {
      "commit": "ecc0a67bb4d2dd65ff43e65016532a8ab17583da",
      "tree": "810b408eff45e7507e131e6f4f7eed6c798c7206",
      "parents": [
        "c0d77fd5bd283ebd27db166ab3a399d851ae5582"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Jun 23 22:20:47 2013"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sun Jun 23 22:20:47 2013"
      },
      "message": "Redid the port from scratch using Python 3.2.5 as base\n"
    },
    {
      "commit": "c0d77fd5bd283ebd27db166ab3a399d851ae5582",
      "tree": "20f90544600b5a9c25a1c6c1b0cd46b8b5990b4f",
      "parents": [
        "8c48820921752313a0ae00003151f1987b057777"
      ],
      "author": {
        "name": "convert-repo",
        "email": "convert-repo@localhost",
        "time": "Tue Aug 28 02:34:17 2012"
      },
      "committer": {
        "name": "convert-repo",
        "email": "convert-repo@localhost",
        "time": "Tue Aug 28 02:34:17 2012"
      },
      "message": "update tags\n"
    },
    {
      "commit": "8c48820921752313a0ae00003151f1987b057777",
      "tree": "20f90544600b5a9c25a1c6c1b0cd46b8b5990b4f",
      "parents": [
        "19749812024aa9cd792725d20001dca481aabf1d"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Aug 25 06:50:48 2012"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Aug 25 06:50:48 2012"
      },
      "message": "Fixed race condition (thanks Ralf Schmitt)\n"
    },
    {
      "commit": "19749812024aa9cd792725d20001dca481aabf1d",
      "tree": "0ecf2f325b933ed60be37ea36e7e5894d71225de",
      "parents": [
        "887e4f67e0ce6c55bd1c218a211c043cf2ec6e2c"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Aug 25 06:36:15 2012"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Aug 25 06:36:15 2012"
      },
      "message": "Added missing setUp() methods to several test classes\n"
    },
    {
      "commit": "887e4f67e0ce6c55bd1c218a211c043cf2ec6e2c",
      "tree": "1968721419a41d2a33ce4bed5c2f40b3be19f390",
      "parents": [
        "44afa543b21fc53fe727c79ddebe2355a878d6f6"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jan 08 16:40:28 2011"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jan 08 16:40:28 2011"
      },
      "message": "Added the CHANGES document\n"
    },
    {
      "commit": "44afa543b21fc53fe727c79ddebe2355a878d6f6",
      "tree": "c1166301bac2fc6f64f3d1652716a15bfcc918ed",
      "parents": [
        "67259b841b3291972953034a77718905fb0e0db5"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jan 08 16:39:25 2011"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jan 08 16:39:25 2011"
      },
      "message": "Bumped up the version number and added the zip_safe flag\n"
    },
    {
      "commit": "67259b841b3291972953034a77718905fb0e0db5",
      "tree": "f956aea9c56cdea13d98bbeab7eabd8b8279fee7",
      "parents": [
        "1c4cc4dadf948ae70a89e8ddeab32837d36050e7"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jan 08 16:38:54 2011"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Jan 08 16:38:54 2011"
      },
      "message": "Changed the namedtuple implementation so it will compile on Python 3.1 (even though it\u0027s never imported, it\u0027s still compiled on setup.py install)\n"
    },
    {
      "commit": "1c4cc4dadf948ae70a89e8ddeab32837d36050e7",
      "tree": "29a7c4114ce676c739326e645bcdff23b960df11",
      "parents": [
        "2be330829bf28f4deb13b9f3ed55f077ee4cd69d"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jan 07 23:37:03 2011"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jan 07 23:37:03 2011"
      },
      "message": "Bumped up version number\n"
    },
    {
      "commit": "2be330829bf28f4deb13b9f3ed55f077ee4cd69d",
      "tree": "bcaffe223909f31475ea1fb6e7f22645020c336a",
      "parents": [
        "99ddf22fc55153feea4785fc9186d87789dc5471"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jan 07 23:32:33 2011"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Fri Jan 07 23:32:33 2011"
      },
      "message": "The \u0027concurrent\u0027 package was missing __init__.py after installation\n"
    },
    {
      "commit": "99ddf22fc55153feea4785fc9186d87789dc5471",
      "tree": "e69930dee161f1abad9d6610ca82dddf6a8de5b5",
      "parents": [
        "f64a680f921a19bdd2adaf8cebf035c9cbffc607"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Dec 23 23:19:14 2010"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Dec 23 23:19:14 2010"
      },
      "message": "Added setup.cfg for proper docs uploading\n"
    },
    {
      "commit": "f64a680f921a19bdd2adaf8cebf035c9cbffc607",
      "tree": "e79a740ac44ce24eb398bf649883a6c41abd4c9a",
      "parents": [
        "93c47934c1fe8f0c08125917ceef3af8b4467e2a"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Dec 23 23:17:49 2010"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Dec 23 23:17:49 2010"
      },
      "message": "Fixed title underline length\n"
    },
    {
      "commit": "93c47934c1fe8f0c08125917ceef3af8b4467e2a",
      "tree": "ef62960b8bac2b0c71ff2da9a0b6730a96e59eeb",
      "parents": [
        "67afb9fa7aee610cce364929cbe49bdeebcb4730"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Dec 23 23:16:11 2010"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Thu Dec 23 23:16:11 2010"
      },
      "message": "Bumped up docs version\n"
    },
    {
      "commit": "67afb9fa7aee610cce364929cbe49bdeebcb4730",
      "tree": "952a4f55b82f15153972fa42a0bf436e6ccb5340",
      "parents": [
        "0ac4b6bfd5c045d74cccfa78ef4b7bb5ccb82c36"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Dec 18 10:25:15 2010"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Dec 18 10:25:15 2010"
      },
      "message": "Minor cleanups\n"
    },
    {
      "commit": "0ac4b6bfd5c045d74cccfa78ef4b7bb5ccb82c36",
      "tree": "0017b9344b470f4a7e7294c591ca592c4a6623cc",
      "parents": [
        "43539ed75f9662d7fa621857f93c96cbe5dfb605"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Dec 18 06:02:02 2010"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Dec 18 06:02:02 2010"
      },
      "message": "Fixed download url\n"
    },
    {
      "commit": "43539ed75f9662d7fa621857f93c96cbe5dfb605",
      "tree": "3a8beeebe683fff8cf64ac87c89b2dbed595ca54",
      "parents": [
        "837ac01ca170010c1eeba36b0662470f753dc0a1"
      ],
      "author": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Dec 18 06:01:09 2010"
      },
      "committer": {
        "name": "Alex Gr?nholm",
        "email": "alex.gronholm@nextday.fi",
        "time": "Sat Dec 18 06:01:09 2010"
      },
      "message": "Moved the code in the futures package to concurrent.futures as per PEP 3148; unified the codebase to support both Python 2 and 3 in a single tree; added support to Python 2.5; added tox.ini for easy testing with multiple Python versions\n"
    },
    {
      "commit": "837ac01ca170010c1eeba36b0662470f753dc0a1",
      "tree": "ffcb111470b9feb5963fda6de2e908ccade4aa3b",
      "parents": [
        "06ae20b428bc92790bcaae9636200e427d99abd9"
      ],
      "author": {
        "name": "geekmug",
        "email": "geekmug@localhost",
        "time": "Fri Dec 10 17:47:45 2010"
      },
      "committer": {
        "name": "geekmug",
        "email": "geekmug@localhost",
        "time": "Fri Dec 10 17:47:45 2010"
      },
      "message": "Merging changes from py3k\u0027s r86491 (issue10432)\n"
    },
    {
      "commit": "06ae20b428bc92790bcaae9636200e427d99abd9",
      "tree": "de0a911a47710b8fb00aafa41cfb631d9fef11ab",
      "parents": [
        "03004c7c445abedf706345f66ee20379e48bf1eb"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Nov 13 10:23:52 2010"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Nov 13 10:23:52 2010"
      },
      "message": "Bump version number for Python 3.2-matching release\n"
    },
    {
      "commit": "03004c7c445abedf706345f66ee20379e48bf1eb",
      "tree": "52a1e5f071e00cf52e1aa878b3be658b9edf09c2",
      "parents": [
        "69d0be403e5e118a3bf23a4fc8f1c49f4fd4d36c"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Nov 13 10:08:47 2010"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Nov 13 10:08:47 2010"
      },
      "message": "Fix incorrect python version\n"
    },
    {
      "commit": "69d0be403e5e118a3bf23a4fc8f1c49f4fd4d36c",
      "tree": "f2d035c506250f8251c509b871ff2a19cd8585f3",
      "parents": [
        "dc322833dfaf777d55117ac145221d0125ffb0fc"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Nov 13 10:03:32 2010"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Nov 13 10:03:32 2010"
      },
      "message": "Reintegrate feedback to head\n"
    },
    {
      "commit": "dc322833dfaf777d55117ac145221d0125ffb0fc",
      "tree": "45454b86a7bc1291d0930c8d5b8cb06371ca5451",
      "parents": [
        "f8fad43bcea590e9c84e30fea29d6c6cbd28b60b"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 30 00:03:30 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 30 00:03:30 2009"
      },
      "message": "Set the PEP title\n"
    },
    {
      "commit": "f8fad43bcea590e9c84e30fea29d6c6cbd28b60b",
      "tree": "d385bca99a684b7d7468cc4d01af060b126fb39a",
      "parents": [
        "f9d70d8bd1459cab2284ae49bf417bcfcc227a09"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Thu Oct 29 23:55:00 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Thu Oct 29 23:55:00 2009"
      },
      "message": "Fixed a few grammar problems.\n"
    },
    {
      "commit": "f9d70d8bd1459cab2284ae49bf417bcfcc227a09",
      "tree": "21b6df76165e0524046a77baef56471a20d660e7",
      "parents": [
        "a62bca6299df56e6bc7fbd48d387d7281943de59"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 09:13:58 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 09:13:58 2009"
      },
      "message": "Removed the \u0027experimental\u0027 label from ProcessPoolExecutor\n"
    },
    {
      "commit": "a62bca6299df56e6bc7fbd48d387d7281943de59",
      "tree": "dc9f17d496ed0e4411c9a43e18fdece50bd5b53b",
      "parents": [
        "34a909023c4e4752c051c45baf659b6af4951bd9"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 09:02:47 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 09:02:47 2009"
      },
      "message": "Update the version number and use different targets for python 2.x and 3.x\n"
    },
    {
      "commit": "34a909023c4e4752c051c45baf659b6af4951bd9",
      "tree": "e7fc290c17d2493cbe991b056b435e35b11b1a6a",
      "parents": [
        "96b86912f83957417346d6a839ab797e9b6f9cf8"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 04:35:58 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 04:35:58 2009"
      },
      "message": "Updated the PEP to include ProcessPoolExecutor\n"
    },
    {
      "commit": "96b86912f83957417346d6a839ab797e9b6f9cf8",
      "tree": "07b4789f2b8f2d4f5fd26194021a0374a1ecc6c8",
      "parents": [
        "a873f650d748eb0c04a4ab4b73b10357dfc84de9"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 03:48:12 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 25 03:48:12 2009"
      },
      "message": "Improved ProcessPoolExecutor module documentation. Ensure that inactive threads are periodically collected rather than leaking.\n"
    },
    {
      "commit": "a873f650d748eb0c04a4ab4b73b10357dfc84de9",
      "tree": "8dd24ca01c118bb87b7bae646f83c4c6ef55d910",
      "parents": [
        "1d66ddaa153bba841c0855c9638c9b27f3bef61a"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 23 06:41:10 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 23 06:41:10 2009"
      },
      "message": "Make the number of extra items in the multiprocessing queue configuration\n"
    },
    {
      "commit": "1d66ddaa153bba841c0855c9638c9b27f3bef61a",
      "tree": "635eebe25e3e59fb61746ed09d1f1cfbb801cb3d",
      "parents": [
        "ca940cb57139c82c3f26e9c6e8fb1b6987005339"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 23 06:36:16 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 23 06:36:16 2009"
      },
      "message": "Fixes two bugs: the _result function could exit if there is work still in progress and a deadlock can occur on Mac OS X.\n"
    },
    {
      "commit": "ca940cb57139c82c3f26e9c6e8fb1b6987005339",
      "tree": "c56ecf56090c66bcc2012130438b3d7d05b6c3b7",
      "parents": [
        "4f2242d1589739d88c8ec4dc2b2f9df69b2b9146"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 04:47:42 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 04:47:42 2009"
      },
      "message": "Fixed a few \u003e80 char lines\n"
    },
    {
      "commit": "4f2242d1589739d88c8ec4dc2b2f9df69b2b9146",
      "tree": "d28a5b8f4fe6f01c2ce9e053c91a8f93e5da01ce",
      "parents": [
        "458f88e9f214098508e0d7c418e3fca965b29f35"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 04:45:36 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 04:45:36 2009"
      },
      "message": "Fixed a \u003e80 char line\n"
    },
    {
      "commit": "458f88e9f214098508e0d7c418e3fca965b29f35",
      "tree": "06f62fd672c4a66d2443a4b1f8f4c16dd455fb1e",
      "parents": [
        "d8d8c9f42476fc2c3a7edd67a8f2637524ee3b3c"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 04:42:55 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 04:42:55 2009"
      },
      "message": "Removed trailing whitespace\n"
    },
    {
      "commit": "d8d8c9f42476fc2c3a7edd67a8f2637524ee3b3c",
      "tree": "9491d8594b1ec8293c33fa26cd548a35e1d4f616",
      "parents": [
        "2a122d78c9f8f7e068bd1287dca7fee4d68ea0c2"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 03:47:12 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 03:47:12 2009"
      },
      "message": "Fixes a \u003e80 character line\n"
    },
    {
      "commit": "2a122d78c9f8f7e068bd1287dca7fee4d68ea0c2",
      "tree": "02afb920a417c6e5c25f4c8f02c3e7049c5c2c52",
      "parents": [
        "9434f4fb0b7a3194171afe01fd570b741ced6222"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 03:35:05 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 03:35:05 2009"
      },
      "message": "Minor formatting fix\n"
    },
    {
      "commit": "9434f4fb0b7a3194171afe01fd570b741ced6222",
      "tree": "ec0125341babf169a0faf62fb407faf91b9f24b3",
      "parents": [
        "7919a0c16dd810c52ab320be710b2b39ed2116c5"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 02:44:02 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 02:44:02 2009"
      },
      "message": "Add a section pointing to the reference implementation\n"
    },
    {
      "commit": "7919a0c16dd810c52ab320be710b2b39ed2116c5",
      "tree": "75f7cc0151d1a6d644d84fe4264a2437ab66120c",
      "parents": [
        "576c7d4899906289998cf9fde497cff5a9b718b8"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 02:21:33 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 16 02:21:33 2009"
      },
      "message": "First draft of fleshed-out PEP. Modified docs to be consistent\n"
    },
    {
      "commit": "576c7d4899906289998cf9fde497cff5a9b718b8",
      "tree": "8f7ebe3c88e6c60d75f06a9fa43d0f5ce43b8a04",
      "parents": [
        "7d54e69cd40b81cae5b03c807c4147165fd94ab3"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Tue Oct 06 02:31:45 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Tue Oct 06 02:31:45 2009"
      },
      "message": "Come comment fixes an PEP work.\n"
    },
    {
      "commit": "7d54e69cd40b81cae5b03c807c4147165fd94ab3",
      "tree": "67d08cf0ecb6736524c51699b95059adb47391b4",
      "parents": [
        "8380130643a08c99c8c163819f848ee7d5848336"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 04 23:10:28 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sun Oct 04 23:10:28 2009"
      },
      "message": "Large module documentation cleanup\n"
    },
    {
      "commit": "8380130643a08c99c8c163819f848ee7d5848336",
      "tree": "1d3d0d07c45c6a4c35fd589fc90a6124f60cc56a",
      "parents": [
        "432f63fed956cd8877b4ba21a51b26b0f1ab7e57"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 02 05:29:54 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Fri Oct 02 05:29:54 2009"
      },
      "message": "Remove use of multiprocess executor in crawl example. Also generate a warning if a ProcessPoolExecutor is used.\n"
    },
    {
      "commit": "432f63fed956cd8877b4ba21a51b26b0f1ab7e57",
      "tree": "1916ae5e6a1793edca151161a9c6cae4283f831b",
      "parents": [
        "47f3b5c4a4d6f36e96bb5329d96d9e9158274ef5"
      ],
      "author": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Aug 01 12:44:52 2009"
      },
      "committer": {
        "name": "brian.quinlan",
        "email": "brian.quinlan@localhost",
        "time": "Sat Aug 01 12:44:52 2009"
      },
      "message": "Fixed a docstring mis-capitalization.\n"
    }
  ],
  "next": "47f3b5c4a4d6f36e96bb5329d96d9e9158274ef5"
}
