MarcoGorelli / absolufy-imports

Automatically convert relative imports to absolute

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status Coverage pre-commit.ci status

absolufy-imports

A tool and pre-commit hook to automatically convert relative imports to absolute.

demo

Installation

$ pip install absolufy-imports

Usage as a pre-commit hook

See pre-commit for instructions

Sample .pre-commit-config.yaml:

-   repo: https://github.com/MarcoGorelli/absolufy-imports
    rev: v0.3.1
    hooks:
    -   id: absolufy-imports

Command-line example

$ absolufy-imports mypackage/myfile.py
- from . import __version__
+ from mypackage import __version__

Configuration

Application directories

If your package follows the popular ./src layout, you can pass your application directories via --application-directories, e.g.

$ absolufy-imports src/mypackage/myfile.py --application-directories src
- from . import __version__
+ from mypackage import __version__

Multiple application directories should be colon-separated, e.g. --application-directories .:src. This is the same as in reorder-python-imports.

Run on directory

I'd suggest using pre-commit.

Either that, or

git ls-files | grep '\.py$' | xargs absolufy-imports

Relative imports if some condition else absolute

naah...

About

Automatically convert relative imports to absolute

License:MIT License


Languages

Language:Python 100.0%