Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-flake8-isort for 
openSUSE:Factory checked in at 2023-01-03 15:05:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-flake8-isort (Old)
 and      /work/SRC/openSUSE:Factory/.python-flake8-isort.new.1563 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-flake8-isort"

Tue Jan  3 15:05:07 2023 rev:5 rq:1046243 version:6.0.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-flake8-isort/python-flake8-isort.changes  
2022-10-12 18:27:35.814073609 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-flake8-isort.new.1563/python-flake8-isort.changes
        2023-01-03 15:05:22.546513508 +0100
@@ -1,0 +2,19 @@
+Mon Jan  2 16:41:48 UTC 2023 - Dirk Müller <dmuel...@suse.com>
+
+- update to 6.0.0:
+  * Drop isort 4.x support.
+  * Add support for flake8 6.0.0.
+  * Add `--isort-no-skip-gitignore` option to allow temporarily overriding
+    the set
+  value of isort's `skip_gitignore` option with `False`. This can cause
+  flake8-isort to run significantly faster at the cost of making flake8-isort's
+  behavior differ slightly from the behavior of `isort --check`. [gschaffner]
+  * Fix broken `add_options` method [casperdcl]
+  * Improve the config option is added and read back. [gforcada]
+  * Bump plugin version. [gforcada]
+  * Update dependencies. [gforcada]
+  * Revamp GitHub actions. [gforcada]
+  * Drop python 3.6, and add python 3.10. [gforcada]
+  * Use linters and formatters to keep code sane and beautiful. [gforcada]
+
+-------------------------------------------------------------------

Old:
----
  flake8-isort-4.2.0.tar.gz

New:
----
  flake8-isort-6.0.0.tar.gz

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

Other differences:
------------------
++++++ python-flake8-isort.spec ++++++
--- /var/tmp/diff_new_pack.wAi1eX/_old  2023-01-03 15:05:23.034516356 +0100
+++ /var/tmp/diff_new_pack.wAi1eX/_new  2023-01-03 15:05:23.042516403 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-flake8-isort
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,14 +19,14 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %global skip_python2 1
 Name:           python-flake8-isort
-Version:        4.2.0
+Version:        6.0.0
 Release:        0
 Summary:        Plugin integrating isort in flake8
 License:        GPL-2.0-only
 Group:          Development/Languages/Python
 URL:            https://github.com/gforcada/flake8-isort
 Source:         
https://files.pythonhosted.org/packages/source/f/flake8-isort/flake8-isort-%{version}.tar.gz
-BuildRequires:  %{python_module flake8 >= 3.2.1}
+BuildRequires:  %{python_module flake8}
 BuildRequires:  %{python_module isort >= 4.3.5}
 BuildRequires:  %{python_module pytest}
 BuildRequires:  %{python_module setuptools}
@@ -34,7 +34,7 @@
 BuildRequires:  %{python_module toml}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
-Requires:       python-flake8 >= 3.2.1
+Requires:       python-flake8
 Requires:       python-isort >= 4.3.5
 Requires:       python-testfixtures
 BuildArch:      noarch
@@ -54,7 +54,7 @@
 %python_expand %fdupes %{buildroot}%{$python_sitelib}
 
 %check
-%pytest
+%pytest ./run_tests.py
 
 %files %{python_files}
 %doc README.rst CHANGES.rst

++++++ flake8-isort-4.2.0.tar.gz -> flake8-isort-6.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/CHANGES.rst 
new/flake8-isort-6.0.0/CHANGES.rst
--- old/flake8-isort-4.2.0/CHANGES.rst  2022-08-04 18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/CHANGES.rst  2022-12-22 23:55:46.000000000 +0100
@@ -3,6 +3,48 @@
 Changelog
 =========
 
+6.0.0 (2022-12-22)
+------------------
+
+- Drop isort 4.x support.
+  [gforcada]
+
+- Add support for flake8 6.0.0.
+  [gforcada]
+
+- Add `--isort-no-skip-gitignore` option to allow temporarily overriding the 
set
+  value of isort's `skip_gitignore` option with `False`. This can cause
+  flake8-isort to run significantly faster at the cost of making flake8-isort's
+  behavior differ slightly from the behavior of `isort --check`. [gschaffner]
+
+5.0.3 (2022-11-20)
+------------------
+
+- Fix broken `add_options` method, again. [casperdcl]
+
+5.0.2 (2022-11-19)
+------------------
+
+- Fix broken `add_options` method [casperdcl]
+
+5.0.1 (2022-11-18)
+------------------
+
+- Improve the config option is added and read back. [gforcada]
+
+- Bump plugin version. [gforcada]
+
+5.0.0 (2022-10-08)
+------------------
+
+- Update dependencies. [gforcada]
+
+- Revamp GitHub actions. [gforcada]
+
+- Drop python 3.6, and add python 3.10. [gforcada]
+
+- Use linters and formatters to keep code sane and beautiful. [gforcada]
+
 4.2.0 (2022-08-04)
 ------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/LICENSE.rst 
new/flake8-isort-6.0.0/LICENSE.rst
--- old/flake8-isort-4.2.0/LICENSE.rst  2022-08-04 18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/LICENSE.rst  1970-01-01 01:00:00.000000000 +0100
@@ -1,17 +0,0 @@
-.. -*- coding: utf-8 -*-
-
-flake8-isort 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-isort-4.2.0/MANIFEST.in 
new/flake8-isort-6.0.0/MANIFEST.in
--- old/flake8-isort-4.2.0/MANIFEST.in  2022-08-04 18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/MANIFEST.in  1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-include MANIFEST.in LICENSE *.rst *.py *.cfg *.ini
-exclude .installed.cfg .coveragerc *.pyc
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/PKG-INFO 
new/flake8-isort-6.0.0/PKG-INFO
--- old/flake8-isort-4.2.0/PKG-INFO     2022-08-04 18:53:07.775674800 +0200
+++ new/flake8-isort-6.0.0/PKG-INFO     2022-12-22 23:55:46.000000000 +0100
@@ -1,12 +1,12 @@
 Metadata-Version: 2.1
 Name: flake8-isort
-Version: 4.2.0
+Version: 6.0.0
 Summary: flake8 plugin that integrates isort .
 Home-page: https://github.com/gforcada/flake8-isort
 Author: Gil Forcada
 Author-email: gil.gn...@gmail.com
 License: GPL version 2
-Keywords: pep8 flake8 isort imports
+Keywords: pep8 flake8 python isort imports
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: Console
@@ -17,25 +17,26 @@
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
 Classifier: Programming Language :: Python :: 3 :: Only
