Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-flake8-pep3101 for 
openSUSE:Factory checked in at 2022-10-10 18:46:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-flake8-pep3101 (Old)
 and      /work/SRC/openSUSE:Factory/.python-flake8-pep3101.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-flake8-pep3101"

Mon Oct 10 18:46:52 2022 rev:3 rq:1008957 version:2.0.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-flake8-pep3101/python-flake8-pep3101.changes  
    2020-04-16 23:05:03.995771627 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-flake8-pep3101.new.2275/python-flake8-pep3101.changes
    2022-10-10 18:47:17.207221297 +0200
@@ -1,0 +2,16 @@
+Sat Oct  8 16:43:35 UTC 2022 - Daniel Garcia <daniel.gar...@suse.com>
+
+- Update to 2.0.0:
+  * Update dependencies. [gforcada]
+  * Test the code on GitHub actions. [gforcada]
+  * Drop python 2.7 and only support python 3.7+. [gforcada]
+  * Use linters and formatters to keep code sane and beautiful. [gforcada]
+  * Simplify the amount of code to write a test. [gforcada]
+- Delete 29.patch, not needed anymore
+
+-------------------------------------------------------------------
+Tue Oct  4 16:20:28 UTC 2022 - Daniel Garcia <daniel.gar...@suse.com>
+
+- Add 29.patch to fix tests
+
+-------------------------------------------------------------------

Old:
----
  flake8-pep3101-1.3.0.tar.gz

New:
----
  flake8-pep3101-2.0.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-flake8-pep3101.spec ++++++
--- /var/tmp/diff_new_pack.G3iRGc/_old  2022-10-10 18:47:17.635222228 +0200
+++ /var/tmp/diff_new_pack.G3iRGc/_new  2022-10-10 18:47:17.643222246 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-flake8-pep3101
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-flake8-pep3101
-Version:        1.3.0
+Version:        2.0.0
 Release:        0
 Summary:        Checks for old string formatting
 License:        GPL-2.0-only
@@ -41,7 +41,7 @@
 Checks for old string formatting.
 
 %prep
-%setup -q -n flake8-pep3101-%{version}
+%autosetup -p1 -n flake8-pep3101-%{version}
 
 %build
 %python_build
@@ -55,7 +55,7 @@
 
 %files %{python_files}
 %doc CHANGES.rst README.rst
