Metadata-Version: 2.1
Name: flake8-isort
Version: 6.0.0
Summary: flake8 plugin that integrates isort .
Home-page: https://github.com/gforcada/flake8-isort
Author: Gil Forcada
Author-email: gil.gnome@gmail.com
License: GPL version 2
Keywords: pep8 flake8 python isort imports
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 :: 3
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 :: 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
License-File: LICENSE
Requires-Dist: flake8
Requires-Dist: isort (<6,>=5.0.0)
Provides-Extra: test
Requires-Dist: pytest ; extra == 'test'


.. -*- coding: utf-8 -*-

.. 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
   :target: https://coveralls.io/github/gforcada/flake8-isort?branch=master

Flake8 meet isort
=================
Use `isort`_ to check if the imports on your python files are sorted the way you expect.

Add an ``.isort.cfg`` to define how you want your imports sorted and run flake8 as you usually do.

See `isort documentation`_ for ``.isort.cfg`` available options.

Install
-------
Install with pip::

    $ pip install flake8-isort

Install with conda::

    $ conda install -c conda-forge flake8-isort


Configuration
-------------
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
-----------
+------------+-----------------------------------------------------------+
| Error code | Description                                               |
+============+===========================================================+
| I001       | isort found an import in the wrong position               |
+------------+-----------------------------------------------------------+
| I002       | no configuration found (.isort.cfg or [isort] in configs) |
+------------+-----------------------------------------------------------+
| I003       | isort expected 1 blank line in imports, found 0           |
+------------+-----------------------------------------------------------+
| I004       | isort found an unexpected blank line in imports           |
+------------+-----------------------------------------------------------+
| I005       | isort found an unexpected missing import                  |
+------------+-----------------------------------------------------------+

Requirements
------------
- Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3
- flake8
- isort

Relation to flake8-import-order
-------------------------------

As an alternative to this flake8 plugin, there's `flake8-import-order`_ that could be worth checking out. In contrast to this plugin that defers all logic to isort, the flake8-import-order comes bundled with it's own logic.

flake8-import-order comes with a few predefined set of styles meanwhile this plugin can be customized a bit more. But the biggest difference could lie in that flake8-isort actually has the corresponding sorting engine isort that can sort the import orders of your existing python files. Meanwhile flake8-import-order has no such corresponding tool, hence big existing projects who want to adopt either would get a more automized experience choosing flake8-isort.

License
-------
GPL 2.0

.. _`isort`: https://pypi.python.org/pypi/isort
.. _`isort documentation`: https://pycqa.github.io/isort/docs/configuration/options.html
.. _`flake8-import-order`: https://pypi.python.org/pypi/flake8-import-order
.. _`option from flake8`: http://flake8.pycqa.org/en/latest/user/options.html#cmdoption-flake8-select

.. -*- coding: utf-8 -*-

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)
------------------

- Fix compatibility with flake8 version 5. [nhymxu]


4.1.2.post0 (2022-07-25)
------------------------

- Release it as a wheel as well. [gforcada]


4.1.2 (2022-07-25)
------------------

- The package no longer depends on ``testfixtures``. 


4.1.1 (2021-10-14)
------------------

- Release py3 only wheels..


4.1.0 (2021-10-14)
------------------

- Support flake8 4.x [g-as]

- Switch from travis-ci to github actions. [g-as]

- Drop python 2.7 support and 3.5 as well [g-as]


4.0.0 (2020-08-11)
------------------

- Nothing changed yet.


4.0.0a0 (2020-08-07)
--------------------

- support isort >= 5 [bnavigator, pkolbus]


3.0.1 (2020-07-08)
------------------

- Work around `FailedToLoadPlugin` exception by requiring `isort` 4.x. Likewise,
  pin the major version of all dependencies, to reduce risk of any future
  incompatibilities.
  [pkolbus]


3.0.0 (2020-04-15)
------------------

- Let `isort` search the configuration, rather than `flake8-isort` try to find it.
  [jnns]

2.9.1 (2020-03-28)
------------------

- Fix flake8 warning.
  [sobolevn]

2.9.0 (2020-03-16)
------------------