-Classifier: Programming Language :: Python :: 3.6
 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 :: 3.11
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Software Development
 Classifier: Topic :: Software Development :: Quality Assurance
+Requires-Python: >=3.7
 Provides-Extra: test
 License-File: LICENSE
-License-File: LICENSE.rst
+
 
 .. -*- coding: utf-8 -*-
 
-.. image:: 
https://github.com/gforcada/flake8-isort/actions/workflows/tests.yml/badge.svg?branch=master
-   :target: 
https://github.com/gforcada/flake8-isort/actions/workflows/tests.yml
+.. image:: 
https://github.com/gforcada/flake8-isort/actions/workflows/testing.yml/badge.svg?branch=master
+   :target: 
https://github.com/gforcada/flake8-isort/actions/workflows/testing.yml
 
-.. image:: 
https://coveralls.io/repos/gforcada/flake8-isort/badge.svg?branch=master&service=github
+.. image:: 
https://coveralls.io/repos/gforcada/flake8-isort/badge.svg?branch=master
    :target: https://coveralls.io/github/gforcada/flake8-isort?branch=master
 
 Flake8 meet isort
@@ -61,6 +62,8 @@
 -------------
 If using the `select` `option from flake8`_ be sure to enable the `I` category 
as well, see below for the specific error codes reported by `flake8-isort`.
 
+See ``flake8 --help`` for available flake8-isort options.
+
 Error codes
 -----------
 +------------+-----------------------------------------------------------+
@@ -79,7 +82,7 @@
 
 Requirements
 ------------
-- Python 2.7, 3.5, 3.6, pypy or pypy3
+- Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3
 - flake8
 - isort
 
@@ -104,6 +107,48 @@
 Changelog
 =========
 
+6.0.0 (2022-12-22)
+------------------
+
+- Drop isort 4.x support.
+  [gforcada]
+
+- Add support for flake8 6.0.0.
+  [gforcada]
+
+- Add `--isort-no-skip-gitignore` option to allow temporarily overriding the 
set
+  value of isort's `skip_gitignore` option with `False`. This can cause
+  flake8-isort to run significantly faster at the cost of making flake8-isort's
+  behavior differ slightly from the behavior of `isort --check`. [gschaffner]
+
+5.0.3 (2022-11-20)
+------------------
+
+- Fix broken `add_options` method, again. [casperdcl]
+
+5.0.2 (2022-11-19)
+------------------
+
+- Fix broken `add_options` method [casperdcl]
+
+5.0.1 (2022-11-18)
+------------------
+
+- Improve the config option is added and read back. [gforcada]
+
+- Bump plugin version. [gforcada]
+
+5.0.0 (2022-10-08)
+------------------
+
+- Update dependencies. [gforcada]
+
+- Revamp GitHub actions. [gforcada]
+
+- Drop python 3.6, and add python 3.10. [gforcada]
+
+- Use linters and formatters to keep code sane and beautiful. [gforcada]
+
 4.2.0 (2022-08-04)
 ------------------
 
@@ -386,3 +431,4 @@
   [gforcada]
 
 
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/README.rst 
new/flake8-isort-6.0.0/README.rst
--- old/flake8-isort-4.2.0/README.rst   2022-08-04 18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/README.rst   2022-12-22 23:55:46.000000000 +0100
@@ -1,9 +1,9 @@
 .. -*- coding: utf-8 -*-
 
-.. image:: 
https://github.com/gforcada/flake8-isort/actions/workflows/tests.yml/badge.svg?branch=master
-   :target: 
https://github.com/gforcada/flake8-isort/actions/workflows/tests.yml
+.. image:: 
https://github.com/gforcada/flake8-isort/actions/workflows/testing.yml/badge.svg?branch=master
+   :target: 
https://github.com/gforcada/flake8-isort/actions/workflows/testing.yml
 
-.. image:: 
https://coveralls.io/repos/gforcada/flake8-isort/badge.svg?branch=master&service=github
+.. image:: 
https://coveralls.io/repos/gforcada/flake8-isort/badge.svg?branch=master
    :target: https://coveralls.io/github/gforcada/flake8-isort?branch=master
 
 Flake8 meet isort
@@ -29,6 +29,8 @@
 -------------
 If using the `select` `option from flake8`_ be sure to enable the `I` category 
as well, see below for the specific error codes reported by `flake8-isort`.
 
+See ``flake8 --help`` for available flake8-isort options.
+
 Error codes
 -----------
 +------------+-----------------------------------------------------------+
@@ -47,7 +49,7 @@
 
 Requirements
 ------------
-- Python 2.7, 3.5, 3.6, pypy or pypy3
+- Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3
 - flake8
 - isort
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/flake8_isort.egg-info/PKG-INFO 
new/flake8-isort-6.0.0/flake8_isort.egg-info/PKG-INFO
--- old/flake8-isort-4.2.0/flake8_isort.egg-info/PKG-INFO       2022-08-04 
18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/flake8_isort.egg-info/PKG-INFO       2022-12-22 
23:55:46.000000000 +0100
@@ -1,12 +1,12 @@
 Metadata-Version: 2.1
 Name: flake8-isort
-Version: 4.2.0
+Version: 6.0.0
 Summary: flake8 plugin that integrates isort .
 Home-page: https://github.com/gforcada/flake8-isort
 Author: Gil Forcada
 Author-email: gil.gn...@gmail.com
 License: GPL version 2
-Keywords: pep8 flake8 isort imports
+Keywords: pep8 flake8 python isort imports
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: Console
@@ -17,25 +17,26 @@
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
 Classifier: Programming Language :: Python :: 3 :: Only
-Classifier: Programming Language :: Python :: 3.6
 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 :: 3.11
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Software Development
 Classifier: Topic :: Software Development :: Quality Assurance
+Requires-Python: >=3.7
 Provides-Extra: test
 License-File: LICENSE
-License-File: LICENSE.rst
+
 
 .. -*- coding: utf-8 -*-
 
-.. image:: 
https://github.com/gforcada/flake8-isort/actions/workflows/tests.yml/badge.svg?branch=master
-   :target: 
https://github.com/gforcada/flake8-isort/actions/workflows/tests.yml
+.. image:: 
https://github.com/gforcada/flake8-isort/actions/workflows/testing.yml/badge.svg?branch=master
+   :target: 
https://github.com/gforcada/flake8-isort/actions/workflows/testing.yml
 
