Sort imports in lexicographical order
Python
Latest commit 8b5796e Dec 18, 2016 @admire93 admire93 committed on GitHub Merge pull request #27 from item4/sort
Fix import path resolve problem
Permalink
Failed to load latest commit information.
import_order
tests
.gitignore
.travis.yml
LICENSE
README.rst
setup.cfg
setup.py
tox.ini

README.rst

import-order

Wheel Status Supported Python versions pypi packages travis-ci status

CLI that check the ordering of imports. ordering follow a below rules.

  1. Module order: __future__ , standard libraries, site-packages, local.
  2. CONSTANT_NAMES must be the first.
  3. ClassNames must be the second.
  4. Rest must be in alphabetical order.

Requirements

  • Python 2.7.x or Python 3.3+

How to install

Via pip

$ pip install -U import-order

Or clone source code from repository and install it.

$ git clone https://github.com/spoqa/import-order.git
$ cd import_order
$ python setup.py install # or pip install .

How to use

Use import-order to check your python codes. If you want to check your local package named foo in root directory of package.

$ import-order foo

If you check your directory bar with local packages ( foo , baz ).

$ import-order foo ./bar baz

Or you can check your directory bar , file some.py without local packages (if --only-file is missing, it will raise ValueError ).

$ import-order --only-file ./bar some.py

For more information, look around help command.

$ import-order --help

When you ignore order on purpose, simply add # no import order at the import statement.

from foo.bar import b, a, c  # no import order

Author and license

import-order is maintained by Spoqa, and licensed under GPL3 or later.