-%license LICENSE LICENSE.rst
+%license LICENSE
 %{python_sitelib}/*
 
 %changelog

++++++ flake8-pep3101-1.3.0.tar.gz -> flake8-pep3101-2.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/CHANGES.rst 
new/flake8-pep3101-2.0.0/CHANGES.rst
--- old/flake8-pep3101-1.3.0/CHANGES.rst        2019-12-15 00:32:11.000000000 
+0100
+++ new/flake8-pep3101-2.0.0/CHANGES.rst        2022-10-08 18:13:28.000000000 
+0200
@@ -3,6 +3,19 @@
 Changelog
 =========
 
+2.0.0 (2022-10-08)
+------------------
+
+- Update dependencies. [gforcada]
+
+- Test the code on GitHub actions. [gforcada]
+
+- Drop python 2.7 and only support python 3.7+. [gforcada]
+
+- Use linters and formatters to keep code sane and beautiful. [gforcada]
+
+- Simplify the amount of code to write a test. [gforcada]
+
 1.3.0 (2019-12-15)
 ------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/LICENSE.rst 
new/flake8-pep3101-2.0.0/LICENSE.rst
--- old/flake8-pep3101-1.3.0/LICENSE.rst        2019-12-15 00:32:11.000000000 
+0100
+++ new/flake8-pep3101-2.0.0/LICENSE.rst        1970-01-01 01:00:00.000000000 
+0100
@@ -1,17 +0,0 @@
-.. -*- coding: utf-8 -*-
-
-flake8-pep3101 Copyright 2015, Gil Forcada
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License version 2
-as published by the Free Software Foundation.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-MA 02111-1307 USA.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/MANIFEST.in 
new/flake8-pep3101-2.0.0/MANIFEST.in
--- old/flake8-pep3101-1.3.0/MANIFEST.in        2019-12-15 00:32:11.000000000 
+0100
+++ new/flake8-pep3101-2.0.0/MANIFEST.in        1970-01-01 01:00:00.000000000 
+0100
@@ -1,3 +0,0 @@
-include MANIFEST.in LICENSE *.rst *.py *.ini
-exclude .installed.cfg .coveragerc *.pyc
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/PKG-INFO 
new/flake8-pep3101-2.0.0/PKG-INFO
--- old/flake8-pep3101-1.3.0/PKG-INFO   2019-12-15 00:32:11.000000000 +0100
+++ new/flake8-pep3101-2.0.0/PKG-INFO   2022-10-08 18:13:29.138121800 +0200
@@ -1,178 +1,204 @@
 Metadata-Version: 2.1
 Name: flake8-pep3101
-Version: 1.3.0
+Version: 2.0.0
 Summary: Checks for old string formatting.
 Home-page: https://github.com/gforcada/flake8-pep3101
 Author: Gil Forcada
 Author-email: gil.gn...@gmail.com
 License: GPL version 2
-Description: .. -*- coding: utf-8 -*-
-        
-        .. image:: 
https://travis-ci.org/gforcada/flake8-pep3101.svg?branch=master
-           :target: https://travis-ci.org/gforcada/flake8-pep3101
-        
-        .. image:: 
https://coveralls.io/repos/gforcada/flake8-pep3101/badge.svg?branch=master&service=github
-           :target: 
https://coveralls.io/github/gforcada/flake8-pep3101?branch=master
-        
-        Flake8 PEP 3101 plugin
-        ======================
-        Python has two string formatting options,
-        either the old percent operator or the new ``.format()`` string method.
-        
-        Being the new one more powerful, expressive and a drop-in replacement
-        over the old one.
-        
-        See `pyformat website`_ for lots of examples of old vs new formatting.
-        
-        For a more format definition see the `PEP 3101`_.
-        
-        This plugin is based on a python checker that was in 
`plone.recipe.codeanalysis`_.
-        
-        Install
-        -------
-        Install with pip::
-        
-            $ pip install flake8-pep3101
-        
-        Requirements
-        ------------
-        - Python 2.7, 3.5, 3.6
-        - flake8
-        
-        Extras
-        ------
-        If you want to check whether your new style formatting are correctly 
defined,
-        check `flake8-string-format`_ plugin.
-        
-        License
-        -------
-        GPL 2.0
-        
-        .. _`pyformat website`: https://pyformat.info
-        .. _`PEP 3101`: https://www.python.org/dev/peps/pep-3101
-        .. _`flake8-string-format`: 
https://pypi.python.org/pypi/flake8-string-format
-        .. _`plone.recipe.codeanalysis`: 
https://pypi.python.org/pypi/plone.recipe.codeanalysis
-        
-        .. -*- coding: utf-8 -*-
-        
-        Changelog
-        =========
-        
-        1.3.0 (2019-12-15)
-        ------------------
-        
-        - Warn about `"string %i" % 33` which was previously ignored.
-          Reported by @unformatt.
-          [gforcada]
-        
-        
-        1.2.1 (2018-04-05)
-        ------------------
-        
-        - Fix text on the error message.
-          [icemac]
-        
-        1.2 (2017-12-12)
-        ----------------
-        
-        - Handle when there are numbers in either side of the modulo operator.
-          [gforcada]
-        
-        1.1 (2017-05-12)
-        ----------------
-        
-        - Handle variable formatting (i.e. ``my_string_variable % ('one', 
'two', )``).
-          [gforcada]
-        
-        - Test againsta Python 3.6.
-          [gforcada]
-        
-        - Release universal wheels as well.
-          [gforcada]
-        
-        1.0 (2016-11-27)
-        ----------------
-        - Remove tox and use plain travis matrix to test.
-          [gforcada]
-        
-        - Test on python 2.7, python 3.5, pypy and pypy3.
-          [gforcada]
-        
-        - Require flake8 3.0.
-          [gforcada]
-        
-        - Use ast to analyze the code.
-          The regular expression used so far was mostly a hit or miss,
-          with each corner case making it even more difficult to read.
-          The new checker with ast is simple, elegant and so much easy to read.
-          [gforcada]
-        
-        0.6 (2016-10-29)
-        ----------------
-        - Handle edge case when a single or double quoted string
-          has another pair of quotes inside ('lala "lu" la') with
-          some % symbol inside as well.
-          [gforcada]
-        
-        0.5 (2016-10-26)
-        ----------------
-        - Add all possible string formatters.
-          [gforcada]
-        
-        - Fix extension to work with flake8 > 3.0.
-          [gforcada]
-        
-        - Fix crash when the % symbol was the last character of a line.
-          [gforcada]
-        
-        0.4 (2016-07-03)
-        ----------------
-        - Rename pep8 to pycodestyle.
-          [alefteris]
-        
-        - Add support for python 3.5.
-          [alefteris]
-        
-        - Add flake8 pypi classifier.
-          [alefteris]
-        
-        - Drop python 3.3 and 3.4 support (only testing it probably works just 
fine).
-          [gforcada]
-        
-        - Fix travis and coveralls to work properly with python 3.5.
-          [gforcada]
-        
-        0.3 (2016-03-05)
-        ----------------
-        - Allow stdin processing, this way text editor can pass input to 
flake8.
-          [mjacksonw]
-        
-        0.2 (2015-09-16)
-        ----------------
-        - 0.1 was a brown bag release.
-          [gforcada]
-        
-        0.1 (2015-09-16)
-        ----------------
-        - Initial release
-          [gforcada]
-        
-        - Create the flake8 plugin per se.
-          [gforcada]
-        
-Keywords: pep8 pycodestyle flake8 string formatting
+Keywords: pep8 pycodestyle flake8 python string formatting
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
+Classifier: Environment :: Console
 Classifier: Framework :: Flake8
+Classifier: Intended Audience :: Developers
 Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
+Classifier: Topic :: Software Development
 Classifier: Topic :: Software Development :: Quality Assurance
 Provides-Extra: test
+License-File: LICENSE
+
+
+.. -*- coding: utf-8 -*-
+
+.. image:: 
https://github.com/gforcada/flake8-pep3101/actions/workflows/testing.yml/badge.svg?event=push
+   :target: 
https://github.com/gforcada/flake8-pep3101/actions/workflows/testing.yml
+
+.. image:: 
https://coveralls.io/repos/gforcada/flake8-pep3101/badge.svg?branch=master&service=github
+   :target: https://coveralls.io/github/gforcada/flake8-pep3101?branch=master
+
+Flake8 PEP 3101 plugin
+======================
+Python has three string formatting options:
+
+- the old percent operator
+- the ``.format()`` string method
+- `f-strings`_ (only since python 3.6+)
+
+Although f-strings are more ergonomic, there a certain scenarios where the
+``.format()`` method is still the only viable option.
+
+See `pyformat website`_ for examples of the percent operator vs the 
``format()`` method.
+
+For a more format definition see the `PEP 3101`_.
+
+This plugin is based on a python checker that was in 
`plone.recipe.codeanalysis`_.
+
+Install
+-------
+Install with pip::
+
+    $ pip install flake8-pep3101
+
+Requirements
+------------
+- Python 3.7, 3.8, 3.9, 3.10 and pypy3
+- flake8
+
+Extras
+------
+If you want to check whether your new style formatting are correctly defined,
+check `flake8-string-format`_ plugin.
+
+License
+-------
+GPL 2.0
+
+.. _`pyformat website`: https://pyformat.info
+.. _`PEP 3101`: https://www.python.org/dev/peps/pep-3101
+.. _`f-strings`: https://peps.python.org/pep-0498/
+.. _`flake8-string-format`: https://pypi.python.org/pypi/flake8-string-format
+.. _`plone.recipe.codeanalysis`: 
https://pypi.python.org/pypi/plone.recipe.codeanalysis
+
+.. -*- coding: utf-8 -*-
+
+Changelog
+=========
+
+2.0.0 (2022-10-08)
+------------------
+
+- Update dependencies. [gforcada]
+
+- Test the code on GitHub actions. [gforcada]
+
+- Drop python 2.7 and only support python 3.7+. [gforcada]
+
+- Use linters and formatters to keep code sane and beautiful. [gforcada]
+
+- Simplify the amount of code to write a test. [gforcada]
+
+1.3.0 (2019-12-15)
+------------------
+
+- Warn about `"string %i" % 33` which was previously ignored.
+  Reported by @unformatt.
+  [gforcada]
+
+
+1.2.1 (2018-04-05)
+------------------
+
+- Fix text on the error message.
+  [icemac]
+
+1.2 (2017-12-12)
+----------------
+
+- Handle when there are numbers in either side of the modulo operator.
+  [gforcada]
+
+1.1 (2017-05-12)
+----------------
+
+- Handle variable formatting (i.e. ``my_string_variable % ('one', 'two', )``).
+  [gforcada]
+
+- Test againsta Python 3.6.
+  [gforcada]
+
+- Release universal wheels as well.
+  [gforcada]
+
+1.0 (2016-11-27)
+----------------
+- Remove tox and use plain travis matrix to test.
+  [gforcada]
+
+- Test on python 2.7, python 3.5, pypy and pypy3.
+  [gforcada]
+
+- Require flake8 3.0.
+  [gforcada]
+
+- Use ast to analyze the code.
+  The regular expression used so far was mostly a hit or miss,
+  with each corner case making it even more difficult to read.
+  The new checker with ast is simple, elegant and so much easy to read.
+  [gforcada]
+
+0.6 (2016-10-29)
+----------------
+- Handle edge case when a single or double quoted string
+  has another pair of quotes inside ('lala "lu" la') with
+  some % symbol inside as well.
+  [gforcada]
+
+0.5 (2016-10-26)
+----------------
+- Add all possible string formatters.
+  [gforcada]
+
+- Fix extension to work with flake8 > 3.0.
+  [gforcada]
+
+- Fix crash when the % symbol was the last character of a line.
+  [gforcada]
+
+0.4 (2016-07-03)
+----------------
+- Rename pep8 to pycodestyle.
+  [alefteris]
+
+- Add support for python 3.5.
+  [alefteris]
+
+- Add flake8 pypi classifier.
+  [alefteris]
+
+- Drop python 3.3 and 3.4 support (only testing it probably works just fine).
+  [gforcada]
+
+- Fix travis and coveralls to work properly with python 3.5.
+  [gforcada]
+
+0.3 (2016-03-05)
+----------------
+- Allow stdin processing, this way text editor can pass input to flake8.
+  [mjacksonw]
+
+0.2 (2015-09-16)
+----------------
+- 0.1 was a brown bag release.
+  [gforcada]
+
+0.1 (2015-09-16)
+----------------
+- Initial release
+  [gforcada]
+
+- Create the flake8 plugin per se.
+  [gforcada]
+
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/README.rst 
new/flake8-pep3101-2.0.0/README.rst
--- old/flake8-pep3101-1.3.0/README.rst 2019-12-15 00:32:11.000000000 +0100
+++ new/flake8-pep3101-2.0.0/README.rst 2022-10-08 18:13:28.000000000 +0200
@@ -1,20 +1,23 @@
 .. -*- coding: utf-8 -*-
 
-.. image:: https://travis-ci.org/gforcada/flake8-pep3101.svg?branch=master
-   :target: https://travis-ci.org/gforcada/flake8-pep3101
+.. image:: 
https://github.com/gforcada/flake8-pep3101/actions/workflows/testing.yml/badge.svg?event=push
+   :target: 
https://github.com/gforcada/flake8-pep3101/actions/workflows/testing.yml
 
 .. image:: 
https://coveralls.io/repos/gforcada/flake8-pep3101/badge.svg?branch=master&service=github
    :target: https://coveralls.io/github/gforcada/flake8-pep3101?branch=master
 
 Flake8 PEP 3101 plugin
 ======================
-Python has two string formatting options,
-either the old percent operator or the new ``.format()`` string method.
+Python has three string formatting options:
 
-Being the new one more powerful, expressive and a drop-in replacement
-over the old one.
+- the old percent operator
+- the ``.format()`` string method
+- `f-strings`_ (only since python 3.6+)
 
-See `pyformat website`_ for lots of examples of old vs new formatting.
+Although f-strings are more ergonomic, there a certain scenarios where the
+``.format()`` method is still the only viable option.
+
+See `pyformat website`_ for examples of the percent operator vs the 
``format()`` method.
 
 For a more format definition see the `PEP 3101`_.
 
@@ -28,7 +31,7 @@
 
 Requirements
 ------------
-- Python 2.7, 3.5, 3.6
+- Python 3.7, 3.8, 3.9, 3.10 and pypy3
 - flake8
 
 Extras
@@ -42,5 +45,6 @@
 
 .. _`pyformat website`: https://pyformat.info
 .. _`PEP 3101`: https://www.python.org/dev/peps/pep-3101
+.. _`f-strings`: https://peps.python.org/pep-0498/
 .. _`flake8-string-format`: https://pypi.python.org/pypi/flake8-string-format
 .. _`plone.recipe.codeanalysis`: 
https://pypi.python.org/pypi/plone.recipe.codeanalysis
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/flake8-pep3101-1.3.0/flake8_pep3101.egg-info/PKG-INFO 
new/flake8-pep3101-2.0.0/flake8_pep3101.egg-info/PKG-INFO
--- old/flake8-pep3101-1.3.0/flake8_pep3101.egg-info/PKG-INFO   2019-12-15 
00:32:11.000000000 +0100
+++ new/flake8-pep3101-2.0.0/flake8_pep3101.egg-info/PKG-INFO   2022-10-08 
18:13:29.000000000 +0200
@@ -1,178 +1,204 @@
 Metadata-Version: 2.1
 Name: flake8-pep3101
-Version: 1.3.0
+Version: 2.0.0
 Summary: Checks for old string formatting.
 Home-page: https://github.com/gforcada/flake8-pep3101
 Author: Gil Forcada
 Author-email: gil.gn...@gmail.com
 License: GPL version 2
-Description: .. -*- coding: utf-8 -*-
-        
-        .. image:: 
https://travis-ci.org/gforcada/flake8-pep3101.svg?branch=master
-           :target: https://travis-ci.org/gforcada/flake8-pep3101
-        
-        .. image:: 
https://coveralls.io/repos/gforcada/flake8-pep3101/badge.svg?branch=master&service=github
-           :target: 
https://coveralls.io/github/gforcada/flake8-pep3101?branch=master
-        
-        Flake8 PEP 3101 plugin
-        ======================
-        Python has two string formatting options,
-        either the old percent operator or the new ``.format()`` string method.
-        
-        Being the new one more powerful, expressive and a drop-in replacement
-        over the old one.
-        
-        See `pyformat website`_ for lots of examples of old vs new formatting.
-        
-        For a more format definition see the `PEP 3101`_.
-        
-        This plugin is based on a python checker that was in 
`plone.recipe.codeanalysis`_.
-        
-        Install
-        -------
-        Install with pip::
-        
-            $ pip install flake8-pep3101
-        
-        Requirements
-        ------------
-        - Python 2.7, 3.5, 3.6
-        - flake8
-        
-        Extras
-        ------
-        If you want to check whether your new style formatting are correctly 
defined,
-        check `flake8-string-format`_ plugin.
-        
-        License
-        -------
-        GPL 2.0
-        
-        .. _`pyformat website`: https://pyformat.info
-        .. _`PEP 3101`: https://www.python.org/dev/peps/pep-3101
-        .. _`flake8-string-format`: 
https://pypi.python.org/pypi/flake8-string-format
-        .. _`plone.recipe.codeanalysis`: 
https://pypi.python.org/pypi/plone.recipe.codeanalysis
-        
-        .. -*- coding: utf-8 -*-
-        
-        Changelog
-        =========
-        
-        1.3.0 (2019-12-15)
-        ------------------
-        
-        - Warn about `"string %i" % 33` which was previously ignored.
-          Reported by @unformatt.
-          [gforcada]
-        
-        
-        1.2.1 (2018-04-05)
-        ------------------
-        
-        - Fix text on the error message.
-          [icemac]
-        
-        1.2 (2017-12-12)
-        ----------------
-        
-        - Handle when there are numbers in either side of the modulo operator.
-          [gforcada]
-        
-        1.1 (2017-05-12)
-        ----------------
-        
-        - Handle variable formatting (i.e. ``my_string_variable % ('one', 
'two', )``).
-          [gforcada]
-        
-        - Test againsta Python 3.6.
-          [gforcada]
-        
-        - Release universal wheels as well.
-          [gforcada]
-        
-        1.0 (2016-11-27)
-        ----------------
-        - Remove tox and use plain travis matrix to test.
-          [gforcada]
-        
-        - Test on python 2.7, python 3.5, pypy and pypy3.
-          [gforcada]
-        
-        - Require flake8 3.0.
-          [gforcada]
-        
-        - Use ast to analyze the code.
-          The regular expression used so far was mostly a hit or miss,
-          with each corner case making it even more difficult to read.
-          The new checker with ast is simple, elegant and so much easy to read.
-          [gforcada]
-        
-        0.6 (2016-10-29)
-        ----------------
-        - Handle edge case when a single or double quoted string
-          has another pair of quotes inside ('lala "lu" la') with
-          some % symbol inside as well.
-          [gforcada]
-        
-        0.5 (2016-10-26)
-        ----------------
-        - Add all possible string formatters.
-          [gforcada]
-        
-        - Fix extension to work with flake8 > 3.0.
-          [gforcada]
-        
-        - Fix crash when the % symbol was the last character of a line.
-          [gforcada]
-        
-        0.4 (2016-07-03)
-        ----------------
-        - Rename pep8 to pycodestyle.
-          [alefteris]
-        
-        - Add support for python 3.5.
-          [alefteris]
-        
-        - Add flake8 pypi classifier.
-          [alefteris]
-        
-        - Drop python 3.3 and 3.4 support (only testing it probably works just 
fine).
-          [gforcada]
-        
-        - Fix travis and coveralls to work properly with python 3.5.
-          [gforcada]
-        
-        0.3 (2016-03-05)
-        ----------------
-        - Allow stdin processing, this way text editor can pass input to 
flake8.
-          [mjacksonw]
-        
-        0.2 (2015-09-16)
-        ----------------
-        - 0.1 was a brown bag release.
-          [gforcada]
-        
-        0.1 (2015-09-16)
-        ----------------
-        - Initial release
-          [gforcada]
-        
-        - Create the flake8 plugin per se.
-          [gforcada]
-        
-Keywords: pep8 pycodestyle flake8 string formatting
+Keywords: pep8 pycodestyle flake8 python string formatting
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
+Classifier: Environment :: Console
 Classifier: Framework :: Flake8
+Classifier: Intended Audience :: Developers
 Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
+Classifier: Topic :: Software Development
 Classifier: Topic :: Software Development :: Quality Assurance
 Provides-Extra: test
+License-File: LICENSE
+
+
+.. -*- coding: utf-8 -*-
+
+.. image:: 
https://github.com/gforcada/flake8-pep3101/actions/workflows/testing.yml/badge.svg?event=push
+   :target: 
https://github.com/gforcada/flake8-pep3101/actions/workflows/testing.yml
+
+.. image:: 
https://coveralls.io/repos/gforcada/flake8-pep3101/badge.svg?branch=master&service=github
+   :target: https://coveralls.io/github/gforcada/flake8-pep3101?branch=master
+
+Flake8 PEP 3101 plugin
+======================
+Python has three string formatting options:
+
+- the old percent operator
+- the ``.format()`` string method
+- `f-strings`_ (only since python 3.6+)
+
+Although f-strings are more ergonomic, there a certain scenarios where the
+``.format()`` method is still the only viable option.
+
+See `pyformat website`_ for examples of the percent operator vs the 
``format()`` method.
+
+For a more format definition see the `PEP 3101`_.
+
+This plugin is based on a python checker that was in 
`plone.recipe.codeanalysis`_.
+
+Install
+-------
+Install with pip::
+
+    $ pip install flake8-pep3101
+
+Requirements
+------------
+- Python 3.7, 3.8, 3.9, 3.10 and pypy3
+- flake8
+
+Extras
+------
+If you want to check whether your new style formatting are correctly defined,
+check `flake8-string-format`_ plugin.
+
+License
+-------
+GPL 2.0
+
+.. _`pyformat website`: https://pyformat.info
+.. _`PEP 3101`: https://www.python.org/dev/peps/pep-3101
+.. _`f-strings`: https://peps.python.org/pep-0498/
+.. _`flake8-string-format`: https://pypi.python.org/pypi/flake8-string-format
+.. _`plone.recipe.codeanalysis`: 
https://pypi.python.org/pypi/plone.recipe.codeanalysis
+
+.. -*- coding: utf-8 -*-
+
+Changelog
+=========
+
+2.0.0 (2022-10-08)
+------------------
+
+- Update dependencies. [gforcada]
+
+- Test the code on GitHub actions. [gforcada]
+
+- Drop python 2.7 and only support python 3.7+. [gforcada]
+
+- Use linters and formatters to keep code sane and beautiful. [gforcada]
+
+- Simplify the amount of code to write a test. [gforcada]
+
+1.3.0 (2019-12-15)
+------------------
+
+- Warn about `"string %i" % 33` which was previously ignored.
+  Reported by @unformatt.
+  [gforcada]
+
+
+1.2.1 (2018-04-05)
+------------------
+
+- Fix text on the error message.
+  [icemac]
+
+1.2 (2017-12-12)
+----------------
+
+- Handle when there are numbers in either side of the modulo operator.
+  [gforcada]
+
+1.1 (2017-05-12)
+----------------
+
+- Handle variable formatting (i.e. ``my_string_variable % ('one', 'two', )``).
+  [gforcada]
+
+- Test againsta Python 3.6.
+  [gforcada]
+
+- Release universal wheels as well.
+  [gforcada]
+
+1.0 (2016-11-27)
+----------------
+- Remove tox and use plain travis matrix to test.
+  [gforcada]
+
+- Test on python 2.7, python 3.5, pypy and pypy3.
+  [gforcada]
+
+- Require flake8 3.0.
+  [gforcada]
+
+- Use ast to analyze the code.
+  The regular expression used so far was mostly a hit or miss,
+  with each corner case making it even more difficult to read.
+  The new checker with ast is simple, elegant and so much easy to read.
+  [gforcada]
+
+0.6 (2016-10-29)
+----------------
+- Handle edge case when a single or double quoted string
+  has another pair of quotes inside ('lala "lu" la') with
+  some % symbol inside as well.
+  [gforcada]
+
+0.5 (2016-10-26)
+----------------
+- Add all possible string formatters.
+  [gforcada]
+
+- Fix extension to work with flake8 > 3.0.
+  [gforcada]
+
+- Fix crash when the % symbol was the last character of a line.
+  [gforcada]
+
+0.4 (2016-07-03)
+----------------
+- Rename pep8 to pycodestyle.
+  [alefteris]
+
+- Add support for python 3.5.
+  [alefteris]
+
+- Add flake8 pypi classifier.
+  [alefteris]
+
+- Drop python 3.3 and 3.4 support (only testing it probably works just fine).
+  [gforcada]
+
+- Fix travis and coveralls to work properly with python 3.5.
+  [gforcada]
+
+0.3 (2016-03-05)
+----------------
+- Allow stdin processing, this way text editor can pass input to flake8.
+  [mjacksonw]
+
+0.2 (2015-09-16)
+----------------
+- 0.1 was a brown bag release.
+  [gforcada]
+
+0.1 (2015-09-16)
+----------------
+- Initial release
+  [gforcada]
+
+- Create the flake8 plugin per se.
+  [gforcada]
+
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/flake8-pep3101-1.3.0/flake8_pep3101.egg-info/SOURCES.txt 
new/flake8-pep3101-2.0.0/flake8_pep3101.egg-info/SOURCES.txt
--- old/flake8-pep3101-1.3.0/flake8_pep3101.egg-info/SOURCES.txt        
2019-12-15 00:32:11.000000000 +0100
+++ new/flake8-pep3101-2.0.0/flake8_pep3101.egg-info/SOURCES.txt        
2022-10-08 18:13:29.000000000 +0200
@@ -1,9 +1,8 @@
 CHANGES.rst
 LICENSE
-LICENSE.rst
-MANIFEST.in
 README.rst
 flake8_pep3101.py
+requirements.txt
 run_tests.py
 setup.cfg
 setup.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/flake8-pep3101-1.3.0/flake8_pep3101.egg-info/requires.txt 
new/flake8-pep3101-2.0.0/flake8_pep3101.egg-info/requires.txt
--- old/flake8-pep3101-1.3.0/flake8_pep3101.egg-info/requires.txt       
2019-12-15 00:32:11.000000000 +0100
+++ new/flake8-pep3101-2.0.0/flake8_pep3101.egg-info/requires.txt       
2022-10-08 18:13:29.000000000 +0200
@@ -1,5 +1,4 @@
-flake8>=3.0
+flake8
 
 [test]
 pytest
-testfixtures
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/flake8_pep3101.py 
new/flake8-pep3101-2.0.0/flake8_pep3101.py
--- old/flake8-pep3101-1.3.0/flake8_pep3101.py  2019-12-15 00:32:11.000000000 
+0100
+++ new/flake8-pep3101-2.0.0/flake8_pep3101.py  2022-10-08 18:13:28.000000000 
+0200
@@ -1,10 +1,9 @@
-# -*- coding: utf-8 -*-
 import ast
-import pycodestyle
 
+from flake8 import utils as stdin_utils
 
-class Flake8Pep3101(object):
 
+class Flake8Pep3101:
     name = 'flake8_pep3101'
     version = '1.2.1'
     message = 'S001 found modulo formatter'
@@ -14,14 +13,11 @@
         self.tree = tree
 
     def run(self):
+        tree = self.tree
+
         if self.filename == 'stdin':
-            lines = pycodestyle.stdin_get_value()
+            lines = stdin_utils.stdin_get_value()
             tree = ast.parse(lines)
-        elif self.tree:
-            tree = self.tree
-        else:
-            with open(self.filename) as f:
-                tree = ast.parse(f.read())
 
         for stmt in ast.walk(tree):
             if self._is_module_operation(stmt):
@@ -50,5 +46,4 @@
     @staticmethod
     def _is_modulo_variable_and_number(stmt):
         """Check if it is a case of `var % 44`."""
-        return isinstance(stmt.right, ast.Num) and \
-            isinstance(stmt.left, ast.Name)
+        return isinstance(stmt.right, ast.Num) and isinstance(stmt.left, 
ast.Name)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/requirements.txt 
new/flake8-pep3101-2.0.0/requirements.txt
--- old/flake8-pep3101-1.3.0/requirements.txt   1970-01-01 01:00:00.000000000 
+0100
+++ new/flake8-pep3101-2.0.0/requirements.txt   2022-10-08 18:13:28.000000000 
+0200
@@ -0,0 +1,175 @@
+#
+# This file is autogenerated by pip-compile with python 3.7
+# To update, run:
+#
+#    pip-compile requirements.in
+#
+attrs==22.1.0
+    # via
+    #   flake8-bugbear
+    #   pytest
+bandit==1.7.4
+    # via -r requirements.in
+black==22.10.0
+    # via -r requirements.in
+certifi==2022.9.24
+    # via requests
+charset-normalizer==2.1.1
+    # via requests
+click==8.1.3
+    # via
+    #   black
+    #   safety
+codespell==2.2.1
+    # via -r requirements.in
+coverage[toml]==6.5.0
+    # via
+    #   coveralls
+    #   pytest-cov
+coveralls==3.3.1
+    # via -r requirements.in
+docopt==0.6.2
+    # via coveralls
+dparse==0.6.2
+    # via safety
+flake8==5.0.4
+    # via
+    #   flake8-bugbear
+    #   flake8-builtins
+    #   flake8-comprehensions
+    #   flake8-debugger
+    #   flake8-deprecated
+    #   flake8-isort
+    #   flake8-pep3101
+    #   flake8-print
+    #   flake8-quotes
+flake8-blind-except==0.2.1
+    # via -r requirements.in
+flake8-bugbear==22.9.23
+    # via -r requirements.in
+flake8-builtins==2.0.0
+    # via -r requirements.in
+flake8-comprehensions==3.10.0
+    # via -r requirements.in
+flake8-debugger==4.1.2
+    # via -r requirements.in
+flake8-deprecated==1.3
+    # via -r requirements.in
+flake8-isort==4.2.0
+    # via -r requirements.in
+flake8-pep3101==1.3.0
+    # via -r requirements.in
+flake8-print==5.0.0
+    # via -r requirements.in
+flake8-quotes==3.3.1
+    # via -r requirements.in
+flake8-todo==0.7
+    # via -r requirements.in
+gitdb==4.0.9
+    # via gitpython
+gitpython==3.1.28
+    # via bandit
+idna==3.4
+    # via requests
+importlib-metadata==4.2.0 ; python_version < "3.8"
+    # via
+    #   -r requirements.in
+    #   click
+    #   flake8
+    #   flake8-comprehensions
+    #   pluggy
+    #   pytest
+    #   stevedore
+iniconfig==1.1.1
+    # via pytest
+isort==5.10.1
+    # via
+    #   -r requirements.in
+    #   flake8-isort
+mccabe==0.7.0
+    # via flake8
+mypy==0.982
+    # via -r requirements.in
+mypy-extensions==0.4.3
+    # via
+    #   black
+    #   mypy
+packaging==21.3
+    # via
+    #   dparse
+    #   pytest
+    #   safety
+pathspec==0.10.1
+    # via black
+pbr==5.10.0
+    # via stevedore
+platformdirs==2.5.2
+    # via black
+pluggy==1.0.0
+    # via pytest
+py==1.11.0
+    # via pytest
+pycodestyle==2.9.1
+    # via
+    #   flake8
+    #   flake8-debugger
+    #   flake8-print
+    #   flake8-todo
+pyflakes==2.5.0
+    # via flake8
+pyparsing==3.0.9
+    # via packaging
+pytest==7.1.3
+    # via
+    #   -r requirements.in
+    #   pytest-cov
+pytest-cov==4.0.0
+    # via -r requirements.in
+pyupgrade==3.0.0
+    # via -r requirements.in
+pyyaml==6.0
+    # via bandit
+requests==2.28.1
+    # via
+    #   coveralls
+    #   safety
+ruamel-yaml==0.17.21
+    # via safety
+ruamel-yaml-clib==0.2.6
+    # via ruamel-yaml
+safety==2.3.1
+    # via -r requirements.in
+smmap==5.0.0
+    # via gitdb
+stevedore==3.5.0
+    # via bandit
+tokenize-rt==5.0.0
+    # via pyupgrade
+toml==0.10.2
+    # via dparse
+tomli==2.0.1
+    # via
+    #   black
+    #   coverage
+    #   mypy
+    #   pytest
+typed-ast==1.5.4 ; python_version < "3.8"
+    # via
+    #   -r requirements.in
+    #   black
+    #   mypy
+typing-extensions==4.4.0
+    # via
+    #   black
+    #   gitpython
+    #   importlib-metadata
+    #   mypy
+urllib3==1.26.12
+    # via requests
+zipp==3.8.1 ; python_version < "3.8"
+    # via
+    #   -r requirements.in
+    #   importlib-metadata
+
+# The following packages are considered to be unsafe in a requirements file:
+# setuptools
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/run_tests.py 
new/flake8-pep3101-2.0.0/run_tests.py
--- old/flake8-pep3101-1.3.0/run_tests.py       2019-12-15 00:32:11.000000000 
+0100
+++ new/flake8-pep3101-2.0.0/run_tests.py       2022-10-08 18:13:28.000000000 
+0200
@@ -1,127 +1,123 @@
-# -*- coding: utf-8 -*-
-from flake8_pep3101 import Flake8Pep3101
-from flake8.main import application
-from tempfile import mkdtemp
-from testfixtures import OutputCapture
-
-import os
+import ast
+import textwrap
 import unittest
+from unittest import mock
 
+from flake8_pep3101 import Flake8Pep3101
 
-class TestFlake8Pep3101(unittest.TestCase):
 
-    @staticmethod
-    def _given_a_file_in_test_dir(contents):
-        test_dir = os.path.realpath(mkdtemp())
-        file_path = os.path.join(test_dir, 'test.py')
-        with open(file_path, 'w') as a_file:
-            a_file.write(contents)
+class NewTestFlake8Pep3101(unittest.TestCase):
+    def check_code(self, source, expected_codes=None):
+        """Check if the given source code generates the given flake8 errors
 
-        return file_path
+        If `expected_codes` is a string is converted to a list,
+        if it is not given, then it is expected to **not** generate any error.
+        """
+        if isinstance(expected_codes, str):
+            expected_codes = [expected_codes]
+        elif expected_codes is None:
+            expected_codes = []
+        tree = ast.parse(textwrap.dedent(source))
+        checker = Flake8Pep3101(tree, '/home/script.py')
+        return_statements = list(checker.run())
 
-    def test_no_old_formatter(self):
-        file_path = self._given_a_file_in_test_dir(
-            'b = 3\n'
+        self.assertEqual(
+            len(return_statements), len(expected_codes), f'Got 
{return_statements}'
         )
-        app = application.Application()
-        with OutputCapture() as output:
-            app.run([file_path, ])
 
+        for item, code in zip(return_statements, expected_codes):
+            self.assertTrue(
+                item[2].startswith(f'{code} '),
+                f'Actually got {item[2]} rather than {code}',
+            )
+
+    @mock.patch('flake8.utils.stdin_get_value')
+    def test_stdin(self, stdin_get_value):
+        source = 'a = "hello %s" % ("world")'
+        stdin_get_value.return_value = source
+        checker = Flake8Pep3101('', 'stdin')
+        ret = list(checker.run())
         self.assertEqual(
-            output.captured,
-            ''
+            len(ret),
+            1,
         )
 
-    def test_new_formatting_no_problem(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'print("hello {0:s}".format("world"))\n',
-        ]))
-        app = application.Application()
-        with OutputCapture() as output:
-            app.run([file_path, ])
+    def test_no_old_formatter(self):
+        source = 'b = 3'
+        self.check_code(source)
 
-        self.assertEqual(
-            output.captured,
-            ''
-        )
+    def test_new_formatter(self):
+        source = 'print("hello {0:s}".format("world"))'
+        self.check_code(source)
+
+    def test_error(self):
+        source = 'print("hello %s" % ("world"))'
+        self.check_code(source, 'S001')
+
+    def test_line_number(self):
+        source = """
+        a = 2
+        open = 4
+        msg = "hello %s" % ("world")
+        """
+        tree = ast.parse(textwrap.dedent(source))
+        checker = Flake8Pep3101(tree, '/home/script.py')
+        ret = list(checker.run())
+        self.assertEqual(ret[0][0], 4)
 
-    def test_s_formatter(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'print("hello %s" % (\'lo\'))',
-        ]))
-        checker = Flake8Pep3101(None, file_path)
+    def test_offset(self):
+        source = """
+        def bla():
+            msg = "hello %s" % ("world")
+        """
+        tree = ast.parse(textwrap.dedent(source))
+        checker = Flake8Pep3101(tree, '/home/script.py')
         ret = list(checker.run())
-        self.assertEqual(len(ret), 1)
-        self.assertEqual(ret[0][0], 1)
-        self.assertEqual(ret[0][1], 6)
-        self.assertEqual(ret[0][2], 'S001 found modulo formatter')
+        self.assertEqual(ret[0][1], 10)
+
+    def test_s_formatter(self):
+        source = 'print("hello %s" % (\'lo\'))'
+        self.check_code(source, 'S001')
 
     def test_multiline_formatter(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'print("hello %s"',
-            '% (\'world\'))',
-        ]))
-        app = application.Application()
-        with OutputCapture() as output:
-            app.run([file_path, ])
-
-        self.assertIn(
-            '1:7: S001 found modulo formatter',
-            output.captured
+        source = """
+        print("hello %s"
+        % ('world')
         )
+        """
+        self.check_code(source, 'S001')
 
     def test_multiline_aligned_formatter(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'print("hello %s"',
-            '      % (\'world\'))',
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 1)
-        self.assertEqual(ret[0][0], 1)
-        self.assertEqual(ret[0][1], 6)
-        self.assertEqual(ret[0][2], 'S001 found modulo formatter')
+        source = """
+        print("hello %s"
+                     % ('world')
+        )
+        """
+        self.check_code(source, 'S001')
 
     def test_logging_module(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'import logging',
-            'logger = logging.getLogger()',
-            'logger.info("%s is bad", "me")'
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 0)
+        source = """
+        import logging
+        logger = logging.getLogger()
+        logger.info("%s world", "hello")
+        """
+        self.check_code(source)
 
     def test_multiple_strings(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            '"""""""1" if "%" else "2"'
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 0)
+        source = '"""""""1" if "%" else "2"'
+        self.check_code(source)
 
     def test_multiple_single_quotes_strings(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            "'''''''1' if '%' else '2'"
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 0)
+        source = "'''''''1' if '%' else '2'"
+        self.check_code(source)
 
     def test_multiple_strings_with_old_formatting(self):
         """Check that multiple quoting is handled properly.
 
         In this case correctly detecting it.
         """
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            '"""""""1" if "%" else "2%s" % "x"'
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 1)
-        self.assertEqual(ret[0][0], 1)
-        self.assertEqual(ret[0][1], 22)
-        self.assertEqual(ret[0][2], 'S001 found modulo formatter')
+        source = '"""""""1" if "%" else "2%s" % "x"'
+        self.check_code(source, 'S001')
 
     def test_percent_on_string(self):
         """Check that multiple quoting is handled properly.
@@ -130,74 +126,51 @@
 
         Found in plone.app.drafts.tests
         """
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'a = \'"%2B%2Badd%2B%2BMyDocument"\''
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 0)
+
+        source = 'a = \'"%2B%2Badd%2B%2BMyDocument"\''
+        self.check_code(source)
 
     def test_percent_as_last_character_on_line(self):
         """Check that a percent symbol as the last character on a line is
         handled properly.
         """
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            "a = 'my string %s %s' \\",
-            "    %\\",
-            "    ('3', '4', )",
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 1)
-        self.assertEqual(ret[0][0], 1)
-        self.assertEqual(ret[0][1], 4)
-        self.assertEqual(ret[0][2], 'S001 found modulo formatter')
+        source = """
+        a = 'my string %s %s' \
+            % \
+            ('3', '4', )
+        """
+        self.check_code(source, 'S001')
 
     def test_variable(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            "a = 'my string %s %s'",
-            "a % ('3', '4', )",
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 1)
-        self.assertEqual(ret[0][0], 2)
-        self.assertEqual(ret[0][1], 0)
-        self.assertEqual(ret[0][2], 'S001 found modulo formatter')
+        source = """
+        a = 'my string %s %s'
+        a % ('3', '4', )
+        """
+        self.check_code(source, 'S001')
 
     def test_right_hand_number_modulo(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'var = 40',
-            'if var % 50 == 0:',
-            '    print(var)',
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 0)
+        source = """
+        var = 40
+        if var % 50 == 0:
+            print(var)
+        """
+        self.check_code(source)
 
     def test_left_hand_number_modulo(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'var = 40',
-            'if 50 % var == 0:',
-            '    print(var)',
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 0)
+        source = """
+        var = 40
+        if 50 % var == 0:
+            print(var)
+        """
+        self.check_code(source)
 
     def test_right_hand_string_left_hand_number(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'print("asd %s" % 1)',
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 1)
+        source = 'print("asd %s" % 1)'
+        self.check_code(source, 'S001')
 
     def test_right_hand_string_left_hand_variable(self):
-        file_path = self._given_a_file_in_test_dir('\n'.join([
-            'a = 44',
-            'print("asd %s" % a)',
-        ]))
-        checker = Flake8Pep3101(None, file_path)
-        ret = list(checker.run())
-        self.assertEqual(len(ret), 1)
+        source = """
+        a = 44
+        print("asd %s" % a)
+        """
+        self.check_code(source, 'S001')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/setup.cfg 
new/flake8-pep3101-2.0.0/setup.cfg
--- old/flake8-pep3101-1.3.0/setup.cfg  2019-12-15 00:32:11.000000000 +0100
+++ new/flake8-pep3101-2.0.0/setup.cfg  2022-10-08 18:13:29.138121800 +0200
@@ -1,9 +1,13 @@
-[bdist_wheel]
-universal = 1
-
 [zest.releaser]
 create-wheel = yes
 
+[check-manifest]
+ignore = 
+       .installed.cfg
+
+[isort]
+profile = black
+
 [egg_info]
 tag_build = 
 tag_date = 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-pep3101-1.3.0/setup.py 
new/flake8-pep3101-2.0.0/setup.py
--- old/flake8-pep3101-1.3.0/setup.py   2019-12-15 00:32:11.000000000 +0100
+++ new/flake8-pep3101-2.0.0/setup.py   2022-10-08 18:13:28.000000000 +0200
@@ -1,54 +1,55 @@
-# -*- coding: utf-8 -*-
 from setuptools import setup
 
-
 short_description = 'Checks for old string formatting.'
 
-long_description = '{0}\n{1}'.format(
-    open('README.rst').read(),
-    open('CHANGES.rst').read()
-)
+
+def read_file(filename):
+    with open(filename) as file_obj:
+        file_contents = file_obj.read()
+    return file_contents
+
+
+long_description = f"""
+{read_file('README.rst')}
+{read_file('CHANGES.rst')}
+"""
+
 
 setup(
     name='flake8-pep3101',
-    version='1.3.0',
+    version='2.0.0',
     description=short_description,
     long_description=long_description,
-    # Get more from http://pypi.python.org/pypi?%3Aaction=list_classifiers
+    # Get more from https://pypi.org/classifiers/
     classifiers=[
         'Development Status :: 5 - Production/Stable',
+        'Environment :: Console',
         'Framework :: Flake8',
+        'Intended Audience :: Developers',
         'License :: OSI Approved :: GNU General Public License v2 (GPLv2)',
         'Operating System :: OS Independent',
         'Programming Language :: Python',
-        'Programming Language :: Python :: 2',
-        'Programming Language :: Python :: 2.7',
         'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.5',
-        'Programming Language :: Python :: 3.6',
+        'Programming Language :: Python :: 3 :: Only',
+        'Programming Language :: Python :: 3.7',
+        'Programming Language :: Python :: 3.8',
+        'Programming Language :: Python :: 3.9',
+        'Programming Language :: Python :: 3.10',
         'Programming Language :: Python :: Implementation :: CPython',
         'Programming Language :: Python :: Implementation :: PyPy',
+        'Topic :: Software Development',
         'Topic :: Software Development :: Quality Assurance',
     ],
-    keywords='pep8 pycodestyle flake8 string formatting',
+    keywords='pep8 pycodestyle flake8 python string formatting',
     author='Gil Forcada',
     author_email='gil.gn...@gmail.com',
     url='https://github.com/gforcada/flake8-pep3101',
     license='GPL version 2',
-    py_modules=['flake8_pep3101', ],
+    py_modules=['flake8_pep3101'],
     include_package_data=True,
     test_suite='run_tests',
     zip_safe=False,
-    install_requires=[
-        'flake8 >= 3.0',
-    ],
-    extras_require={
-        'test': [
-            'pytest',
-            'testfixtures',
-        ],
-    },
-    entry_points={
-        'flake8.extension': ['S001 = flake8_pep3101:Flake8Pep3101'],
-    },
+    install_requires=['flake8'],
+    extras_require={'test': ['pytest']},
+    entry_points={'flake8.extension': ['S001 = flake8_pep3101:Flake8Pep3101']},
 )

Reply via email to