-.. image:: 
https://coveralls.io/repos/gforcada/flake8-isort/badge.svg?branch=master&service=github
+.. image:: 
https://coveralls.io/repos/gforcada/flake8-isort/badge.svg?branch=master
    :target: https://coveralls.io/github/gforcada/flake8-isort?branch=master
 
 Flake8 meet isort
@@ -61,6 +62,8 @@
 -------------
 If using the `select` `option from flake8`_ be sure to enable the `I` category 
as well, see below for the specific error codes reported by `flake8-isort`.
 
+See ``flake8 --help`` for available flake8-isort options.
+
 Error codes
 -----------
 +------------+-----------------------------------------------------------+
@@ -79,7 +82,7 @@
 
 Requirements
 ------------
-- Python 2.7, 3.5, 3.6, pypy or pypy3
+- Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3
 - flake8
 - isort
 
@@ -104,6 +107,48 @@
 Changelog
 =========
 
+6.0.0 (2022-12-22)
+------------------
+
+- Drop isort 4.x support.
+  [gforcada]
+
+- Add support for flake8 6.0.0.
+  [gforcada]
+
+- Add `--isort-no-skip-gitignore` option to allow temporarily overriding the 
set
+  value of isort's `skip_gitignore` option with `False`. This can cause
+  flake8-isort to run significantly faster at the cost of making flake8-isort's
+  behavior differ slightly from the behavior of `isort --check`. [gschaffner]
+
+5.0.3 (2022-11-20)
+------------------
+
+- Fix broken `add_options` method, again. [casperdcl]
+
+5.0.2 (2022-11-19)
+------------------
+
+- Fix broken `add_options` method [casperdcl]
+
+5.0.1 (2022-11-18)
+------------------
+
+- Improve the config option is added and read back. [gforcada]
+
+- Bump plugin version. [gforcada]
+
+5.0.0 (2022-10-08)
+------------------
+
+- Update dependencies. [gforcada]
+
+- Revamp GitHub actions. [gforcada]
+
+- Drop python 3.6, and add python 3.10. [gforcada]
+
+- Use linters and formatters to keep code sane and beautiful. [gforcada]
+
 4.2.0 (2022-08-04)
 ------------------
 
@@ -386,3 +431,4 @@
   [gforcada]
 
 
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/flake8_isort.egg-info/SOURCES.txt 
new/flake8-isort-6.0.0/flake8_isort.egg-info/SOURCES.txt
--- old/flake8-isort-4.2.0/flake8_isort.egg-info/SOURCES.txt    2022-08-04 
18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/flake8_isort.egg-info/SOURCES.txt    2022-12-22 
23:55:46.000000000 +0100
@@ -1,12 +1,12 @@
 CHANGES.rst
 LICENSE
-LICENSE.rst
-MANIFEST.in
 README.rst
 flake8_isort.py
+requirements-lint.txt
+requirements.txt
+run_tests.py
 setup.cfg
 setup.py
-test_flake8_isort.py
 flake8_isort.egg-info/PKG-INFO
 flake8_isort.egg-info/SOURCES.txt
 flake8_isort.egg-info/dependency_links.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/flake8-isort-4.2.0/flake8_isort.egg-info/requires.txt 
new/flake8-isort-6.0.0/flake8_isort.egg-info/requires.txt
--- old/flake8-isort-4.2.0/flake8_isort.egg-info/requires.txt   2022-08-04 
18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/flake8_isort.egg-info/requires.txt   2022-12-22 
23:55:46.000000000 +0100
@@ -1,5 +1,5 @@
-flake8<6,>=3.2.1
-isort<6,>=4.3.5
+flake8
+isort<6,>=5.0.0
 
 [test]
-pytest-cov
+pytest
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/flake8_isort.py 
new/flake8-isort-6.0.0/flake8_isort.py
--- old/flake8-isort-4.2.0/flake8_isort.py      2022-08-04 18:53:07.000000000 
+0200
+++ new/flake8-isort-6.0.0/flake8_isort.py      2022-12-22 23:55:46.000000000 
+0100
@@ -1,38 +1,31 @@
-# -*- coding: utf-8 -*-
-
+import warnings
 from contextlib import redirect_stdout
-from difflib import Differ
 from difflib import unified_diff
 from io import StringIO
 from pathlib import Path
 
 import isort
-import warnings
+from pkg_resources import DistributionNotFound, get_distribution
 
 
-__version__ = '4.2.0'
+def _version():
+    try:
+        return get_distribution('flake8_isort').version
+    except DistributionNotFound:
+        return 'dev'  # for local development if package is not installed yet
 
 
-class Flake8IsortBase(object):
+class Flake8IsortBase:
     name = 'flake8_isort'
-    version = __version__
-    isort_unsorted = (
-        'I001 isort found an import in the wrong position'
-    )
-    no_config_msg = (
-        'I002 no configuration found (.isort.cfg or [isort] in configs)'
-    )
-    isort_blank_req = (
-        'I003 isort expected 1 blank line in imports, found 0'
-    )
-    isort_blank_unexp = (
-        'I004 isort found an unexpected blank line in imports'
-    )
-    isort_add_unexp = (
-        'I005 isort found an unexpected missing import'
-    )
+    version = _version()
+    isort_unsorted = 'I001 isort found an import in the wrong position'
+    no_config_msg = 'I002 no configuration found (.isort.cfg or [isort] in 
configs)'
+    isort_blank_req = 'I003 isort expected 1 blank line in imports, found 0'
+    isort_blank_unexp = 'I004 isort found an unexpected blank line in imports'
+    isort_add_unexp = 'I005 isort found an unexpected missing import'
 
     show_traceback = False
+    no_skip_gitignore = False
     stdin_display_name = None
     search_current = True
 
@@ -40,144 +33,31 @@
         self.filename = filename
         self.lines = lines
 