- Add ``python3.8`` support.
  [sobolevn]

2.8.0 (2019-12-05)
------------------

- Look for isort configuration on `.flake8` files as well.
  [JohnHBrock]

- Document how to install `flake8-isort` on conda.
  [marcelotrevisani]

- Look for isort configuration on `pyproject.toml` files as well.
  [sanjioh]

2.7.0 (2019-03-19)
------------------

- Improve the README.
  [barbossa]

- Fix isort output when pipes are used.
  [maerteijn]

2.6.0 (2018-12-01)
------------------

- Use pytest to run tests.
  [gforcada]

- New error code I005 isort foundan unexpected missing import.
  [charettes]

- Add ``isort_show_traceback`` option to show verbose multi-line output
  from ``isort``, turned off by default
  [sobolevn]

2.5 (2018-03-15)
----------------

- Now requires isort >= 4.3.0.
  [jleclanche]


2.4 (2018-02-25)
----------------

- Fix input handling with flake8's --stdin-display-name, and simplify it.
  [blueyed]

- Remove flake8-polyfill dependency.  flake8 >= 3.2.1 is required already, and
  stdin is not read directly anymore.
  [blueyed]

2.3 (2017-12-22)
----------------

- Fix typo.
  [paltman]

- Add tox.ini and .editorconfig to config search.
  [cas--]

- Make this plugin compatible with flake8 hook.
  As the hook copies the files out of tree,
  flake8-isort never finds the correct configuration.
  [jaysonsantos]

2.2.2 (2017-08-19)
------------------

- Workaround for isort bug when skipping files.
  [danpalmer]

2.2.1 (2017-05-12)
------------------

- Release as universal wheel.
  [gforcada]

2.2 (2017-03-26)
----------------

- Support flake8 git hook.
  [sergio-alonso]

- Support python 3.6.
  [gforcada]

- Search configuration on home folder.
  [gforcada]

2.1.3 (2016-11-25)
------------------

- Fix yet another corner case.
  [gforcada]

2.1.2 (2016-11-25)
------------------

- Fix another corner case: ignored files.
  [cas--]

2.1.1 (2016-11-25)
------------------

- Fix corner cases of isort: newlines and grouped imports.
  [cas--]

2.1.0 (2016-11-24)
------------------

- Show the exact line and kind of error,
  rather than a generic message.
  [cas--]

2.0.3 (2016-11-22)
------------------

- Update trove classifiers.
  [gforcada]

2.0.2 (2016-11-22)
------------------

- Add flake8 classifier.
  [sigmavirus24]

- Require flake8 3.2.1.
  flake8 series 3.1.x and 3.2.0 where not reporting flake8-isort errors.
  [gforcada]

- Test on pypy and pypy3.
  [gforcada]

- Fix tests and formatting.
  [gforcada]

2.0.1 (2016-09-22)
------------------

- Fix standard input processing.
  [carljm]


2.0 (2016-09-14)
----------------

- Refactor code to handle flake8 version 3.
  [danpalmer]

- Require flake8 version 3.0.
  [gforcada]

1.3 (2016-06-20)
----------------

- Make error messages clearer.
  [do3cc]

- Use either pep8 or pycodestyle (new name for pep8).
  [Maxim Novikov]

- Fix coveralls.
  [gforcada]

1.2 (2016-03-05)
----------------
- Allow stdin processing, this way text editor can pass input to flake8.
  [mjacksonw]

1.1.1 (2016-02-16)
------------------
- Silence isort messages.
  [gforcada]

- Improve wording.
  [gforcada]

1.1 (2016-02-16)
----------------
- Check for isort configuration on setup.cfg as well.
  [plumdog]

1.0 (2015-12-16)
----------------
- Check for an isort configuration file.
  [gforcada]

0.2 (2015-09-14)
----------------
- Fix entry point.
  [gforcada]

0.1.post0 (2015-09-13)
----------------------
- Release wheels as well.
  [gforcada]

0.1 (2015-09-13)
----------------
- Initial release
  [gforcada]

- Add all boilerplate files.
  [gforcada]

- Create the flake8 plugin per se.
  [gforcada]

