Hello community, here is the log from the commit of package python3-pyflakes for openSUSE:Factory checked in at 2017-01-16 11:15:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python3-pyflakes (Old) and /work/SRC/openSUSE:Factory/.python3-pyflakes.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python3-pyflakes" Changes: -------- --- /work/SRC/openSUSE:Factory/python3-pyflakes/python3-pyflakes.changes 2017-01-09 11:01:36.333863988 +0100 +++ /work/SRC/openSUSE:Factory/.python3-pyflakes.new/python3-pyflakes.changes 2017-01-16 11:15:25.180631493 +0100 @@ -1,0 +2,8 @@ +Sun Jan 15 03:33:48 UTC 2017 - arun@gmx.de + +- update to version 1.5.0: + * Change formatting of ImportStarMessage to be consistent with other + errors + * Support PEP 498 "f-strings" + +------------------------------------------------------------------- Old: ---- pyflakes-1.4.0.tar.gz New: ---- pyflakes-1.5.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python3-pyflakes.spec ++++++ --- /var/tmp/diff_new_pack.riXQu8/_old 2017-01-16 11:15:25.604571389 +0100 +++ /var/tmp/diff_new_pack.riXQu8/_new 2017-01-16 11:15:25.604571389 +0100 @@ -17,7 +17,7 @@ Name: python3-pyflakes -Version: 1.4.0 +Version: 1.5.0 Release: 0 Url: https://github.com/pyflakes/pyflakes Summary: Passive checker of Python 3 programs ++++++ pyflakes-1.4.0.tar.gz -> pyflakes-1.5.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyflakes-1.4.0/NEWS.txt new/pyflakes-1.5.0/NEWS.txt --- old/pyflakes-1.4.0/NEWS.txt 2016-12-30 16:13:09.000000000 +0100 +++ new/pyflakes-1.5.0/NEWS.txt 2017-01-10 02:00:33.000000000 +0100 @@ -1,3 +1,6 @@ +1.5.0 (2017-01-09) + - Enable support for PEP 526 annotated assignments + 1.4.0 (2016-12-30): - Change formatting of ImportStarMessage to be consistent with other errors - Support PEP 498 "f-strings" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyflakes-1.4.0/PKG-INFO new/pyflakes-1.5.0/PKG-INFO --- old/pyflakes-1.4.0/PKG-INFO 2016-12-30 16:17:36.000000000 +0100 +++ new/pyflakes-1.5.0/PKG-INFO 2017-01-10 02:01:20.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: pyflakes -Version: 1.4.0 +Version: 1.5.0 Summary: passive checker of Python programs Home-page: https://github.com/PyCQA/pyflakes Author: A lot of people diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyflakes-1.4.0/pyflakes/__init__.py new/pyflakes-1.5.0/pyflakes/__init__.py --- old/pyflakes-1.4.0/pyflakes/__init__.py 2016-12-30 16:14:08.000000000 +0100 +++ new/pyflakes-1.5.0/pyflakes/__init__.py 2017-01-10 02:00:48.000000000 +0100 @@ -1 +1 @@ -__version__ = '1.4.0' +__version__ = '1.5.0' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyflakes-1.4.0/pyflakes/checker.py new/pyflakes-1.5.0/pyflakes/checker.py --- old/pyflakes-1.4.0/pyflakes/checker.py 2016-12-30 16:09:43.000000000 +0100 +++ new/pyflakes-1.5.0/pyflakes/checker.py 2017-01-10 01:59:55.000000000 +0100 @@ -1335,3 +1335,21 @@ del self.scope[node.name] except KeyError: pass + + def ANNASSIGN(self, node): + """ + Annotated assignments don't have annotations evaluated on function + scope, hence the custom implementation. + + See: PEP 526. + """ + if node.value: + # Only bind the *targets* if the assignment has a value. + # Otherwise it's not really ast.Store and shouldn't silence + # UndefinedLocal warnings. + self.handleNode(node.target, node) + if not isinstance(self.scope, FunctionScope): + self.handleNode(node.annotation, node) + if node.value: + # If the assignment has value, handle the *value* now. + self.handleNode(node.value, node) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyflakes-1.4.0/pyflakes/test/test_other.py new/pyflakes-1.5.0/pyflakes/test/test_other.py --- old/pyflakes-1.4.0/pyflakes/test/test_other.py 2016-12-30 16:09:43.000000000 +0100 +++ new/pyflakes-1.5.0/pyflakes/test/test_other.py 2017-01-10 01:59:55.000000000 +0100 @@ -1808,3 +1808,64 @@ mom = 'mom' f'{hi} {mom}' ''') + + @skipIf(version_info < (3, 6), 'new in Python 3.6') + def test_variable_annotations(self): + self.flakes(''' + name: str + age: int + ''') + self.flakes(''' + name: str = 'Bob' + age: int = 18 + ''') + self.flakes(''' + class C: + name: str + age: int + ''') + self.flakes(''' + class C: + name: str = 'Bob' + age: int = 18 + ''') + self.flakes(''' + def f(): + name: str + age: int + ''') + self.flakes(''' + def f(): + name: str = 'Bob' + age: int = 18 + foo: not_a_real_type = None + ''', m.UnusedVariable, m.UnusedVariable, m.UnusedVariable) + self.flakes(''' + def f(): + name: str + print(name) + ''', m.UndefinedName) + self.flakes(''' + foo: not_a_real_type + ''', m.UndefinedName) + self.flakes(''' + foo: not_a_real_type = None + ''', m.UndefinedName) + self.flakes(''' + class C: + foo: not_a_real_type + ''', m.UndefinedName) + self.flakes(''' + class C: + foo: not_a_real_type = None + ''', m.UndefinedName) + self.flakes(''' + def f(): + class C: + foo: not_a_real_type + ''', m.UndefinedName) + self.flakes(''' + def f(): + class C: + foo: not_a_real_type = None + ''', m.UndefinedName) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyflakes-1.4.0/pyflakes.egg-info/PKG-INFO new/pyflakes-1.5.0/pyflakes.egg-info/PKG-INFO --- old/pyflakes-1.4.0/pyflakes.egg-info/PKG-INFO 2016-12-30 16:17:34.000000000 +0100 +++ new/pyflakes-1.5.0/pyflakes.egg-info/PKG-INFO 2017-01-10 02:01:19.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: pyflakes -Version: 1.4.0 +Version: 1.5.0 Summary: passive checker of Python programs Home-page: https://github.com/PyCQA/pyflakes Author: A lot of people