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: v2.2.0
hooks:
- id: seed-isort-config
- repo: https://github.com/timothycrosley/isort
rev: 4.3.21 # pick the isort version you'd like to use from https://github.com/timothycrosley/isort/releases
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file seed_isort_config-2.2.0.tar.gz.
File metadata
- Download URL: seed_isort_config-2.2.0.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be4cfef8f9a3fe8ea1817069c6b624538ac0b429636ec746edeb27e98ed628c8
|
|
| MD5 |
e1036cf42fef58eaf11d73a4ce828c33
|
|
| BLAKE2b-256 |
e1b2bda7e27d9b42e7fae4d78f47709f2c21f9cf0f3f927f701d9e6a8bd533a6
|
File details
Details for the file seed_isort_config-2.2.0-py2.py3-none-any.whl.
File metadata
- Download URL: seed_isort_config-2.2.0-py2.py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8601fb715a5a4aac39256bbf73c2da6a81f964da9c9d9897ab9074db3663526f
|
|
| MD5 |
d37593d959a7c2837b0a12f658261b31
|
|
| BLAKE2b-256 |
6b8578c654684181ecab22c279d425479a5265f9c1fa144939b35bdf1ac7cc35
|