Statically populate the `known_third_party` `isort` setting.
Project description
seed-isort-config
Statically populate the known_third_party
isort
setting.
isort
when run in isolation is not the best at determining what
dependencies are third party.
aspy.refactor_imports
is fortunately much better at
this static analysis.
Why not just use reorder-python-imports
? Well, it
lacks a few features provided by isort
(intentionally).
What this script does is seeds the known_third_party
isort configuration
automatically.
install
pip install seed-isort-config
usage
seed-isort-config
provides a single executable by the same name. Run it
inside a git
repository.
To specify custom application roots (such as with the src
pattern) pass a
colon-separated --application-directories
parameter.
Files may be excluded from the process using the --exclude
flag.
This argument takes a python regular expression.
For a full list of arguments, see seed-isort-config --help
.
getting started
seed-isort-config
looks for an existing known_third_party
setting in an
isort configuration file. It will modify that if it exists, otherwise it'll
create a brand new .isort.cfg
file.
The easiest way to get started is to just add a blank known_third_party =
section to your isort configuration (or known_third_party = []
if you are
using pyproject.toml
).
usage with pre-commit
This works especially well when integrated with pre-commit
.
- repo: https://github.com/asottile/seed-isort-config
rev: v1.9.2
hooks:
- id: seed-isort-config
- repo: https://github.com/pre-commit/mirrors-isort
rev: v4.3.20
hooks:
- id: isort
In this configuration, seed-isort-config
will adjust the known_third_party
section of the isort
configuration before isort
runs!
Note that seed-isort-config
doesn't act like a normal pre-commit linter so
file exclusion must be configured through args: [--exclude=...]
instead.
For example: args: [--exclude=tests/.*\.py]
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for seed_isort_config-1.9.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 072c665a64bca56b23a942f79acf6542a0ef07c5a3c965fdbb9d23a64d026d81 |
|
MD5 | 0af9f4febeb26cc4ba6f1f4bcea9209b |
|
BLAKE2b-256 | 0d0d25544f038eb6160cc91c49babd5ec683d839b88e15a7569ea9a850498860 |