)]}'
{
  "log": [
    {
      "commit": "232cb1d27ee134bf96adc8f37e53589dc259b159",
      "tree": "9d1fb9bd3dc89ee02f0819a25349a66d5d35ad93",
      "parents": [
        "6ba3f8e0b59b8fe880345be7ae594ccd76661f6d"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Fri Mar 01 12:37:20 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Fri Mar 01 12:37:20 2019"
      },
      "message": "Improve @overload detection (#435)\n\n* Support @overload mixed with other decorators\r\n\r\n* Detect @overload not just at module scope\r\n"
    },
    {
      "commit": "6ba3f8e0b59b8fe880345be7ae594ccd76661f6d",
      "tree": "b839692624e230ecfc4e986ef2956245ccdcdf47",
      "parents": [
        "ba64624f38a55f162b90120b4c0ba62018c6fd08"
      ],
      "author": {
        "name": "Aaron Meurer",
        "email": "asmeurer@gmail.com",
        "time": "Sat Feb 09 13:48:50 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Feb 09 13:48:50 2019"
      },
      "message": "Include column numbers with all error messages (#426)\n\n* Include column numbers with all error messages\r\n\r\nAs long as the node passed to the message has a col_offset, it is included in\r\nthe message. There is already a precedent of printing the column number for\r\nsyntax errors.\r\n\r\nThis changes the API slightly, in that if col_offset is not present on the\r\nnode, the message.col is now -1 instead of 0. Otherwise, there would be no way\r\nto distinguish between errors that have no column number and errors with a\r\ncolumn number 0. If this doesn\u0027t seem like an acceptable change, I can revert\r\nit, and either always use 0 as the default, or use a separate attribute to\r\nindicate if the message.col is the \"real\" column number.\r\n\r\nI haven\u0027t yet tested everything, but I\u0027m not even sure if there are any nodes\r\nthat don\u0027t have a col_offset. There don\u0027t appear to be any represented in the\r\ntest suite.\r\n\r\n* Simplify some code\r\n\r\n* Make column numbers start at 1\r\n\r\nThis also reverts an API break. message.col now defaults to 0 again, instead\r\nof -1 (0 means there is no column number and so it isn\u0027t included in the\r\nprinted error message).\r\n\r\n* Revert column number API change\r\n\r\nIt broke a lot of tests.\r\n\r\nNow, to minimize API changes as much as possible:\r\n\r\n- The message.col attribute starts at 0, same as the AST col_offset\r\n- message.col is also 0 even if col_offset doesn\u0027t exist. Note that currently\r\n  there aren\u0027t any nodes represented in the pyflakes test suite that don\u0027t\r\n  have col_offset. Such nodes do exist in the ast module, but it seems\r\n  unlikely that they would ever result in a message (only expr and stmt nodes\r\n  have it, so for instance a Module node would not).\r\n- The str version of the message starts columns at 1, which is consistent with\r\n  the existing messages for syntax errors, as well as other tools such as\r\n  flake8.\r\n\r\n* Fix flake8 issue\r\n\r\nFixes #158 \r\nFixes #425"
    },
    {
      "commit": "ba64624f38a55f162b90120b4c0ba62018c6fd08",
      "tree": "fb2cd1126c7cba896c9ccb20d2ea2ec4dfbe3cae",
      "parents": [
        "2c29431eaeb9c5b681f1615bf568fc68c6469486"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Fri Feb 01 16:41:28 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Fri Feb 01 16:41:28 2019"
      },
      "message": "Fix line number of comment syntax error message (#420)\n\n"
    },
    {
      "commit": "2c29431eaeb9c5b681f1615bf568fc68c6469486",
      "tree": "8d160b832999ff2a0f51a75a342c7c490a4684f6",
      "parents": [
        "72bf8cc9998c2e6af838b3bbae61a2d2a79fb809"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Thu Jan 31 14:09:19 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Thu Jan 31 14:09:19 2019"
      },
      "message": "Fix typing.overload check to only check imported names (#423)\n\n"
    },
    {
      "commit": "72bf8cc9998c2e6af838b3bbae61a2d2a79fb809",
      "tree": "d389268e4ad61b57f7b83691d3175fa29e00b917",
      "parents": [
        "4bc1f21df9d96b5dd1f5f3e213255b27f7104919"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Thu Jan 31 14:08:52 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Thu Jan 31 14:08:52 2019"
      },
      "message": "Fix appveyor build\n\n"
    },
    {
      "commit": "4bc1f21df9d96b5dd1f5f3e213255b27f7104919",
      "tree": "cd676c473444042ee5d5747394af2d8cc3cd86b9",
      "parents": [
        "65fdfad26e5213a8245797da3e1368daa63e2067"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Thu Jan 17 22:17:42 2019"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu Jan 24 03:09:16 2019"
      },
      "message": "Write changelog and bump version for 2.1.0\n"
    },
    {
      "commit": "65fdfad26e5213a8245797da3e1368daa63e2067",
      "tree": "fd1210319983f92257235c905eb3136a7d13bbab",
      "parents": [
        "14f28ba0279e3547c09b06870f90f01167da08ec"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Mon Jan 21 00:20:01 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Wed Jan 23 00:56:20 2019"
      },
      "message": "Fix regression with `__all__ \u003d [not, strings]`\n\nRegression introduced in 47a164136982ea6ef80f302200b2a29d3a4b1c3c\n\nExample trace before fix:\n\n```\n...\n\n  File \"/home/asottile/workspace/pyflakes/pyflakes/checker.py\", line 998, in handleNodeStore\n    binding \u003d ExportBinding(name, node.parent, self.scope)\n  File \"/home/asottile/workspace/pyflakes/pyflakes/checker.py\", line 426, in __init__\n    self.names +\u003d ast.literal_eval(source.value)\n  File \"/usr/lib/python3.6/ast.py\", line 85, in literal_eval\n    return _convert(node_or_string)\n  File \"/usr/lib/python3.6/ast.py\", line 61, in _convert\n    return list(map(_convert, node.elts))\n  File \"/usr/lib/python3.6/ast.py\", line 84, in _convert\n    raise ValueError(\u0027malformed node or string: \u0027 + repr(node))\nValueError: malformed node or string: \u003c_ast.Attribute object at 0x7f6d2bf37b70\u003e\n```\n"
    },
    {
      "commit": "14f28ba0279e3547c09b06870f90f01167da08ec",
      "tree": "acebb5dd8c6623936edbdda069857f88c5512ce1",
      "parents": [
        "357a2e3cf3461b414ba5a70485a62c411d557c3f"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Sat Jan 19 19:52:30 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Mon Jan 21 14:05:42 2019"
      },
      "message": "Use file_tokens to better match flake8 api\n"
    },
    {
      "commit": "357a2e3cf3461b414ba5a70485a62c411d557c3f",
      "tree": "fffc9d5eeb7e32233488cec31228bfeae91f83ec",
      "parents": [
        "7272b1048ee319cc058bf83d4b78563573583ce9"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Mon Jan 21 01:10:19 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Mon Jan 21 14:02:47 2019"
      },
      "message": "Allow star args in type comments\n"
    },
    {
      "commit": "7272b1048ee319cc058bf83d4b78563573583ce9",
      "tree": "e69b90e1a4d60c5fa2b166e249c42e346b6ec408",
      "parents": [
        "1f58890b3ea7a8683bc21594a7dc773443102893"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Mon Jan 14 00:41:31 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Jan 19 13:23:05 2019"
      },
      "message": "Add check for use of \u0027is\u0027 operator with str, bytes, and int literals\n\nWhile it often appears to \"work\", it is considered bad practice to\ncompare against string, bytes, and int literals using the `is` operator.\nThis is because it relies on a CPython implementation detail that may\nnot hold true for other interpreters. For example:\n\n    # Bad\n    if x is \u0027foo\u0027:\n        ...\n\n    # Good\n    if x \u003d\u003d \u0027foo\u0027:\n        ...\n\nThis can easily be caught during static analysis to promote best\npractices. This is discussed in the Python bug:\nhttps://bugs.python.org/issue34850\n"
    },
    {
      "commit": "1f58890b3ea7a8683bc21594a7dc773443102893",
      "tree": "a085e47ed1c024b1c55588a0a050ee3b5feeb4b4",
      "parents": [
        "1f4e3772155ac5102e24b65ef3970d3f1454f4d4"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Thu Jan 17 17:07:11 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Thu Jan 17 19:38:15 2019"
      },
      "message": "Set the proper scope for `async def`\n"
    },
    {
      "commit": "1f4e3772155ac5102e24b65ef3970d3f1454f4d4",
      "tree": "acb02029c3b6d84a90240ca7cec06a87d52d4487",
      "parents": [
        "f1444872d7e4abfe1359778bca56ad3fd59a6f9b"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Thu Jan 17 17:29:07 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Thu Jan 17 18:21:27 2019"
      },
      "message": "Fix python3.8 docstring offsets\n"
    },
    {
      "commit": "f1444872d7e4abfe1359778bca56ad3fd59a6f9b",
      "tree": "85d1ff1ba3ecb2098d5044ad2b0516ae270925f1",
      "parents": [
        "ac0aeba0eddb0b8e2285f5ac568e4621426b3aa7"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Fri Jan 04 21:58:26 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Jan 05 20:43:35 2019"
      },
      "message": "Move type annotations tests to their own class\n"
    },
    {
      "commit": "ac0aeba0eddb0b8e2285f5ac568e4621426b3aa7",
      "tree": "04f307a971c6de910c5b8e0498d35f580a35473c",
      "parents": [
        "009f4e7c21890cefafe5858aa682a7e7f17d6a80"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Tue Jan 01 06:29:32 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Fri Jan 04 18:11:38 2019"
      },
      "message": "Parse PEP 484 type comments\n"
    },
    {
      "commit": "009f4e7c21890cefafe5858aa682a7e7f17d6a80",
      "tree": "88d5b66c61e2ddd433a9d3c4183a101181df51aa",
      "parents": [
        "066ba4a93c1077f9154d6ff3806fe1e3a66843a1"
      ],
      "author": {
        "name": "Addison Elliott",
        "email": "addison.elliott@gmail.com",
        "time": "Wed Jan 02 11:55:40 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Wed Jan 02 11:55:40 2019"
      },
      "message": "Update TravisCI to use flake8 3.6.0 (#398)\n\n* Bump flake8 versions and fix errors\r\n\r\n* Change pep8 to pycodestyle and bump version\r\n\r\n* Make changes\r\n\r\n* Stick with syntax in tox.ini\r\n"
    },
    {
      "commit": "066ba4a93c1077f9154d6ff3806fe1e3a66843a1",
      "tree": "b4a891a2de6cb85d58fbc4cc948c3bc8ecc0df1e",
      "parents": [
        "5ff36693b89351e5d74c696d3724c5afc5fe7510"
      ],
      "author": {
        "name": "秋葉",
        "email": "ambiguous404@gmail.com",
        "time": "Tue Jan 01 13:10:34 2019"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Tue Jan 01 13:10:34 2019"
      },
      "message": "support module scope __annotations__\n\n* support module scope __annotations__\r\n\r\n* change to better variable name\r\n\r\nFixes #395\r\n"
    },
    {
      "commit": "5ff36693b89351e5d74c696d3724c5afc5fe7510",
      "tree": "a8056ae7ec070efc771e50cd838b512a77973046",
      "parents": [
        "75bc0c03c145b8e53324ccd7810242ecc21b5d7f"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Mon Dec 31 23:02:29 2018"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Tue Jan 01 01:33:09 2019"
      },
      "message": "Remove impossible except UnicodeError\n\nreading a file in binary mode (`rb`) does not involve unicode\n"
    },
    {
      "commit": "75bc0c03c145b8e53324ccd7810242ecc21b5d7f",
      "tree": "b669012bc89f1d66ff8b905a0c4d417a8d5444d9",
      "parents": [
        "6ee966df7e1973771f578bb6d5d041785a0685ec"
      ],
      "author": {
        "name": "Addison Elliott",
        "email": "addison.elliott@gmail.com",
        "time": "Mon Dec 31 18:03:43 2018"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Tue Jan 01 01:32:44 2019"
      },
      "message": "Include Python version \u0026 OS along with version information\n"
    },
    {
      "commit": "6ee966df7e1973771f578bb6d5d041785a0685ec",
      "tree": "000b3a68b449fff9eb479659637dcbcf367f92a3",
      "parents": [
        "c6cc4b625b41683db8ff5287947c64744e8bae2b"
      ],
      "author": {
        "name": "Jörn Heissler",
        "email": "joernheissler@users.noreply.github.com",
        "time": "Sat Dec 22 15:57:51 2018"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Dec 22 15:57:51 2018"
      },
      "message": "Add support for PEP 563 (#356) (#374)\n\n* Test with py3.7; Travis should use Xenial for 3.7 and nightly.\r\n\r\n* Add support for PEP 563 (#356)\r\n\r\nIf a module imports annotations from __future__, postpone the evaluation\r\nof annotations like it is done for annotation strings.\r\n"
    },
    {
      "commit": "c6cc4b625b41683db8ff5287947c64744e8bae2b",
      "tree": "39a0852c6d4d72952d887a1d81aa51e59e9cc27c",
      "parents": [
        "7c74ab0ddccb60a9154c2af5aa4ee4581ccada4a"
      ],
      "author": {
        "name": "Jörn Heissler",
        "email": "joernheissler@users.noreply.github.com",
        "time": "Sat Dec 22 15:57:41 2018"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Dec 22 15:57:41 2018"
      },
      "message": "Test with py3.7; Travis should use Xenial for 3.7 and nightly. (#379)\n\n"
    },
    {
      "commit": "7c74ab0ddccb60a9154c2af5aa4ee4581ccada4a",
      "tree": "a7c2eb746b3b287f01197b134d92e48cb034f887",
      "parents": [
        "e5db06d9a8c6d613783997ac44621a7b86603f35"
      ],
      "author": {
        "name": "Serhiy Storchaka",
        "email": "storchaka@gmail.com",
        "time": "Thu Dec 20 23:23:03 2018"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Thu Dec 20 23:23:03 2018"
      },
      "message": "Make the code and tests compatible with 3.8-dev. (#369)\n\n"
    },
    {
      "commit": "e5db06d9a8c6d613783997ac44621a7b86603f35",
      "tree": "685c449c39e22e2126f7b75864c51c84d0997e39",
      "parents": [
        "7d4476e1fde8876c3bc145d066188ecdc14c6526"
      ],
      "author": {
        "name": "Marius Gedminas",
        "email": "marius@gedmin.as",
        "time": "Fri Dec 07 15:41:45 2018"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Fri Dec 07 15:41:45 2018"
      },
      "message": "Rename NEWS.txt to NEWS.md for nicer rendering (#394)\n\n* Rename NEWS.txt to NEWS.md for nicer rendering\r\n\r\nMake the changelog render more nicely on GitHub by using a markup\r\nlanguage.\r\n\r\nI\u0027ve decided that Markdown is closer to the existing format due to the\r\nuse of single backticks for preformatted text.\r\n\r\n* Convert NEWS to ReStructuredText\r\n\r\nAs requested.\r\n\r\nReST is picky so I had to make the following changes:\r\n\r\n- change `backticks` to ``preformatted text`\r\n- escape one stray * as \\* so it doesn\u0027t turn on italic\r\n- de-dent item lists to they\u0027re not wrapped in a \u003cblockquote\u003e\r\n- insert blank lines between version subheadings and unordered lists\r\n"
    },
    {
      "commit": "7d4476e1fde8876c3bc145d066188ecdc14c6526",
      "tree": "177269725552be7db6a0e7b9fa017c8d8bc810f0",
      "parents": [
        "18414e1f9ce0efc29be16ac2213cdf6ce7090675"
      ],
      "author": {
        "name": "Charlie Liu",
        "email": "CLiu13@users.noreply.github.com",
        "time": "Sat Nov 03 00:10:26 2018"
      },
      "committer": {
        "name": "Charlie Liu",
        "email": "CLiu13@users.noreply.github.com",
        "time": "Sat Nov 03 15:55:03 2018"
      },
      "message": "checker.py: Report undefined names in __all__\n\nThis allows pyflakes to report undefined names\nin __all__ when import * is used, without having\nto use pyflakes 2 times to detect the errors.\n\nFixes https://github.com/PyCQA/pyflakes/issues/280\n"
    },
    {
      "commit": "18414e1f9ce0efc29be16ac2213cdf6ce7090675",
      "tree": "1e4216c040df7a0ab415005c733582e619ecbb87",
      "parents": [
        "91c9989de63ff7053a6c09313e2c5e09a98d46c0"
      ],
      "author": {
        "name": "joshua1b",
        "email": "joshua1b2823@gmail.com",
        "time": "Thu Nov 01 09:49:09 2018"
      },
      "committer": {
        "name": "joshua1b",
        "email": "joshua1b2823@gmail.com",
        "time": "Fri Nov 02 12:21:51 2018"
      },
      "message": "Mark SubmoduleImportation imported with Importation with alias as used\n\nIf the name of SubmoduleImportation is same with the alias of other Importation\nand it is used, the SubmoduleImportation should be marked as used, too.\n\nFixes https://github.com/PyCQA/pyflakes/issues/298\n"
    },
    {
      "commit": "91c9989de63ff7053a6c09313e2c5e09a98d46c0",
      "tree": "92e3f64a8131fb1b9549c894cb02aef1ef74ab9c",
      "parents": [
        "60c3b35769984534e2ad03d76637357818fe0112"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Sun Oct 14 01:47:06 2018"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Wed Oct 31 20:53:58 2018"
      },
      "message": "Exempt typing.overload from duplicate detection\n"
    },
    {
      "commit": "60c3b35769984534e2ad03d76637357818fe0112",
      "tree": "e3c2b9fa96756d33016422a132af5fa58bf77020",
      "parents": [
        "2bc5a2d8d2a709980dd78e484d965b8f7eaeb146"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Tue Oct 30 20:07:13 2018"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Wed Oct 31 20:44:36 2018"
      },
      "message": "Don\u0027t leave behind temporary files when running the testsuite\n"
    },
    {
      "commit": "2bc5a2d8d2a709980dd78e484d965b8f7eaeb146",
      "tree": "9a47aefd4855089536fbe2389ca08c34fa9eed46",
      "parents": [
        "47a164136982ea6ef80f302200b2a29d3a4b1c3c"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Mon Jul 16 03:25:37 2018"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Wed Oct 31 08:57:43 2018"
      },
      "message": "Simplify Python 3 except scope\n\nThe existing variable with the same name given\nto the exception can only be in the same scope.\n"
    },
    {
      "commit": "47a164136982ea6ef80f302200b2a29d3a4b1c3c",
      "tree": "3e7aaecfe4b66dde891a1673d35d14f3ff2cf294",
      "parents": [
        "a3eed737212ef8ac6a6ac740da529791651603b2"
      ],
      "author": {
        "name": "Charlie Liu",
        "email": "CLiu13@users.noreply.github.com",
        "time": "Wed Oct 31 03:15:59 2018"
      },
      "committer": {
        "name": "Charlie Liu",
        "email": "CLiu13@users.noreply.github.com",
        "time": "Wed Oct 31 04:34:36 2018"
      },
      "message": "checker.py: Add support for list concatenation\n\nThis adds support for when \u0027__all__\u0027\nis defined from concatenated lists.\nHowever, because pyflakes is not an\ninterpreter, this only applies to\ncertain reduced test cases.\n\nFixes https://github.com/PyCQA/pyflakes/issues/276\n"
    },
    {
      "commit": "a3eed737212ef8ac6a6ac740da529791651603b2",
      "tree": "dbc2b383d700bea2858e438bc5198ba1562ce7bb",
      "parents": [
        "45fc732466056fe35c85936ff25491df7905c597"
      ],
      "author": {
        "name": "Anthony Sottile",
        "email": "asottile@umich.edu",
        "time": "Tue Oct 30 20:44:06 2018"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Tue Oct 30 20:44:06 2018"
      },
      "message": "Consider AsyncFor the same as For in variable contexts (#380)\n\n"
    },
    {
      "commit": "45fc732466056fe35c85936ff25491df7905c597",
      "tree": "57b6a9d15c5293ac125ce307b276dab9598e7fae",
      "parents": [
        "e26f3b9fa4bbb8288258dad1c398d4e9026c894f"
      ],
      "author": {
        "name": "MacBox7",
        "email": "ajankit2304@gmail.com",
        "time": "Tue Mar 13 05:12:52 2018"
      },
      "committer": {
        "name": "macbox7",
        "email": "ajankit2304@gmail.com",
        "time": "Sat Aug 11 08:41:49 2018"
      },
      "message": "checker.py: Check for invalid print syntax\n\nNew warning added in messages.py to check for invalid\nprint syntax\n\nCloses https://github.com/PyCQA/pyflakes/issues/242\n"
    },
    {
      "commit": "e26f3b9fa4bbb8288258dad1c398d4e9026c894f",
      "tree": "021604c3e511d74ec853bcdaa02c0f2aba2d1101",
      "parents": [
        "f9afd2b04f98116fde647a60aed310114768d179"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Fri Aug 03 08:55:24 2018"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Mon Aug 06 09:25:18 2018"
      },
      "message": "test_api.py: Remove redundant PYPY check\n\nERROR_HAS_COL_NUM is always True for PYPY.\n"
    },
    {
      "commit": "f9afd2b04f98116fde647a60aed310114768d179",
      "tree": "b456200c88b87c63577bff51f29727c06cd518c5",
      "parents": [
        "06653e47f6bd8a6a5c73d0676b4ab81a31944a62"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Fri Aug 03 00:38:02 2018"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Mon Aug 06 09:15:46 2018"
      },
      "message": "test_errors_syntax: Expect SystemExit error code 1\n\nThe test was written to expect SystemExit error code of True.\nThe SystemExit raised by api.main is of type bool.\n\nTrue and 1 are equal, and assertEqual treats them that way,\nso there is no difference between them.\n\nThe other tests in this class expect an int error code,\ndue to the use of Popen which will convert the SystemExit\nbool to an int.  Hence this patch switches to using 1.\n\nMore importantly, TestMain.runPyflakes is updated to check\nthe api.main error code is a bool, and then force the\nconversion to int, so that any errors from self.assertEqual\ndo not show differences of 1 vs True, when in fact assertEqual\nconsiders them to be identical.  These differences of 1 vs True\nare distracting to whatever other differences are presented,\nespecially in error offset bugs like regularly occur, such as\nhttps://github.com/PyCQA/pyflakes/issues/346.\n"
    },
    {
      "commit": "06653e47f6bd8a6a5c73d0676b4ab81a31944a62",
      "tree": "c1dc49fde5accb0d4c42d5b2e1c77f7f834dac7e",
      "parents": [
        "fb1f223ac2141772f140be6f1108d02009c1d658"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Fri Aug 03 09:09:33 2018"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Fri Aug 03 09:54:59 2018"
      },
      "message": "test_invalidEscape: Test on PyPy\n\nThis test was skipped on PyPy, however the logic to support\nall PyPy versions is quite simple compared to CPython, and\nis no more complicated than other PyPy error column logic\nwhich typically is slightly different than CPython.\n"
    },
    {
      "commit": "fb1f223ac2141772f140be6f1108d02009c1d658",
      "tree": "0bdd1cdc10a1864d388b418a09a5a0119b35d524",
      "parents": [
        "9dd73ec54411a563410872b47e76f0f89f34ecfe"
      ],
      "author": {
        "name": "MacBox7",
        "email": "ajankit2304@gmail.com",
        "time": "Sat Jun 30 07:44:23 2018"
      },
      "committer": {
        "name": "MacBox7",
        "email": "ajankit2304@gmail.com",
        "time": "Wed Aug 01 18:03:17 2018"
      },
      "message": "checker.py: Handle UnboundLocal error for builtins\n\nThis patch ensures that UnboundLocalError is not\nignored for Python builtins. Populates ModuleScope\nwith Builtin nodes to manage them as bindings.\n\nFixes https://github.com/PyCQA/pyflakes/issues/350\n"
    },
    {
      "commit": "9dd73ec54411a563410872b47e76f0f89f34ecfe",
      "tree": "e7c1d3943f57160777f9a656b91952ea0df05f7a",
      "parents": [
        "d6f54c33f428d19d5bcd4c67e9ff89572a85c1c5"
      ],
      "author": {
        "name": "MacBox7",
        "email": "ajankit2304@gmail.com",
        "time": "Wed Jun 27 14:13:10 2018"
      },
      "committer": {
        "name": "MacBox7",
        "email": "ajankit2304@gmail.com",
        "time": "Thu Jul 19 06:47:16 2018"
      },
      "message": "Handle subtrees as input to checker\n\nThis patch essentially adds the the\nfunctionality for the Checker to handle\nsubtrees. Along with this args have also\nbeen parsed through handlers.\n\nCloses https://github.com/PyCQA/pyflakes/issues/338\n"
    },
    {
      "commit": "d6f54c33f428d19d5bcd4c67e9ff89572a85c1c5",
      "tree": "3f0ee9fd018c0e5f39c7280683d34695b2be8449",
      "parents": [
        "15a35c195e03a4be6192f259b362a9c6734babde"
      ],
      "author": {
        "name": "Marius Gedminas",
        "email": "marius@gedmin.as",
        "time": "Sat Jun 17 09:39:09 2017"
      },
      "committer": {
        "name": "Marius Gedminas",
        "email": "marius@gedmin.as",
        "time": "Tue Jul 17 11:32:28 2018"
      },
      "message": "Recognize __module__ when used in class scope\n\nFixes #259.\n"
    },
    {
      "commit": "15a35c195e03a4be6192f259b362a9c6734babde",
      "tree": "294c3dcdd111a4af115b727e5d1cfc18ba9573fd",
      "parents": [
        "4b2d720d86a9ece3115929bef90fb19b29bf160b"
      ],
      "author": {
        "name": "Kurtis Rader",
        "email": "krader@skepticism.us",
        "time": "Sat Jun 09 04:03:21 2018"
      },
      "committer": {
        "name": "Kurtis Rader",
        "email": "krader@skepticism.us",
        "time": "Tue Jul 17 03:57:47 2018"
      },
      "message": "Don\u0027t warn about unused `_` magic var\n\nResolves #202\n"
    },
    {
      "commit": "4b2d720d86a9ece3115929bef90fb19b29bf160b",
      "tree": "44082ede2b98f9f645ab52a36cfd11f218ccb43e",
      "parents": [
        "9a6b70c92d68f474352510bff279902bc4d1a509"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Sun Jun 10 14:58:15 2018"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sun Jun 10 14:58:15 2018"
      },
      "message": "Update all pypi.python.org URLs to pypi.org (#337)\n\nFor details on the new PyPI, see the blog post:\r\n\r\nhttps://pythoninsider.blogspot.ca/2018/04/new-pypi-launched-legacy-pypi-shutting.html"
    },
    {
      "commit": "9a6b70c92d68f474352510bff279902bc4d1a509",
      "tree": "aafc2ef3c34040e36e8b4c07e7cc81e7ee3b77bf",
      "parents": [
        "efddb93524db7949322181d5e14c32681779a6e8"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sat Jun 09 14:34:34 2018"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jun 09 14:34:34 2018"
      },
      "message": "Fix PyPy installation in AppVeyor (#336)\n\nExample false positive:\r\n\r\nhttps://ci.appveyor.com/project/sigmavirus24/pyflakes/build/1.0.182"
    },
    {
      "commit": "efddb93524db7949322181d5e14c32681779a6e8",
      "tree": "4fd2cadc769d0d775387aa751188432ba76c4c18",
      "parents": [
        "c2742b69e4801e3fe9d15862eb720a3a1e585d6e"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Sun May 20 17:07:02 2018"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Sun May 20 17:07:02 2018"
      },
      "message": "Increment version to 2.0.0\n"
    },
    {
      "commit": "c2742b69e4801e3fe9d15862eb720a3a1e585d6e",
      "tree": "797af28f6e89134129c783e418802bcdb7d760b3",
      "parents": [
        "a13dbe6652f2635b1a7e094a8eb8d27aec3f6c3f"
      ],
      "author": {
        "name": "Hugo",
        "email": "hugovk@users.noreply.github.com",
        "time": "Sun Mar 25 20:31:00 2018"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sun Mar 25 20:31:00 2018"
      },
      "message": "Update versions (#303)\n\n* Python 3.7 is supported (#273)\r\n\r\n* Update classifiers\r\n"
    },
    {
      "commit": "a13dbe6652f2635b1a7e094a8eb8d27aec3f6c3f",
      "tree": "21eda92b0d10f10624a8bf61683364289d1e0ee1",
      "parents": [
        "a440c2022e0c20941fda4d2d48d2e8274a837b78"
      ],
      "author": {
        "name": "Hugo",
        "email": "hugovk@users.noreply.github.com",
        "time": "Sun Mar 25 20:07:33 2018"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sun Mar 25 20:07:33 2018"
      },
      "message": "Drop support for EOL Python \u003c2.7 and 3.2-3.3 (#322)\n\n* Ignore JetBrains/PyCharm project files\r\n\r\n* Drop support for EOL Python \u003c2.7, 3.2-3.3\r\n\r\n* Replace function call with set literal\r\n\r\n* Drop pypy3.3-5.2-alpha1 as it\u0027s based on EOL Python 3.3.5\r\n\r\n* PY32 and PY33 are now essentially equal to PY2\r\n\r\n* Upgrade pypy3-2.4.0 (Python 3.2.5) to pypy3-v5.10.0 (Python 3.5.3)\r\n\r\n* Comment out failing pypy3-v5.10.0 until pypy3-v5.10.1 is released\r\n\r\n* Revert \"Ignore JetBrains/PyCharm project files\"\r\n\r\nThis reverts commit 99f1d967e5968f93175f70fb04ea8bc34e96d600.\r\n"
    },
    {
      "commit": "a440c2022e0c20941fda4d2d48d2e8274a837b78",
      "tree": "29f6368ee7c51a1172f1a5b413b4c80667c9384f",
      "parents": [
        "af45b41f52ec1727c2a84777af0c2e55d6b8d912"
      ],
      "author": {
        "name": "Skip Montanaro",
        "email": "skip.montanaro@gmail.com",
        "time": "Sun Mar 25 20:04:26 2018"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sun Mar 25 20:04:26 2018"
      },
      "message": "skip Emacs/vim backup files (#331)\n\n* skip Emacs/vim backup files\r\n\r\n* requested change\r\n"
    },
    {
      "commit": "af45b41f52ec1727c2a84777af0c2e55d6b8d912",
      "tree": "c5bff7243c301ef7b9666e371098308099d74679",
      "parents": [
        "7a34cfd5df3ce6907466cb2617b36ddec80247f7"
      ],
      "author": {
        "name": "Scott Sanderson",
        "email": "ssanderson@quantopian.com",
        "time": "Sun Feb 18 23:21:26 2018"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Sun Feb 18 23:21:26 2018"
      },
      "message": "Warn on raise NotImplemented(...)\n\nThis is a common mistake for `raise NotImplementedError`. Since\r\n`NotImplemented` isn\u0027t an exception, it\u0027s never valid to raise\r\nit (barring strange circumstances where you\u0027ve aliased `NotImplemented`\r\nin `__builtins__`)."
    },
    {
      "commit": "7a34cfd5df3ce6907466cb2617b36ddec80247f7",
      "tree": "61fc0debeeb6d9333b6c65442d2dec8ed2e5ca47",
      "parents": [
        "b75144b4c9c75e16a1f75b912496c7dd44ef716c"
      ],
      "author": {
        "name": "Jakub Wilk",
        "email": "jwilk@jwilk.net",
        "time": "Mon Jan 29 13:21:04 2018"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Mon Jan 29 13:21:04 2018"
      },
      "message": "Fix typo (#327)\n\n"
    },
    {
      "commit": "b75144b4c9c75e16a1f75b912496c7dd44ef716c",
      "tree": "ad509b903a821c50e2a5a19553305402e3ecd521",
      "parents": [
        "8e9d44cfce56694a8ef89f25d25a3557b8def1e4"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sun Jan 28 15:45:56 2018"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 28 15:45:56 2018"
      },
      "message": "Work around Travis CI error on Python \"nightly\" (#326)\n\n* Work around Travis CI error on Python \"nightly\"\r\n\r\n* Keep installation clean as possible when testing\r\n\r\nInstall the linting tools after testing is done.\r\n\r\n* Clean up\r\n"
    },
    {
      "commit": "8e9d44cfce56694a8ef89f25d25a3557b8def1e4",
      "tree": "836640d1f2a8907e731abc369cee7c76c2ca4cac",
      "parents": [
        "8a1feac08dae2478e3f67ab4018af86ff4ec56f0"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sun Jan 28 01:03:59 2018"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 28 01:03:59 2018"
      },
      "message": "Support `__class__` without `self` in Python 3 (#325)\n\nThis fixes #223.\r\n\r\nI created this patch previously in:\r\n\r\nhttps://github.com/PyCQA/pyflakes/commit/83ab002d6fab2b717df91e854624c6fdfd9b9213\r\n\r\nBut I deleted that branch for some reason. I can\u0027t recall why I disliked\r\nit enough to delete it. But since I can\u0027t remember, I\u0027ll commit it to\r\nbranch again for others to look at."
    },
    {
      "commit": "8a1feac08dae2478e3f67ab4018af86ff4ec56f0",
      "tree": "1cba78262e5b187f73592d06beb4af38a570e790",
      "parents": [
        "8aece72839adb4add6c31ccfcb021cef2d731a81"
      ],
      "author": {
        "name": "eight",
        "email": "eight04@gmail.com",
        "time": "Fri Dec 08 23:30:19 2017"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Fri Dec 08 23:30:19 2017"
      },
      "message": "Ignore underscore redefinition (#73)\n\n* Ignore underscore redefinition\r\n\r\n* Add test: ignore underscore redefinition\r\n\r\n* Redefining an importation should always raise a warning\r\n"
    },
    {
      "commit": "8aece72839adb4add6c31ccfcb021cef2d731a81",
      "tree": "3504711f42a96564d4a578ec335903ff2c05fe87",
      "parents": [
        "8d0f995dafda7105a6966057fd11383f1ea6fb71"
      ],
      "author": {
        "name": "Jimmy Jia",
        "email": "tesrin@gmail.com",
        "time": "Sat Nov 25 19:47:21 2017"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Nov 25 19:47:21 2017"
      },
      "message": "Handle string literal annotations (#313)\n\n"
    },
    {
      "commit": "8d0f995dafda7105a6966057fd11383f1ea6fb71",
      "tree": "172ca154b06c843730b8611fbf548e0b0ba3fa1e",
      "parents": [
        "d004fbdc1f0290c5261f8cec43db56ab005a6a77"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Mon Oct 23 12:35:11 2017"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Mon Oct 23 12:35:11 2017"
      },
      "message": "Fix failed AppVeyor web requests (#309)\n\nAllow we requests to servers that only support TLS 1.2. Previously\r\nfailed with the error:\r\n\r\n  Exception calling \"DownloadFile\" with \"2\" argument(s): \"The request\r\n  was aborted: Could not create SSL/TLS secure channel.\"\r\n\r\nWas marking all contributions as broken which is not helpful for\r\nreviewing.\r\n\r\nFixes #308"
    },
    {
      "commit": "d004fbdc1f0290c5261f8cec43db56ab005a6a77",
      "tree": "6e452f5b2d36f4e9c3599e84a6da9e30d26be60e",
      "parents": [
        "163af9384eb9cb05492510bac2d8723b96621365"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Sat Oct 21 22:46:10 2017"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Oct 21 22:46:10 2017"
      },
      "message": "Enable pip cache in Travis CI (#305)\n\nCan speed up builds and reduce load on PyPI servers.\r\n\r\nFor more information, see:\r\n\r\nhttps://docs.travis-ci.com/user/caching/#pip-cache"
    },
    {
      "commit": "163af9384eb9cb05492510bac2d8723b96621365",
      "tree": "72069b2558cf8aecb86b20a770ec8f322c32cb45",
      "parents": [
        "ef6f4383b69d2acfedefb261c6cf2a79e9ec7968"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Sat Oct 21 22:45:53 2017"
      },
      "committer": {
        "name": "Ian Stapleton Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Oct 21 22:45:53 2017"
      },
      "message": "Include license file in the generated wheel package (#306)\n\nThe wheel package format supports including the license file. This is\r\ndone using the [metadata] section in the setup.cfg file. For additional\r\ninformation on this feature, see:\r\n\r\nhttps://wheel.readthedocs.io/en/stable/index.html#including-the-license-in-the-generated-wheel-file"
    },
    {
      "commit": "ef6f4383b69d2acfedefb261c6cf2a79e9ec7968",
      "tree": "2bcb5355ab83333bfe861ea639a6fe1dad386d19",
      "parents": [
        "da2dd4a09f41661bcd67afdd0696b97bc8e2a54f"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Sat Oct 21 14:22:26 2017"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sat Oct 21 14:22:26 2017"
      },
      "message": "Add check for unused exception binding in except: block (#293)\n\nFixes #301"
    },
    {
      "commit": "da2dd4a09f41661bcd67afdd0696b97bc8e2a54f",
      "tree": "6a11dfe5f34079aa84e4e3f010512d3a4db365f4",
      "parents": [
        "111538679d461f51db682d6d1d705b95b7b95ce5"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Fri Oct 06 13:41:32 2017"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 06 13:41:32 2017"
      },
      "message": "Point to NEWS.txt from README\n\nhttps://github.com/PyCQA/pyflakes/issues/299"
    },
    {
      "commit": "111538679d461f51db682d6d1d705b95b7b95ce5",
      "tree": "49d4e6a168669e6ad812093649fd4477d4453470",
      "parents": [
        "6a9fcbca1ed92f6db4f356c3de23bd33538db5c9"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Wed Sep 20 13:15:14 2017"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 20 13:15:14 2017"
      },
      "message": "Make `pyflakes` happy about its our own code (#295)\n\n"
    },
    {
      "commit": "6a9fcbca1ed92f6db4f356c3de23bd33538db5c9",
      "tree": "990a3c48c97effefdc96b9430e023f5413ebfe86",
      "parents": [
        "91510f80bc7ec56e244f4a4944b5270694f9f71c"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Wed Sep 20 13:14:27 2017"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 20 13:14:27 2017"
      },
      "message": "Skip a test under PyPy that varies on version (#294)\n\n"
    },
    {
      "commit": "91510f80bc7ec56e244f4a4944b5270694f9f71c",
      "tree": "0d0f30b36aec550424f06484bce4329e0650c83a",
      "parents": [
        "d2af071c84344de2aa633c1f314ef6cfe6c9515f"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Tue Sep 12 10:29:12 2017"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Tue Sep 19 12:28:13 2017"
      },
      "message": "Match tox test matrix with and Travis configurations\n\nTesting for Python 3.2 was removed in\nc94e50759839b781cdbb029ae68f8069234ada3b.\n"
    },
    {
      "commit": "d2af071c84344de2aa633c1f314ef6cfe6c9515f",
      "tree": "2c10acb48b5121acc7efb2d4edd3468f4708b2cc",
      "parents": [
        "4709bf5105078a345fd145d68d39c44a9b6d3a30"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu Aug 03 14:37:05 2017"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu Aug 03 14:37:05 2017"
      },
      "message": "Increment version to 1.6.0\n"
    },
    {
      "commit": "4709bf5105078a345fd145d68d39c44a9b6d3a30",
      "tree": "13e9c02ebcd7e36b5073cc16f45f4d59d51446c1",
      "parents": [
        "8baf19d9b7d0ebe31ae79017480752d26fde088a"
      ],
      "author": {
        "name": "cclauss",
        "email": "cclauss@bluewin.ch",
        "time": "Sat Jun 24 14:49:36 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Sat Jun 24 14:49:36 2017"
      },
      "message": "Support for Python 3.6? (#281)\n\n"
    },
    {
      "commit": "8baf19d9b7d0ebe31ae79017480752d26fde088a",
      "tree": "3ce99438a362f695709dd882f85db352a7d3da8e",
      "parents": [
        "4e77dc65ca94d9dafd9e0b61dce4698e0346f83f"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Tue Jun 06 00:29:47 2017"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 06 00:29:47 2017"
      },
      "message": "Support Python 3.7 (#273)\n\n* Ignore temporary files\r\n\r\n* Support Python 3.7\r\n\r\nThis fixes #271.\r\n\r\n* Re-enable nightly in Travis CI\r\n\r\nThis relates to #90.\r\n\r\n* Undo 821a0694b1bdc61c53cc0ad20dbc1ed2bca0de7d\r\n"
    },
    {
      "commit": "4e77dc65ca94d9dafd9e0b61dce4698e0346f83f",
      "tree": "9910125d63fc7ddfcd14c6cfea032fa0c5cb5e8b",
      "parents": [
        "59f15e9ea7024e3f97da8464ae165b9a4b3d1b76"
      ],
      "author": {
        "name": "Jon Dufresne",
        "email": "jon.dufresne@gmail.com",
        "time": "Sun Jun 04 00:13:13 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Sun Jun 04 00:13:13 2017"
      },
      "message": "Rename [wheel] section to [bdist_wheel] as the former is legacy (#278)\n\nSee:\r\n\r\nhttps://bitbucket.org/pypa/wheel/src/54ddbcc9cec25e1f4d111a142b8bfaa163130a61/wheel/bdist_wheel.py?fileviewer\u003dfile-view-default#bdist_wheel.py-119:125\r\n\r\nhttp://pythonwheels.com/"
    },
    {
      "commit": "59f15e9ea7024e3f97da8464ae165b9a4b3d1b76",
      "tree": "1ef63130f9bd6e6a143ee962912ed5a5e486c420",
      "parents": [
        "e71a72fc7aab8938b2ec2be64a850f6ab6251e53"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sat Jun 03 12:29:35 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Sat Jun 03 12:29:35 2017"
      },
      "message": "Detect `pythonw` in shebang (#277)\n\nAlso add more tests.\r\n\r\nThis addresses:\r\n\r\nhttps://github.com/PyCQA/pyflakes/issues/149#issuecomment-305881232"
    },
    {
      "commit": "e71a72fc7aab8938b2ec2be64a850f6ab6251e53",
      "tree": "8b060e331951edf39d5af33efd2d73ed300b4090",
      "parents": [
        "bce5564f52dded5a7302d200deb5d1ed36a42d7f"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Wed May 31 02:42:07 2017"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Fri Jun 02 00:21:49 2017"
      },
      "message": "Find Python files without extensions\n\nPreviously, only files ending with `*.py` would be detected as Python\nfiles while recursing a directory.\n\nThis closes #149.\n"
    },
    {
      "commit": "bce5564f52dded5a7302d200deb5d1ed36a42d7f",
      "tree": "fb1b8c7973c4bc35d44282b8cfca61d06fd50526",
      "parents": [
        "1af4f14ad4675bf5c61c47bbb7c2421b50d1cba4"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Wed May 31 14:32:28 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Wed May 31 14:32:28 2017"
      },
      "message": "Show master branch only in Travis CI badge (#274)\n\nI previously noticed the badge going awry. This explains it."
    },
    {
      "commit": "1af4f14ad4675bf5c61c47bbb7c2421b50d1cba4",
      "tree": "1191f9c6af4ecba08cef8eabae3eb68052bfcdc2",
      "parents": [
        "c94e50759839b781cdbb029ae68f8069234ada3b"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Sun May 28 14:47:33 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Sun May 28 14:47:33 2017"
      },
      "message": "Use new URL for issues (#272)\n\n"
    },
    {
      "commit": "c94e50759839b781cdbb029ae68f8069234ada3b",
      "tree": "e69de2c625c59e42934217b11bb132debfaa7f57",
      "parents": [
        "074c21da3174bc88b2ec02fea767a436e2db643d"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Thu May 25 23:59:59 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Thu May 25 23:59:59 2017"
      },
      "message": "Remove obsolete version of Python from Travis CI (#91)\n\nThis also adds the latest version of Python.\r\n\r\nThe `setuptools` on Travis CI no longer supports Python 3.2:\r\n\r\nhttps://github.com/pypa/setuptools/commit/b47fe15b9039a165589353a1a43f6dfe3bbe3a8e\r\nhttps://travis-ci.org/myint/scspell/jobs/235721220#L146"
    },
    {
      "commit": "074c21da3174bc88b2ec02fea767a436e2db643d",
      "tree": "ff82a35a718532214ffc9b5dce78dae48f5d12a6",
      "parents": [
        "770f127c9d53234bcf41238d3194c3b91eab841a"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Fri May 12 17:14:30 2017"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 12 17:14:30 2017"
      },
      "message": "Allow failure in \"nightly\" Python until we fix it (#90)\n\n"
    },
    {
      "commit": "770f127c9d53234bcf41238d3194c3b91eab841a",
      "tree": "155ba80b7b9d09c87e936082da92447f0aa2b276",
      "parents": [
        "4dfa2b8cd367869bfa776f03efc64e514f70e483",
        "41148b45f797951057dc782682dd4055a4a3c1b6"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Mon Feb 27 00:18:09 2017"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Mon Feb 27 00:18:09 2017"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:pyflakes/pyflakes\n\nForgot to push the commit that increments to 1.5.0 when I made the\nrelease, and some changes have been made since then :(\n"
    },
    {
      "commit": "41148b45f797951057dc782682dd4055a4a3c1b6",
      "tree": "25ae98bb1a5c93fdcf6b7e2386c056661ccddbe6",
      "parents": [
        "a007c3d7f05b42647ef7d07be7c3afb3bb36ccdb"
      ],
      "author": {
        "name": "cfs-pure",
        "email": "cfs-pure@users.noreply.github.com",
        "time": "Sat Feb 04 17:50:30 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Sat Feb 04 17:50:30 2017"
      },
      "message": "Don\u0027t test against file perms when running as root (#86)\n\n* Don\u0027t test against file perms when running as root\r\n\r\ntest_permissionDenied tests file modes by creating a temporary file, then sets the mode to 0000 and attempts to process it and see if and permission denied error is generated.  This never happens when the unit tests are run as root since it can open files regardless of file permissions.\r\n\r\n* Fix up UID skip in tests for Windows\r\n"
    },
    {
      "commit": "a007c3d7f05b42647ef7d07be7c3afb3bb36ccdb",
      "tree": "4b606bed8947a34bfffa09c5261bc115df4027a2",
      "parents": [
        "f13b1e4c6473f0e91135765452956055e5091fb7"
      ],
      "author": {
        "name": "Jakub Stasiak",
        "email": "jakub@stasiak.at",
        "time": "Sun Jan 22 20:01:45 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Sun Jan 22 20:01:45 2017"
      },
      "message": "Process function scope variable annotations (#88)\n\nEven though variable annotations in function scope aren\u0027t evaluated at\r\nruntime it\u0027s still useful for static analysis tools to process them and\r\ncatch some issues (and not report some things that aren\u0027t issues).\r\n\r\nLet\u0027s take the following code:\r\n\r\n     from typing import Any\r\n\r\n     def fun():\r\n          a: Any\r\n\r\nPreviously pyflakes would report Any to be unused:\r\n\r\n     test.py:1: \u0027typing.Any\u0027 imported but unused\r\n\r\nWith this patch it\u0027s no longer the case."
    },
    {
      "commit": "f13b1e4c6473f0e91135765452956055e5091fb7",
      "tree": "3ca2dfd133a60c9a3359b6235444982b6a79644f",
      "parents": [
        "dae4fa70d8d5fd98e81ceb72c007c0c60725dfec"
      ],
      "author": {
        "name": "Jason R. Coombs",
        "email": "jaraco@jaraco.com",
        "time": "Sat Jan 14 01:39:48 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "graffatcolmingov@gmail.com",
        "time": "Sat Jan 14 12:23:23 2017"
      },
      "message": "Just pip install setuptools on AppVeyor\n\nUse the get-pip script to bootstrap pip and setuptools to pinned\nversions for Python 3.2 compatibility.\n\nPyPy3\u0027s latest Windows version only supports Python 3.2, so while Python\n3.2 is EOL upstream, we\u0027re still testing against it and need to be able\nto install our tooling (including pip and setuptools).\n"
    },
    {
      "commit": "4dfa2b8cd367869bfa776f03efc64e514f70e483",
      "tree": "a655a8238e2d04e29ef10d088707f7e612e2559e",
      "parents": [
        "dae4fa70d8d5fd98e81ceb72c007c0c60725dfec"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Tue Jan 10 01:01:09 2017"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Tue Jan 10 01:01:09 2017"
      },
      "message": "Increment version to 1.5.0\n"
    },
    {
      "commit": "dae4fa70d8d5fd98e81ceb72c007c0c60725dfec",
      "tree": "570c96da9ef3dae3e8a1da8fe8f4a480e555bab8",
      "parents": [
        "34a06960aa2621cbacd8e41db4e0ebe6e324dc5a"
      ],
      "author": {
        "name": "Łukasz Langa",
        "email": "lukasz@langa.pl",
        "time": "Sat Jan 07 01:36:27 2017"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Sat Jan 07 01:36:27 2017"
      },
      "message": "Enable support for PEP 526 annotated assignments (#84)\n\nWithout this change, code with annotated assignments is crashing pyflakes with\r\nan attribute error (`object has no attribute \u0027ANNASSIGN\u0027`).\r\n\r\nTest plan: new tests introduced conforming to behavior described in the PEP."
    },
    {
      "commit": "34a06960aa2621cbacd8e41db4e0ebe6e324dc5a",
      "tree": "702b6907512a9bcb41f8f0cc10aec530014a2983",
      "parents": [
        "140e2317d101743566dbf51c2472547e6f3d7b63"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Fri Dec 30 15:14:25 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Fri Dec 30 15:14:25 2016"
      },
      "message": "Increment version to 1.4.0\n"
    },
    {
      "commit": "140e2317d101743566dbf51c2472547e6f3d7b63",
      "tree": "92779dc9e86397eaaa2bbbe58cd36200578487fa",
      "parents": [
        "5d08a79af550b93f83c20ab3b1346439eb2cdd54"
      ],
      "author": {
        "name": "Benjamin Dopplinger",
        "email": "b.dopplinger@gmail.com",
        "time": "Fri Nov 04 02:55:36 2016"
      },
      "committer": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Fri Nov 04 02:55:36 2016"
      },
      "message": "Fix typo in README (#82)\n\n"
    },
    {
      "commit": "5d08a79af550b93f83c20ab3b1346439eb2cdd54",
      "tree": "5298b005b0e0e49d5a6b6a592b3194cfc12a0fdc",
      "parents": [
        "434bbb06d4dc38ab09eb9405be6fc1279286f69d"
      ],
      "author": {
        "name": "Jelte Fennema",
        "email": "github-tech@jeltef.nl",
        "time": "Tue Sep 27 23:55:53 2016"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Tue Sep 27 23:55:53 2016"
      },
      "message": "Use %r instead of %s in ImportStarMessage (#81)\n\nThis was inconsistent with the other error messages. This is useful as\r\nit allows easy detecting of the offending item for editor plugins by\r\nsimply searching in the message for quotes."
    },
    {
      "commit": "434bbb06d4dc38ab09eb9405be6fc1279286f69d",
      "tree": "1e50fc2048c1461e8902e2bc07dcf3a5907be1c5",
      "parents": [
        "2f50952805a04fe73315922ae10f0d38e3c3d5dc"
      ],
      "author": {
        "name": "Jared Garst",
        "email": "jgarst@users.noreply.github.com",
        "time": "Thu Sep 08 02:23:51 2016"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Thu Sep 08 02:23:51 2016"
      },
      "message": "Fix format string checking (#80)\n\nformat strings (PEP 498) defines a new AST node, JOINEDSTR which\r\ncontains a list of string expressions."
    },
    {
      "commit": "2f50952805a04fe73315922ae10f0d38e3c3d5dc",
      "tree": "4d7f9a033f51abe03bf5453072e89a29702a287c",
      "parents": [
        "8447662086b8d3a02871e42feee5b9439c5c7d0a"
      ],
      "author": {
        "name": "Ville Skyttä",
        "email": "ville.skytta@iki.fi",
        "time": "Fri Sep 02 07:51:38 2016"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Fri Sep 02 07:51:38 2016"
      },
      "message": "Point URLs to PyCQA (#79)\n\n"
    },
    {
      "commit": "8447662086b8d3a02871e42feee5b9439c5c7d0a",
      "tree": "4c089362726262b7f6e143eb77c06e0c0878b19d",
      "parents": [
        "f67ae8f345c513ca17895bede174483748d6426c"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu Sep 01 19:54:19 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu Sep 01 19:57:21 2016"
      },
      "message": "Increment version to 1.3.0\n"
    },
    {
      "commit": "f67ae8f345c513ca17895bede174483748d6426c",
      "tree": "54e480378d6bb9d2bbf0d614cd3262376b21b69c",
      "parents": [
        "cce2e51c404d670b3d8590f8107820642c64696e"
      ],
      "author": {
        "name": "Steven Myint",
        "email": "git@stevenmyint.com",
        "time": "Tue Aug 09 13:49:34 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Tue Aug 09 13:49:34 2016"
      },
      "message": "Use current Travis CI URL (#78)\n\n"
    },
    {
      "commit": "cce2e51c404d670b3d8590f8107820642c64696e",
      "tree": "1a6f6439a446e2f8a6703c3b8b4f2ed8eb49e449",
      "parents": [
        "9883d104e5559fb20a96fa68e537b702a09ec8f2"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Thu Aug 04 12:57:03 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Thu Aug 04 12:57:03 2016"
      },
      "message": "Fix PyPy2 Windows IntegrationTests (#76)\n\nIntegrationTests.test_errors is failing on Windows under PyPy2\r\nas its stderr emits \\r\\r\\n as the line separator.\r\n\r\nAdd AppVeyor testing for three PyPy releases.\r\n\r\nAlso add a test for the other more complex stderr message emitted\r\nby the Reporter."
    },
    {
      "commit": "9883d104e5559fb20a96fa68e537b702a09ec8f2",
      "tree": "93ee8bb07f4d80f10a3a6194ad9d9d14aec66bb6",
      "parents": [
        "152ca182a603d7327925873db9a795797812968d"
      ],
      "author": {
        "name": "Jakub Wilk",
        "email": "jwilk@jwilk.net",
        "time": "Wed Jul 27 19:54:06 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Wed Jul 27 19:54:06 2016"
      },
      "message": "Fix typos (#77)\n\n"
    },
    {
      "commit": "152ca182a603d7327925873db9a795797812968d",
      "tree": "badf35728ab8dd93b273093666b6d6c96c7ebf80",
      "parents": [
        "2ab47d7628396d3b23d2dda5d163e0c2089666b4"
      ],
      "author": {
        "name": "geokala",
        "email": "walker_s@hotmail.co.uk",
        "time": "Sun Jul 24 23:15:29 2016"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Sun Jul 24 23:15:29 2016"
      },
      "message": "Check for duplicate dictionary keys (#72)\n\n"
    },
    {
      "commit": "2ab47d7628396d3b23d2dda5d163e0c2089666b4",
      "tree": "b49cd06b46b4e1ad3350cb64474ccc90b6d8261c",
      "parents": [
        "b161e506344d609842e224505fc13374faacfbda"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Thu Jul 21 18:34:42 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Thu Jul 21 18:34:42 2016"
      },
      "message": "Fix TestMain tests on Windows (#75)\n\nCurrently the API test module has failures for TestMain class,\r\nadded in f0084592, on Windows as SysStreamCapturing is in\r\nuniversal newlines mode while its super class IntegrationTests\r\nis using a native console stream with newline\u003dos.linesep.\r\n\r\nAdd Appveyor CI script as .appveyor.yml,\r\nwhich can be selected in the Appveyor settings."
    },
    {
      "commit": "b161e506344d609842e224505fc13374faacfbda",
      "tree": "0cfe8eae5aaf077cd73d3e8b7cf20aebf655b3f4",
      "parents": [
        "72acff0029ba7c98b6b1345c51a3db023409e853"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Wed Jul 13 00:56:04 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Wed Jul 13 00:56:04 2016"
      },
      "message": "Add PyPy 5.3 and PyPy3 5.2-alpha1 (#74)\n\n"
    },
    {
      "commit": "72acff0029ba7c98b6b1345c51a3db023409e853",
      "tree": "b5d0ac90ca8e436da003d15d13ba975c5efcd09d",
      "parents": [
        "d721eaf58cc2fc13f3199a3f358db7250e49983b"
      ],
      "author": {
        "name": "Yann Kaiser",
        "email": "kaiser.yann@gmail.com",
        "time": "Mon Jul 04 14:24:49 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Mon Jul 04 14:24:49 2016"
      },
      "message": "Fix \"continue\" and \"break\" checks ignoring py3.5\u0027s \"async for\" loop (#71)\n\n"
    },
    {
      "commit": "d721eaf58cc2fc13f3199a3f358db7250e49983b",
      "tree": "8d4336054ad91e808b8e501cfe8aed913e313c0e",
      "parents": [
        "d8591997d9718f482f7f1d39f2bf1aa0e4a5ab92"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu May 12 18:29:35 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu May 12 18:30:48 2016"
      },
      "message": "Increment version to 1.2.3\n"
    },
    {
      "commit": "d8591997d9718f482f7f1d39f2bf1aa0e4a5ab92",
      "tree": "ecbc080d759d911b58a11815f356c5019397c316",
      "parents": [
        "885a8e5395f3eac58a995a49dbe347b8f6648f64"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Thu May 12 18:28:52 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu May 12 18:28:52 2016"
      },
      "message": "Fix TypeError when processing relative imports (#61)\n\nFixes lp:1560134\r\n\r\naec68a784 added module names to error messages,\r\nhowever it caused a TypeError for relative imports\r\nthat do not specify a module such as:\r\n\r\n   from . import x\r\n\r\nThis fixes the TypeError, and also adds the necessary\r\nleading dots for relative import error messages.\r\n\r\nAdd tests for various types of relative imports."
    },
    {
      "commit": "885a8e5395f3eac58a995a49dbe347b8f6648f64",
      "tree": "86ba2c17bef830cdc3470b9fbab73d7a387b640c",
      "parents": [
        "f69d4b415b5f83a2c0b09f494927350f80eb0947"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Fri May 06 16:42:31 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Fri May 06 16:42:31 2016"
      },
      "message": "Increment version to 1.2.2\n"
    },
    {
      "commit": "f69d4b415b5f83a2c0b09f494927350f80eb0947",
      "tree": "bbca643faa7fdb3e46361796a60b0434a2f9807d",
      "parents": [
        "29914fc69f300f614e6dde4724cec05dc68a0ea6"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Fri May 06 12:40:50 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Fri May 06 12:40:50 2016"
      },
      "message": "Avoid traceback when exception is del-ed in except (#67)\n\nFixes a regression introduced by\r\n2a698f87c02a43d4489e30481e9def14ed4b4431.\r\n\r\nThis would fail with a KeyError:\r\n\r\ntry:\r\n    pass\r\nexcept Exception as e:\r\n    del e\r\n\r\nFixes lp:1578903"
    },
    {
      "commit": "29914fc69f300f614e6dde4724cec05dc68a0ea6",
      "tree": "41570fdc0df09aee6614d95661d828de33d974b5",
      "parents": [
        "45c28a31d3f4c402056433da2a7eb29f565e4344"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu May 05 22:42:33 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Thu May 05 22:42:33 2016"
      },
      "message": "Increment version to 1.2.1\n"
    },
    {
      "commit": "45c28a31d3f4c402056433da2a7eb29f565e4344",
      "tree": "82b45b64a377c2c71ad3fc5a0f86c1f427a95fde",
      "parents": [
        "4361b6d0733837e4d0e402c41cb55961bd43a5d7"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Thu May 05 20:16:10 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Thu May 05 20:16:10 2016"
      },
      "message": "Suppress RedefinedWhileUnused for submodule import (#62)\n\nFixes lp:1578051\r\n\r\naec68a7 added module names to error messages, which included\r\na new class SubmoduleImportation to handle the special case\r\nof submodule imports.  It correctly handled the case of\r\na submodule import occurring after the root module was imported,\r\nbut didnt handle the opposite case of the submodule import\r\noccurring before the root module was imported."
    },
    {
      "commit": "4361b6d0733837e4d0e402c41cb55961bd43a5d7",
      "tree": "2260319daf519e12429c193fb0948ae57a3d66fb",
      "parents": [
        "10b168a8b10e75479a1db90e7a27a7fe0eb3198c"
      ],
      "author": {
        "name": "Adam Chainz",
        "email": "me@adamj.eu",
        "time": "Thu May 05 19:28:47 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Thu May 05 19:28:47 2016"
      },
      "message": "README - add link to issue tracker (#66)\n\nAs discussed in #64"
    },
    {
      "commit": "10b168a8b10e75479a1db90e7a27a7fe0eb3198c",
      "tree": "9217c323bc7caac154570d70ba05fd14a91934aa",
      "parents": [
        "cbe1fe24ad20f0fa043afe79033a77e499861d36"
      ],
      "author": {
        "name": "Wilfred Hughes",
        "email": "me@wilfred.me.uk",
        "time": "Thu May 05 15:39:30 2016"
      },
      "committer": {
        "name": "Wilfred Hughes",
        "email": "me@wilfred.me.uk",
        "time": "Thu May 05 15:39:30 2016"
      },
      "message": "Fix incorrect timestamp"
    },
    {
      "commit": "cbe1fe24ad20f0fa043afe79033a77e499861d36",
      "tree": "6608abad44d4d6f7b9831b0f2eb8ac85c1803da3",
      "parents": [
        "9f26423dd1b9dc7cb14193d7bd873130247f4027"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Wed May 04 14:53:06 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Wed May 04 14:53:06 2016"
      },
      "message": "Merge pull request #63 from jayvdb/update-tox.ini\n\nAdd all versions to tox.ini"
    },
    {
      "commit": "9f26423dd1b9dc7cb14193d7bd873130247f4027",
      "tree": "a691d325c9cce89ebe5c349dc195c828d945c66d",
      "parents": [
        "2a698f87c02a43d4489e30481e9def14ed4b4431"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Wed May 04 01:15:12 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Wed May 04 01:24:26 2016"
      },
      "message": "Increment version to 1.2.0\n"
    },
    {
      "commit": "2a698f87c02a43d4489e30481e9def14ed4b4431",
      "tree": "549fb4cef1eac7d8a7dee50b788377a3eca05a82",
      "parents": [
        "aec68a7847d8dbd1371242f42f9302103a68178f"
      ],
      "author": {
        "name": "Łukasz Langa",
        "email": "lukasz@langa.pl",
        "time": "Fri Mar 11 06:00:57 2016"
      },
      "committer": {
        "name": "Łukasz Langa",
        "email": "lukasz@langa.pl",
        "time": "Tue Apr 12 22:02:52 2016"
      },
      "message": "Warn against reusing exception names after the except: block on Python 3\n"
    },
    {
      "commit": "aec68a7847d8dbd1371242f42f9302103a68178f",
      "tree": "4633a65489868968e28ad97c39e5e5c72efb445a",
      "parents": [
        "cddd729ec57ae0c5953d3113ed69077410a4e48e"
      ],
      "author": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Wed Nov 25 14:24:53 2015"
      },
      "committer": {
        "name": "John Vandenberg",
        "email": "jayvdb@gmail.com",
        "time": "Tue Mar 15 15:47:56 2016"
      },
      "message": "Importation classes with imported name and alias\n\nIn order to solve many corner cases related to imports,\nmore information is needed about each import.\n\nThis change creates two new classes:\n- SubmoduleImportation\n- ImportationFrom\n\nAnd adds an optional parameter full_name to the super class\nImportation.\n\nFunctionally, this change only improves existing error messages\nto report the full imported name where previously an error\nwould include only the import alias.\n"
    },
    {
      "commit": "cddd729ec57ae0c5953d3113ed69077410a4e48e",
      "tree": "3d921d5c45d964d239fda4282ac7553c59eb6243",
      "parents": [
        "d573261da14d1ff671452bc535e72baecf8811e3"
      ],
      "author": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Tue Mar 01 14:41:53 2016"
      },
      "committer": {
        "name": "Phil Frost",
        "email": "indigo@bitglue.com",
        "time": "Tue Mar 01 14:41:53 2016"
      },
      "message": "Increment version to 1.1.0\n"
    },
    {
      "commit": "d573261da14d1ff671452bc535e72baecf8811e3",
      "tree": "637290e6eedf6565d1f39995881f6a82d190fc18",
      "parents": [
        "9a2698d817121d1d74f90f6f8f88973c9a7d22cd",
        "f0084592e11b2f33b8e9684cbd2606eab5d92dd2"
      ],
      "author": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Mon Jan 25 17:39:12 2016"
      },
      "committer": {
        "name": "Ian Cordasco",
        "email": "sigmavirus24@users.noreply.github.com",
        "time": "Mon Jan 25 17:39:12 2016"
      },
      "message": "Merge pull request #58 from jayvdb/api_main_args\n\nAllow passing args to main()"
    }
  ],
  "next": "f0084592e11b2f33b8e9684cbd2606eab5d92dd2"
}