-    @classmethod
-    def add_options(cls, parser):
-        parser.add_option(
+    @staticmethod
+    def add_options(option_manager):
+        option_manager.add_option(
             '--isort-show-traceback',
             action='store_true',
             parse_from_config=True,
-            help='Show full traceback with diff from isort'
+            help='Show full traceback with diff from isort',
+        )
+        option_manager.add_option(
+            '--isort-no-skip-gitignore',
+            action='store_true',
+            parse_from_config=True,
+            help=(
+                "Temporarily override the set value of isort's 
`skip_gitignore` option "
+                'with `False`. This can cause flake8-isort to run 
significantly faster '
+                "at the cost of making flake8-isort's behavior differ slightly 
from "
+                'the behavior of `isort --check`.'
+            ),
         )
 
     @classmethod
-    def parse_options(cls, options):
+    def parse_options(cls, option_manager, options, args):
         cls.stdin_display_name = options.stdin_display_name
         cls.show_traceback = options.isort_show_traceback
-
-
-class Flake8Isort4(Flake8IsortBase):
-    """class for isort <5"""
-
-    def run(self):
-        if self.filename is not self.stdin_display_name:
-            file_path = self.filename
-        else:
-            file_path = None
-        buffer = StringIO()
-        with redirect_stdout(buffer):
-            sort_result = isort.SortImports(
-                file_path=file_path,
-                file_contents=''.join(self.lines),
-                check=True,
-                show_diff=True,
-            )
-        traceback = self._format_isort_output(buffer)
-
-        for line_num, message in self.sortimports_linenum_msg(sort_result):
-            if self.show_traceback:
-                message += traceback
-            yield line_num, 0, message, type(self)
-
-    def sortimports_linenum_msg(self, sort_result):
-        """Parses isort.SortImports for line number changes and message
-
-        Uses a diff.Differ comparison of SortImport `in_lines`:`out_lines` to
-        yield the line numbers of import lines that have been moved or blank
-        lines added.
-
-        Args:
-            sort_imports (isort.SortImports): The isorts results object.
-
-        Yields:
-            tuple: A tuple of the specific isort line number and message.
-        """
-        if sort_result.skipped:
-            return
-
-        self._fixup_sortimports_wrapped(sort_result)
-        self._fixup_sortimports_eof(sort_result)
-
-        differ = Differ()
-        diff = differ.compare(sort_result.in_lines, sort_result.out_lines)
-
-        line_num = 0
-        additions = {
-            '+ {}'.format(add_import) for add_import in sort_result.add_imports
-        }
-        for line in diff:
-            if line.startswith('  ', 0, 2):
-                line_num += 1  # Ignore unchanged lines but increment line_num.
-            elif line.startswith('- ', 0, 2):
-                line_num += 1
-                if line.strip() == '-':
-                    yield line_num, self.isort_blank_unexp
-                else:
-                    yield line_num, self.isort_unsorted
-            elif line.strip() == '+':
-                # Include newline additions but do not increment line_num.
-                yield line_num + 1, self.isort_blank_req
-            elif line.strip() in additions:
-                yield line_num + 1, self.isort_add_unexp
-
-    def _format_isort_output(self, isort_buffer):
-        filtering_out = ('+++', '---', '@@', 'ERROR:')
-
-        valid_lines = ['']
-        valid_lines += [
-            line
-            for line in isort_buffer.getvalue().splitlines()
-            if line.strip().split(' ', 1)[0] not in filtering_out
-        ]
-
-        # Normalizing newlines:
-        if len(valid_lines) > 1:
-            valid_lines.insert(1, '')
-        valid_lines.append('')
-
-        return '\n'.join(valid_lines)
-
-    @staticmethod
-    def _fixup_sortimports_eof(sort_imports):
-        """Ensure single end-of-file newline in `isort.SortImports.in_lines`
-
-        isort fixes EOF blank lines but this change should be suppressed as
-        Flake8 will also flag them.
-
-        Args:
-            sort_imports (isort.SortImports): The isorts results object.
-
-        Returns:
-            isort.SortImports: The modified isort results object.
-        """
-        to_remove = {''} | set(sort_imports.add_imports)
-        for line in reversed(sort_imports.in_lines):
-            if line.strip() in to_remove:
-                # If single empty line in in_lines, do nothing.
-                if len(sort_imports.in_lines) > 1:
-                    sort_imports.in_lines.pop()
-            else:
-                sort_imports.in_lines.append('')
-                break
-
-    @staticmethod
-    def _fixup_sortimports_wrapped(sort_imports):
-        """Split-up wrapped imports newlines in `SortImports.out_lines`
-
-        isort combines wrapped lines into a single list entry string in
-        `out_lines` whereas `in_lines` are separate strings so for diff
-        comparison these need to be comparable.
-
-        Args:
-            sort_imports (isort.SortImports): The isorts results object.
-
-        Returns:
-            isort.SortImports: The modified isort results object.
-        """
-        for idx, line in enumerate(sort_imports.out_lines):
-            if '\n' in line:
-                for new_idx, new_line in enumerate(
-                        sort_imports.out_lines.pop(idx).splitlines()):
-                    sort_imports.out_lines.insert(idx + new_idx, new_line)
+        cls.no_skip_gitignore = options.isort_no_skip_gitignore
 
 
 class Flake8Isort5(Flake8IsortBase):
@@ -186,12 +66,16 @@
     def run(self):
         if self.filename is not self.stdin_display_name:
             file_path = Path(self.filename)
-            isort_config = isort.settings.Config(
-                settings_path=file_path.parent)
+            settings_path = file_path.parent
         else:
             file_path = None
+            settings_path = Path.cwd()
+        if self.no_skip_gitignore:
             isort_config = isort.settings.Config(
-                settings_path=Path.cwd())
+                settings_path=settings_path, skip_gitignore=False
+            )
+        else:
+            isort_config = isort.settings.Config(settings_path=settings_path)
         input_string = ''.join(self.lines)
         traceback = ''
         isort_changed = False
@@ -204,19 +88,23 @@
                     input_stream=input_stream,
                     output_stream=output_stream,
                     config=isort_config,
-                    file_path=file_path)
+                    file_path=file_path,
+                )
         except isort.exceptions.FileSkipped:
             pass
         except isort.exceptions.ISortError as e:
             warnings.warn(e)
         if isort_changed:
             outlines = output_stream.getvalue()
-            diff_delta = "".join(unified_diff(
-                              input_string.splitlines(keepends=True),
-                              outlines.splitlines(keepends=True),
-                              fromfile="{}:before".format(self.filename),
-                              tofile="{}:after".format(self.filename)))
-            traceback = (isort_stdout.getvalue() + "\n" + diff_delta)
+            diff_delta = ''.join(
+                unified_diff(
+                    input_string.splitlines(keepends=True),
+                    outlines.splitlines(keepends=True),
+                    fromfile=f'{self.filename}:before',
+                    tofile=f'{self.filename}:after',
+                )
+            )
+            traceback = f'{isort_stdout.getvalue()}\n{diff_delta}'
             for line_num, message in self.isort_linenum_msg(diff_delta):
                 if self.show_traceback:
                     message += traceback
@@ -265,4 +153,4 @@
                 yield line_num, self.isort_add_unexp
 
 
