Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-pyflakes for openSUSE:Factory
checked in at 2021-11-06 18:13:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pyflakes (Old)
and /work/SRC/openSUSE:Factory/.python-pyflakes.new.1890 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pyflakes"
Sat Nov 6 18:13:21 2021 rev:28 rq:929017 version:2.4.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pyflakes/python-pyflakes.changes
2021-05-12 19:31:26.259232597 +0200
+++
/work/SRC/openSUSE:Factory/.python-pyflakes.new.1890/python-pyflakes.changes
2021-11-06 18:13:40.468748599 +0100
@@ -1,0 +2,9 @@
+Wed Nov 3 09:33:27 UTC 2021 - [email protected]
+
+- version update to 2.4.0
+ - Remove unused tracing code (``traceTree``)
+ - Add support for ``match`` statement
+ - Detect ``typing`` module attributes when imported with ``import ... as ...``
+- %check: use %pyunittest rpm macro
+
+-------------------------------------------------------------------
Old:
----
pyflakes-2.3.1.tar.gz
New:
----
pyflakes-2.4.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pyflakes.spec ++++++
--- /var/tmp/diff_new_pack.jUVrlC/_old 2021-11-06 18:13:41.116748939 +0100
+++ /var/tmp/diff_new_pack.jUVrlC/_new 2021-11-06 18:13:41.116748939 +0100
@@ -17,9 +17,8 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%bcond_without test
Name: python-pyflakes
-Version: 2.3.1
+Version: 2.4.0
Release: 0
Summary: Passive checker of Python programs
License: MIT
@@ -52,10 +51,8 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}/pyflakes/
%python_clone -a %{buildroot}%{_bindir}/pyflakes
-%if %{with test}
%check
-%python_exec setup.py test
-%endif
+%pyunittest discover -v
%post
%python_install_alternative pyflakes
++++++ pyflakes-2.3.1.tar.gz -> pyflakes-2.4.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/NEWS.rst new/pyflakes-2.4.0/NEWS.rst
--- old/pyflakes-2.3.1/NEWS.rst 2021-03-24 17:31:00.000000000 +0100
+++ new/pyflakes-2.4.0/NEWS.rst 2021-10-06 22:38:52.000000000 +0200
@@ -1,3 +1,9 @@
+2.4.0 (2021-10-06)
+
+- Remove unused tracing code (``traceTree``)
+- Add support for ``match`` statement
+- Detect ``typing`` module attributes when imported with ``import ... as ...``
+
2.3.1 (2021-03-24)
- Fix regression in 2.3.0: type annotations no longer redefine imports
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/PKG-INFO new/pyflakes-2.4.0/PKG-INFO
--- old/pyflakes-2.3.1/PKG-INFO 2021-03-24 17:32:11.632774800 +0100
+++ new/pyflakes-2.4.0/PKG-INFO 2021-10-06 22:39:36.321480800 +0200
@@ -1,101 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
Name: pyflakes
-Version: 2.3.1
+Version: 2.4.0
Summary: passive checker of Python programs
Home-page: https://github.com/PyCQA/pyflakes
Author: A lot of people
Author-email: [email protected]
License: MIT
-Description: ========
- Pyflakes
- ========
-
- A simple program which checks Python source files for errors.
-
- Pyflakes analyzes programs and detects various errors. It works by
- parsing the source file, not importing it, so it is safe to use on
- modules with side effects. It's also much faster.
-
- It is `available on PyPI <https://pypi.org/project/pyflakes/>`_
- and it supports all active versions of Python: 2.7 and 3.4 to 3.8.
-
-
-
- Installation
- ------------
-
- It can be installed with::
-
- $ pip install --upgrade pyflakes
-
-
- Useful tips:
-
- * Be sure to install it for a version of Python which is compatible
- with your codebase: for Python 2, ``pip2 install pyflakes`` and for
- Python3, ``pip3 install pyflakes``.
-
- * You can also invoke Pyflakes with ``python3 -m pyflakes .`` or
- ``python2 -m pyflakes .`` if you have it installed for both versions.
-
- * If you require more options and more flexibility, you could give a
- look to Flake8_ too.
-
-
- Design Principles
- -----------------
- Pyflakes makes a simple promise: it will never complain about style,
- and it will try very, very hard to never emit false positives.
-
- Pyflakes is also faster than Pylint_
- or Pychecker_. This is
- largely because Pyflakes only examines the syntax tree of each file
- individually. As a consequence, Pyflakes is more limited in the
- types of things it can check.
-
- If you like Pyflakes but also want stylistic checks, you want
- flake8_, which combines
- Pyflakes with style checks against
- `PEP 8`_ and adds
- per-project configuration ability.
-
-
- Mailing-list
- ------------
-
- Share your feedback and ideas: `subscribe to the mailing-list
- <https://mail.python.org/mailman/listinfo/code-quality>`_
-
- Contributing
- ------------
-
- Issues are tracked on `GitHub
<https://github.com/PyCQA/pyflakes/issues>`_.
-
- Patches may be submitted via a `GitHub pull request`_ or via the
mailing list
- if you prefer. If you are comfortable doing so, please `rebase your
changes`_
- so they may be applied to master with a fast-forward merge, and each
commit is
- a coherent unit of work with a well-written log message. If you are
not
- comfortable with this rebase workflow, the project maintainers will be
happy to
- rebase your commits for you.
-
- All changes should include tests and pass flake8_.
-
- .. image:: https://github.com/PyCQA/pyflakes/workflows/Test/badge.svg
- :target: https://github.com/PyCQA/pyflakes/actions
- :alt: GitHub Actions build status
-
- .. _Pylint: https://www.pylint.org/
- .. _flake8: https://pypi.org/project/flake8/
- .. _`PEP 8`: https://www.python.org/dev/peps/pep-0008/
- .. _Pychecker: http://pychecker.sourceforge.net/
- .. _`rebase your changes`:
https://git-scm.com/book/en/v2/Git-Branching-Rebasing
- .. _`GitHub pull request`: https://github.com/PyCQA/pyflakes/pulls
-
- Changelog
- ---------
-
- Please see `NEWS.rst
<https://github.com/PyCQA/pyflakes/blob/master/NEWS.rst>`_.
-
Platform: UNKNOWN
Classifier: Development Status :: 6 - Mature
Classifier: Environment :: Console
@@ -115,3 +25,94 @@
Classifier: Topic :: Software Development
Classifier: Topic :: Utilities
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
+License-File: LICENSE
+
+========
+Pyflakes
+========
+
+A simple program which checks Python source files for errors.
+
+Pyflakes analyzes programs and detects various errors. It works by
+parsing the source file, not importing it, so it is safe to use on
+modules with side effects. It's also much faster.
+
+It is `available on PyPI <https://pypi.org/project/pyflakes/>`_
+and it supports all active versions of Python: 2.7 and 3.4 to 3.8.
+
+
+
+Installation
+------------
+
+It can be installed with::
+
+ $ pip install --upgrade pyflakes
+
+
+Useful tips:
+
+* Be sure to install it for a version of Python which is compatible
+ with your codebase: for Python 2, ``pip2 install pyflakes`` and for
+ Python3, ``pip3 install pyflakes``.
+
+* You can also invoke Pyflakes with ``python3 -m pyflakes .`` or
+ ``python2 -m pyflakes .`` if you have it installed for both versions.
+
+* If you require more options and more flexibility, you could give a
+ look to Flake8_ too.
+
+
+Design Principles
+-----------------
+Pyflakes makes a simple promise: it will never complain about style,
+and it will try very, very hard to never emit false positives.
+
+Pyflakes is also faster than Pylint_. This is
+largely because Pyflakes only examines the syntax tree of each file
+individually. As a consequence, Pyflakes is more limited in the
+types of things it can check.
+
+If you like Pyflakes but also want stylistic checks, you want
+flake8_, which combines
+Pyflakes with style checks against
+`PEP 8`_ and adds
+per-project configuration ability.
+
+
+Mailing-list
+------------
+
+Share your feedback and ideas: `subscribe to the mailing-list
+<https://mail.python.org/mailman/listinfo/code-quality>`_
+
+Contributing
+------------
+
+Issues are tracked on `GitHub <https://github.com/PyCQA/pyflakes/issues>`_.
+
+Patches may be submitted via a `GitHub pull request`_ or via the mailing list
+if you prefer. If you are comfortable doing so, please `rebase your changes`_
+so they may be applied to master with a fast-forward merge, and each commit is
+a coherent unit of work with a well-written log message. If you are not
+comfortable with this rebase workflow, the project maintainers will be happy to
+rebase your commits for you.
+
+All changes should include tests and pass flake8_.
+
+.. image:: https://github.com/PyCQA/pyflakes/workflows/Test/badge.svg
+ :target: https://github.com/PyCQA/pyflakes/actions
+ :alt: GitHub Actions build status
+
+.. _Pylint: https://www.pylint.org/
+.. _flake8: https://pypi.org/project/flake8/
+.. _`PEP 8`: https://www.python.org/dev/peps/pep-0008/
+.. _`rebase your changes`:
https://git-scm.com/book/en/v2/Git-Branching-Rebasing
+.. _`GitHub pull request`: https://github.com/PyCQA/pyflakes/pulls
+
+Changelog
+---------
+
+Please see `NEWS.rst
<https://github.com/PyCQA/pyflakes/blob/master/NEWS.rst>`_.
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/README.rst
new/pyflakes-2.4.0/README.rst
--- old/pyflakes-2.3.1/README.rst 2021-03-24 17:30:16.000000000 +0100
+++ new/pyflakes-2.4.0/README.rst 2021-10-06 01:27:26.000000000 +0200
@@ -39,8 +39,7 @@
Pyflakes makes a simple promise: it will never complain about style,
and it will try very, very hard to never emit false positives.
-Pyflakes is also faster than Pylint_
-or Pychecker_. This is
+Pyflakes is also faster than Pylint_. This is
largely because Pyflakes only examines the syntax tree of each file
individually. As a consequence, Pyflakes is more limited in the
types of things it can check.
@@ -79,7 +78,6 @@
.. _Pylint: https://www.pylint.org/
.. _flake8: https://pypi.org/project/flake8/
.. _`PEP 8`: https://www.python.org/dev/peps/pep-0008/
-.. _Pychecker: http://pychecker.sourceforge.net/
.. _`rebase your changes`:
https://git-scm.com/book/en/v2/Git-Branching-Rebasing
.. _`GitHub pull request`: https://github.com/PyCQA/pyflakes/pulls
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/pyflakes/__init__.py
new/pyflakes-2.4.0/pyflakes/__init__.py
--- old/pyflakes-2.3.1/pyflakes/__init__.py 2021-03-24 17:31:12.000000000
+0100
+++ new/pyflakes-2.4.0/pyflakes/__init__.py 2021-10-06 22:38:52.000000000
+0200
@@ -1 +1 @@
-__version__ = '2.3.1'
+__version__ = '2.4.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/pyflakes/checker.py
new/pyflakes-2.4.0/pyflakes/checker.py
--- old/pyflakes-2.3.1/pyflakes/checker.py 2021-03-24 17:30:16.000000000
+0100
+++ new/pyflakes-2.4.0/pyflakes/checker.py 2021-10-06 01:27:26.000000000
+0200
@@ -275,7 +275,8 @@
yield field
elif isinstance(field, list):
for item in field:
- yield item
+ if isinstance(item, ast.AST):
+ yield item
def convert_to_value(item):
@@ -691,6 +692,8 @@
return node.id
if hasattr(node, 'name'): # an ExceptHandler node
return node.name
+ if hasattr(node, 'rest'): # a MatchMapping node
+ return node.rest
TYPING_MODULES = frozenset(('typing', 'typing_extensions'))
@@ -717,6 +720,16 @@
return False
+ def _module_scope_is_typing(name):
+ for scope in reversed(scope_stack):
+ if name in scope:
+ return (
+ isinstance(scope[name], Importation) and
+ scope[name].fullName in TYPING_MODULES
+ )
+
+ return False
+
return (
(
isinstance(node, ast.Name) and
@@ -724,7 +737,7 @@
) or (
isinstance(node, ast.Attribute) and
isinstance(node.value, ast.Name) and
- node.value.id in TYPING_MODULES and
+ _module_scope_is_typing(node.value.id) and
is_name_match_fn(node.attr)
)
)
@@ -868,7 +881,6 @@
nodeDepth = 0
offset = None
- traceTree = False
_in_annotation = AnnotationState.NONE
_in_deferred = False
@@ -1393,8 +1405,6 @@
if self.offset and getattr(node, 'lineno', None) is not None:
node.lineno += self.offset[0]
node.col_offset += self.offset[1]
- if self.traceTree:
- print(' ' * self.nodeDepth + node.__class__.__name__)
if self.futuresAllowed and not (isinstance(node, ast.ImportFrom) or
self.isDocstring(node)):
self.futuresAllowed = False
@@ -1406,8 +1416,6 @@
handler(node)
finally:
self.nodeDepth -= 1
- if self.traceTree:
- print(' ' * self.nodeDepth + 'end ' + node.__class__.__name__)
_getDoctestExamples = doctest.DocTestParser().get_examples
@@ -2383,3 +2391,12 @@
left = right
self.handleChildren(node)
+
+ MATCH = MATCH_CASE = MATCHCLASS = MATCHOR = MATCHSEQUENCE = handleChildren
+ MATCHSINGLETON = MATCHVALUE = handleChildren
+
+ def _match_target(self, node):
+ self.handleNodeStore(node)
+ self.handleChildren(node)
+
+ MATCHAS = MATCHMAPPING = MATCHSTAR = _match_target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/pyflakes/test/test_api.py
new/pyflakes-2.4.0/pyflakes/test/test_api.py
--- old/pyflakes-2.3.1/pyflakes/test/test_api.py 2021-03-24
17:30:16.000000000 +0100
+++ new/pyflakes-2.4.0/pyflakes/test/test_api.py 2021-10-06
01:27:26.000000000 +0200
@@ -441,7 +441,7 @@
evaluate(source)
except SyntaxError:
e = sys.exc_info()[1]
- if not PYPY:
+ if not PYPY and sys.version_info < (3, 10):
self.assertTrue(e.text.count('\n') > 1)
else:
self.fail()
@@ -449,10 +449,17 @@
with self.makeTempFile(source) as sourcePath:
if PYPY:
message = 'end of file (EOF) while scanning triple-quoted
string literal'
+ elif sys.version_info >= (3, 10):
+ message = 'unterminated triple-quoted string literal (detected
at line 8)' # noqa: E501
else:
message = 'invalid syntax'
- column = 8 if sys.version_info >= (3, 8) else 11
+ if sys.version_info >= (3, 10):
+ column = 12
+ elif sys.version_info >= (3, 8):
+ column = 8
+ else:
+ column = 11
self.assertHasErrors(
sourcePath,
["""\
@@ -468,21 +475,25 @@
"""
with self.makeTempFile("def foo(") as sourcePath:
if PYPY:
- result = """\
-%s:1:7: parenthesis is never closed
-def foo(
- ^
-""" % (sourcePath,)
+ msg = 'parenthesis is never closed'
+ elif sys.version_info >= (3, 10):
+ msg = "'(' was never closed"
else:
- result = """\
-%s:1:9: unexpected EOF while parsing
-def foo(
- ^
-""" % (sourcePath,)
+ msg = 'unexpected EOF while parsing'
- self.assertHasErrors(
- sourcePath,
- [result])
+ if PYPY:
+ column = 7
+ elif sys.version_info >= (3, 10):
+ column = 8
+ else:
+ column = 9
+
+ spaces = ' ' * (column - 1)
+ expected = '{}:1:{}: {}\ndef foo(\n{}^\n'.format(
+ sourcePath, column, msg, spaces
+ )
+
+ self.assertHasErrors(sourcePath, [expected])
def test_eofSyntaxErrorWithTab(self):
"""
@@ -515,6 +526,8 @@
if ERROR_HAS_LAST_LINE:
if PYPY:
column = 7
+ elif sys.version_info >= (3, 10):
+ column = 18
elif sys.version_info >= (3, 9):
column = 21
elif sys.version_info >= (3, 8):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/pyflakes/test/test_match.py
new/pyflakes-2.4.0/pyflakes/test/test_match.py
--- old/pyflakes-2.3.1/pyflakes/test/test_match.py 1970-01-01
01:00:00.000000000 +0100
+++ new/pyflakes-2.4.0/pyflakes/test/test_match.py 2021-10-06
01:27:26.000000000 +0200
@@ -0,0 +1,83 @@
+from sys import version_info
+
+from pyflakes.test.harness import TestCase, skipIf
+
+
+@skipIf(version_info < (3, 10), "Python >= 3.10 only")
+class TestMatch(TestCase):
+ def test_match_bindings(self):
+ self.flakes('''
+ def f():
+ x = 1
+ match x:
+ case 1 as y:
+ print(f'matched as {y}')
+ ''')
+ self.flakes('''
+ def f():
+ x = [1, 2, 3]
+ match x:
+ case [1, y, 3]:
+ print(f'matched {y}')
+ ''')
+ self.flakes('''
+ def f():
+ x = {'foo': 1}
+ match x:
+ case {'foo': y}:
+ print(f'matched {y}')
+ ''')
+
+ def test_match_pattern_matched_class(self):
+ self.flakes('''
+ from a import B
+
+ match 1:
+ case B(x=1) as y:
+ print(f'matched {y}')
+ ''')
+ self.flakes('''
+ from a import B
+
+ match 1:
+ case B(a, x=z) as y:
+ print(f'matched {y} {a} {z}')
+ ''')
+
+ def test_match_placeholder(self):
+ self.flakes('''
+ def f():
+ match 1:
+ case _:
+ print('catchall!')
+ ''')
+
+ def test_match_singleton(self):
+ self.flakes('''
+ match 1:
+ case True:
+ print('true')
+ ''')
+
+ def test_match_or_pattern(self):
+ self.flakes('''
+ match 1:
+ case 1 | 2:
+ print('one or two')
+ ''')
+
+ def test_match_star(self):
+ self.flakes('''
+ x = [1, 2, 3]
+ match x:
+ case [1, *y]:
+ print(f'captured: {y}')
+ ''')
+
+ def test_match_double_star(self):
+ self.flakes('''
+ x = {'foo': 'bar', 'baz': 'womp'}
+ match x:
+ case {'foo': k1, **rest}:
+ print(f'{k1=} {rest=}')
+ ''')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/pyflakes-2.3.1/pyflakes/test/test_type_annotations.py
new/pyflakes-2.4.0/pyflakes/test/test_type_annotations.py
--- old/pyflakes-2.3.1/pyflakes/test/test_type_annotations.py 2021-03-24
17:30:16.000000000 +0100
+++ new/pyflakes-2.4.0/pyflakes/test/test_type_annotations.py 2021-10-06
01:27:26.000000000 +0200
@@ -121,6 +121,23 @@
def f(self, x): return x
""")
+ def test_aliased_import(self):
+ """Detect when typing is imported as another name"""
+ self.flakes("""
+ import typing as t
+
+ @t.overload
+ def f(s): # type: (None) -> None
+ pass
+
+ @t.overload
+ def f(s): # type: (int) -> int
+ pass
+
+ def f(s):
+ return s
+ """)
+
def test_not_a_typing_overload(self):
"""regression test for @typing.overload detection bug in 2.1.0"""
self.flakes("""
@@ -531,7 +548,7 @@
def test_type_cast_literal_str_to_str(self):
# Checks that our handling of quoted type annotations in the first
# argument to `cast` doesn't cause issues when (only) the _second_
- # argument is a literal str which looks a bit like a type annoation.
+ # argument is a literal str which looks a bit like a type annotation.
self.flakes("""
from typing import cast
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/pyflakes.egg-info/PKG-INFO
new/pyflakes-2.4.0/pyflakes.egg-info/PKG-INFO
--- old/pyflakes-2.3.1/pyflakes.egg-info/PKG-INFO 2021-03-24
17:32:11.000000000 +0100
+++ new/pyflakes-2.4.0/pyflakes.egg-info/PKG-INFO 2021-10-06
22:39:36.000000000 +0200
@@ -1,101 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
Name: pyflakes
-Version: 2.3.1
+Version: 2.4.0
Summary: passive checker of Python programs
Home-page: https://github.com/PyCQA/pyflakes
Author: A lot of people
Author-email: [email protected]
License: MIT
-Description: ========
- Pyflakes
- ========
-
- A simple program which checks Python source files for errors.
-
- Pyflakes analyzes programs and detects various errors. It works by
- parsing the source file, not importing it, so it is safe to use on
- modules with side effects. It's also much faster.
-
- It is `available on PyPI <https://pypi.org/project/pyflakes/>`_
- and it supports all active versions of Python: 2.7 and 3.4 to 3.8.
-
-
-
- Installation
- ------------
-
- It can be installed with::
-
- $ pip install --upgrade pyflakes
-
-
- Useful tips:
-
- * Be sure to install it for a version of Python which is compatible
- with your codebase: for Python 2, ``pip2 install pyflakes`` and for
- Python3, ``pip3 install pyflakes``.
-
- * You can also invoke Pyflakes with ``python3 -m pyflakes .`` or
- ``python2 -m pyflakes .`` if you have it installed for both versions.
-
- * If you require more options and more flexibility, you could give a
- look to Flake8_ too.
-
-
- Design Principles
- -----------------
- Pyflakes makes a simple promise: it will never complain about style,
- and it will try very, very hard to never emit false positives.
-
- Pyflakes is also faster than Pylint_
- or Pychecker_. This is
- largely because Pyflakes only examines the syntax tree of each file
- individually. As a consequence, Pyflakes is more limited in the
- types of things it can check.
-
- If you like Pyflakes but also want stylistic checks, you want
- flake8_, which combines
- Pyflakes with style checks against
- `PEP 8`_ and adds
- per-project configuration ability.
-
-
- Mailing-list
- ------------
-
- Share your feedback and ideas: `subscribe to the mailing-list
- <https://mail.python.org/mailman/listinfo/code-quality>`_
-
- Contributing
- ------------
-
- Issues are tracked on `GitHub
<https://github.com/PyCQA/pyflakes/issues>`_.
-
- Patches may be submitted via a `GitHub pull request`_ or via the
mailing list
- if you prefer. If you are comfortable doing so, please `rebase your
changes`_
- so they may be applied to master with a fast-forward merge, and each
commit is
- a coherent unit of work with a well-written log message. If you are
not
- comfortable with this rebase workflow, the project maintainers will be
happy to
- rebase your commits for you.
-
- All changes should include tests and pass flake8_.
-
- .. image:: https://github.com/PyCQA/pyflakes/workflows/Test/badge.svg
- :target: https://github.com/PyCQA/pyflakes/actions
- :alt: GitHub Actions build status
-
- .. _Pylint: https://www.pylint.org/
- .. _flake8: https://pypi.org/project/flake8/
- .. _`PEP 8`: https://www.python.org/dev/peps/pep-0008/
- .. _Pychecker: http://pychecker.sourceforge.net/
- .. _`rebase your changes`:
https://git-scm.com/book/en/v2/Git-Branching-Rebasing
- .. _`GitHub pull request`: https://github.com/PyCQA/pyflakes/pulls
-
- Changelog
- ---------
-
- Please see `NEWS.rst
<https://github.com/PyCQA/pyflakes/blob/master/NEWS.rst>`_.
-
Platform: UNKNOWN
Classifier: Development Status :: 6 - Mature
Classifier: Environment :: Console
@@ -115,3 +25,94 @@
Classifier: Topic :: Software Development
Classifier: Topic :: Utilities
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
+License-File: LICENSE
+
+========
+Pyflakes
+========
+
+A simple program which checks Python source files for errors.
+
+Pyflakes analyzes programs and detects various errors. It works by
+parsing the source file, not importing it, so it is safe to use on
+modules with side effects. It's also much faster.
+
+It is `available on PyPI <https://pypi.org/project/pyflakes/>`_
+and it supports all active versions of Python: 2.7 and 3.4 to 3.8.
+
+
+
+Installation
+------------
+
+It can be installed with::
+
+ $ pip install --upgrade pyflakes
+
+
+Useful tips:
+
+* Be sure to install it for a version of Python which is compatible
+ with your codebase: for Python 2, ``pip2 install pyflakes`` and for
+ Python3, ``pip3 install pyflakes``.
+
+* You can also invoke Pyflakes with ``python3 -m pyflakes .`` or
+ ``python2 -m pyflakes .`` if you have it installed for both versions.
+
+* If you require more options and more flexibility, you could give a
+ look to Flake8_ too.
+
+
+Design Principles
+-----------------
+Pyflakes makes a simple promise: it will never complain about style,
+and it will try very, very hard to never emit false positives.
+
+Pyflakes is also faster than Pylint_. This is
+largely because Pyflakes only examines the syntax tree of each file
+individually. As a consequence, Pyflakes is more limited in the
+types of things it can check.
+
+If you like Pyflakes but also want stylistic checks, you want
+flake8_, which combines
+Pyflakes with style checks against
+`PEP 8`_ and adds
+per-project configuration ability.
+
+
+Mailing-list
+------------
+
+Share your feedback and ideas: `subscribe to the mailing-list
+<https://mail.python.org/mailman/listinfo/code-quality>`_
+
+Contributing
+------------
+
+Issues are tracked on `GitHub <https://github.com/PyCQA/pyflakes/issues>`_.
+
+Patches may be submitted via a `GitHub pull request`_ or via the mailing list
+if you prefer. If you are comfortable doing so, please `rebase your changes`_
+so they may be applied to master with a fast-forward merge, and each commit is
+a coherent unit of work with a well-written log message. If you are not
+comfortable with this rebase workflow, the project maintainers will be happy to
+rebase your commits for you.
+
+All changes should include tests and pass flake8_.
+
+.. image:: https://github.com/PyCQA/pyflakes/workflows/Test/badge.svg
+ :target: https://github.com/PyCQA/pyflakes/actions
+ :alt: GitHub Actions build status
+
+.. _Pylint: https://www.pylint.org/
+.. _flake8: https://pypi.org/project/flake8/
+.. _`PEP 8`: https://www.python.org/dev/peps/pep-0008/
+.. _`rebase your changes`:
https://git-scm.com/book/en/v2/Git-Branching-Rebasing
+.. _`GitHub pull request`: https://github.com/PyCQA/pyflakes/pulls
+
+Changelog
+---------
+
+Please see `NEWS.rst
<https://github.com/PyCQA/pyflakes/blob/master/NEWS.rst>`_.
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/pyflakes-2.3.1/pyflakes.egg-info/SOURCES.txt
new/pyflakes-2.4.0/pyflakes.egg-info/SOURCES.txt
--- old/pyflakes-2.3.1/pyflakes.egg-info/SOURCES.txt 2021-03-24
17:32:11.000000000 +0100
+++ new/pyflakes-2.4.0/pyflakes.egg-info/SOURCES.txt 2021-10-06
22:39:36.000000000 +0200
@@ -29,6 +29,7 @@
pyflakes/test/test_doctests.py
pyflakes/test/test_imports.py
pyflakes/test/test_is_literal.py
+pyflakes/test/test_match.py
pyflakes/test/test_other.py
pyflakes/test/test_return_with_arguments_inside_generator.py
pyflakes/test/test_type_annotations.py