-Flake8Isort = Flake8Isort5 if hasattr(isort, 'api') else Flake8Isort4
+Flake8Isort = Flake8Isort5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/requirements-lint.txt 
new/flake8-isort-6.0.0/requirements-lint.txt
--- old/flake8-isort-4.2.0/requirements-lint.txt        1970-01-01 
01:00:00.000000000 +0100
+++ new/flake8-isort-6.0.0/requirements-lint.txt        2022-12-22 
23:55:46.000000000 +0100
@@ -0,0 +1,152 @@
+#
+# This file is autogenerated by pip-compile with python 3.7
+# To update, run:
+#
+#    pip-compile requirements-lint.in
+#
+attrs==22.1.0
+    # via
+    #   flake8-bugbear
+    #   pytest
+bandit==1.7.4
+    # via -r requirements-lint.in
+black==22.10.0
+    # via -r requirements-lint.in
+certifi==2022.12.7
+    # via requests
+charset-normalizer==2.1.1
+    # via requests
+click==8.1.3
+    # via black
+codespell==2.2.2
+    # via -r requirements-lint.in
+coverage[toml]==6.5.0
+    # via
+    #   coveralls
+    #   pytest-cov
+coveralls==3.3.1
+    # via -r requirements-lint.in
+docopt==0.6.2
+    # via coveralls
+exceptiongroup==1.0.0
+    # via pytest
+flake8==5.0.4
+    # via
+    #   flake8-bugbear
+    #   flake8-comprehensions
+    #   flake8-debugger
+    #   flake8-deprecated
+    #   flake8-isort
+    #   flake8-pep3101
+    #   flake8-print
+    #   flake8-quotes
+flake8-blind-except==0.2.1
+    # via -r requirements-lint.in
+flake8-bugbear==22.10.27
+    # via -r requirements-lint.in
+flake8-comprehensions==3.10.0
+    # via -r requirements-lint.in
+flake8-debugger==4.1.2
+    # via -r requirements-lint.in
+flake8-deprecated==2.0.1
+    # via -r requirements-lint.in
+flake8-isort==5.0.0
+    # via -r requirements-lint.in
+flake8-pep3101==2.0.0
+    # via -r requirements-lint.in
+flake8-print==5.0.0
+    # via -r requirements-lint.in
+flake8-quotes==3.3.1
+    # via -r requirements-lint.in
+flake8-todo==0.7
+    # via -r requirements-lint.in
+gitdb==4.0.9
+    # via gitpython
+gitpython==3.1.29
+    # via bandit
+idna==3.4
+    # via requests
+importlib-metadata==4.2.0 ; python_version < "3.8"
+    # via
+    #   -r requirements-lint.in
+    #   click
+    #   flake8
+    #   flake8-comprehensions
+    #   pluggy
+    #   pytest
+    #   stevedore
+iniconfig==1.1.1
+    # via pytest
+isort==5.10.1
+    # via
+    #   -r requirements-lint.in
+    #   flake8-isort
+mccabe==0.7.0
+    # via flake8
+mypy==0.982
+    # via -r requirements-lint.in
+mypy-extensions==0.4.3
+    # via
+    #   black
+    #   mypy
+packaging==21.3
+    # via pytest
+pathspec==0.10.1
+    # via black
+pbr==5.11.0
+    # via stevedore
+platformdirs==2.5.2
+    # via black
+pluggy==1.0.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.2.0
+    # via
+    #   -r requirements-lint.in
+    #   pytest-cov
+pytest-cov==4.0.0
+    # via -r requirements-lint.in
+pyupgrade==3.1.0
+    # via -r requirements-lint.in
+pyyaml==6.0
+    # via bandit
+requests==2.28.1
+    # via coveralls
+smmap==5.0.0
+    # via gitdb
+stevedore==3.5.2
+    # via bandit
+tokenize-rt==5.0.0
+    # via pyupgrade
+tomli==2.0.1
+    # via
+    #   black
+    #   coverage
+    #   mypy
+    #   pytest
+typed-ast==1.5.4 ; python_version < "3.8"
+    # via
+    #   -r requirements-lint.in
+    #   black
+    #   mypy
+typing-extensions==4.4.0
+    # via
+    #   black
+    #   gitpython
+    #   importlib-metadata
+    #   mypy
+urllib3==1.26.12
+    # via requests
+zipp==3.10.0 ; python_version < "3.8"
+    # via
+    #   -r requirements-lint.in
+    #   importlib-metadata
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/requirements.txt 
new/flake8-isort-6.0.0/requirements.txt
--- old/flake8-isort-4.2.0/requirements.txt     1970-01-01 01:00:00.000000000 
+0100
+++ new/flake8-isort-6.0.0/requirements.txt     2022-12-22 23:55:46.000000000 
+0100
@@ -0,0 +1,66 @@
+#
+# This file is autogenerated by pip-compile with python 3.7
+# To update, run:
+#
+#    pip-compile requirements.in
+#
+attrs==22.1.0
+    # via pytest
+certifi==2022.12.7
+    # via requests
+charset-normalizer==2.1.1
+    # via requests
+coverage[toml]==6.5.0
+    # via
+    #   coveralls
+    #   pytest-cov
+coveralls==3.3.1
+    # via -r requirements.in
+docopt==0.6.2
+    # via coveralls
+exceptiongroup==1.0.0
+    # via pytest
+flake8==5.0.4
+    # via -r requirements.in
+idna==3.4
+    # via requests
+importlib-metadata==4.2.0 ; python_version < "3.8"
+    # via
+    #   -r requirements.in
+    #   flake8
+    #   pluggy
+    #   pytest
+iniconfig==1.1.1
+    # via pytest
+isort==5.10.1
+    # via -r requirements.in
+mccabe==0.7.0
+    # via flake8
+packaging==21.3
+    # via pytest
+pluggy==1.0.0
+    # via pytest
+pycodestyle==2.9.1
+    # via flake8
+pyflakes==2.5.0
+    # via flake8
+pyparsing==3.0.9
+    # via packaging
+pytest==7.2.0
+    # via
+    #   -r requirements.in
+    #   pytest-cov
+pytest-cov==4.0.0
+    # via -r requirements.in
+requests==2.28.1
+    # via coveralls
+tomli==2.0.1
+    # via
+    #   coverage
+    #   pytest
+typing-extensions==4.4.0
+    # via importlib-metadata
+urllib3==1.26.12
+    # via requests
+zipp==3.8.1
+    # via importlib-metadata
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/run_tests.py 
new/flake8-isort-6.0.0/run_tests.py
--- old/flake8-isort-4.2.0/run_tests.py 1970-01-01 01:00:00.000000000 +0100
+++ new/flake8-isort-6.0.0/run_tests.py 2022-12-22 23:55:46.000000000 +0100
@@ -0,0 +1,267 @@
+"""unit tests for flake8-isort"""
+
+import collections
+import os
+import textwrap
+import pytest
+
+from flake8_isort import Flake8Isort
+
+
+def write_python_file(tmpdir, content):
+    source = textwrap.dedent(content)
+    file_path = os.path.join(str(tmpdir), 'test.py')
+    with open(file_path, 'w') as python_file:
+        python_file.write(source)
+    return (file_path, source)
+
+
+def write_isort_cfg(tmpdir, content):
+    write_config_file(tmpdir, '.isort.cfg', 'settings', content)
+
+
+def write_setup_cfg(tmpdir, content):
+    write_config_file(tmpdir, 'setup.cfg', 'isort', content)
+
+
+def write_tox_ini(tmpdir, content):
+    write_config_file(tmpdir, 'tox.ini', 'isort', content)
+
+
+def write_pyproject_toml(tmpdir, content):
+    write_config_file(tmpdir, 'pyproject.toml', 'tool.isort', content)
+
+
+def write_config_file(tmpdir, filename, header, content):
+    source = f'[{header}]\n{textwrap.dedent(content)}'
+    file_path = os.path.join(str(tmpdir), filename)
+    with open(file_path, 'w') as config_file:
+        config_file.write(source)
+
+
+def check_isort(return_values, references):
+    """Sort the return by (line, errortype) and compare it to the reference"""
+    assert len(return_values) == len(references)
+    for return_value, reference in zip(
+        sorted(return_values, key=lambda x: (x[0], x[2])), references
+    ):
+        assert return_value[:2] == reference[:2]
+        assert return_value[2].startswith(reference[2])
+
+
+testcases = [
+    {
+        'name': 'sorted_correctly_default',
+        'code': """
+            import os
+            from sys import path
+            """,
+        'reference': [],
+    },
+    {
+        'name': 'sorted_correctly_alpha',
+        'config': """
+            force_single_line=True
+            force_alphabetical_sort=True
+            """,
+        'code': """
+            from sys import path
+
+            import os
+            """,
+        'reference': [],
+    },
+    {
+        'name': 'eof_blank_lines',
+        'code': """
+            import os
+            from sys import path
+
+
+
+               """,
+        'reference': [],
+    },
+    {
+        'name': 'imports_requires_blank_line',
+        'code': """
+            from __future__ import division
+            import threading
+            from sys import pid
+            """,
+        'reference': [(3, 0, 'I003 ')],
+    },
+    {
+        'name': 'isortcfg_skip_file',
+        'config': 'skip=test.py',
+        'code': 'skipped_file',
+        'reference': [],
+    },
+    {'name': 'file_skipped_with_comment', 'code': '# isort:skip_file', 
'reference': []},
+    {
+        'name': 'imports_unexpected_blank_line',
+        'code': """
+            from __future__ import division
+
+            import threading
+
+            from sys import pid
+            """,
+        'reference': [(5, 0, 'I004 ')],
+    },
+    {
+        'name': 'sorted_incorrectly_multiple',
+        'code': """
+            from __future__ import division
+            import os
+            from sys import pid
+            import threading
+
+            import isort
+
+
+
+            def func(): ...
+            """,
+        'reference': [(3, 0, 'I003 '), (5, 0, 'I001 '), (10, 0, 'I004 ')],
+    },
+    {
+        'name': 'sorted_incorrectly',
+        'config': 'force_single_line=True',
+        'code': """
+            from sys import pid
+            import threading
+            """,
+        'reference': [(3, 0, 'I001 ')],
+    },
+    {'name': 'empty_file', 'code': '\n\n', 'reference': []},
+    {
+        'name': 'wrapped_imports',
+        'config': 'wrap_length=65',
+        'code': """
+            from deluge.common import (fdate, fpcnt, fpeer, fsize, fspeed,
+                                       ftime, get_path_size, is_infohash,
+                                       is_ip, is_magnet, is_url)
+            """,
+        'reference': [],
+    },
+    {
+        'name': 'force_single_line_imports',
+        'config': """
+            force_alphabetical_sort=True
+            force_single_line=True
+            """,
+        'code': """
+            from plone.app.testing import applyProfile
+            from plone.app.testing import FunctionalTesting
+            """,
+        'reference': [],
+    },
+    {
+        'name': 'missing_add_imports',
+        'config': 'add_imports=from __future__ import unicode_literals',
+        'code': 'import os\n',
+        'reference': [(1, 0, 'I003'), (1, 0, 'I005')],
+    },
+]
+
+
+@pytest.mark.parametrize('mode', ['file', 'code_string'])
+@pytest.mark.parametrize('testcase', testcases, ids=[t['name'] for t in 
testcases])
+def test_flake8_isort(tmpdir, testcase, mode):
+    """Test the code examples in files and directly from string"""
+    with tmpdir.as_cwd():
+        if 'config' in testcase:
+            write_isort_cfg(tmpdir, testcase['config'])
+        if mode == 'file':
+            (file_path, lines) = write_python_file(tmpdir, testcase['code'])
+            checker = Flake8Isort(None, file_path, lines)
+        elif mode == 'code_string':
+            source = textwrap.dedent(testcase['code'])
+            checker = Flake8Isort(None, None, source)
+        return_values = list(checker.run())
+        check_isort(return_values, testcase['reference'])
+
+
+def test_isortcfg_found(tmpdir):
+    source = """
+    from sys import pid
+    import threading
+    """
+    (file_path, lines) = write_python_file(tmpdir, source)
+    write_isort_cfg(tmpdir, 'force_single_line=True')
+    checker = Flake8Isort(None, file_path, lines)
+    checker.config_file = True
+    ret = list(checker.run())
+    check_isort(ret, [(3, 0, 'I001 ')])
+
+
+def test_isortcfg_not_found(tmpdir):
+    (file_path, lines) = write_python_file(tmpdir, 'from sys import pid, path')
+    checker = Flake8Isort(None, file_path, lines)
+    checker.search_current = False
+    checker.config_file = True
+    ret = list(checker.run())
+    check_isort(ret, [(1, 0, 'I001 ')])
+
+
+def test_isort_formatted_output(tmpdir):
+    source = """
+    from __future__ import division
+    import os
+    from sys import pid
+    """
+    options = collections.namedtuple(
+        'Options',
+        [
+            'no_isort_config',
+            'isort_show_traceback',
+            'stdin_display_name',
+            'isort_no_skip_gitignore',
+        ],
+    )
+
+    (file_path, lines) = write_python_file(tmpdir, source)
+
+    diff = ' from __future__ import division\n+\n import os'
+
+    checker = Flake8Isort(None, file_path, lines)
+    checker.parse_options(None, options(None, True, 'stdin', None), None)
+    ret = list(checker.run())
+    assert len(ret) == 1
+    assert ret[0][0] == 3
+    assert ret[0][1] == 0
+    assert diff in ret[0][2]
+
+
+@pytest.mark.parametrize(
+    'method_to_write_config',
+    [write_isort_cfg, write_setup_cfg, write_tox_ini, write_pyproject_toml],
+)
+def test_if_config_file_is_used(tmpdir, method_to_write_config):
+    source = """
+    import os
+    from sys import path
+    """
+    (file_path, lines) = write_python_file(
+        tmpdir,
+        source,
+    )
+    method_to_write_config(tmpdir, 'lines_between_types=1')
+
+    checker = Flake8Isort(None, file_path, lines)
+    ret = list(checker.run())
+    check_isort(ret, [(3, 0, 'I003 ')])
+
+
+def test_flake8(tmpdir):
+    from flake8.main import cli
+    import sys
+
+    (file_path, lines) = write_python_file(tmpdir, 'from sys import pid, path')
+
+    sys.argv = sys.argv[:2]
+    try:
+        assert isinstance(cli.main(), int)
+    except SystemExit:
+        pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/setup.cfg 
new/flake8-isort-6.0.0/setup.cfg
--- old/flake8-isort-4.2.0/setup.cfg    2022-08-04 18:53:07.776674700 +0200
+++ new/flake8-isort-6.0.0/setup.cfg    2022-12-22 23:55:46.000000000 +0100
@@ -1,15 +1,12 @@
-[bdist_wheel]
-universal = 0
-
 [zest.releaser]
 create-wheel = yes
-python-file-with-version = flake8_isort.py
+
+[check-manifest]
+ignore = 
+       .installed.cfg
 
 [isort]
-force_alphabetical_sort = True
-force_single_line = True
-lines_after_imports = 2
-line_length = 200
+profile = black
 
 [egg_info]
 tag_build = 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/setup.py 
new/flake8-isort-6.0.0/setup.py
--- old/flake8-isort-4.2.0/setup.py     2022-08-04 18:53:07.000000000 +0200
+++ new/flake8-isort-6.0.0/setup.py     2022-12-22 23:55:46.000000000 +0100
@@ -1,31 +1,26 @@
-# -*- coding: utf-8 -*-
 from setuptools import setup
 
-import re
+short_description = 'flake8 plugin that integrates isort .'
 
 
-def get_version(file="flake8_isort.py"):
-    with open(file) as f:
-        for line in f:
-            m = re.match(r"^__version__ = '(?P<version>.*?)'$", line)
-            if m:
-                return m.group('version')
+def read_file(filename):
+    with open(filename) as file_obj:
+        file_contents = file_obj.read()
+    return file_contents
 
 
-short_description = 'flake8 plugin that integrates isort .'
-
-long_description = '{0}\n{1}'.format(
-    open('README.rst').read(),
-    open('CHANGES.rst').read(),
-)
+long_description = f"""
+{read_file('README.rst')}
+{read_file('CHANGES.rst')}
+"""
 
 
 setup(
     name='flake8-isort',
-    version=get_version(),
+    version='6.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',
@@ -36,32 +31,40 @@
         'Programming Language :: Python',
         'Programming Language :: Python :: 3',
         'Programming Language :: Python :: 3 :: Only',
-        'Programming Language :: Python :: 3.6',
         'Programming Language :: Python :: 3.7',
         'Programming Language :: Python :: 3.8',
         'Programming Language :: Python :: 3.9',
         'Programming Language :: Python :: 3.10',
+        'Programming Language :: Python :: 3.11',
         'Programming Language :: Python :: Implementation :: CPython',
         'Programming Language :: Python :: Implementation :: PyPy',
         'Topic :: Software Development',
         'Topic :: Software Development :: Quality Assurance',
     ],
-    keywords='pep8 flake8 isort imports',
+    python_requires='>=3.7',
+    keywords='pep8 flake8 python isort imports',
     author='Gil Forcada',
     author_email='gil.gn...@gmail.com',
     url='https://github.com/gforcada/flake8-isort',
     license='GPL version 2',
-    py_modules=['flake8_isort', ],
+    py_modules=[
+        'flake8_isort',
+    ],
     include_package_data=True,
+    test_suite='run_tests',
     zip_safe=False,
     install_requires=[
-        'flake8 >= 3.2.1, <6',
-        'isort >= 4.3.5, <6',
+        'flake8',
+        'isort >= 5.0.0, <6',
     ],
     extras_require={
-        'test': ['pytest-cov'],
+        'test': [
+            'pytest',
+        ],
     },
     entry_points={
-        'flake8.extension': ['I00 = flake8_isort:Flake8Isort', ],
+        'flake8.extension': [
+            'I00 = flake8_isort:Flake8Isort',
+        ],
     },
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/flake8-isort-4.2.0/test_flake8_isort.py 
new/flake8-isort-6.0.0/test_flake8_isort.py
--- old/flake8-isort-4.2.0/test_flake8_isort.py 2022-08-04 18:53:07.000000000 
+0200
+++ new/flake8-isort-6.0.0/test_flake8_isort.py 1970-01-01 01:00:00.000000000 
+0100
@@ -1,216 +0,0 @@
-"""unit tests for flake8-isort
-
-the test should pass with both isort 4 and isort 5
-"""
-
-import collections
-import os
-import pytest
-
-from flake8_isort import Flake8Isort
-
-
-def write_python_file(tmpdir, content):
-    file_path = os.path.join(str(tmpdir), 'test.py')
-    with open(file_path, 'w') as python_file:
-        python_file.write(content)
-    return (file_path, content)
-
-
-def write_isort_cfg(tmpdir, content):
-    content = '[settings]\n' + content
-    write_config_file(tmpdir, '.isort.cfg', content)
-
-
-def write_setup_cfg(tmpdir, content):
-    content = '[isort]\n' + content
-    write_config_file(tmpdir, 'setup.cfg', content)
-
-
-def write_tox_ini(tmpdir, content):
-    content = '[isort]\n' + content
-    write_config_file(tmpdir, 'tox.ini', content)
-
-
-def write_pyproject_toml(tmpdir, content):
-    content = '[tool.isort]\n' + content
-    write_config_file(tmpdir, 'pyproject.toml', content)
-
-
-def write_config_file(tmpdir, filename, content):
-    file_path = os.path.join(str(tmpdir), filename)
-    with open(file_path, 'w') as config_file:
-        config_file.write(content)
-
-
-def check_isort_ret(ret, ref):
-    """Sort the return by (line, errortype) and compare it to the reference"""
-    assert len(ret) == len(ref)
-    for ret_i, ref_i in zip(sorted(ret, key=lambda x: (x[0], x[2])), ref):
-        assert ret_i[:2] == ref_i[:2]
-        assert ret_i[2].startswith(ref_i[2])
-
-
-testcases = [
-    {'name': 'sorted_correctly_default',
-     'code': ('import os\n'
-              'from sys import path\n'),
-     'ref': []},
-    {'name': 'sorted_correctly_alpha',
-     'config': 'force_single_line=True\n'
-               'force_alphabetical_sort=True\n',
-     'code': 'from sys import path\n'
-             '\n'
-             'import os\n',
-     'ref': []},
-    {'name': 'eof_blank_lines',
-     'code': 'import os\n'
-             'from sys import path\n'
-             '\n'
-             '\n'
-             '   \n',
-     'ref': []},
-    {'name': 'imports_requires_blank_line',
-     'code': 'from __future__ import division\n'
-             'import threading\n'
-             'from sys import pid\n',
-     'ref': [(2, 0, 'I003 ')]},
-    {'name': 'isortcfg_skip_file',
-     'config': 'skip=test.py',
-     'code': 'skipped_file',
-     'ref': []},
-    {'name': 'file_skipped_with_comment',
-     'code': '# isort:skip_file',
-     'ref': []},
-    {'name': 'imports_unexpected_blank_line',
-     'code': 'from __future__ import division\n'
-             '\n'
-             'import threading\n'
-             '\n'
-             'from sys import pid\n',
-     'ref': [(4, 0, 'I004 ')]},
-    {'name': 'sorted_incorrectly_multiple',
-     'code': 'from __future__ import division\n'
-             'import os\n'
-             'from sys import pid\n'
-             'import threading\n'
-             '\n'
-             'import isort\n'
-             '\n\n\n'
-             'def func()\n',
-     'ref': [(2, 0, 'I003 '),
-             (4, 0, 'I001 '),
-             (9, 0, 'I004 ')]},
-    {'name': 'sorted_incorrectly',
-     'config': 'force_single_line=True',
-     'code': 'from sys import pid\n'
-             'import threading',
-     'ref': [(2, 0, 'I001 ')]},
-    {'name': 'empty_file',
-     'code': '\n\n',
-     'ref': []},
-    {'name': 'wrapped_imports',
-     'config': 'wrap_length=65',
-     'code': 'from deluge.common import (fdate, fpcnt, fpeer, fsize, fspeed,\n'
-             '                           ftime, get_path_size, is_infohash,\n'
-             '                           is_ip, is_magnet, is_url)\n',
-     'ref': []},
-    {'name': 'force_single_line_imports',
-     'config': 'force_alphabetical_sort=True\n'
-               'force_single_line=True',
-     'code': 'from plone.app.testing import applyProfile\n'
-             'from plone.app.testing import FunctionalTesting\n',
-     'ref': []},
-    {'name': 'missing_add_imports',
-     'config': 'add_imports=from __future__ import unicode_literals',
-     'code': 'import os\n',
-     'ref': [(1, 0, 'I003'),
-             (1, 0, 'I005')]},
-]
-
-
-@pytest.mark.parametrize('mode', ["file", "code_string"])
-@pytest.mark.parametrize('testcase', testcases,
-                         ids=[t['name'] for t in testcases])
-def test_flake8_isort(tmpdir, testcase, mode):
-    """Test the code examples in files and directly from string"""
-    with tmpdir.as_cwd():
-        if 'config' in testcase:
-            write_isort_cfg(tmpdir, testcase['config'])
-        if mode == "file":
-            (file_path, lines) = write_python_file(tmpdir, testcase['code'])
-            checker = Flake8Isort(None, file_path, lines)
-        elif mode == "code_string":
-            checker = Flake8Isort(None, None, testcase['code'])
-        else:
-            raise RuntimeError("invalid mode")
-        ret = list(checker.run())
-        check_isort_ret(ret, testcase['ref'])
-
-
-def test_isortcfg_found(tmpdir):
-    (file_path, lines) = write_python_file(
-        tmpdir,
-        'from sys import pid\n'
-        'import threading',
-    )
-    write_isort_cfg(tmpdir, 'force_single_line=True')
-    checker = Flake8Isort(None, file_path, lines)
-    checker.config_file = True
-    ret = list(checker.run())
-    check_isort_ret(ret, [(2, 0, 'I001 ')])
-
-
-def test_isortcfg_not_found(tmpdir):
-    (file_path, lines) = write_python_file(
-        tmpdir,
-        'from sys import pid, path'
-    )
-    checker = Flake8Isort(None, file_path, lines)
-    checker.search_current = False
-    checker.config_file = True
-    ret = list(checker.run())
-    check_isort_ret(ret, [(1, 0, 'I001 ')])
-
-
-def test_isort_formatted_output(tmpdir):
-    options = collections.namedtuple(
-        'Options', [
-            'no_isort_config',
-            'isort_show_traceback',
-            'stdin_display_name'
-        ]
-    )
-
-    (file_path, lines) = write_python_file(
-        tmpdir,
-        'from __future__ import division\n'
-        'import os\n'
-        'from sys import pid\n',
-    )
-
-    diff = ' from __future__ import division\n+\n import os'
-
-    checker = Flake8Isort(None, file_path, lines)
-    checker.parse_options(options(None, True, 'stdin'))
-    ret = list(checker.run())
-    assert len(ret) == 1
-    assert ret[0][0] == 2
-    assert ret[0][1] == 0
-    assert diff in ret[0][2]
-
-
-@pytest.mark.parametrize(
-    'method_to_write_config',
-    [write_isort_cfg, write_setup_cfg, write_tox_ini, write_pyproject_toml])
-def test_if_config_file_is_used(tmpdir, method_to_write_config):
-    (file_path, lines) = write_python_file(
-        tmpdir,
-        'import os\n'
-        'from sys import path\n',
-    )
-    method_to_write_config(tmpdir, 'lines_between_types=1')
-
-    checker = Flake8Isort(None, file_path, lines)
-    ret = list(checker.run())
-    check_isort_ret(ret, [(2, 0, 'I003 ')])

Reply via email to