joaopalmeiro / flake8-import-conventions

An opinionated plugin for Flake8 on how certain packages should be imported or aliased.

Home Page:https://pypi.org/project/flake8-import-conventions/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

flake8-import-conventions

PyPI

An opinionated plugin for Flake8 on how certain packages should be imported or aliased.

It is based on the pandas-vet and flake8-2020 plugins.

Installation

Via Pipenv:

pipenv install --dev flake8 flake8-import-conventions

Flake8 codes

Package Code Description
Altair IC001 altair should be imported as import altair as alt
GeoPandas IC002 geopandas should be imported as import geopandas
Matplotlib IC003 matplotlib.pyplot should be imported as import matplotlib.pyplot as plt
NetworkX IC004 networkx should be imported as import networkx as nx
NumPy IC005 numpy should be imported as import numpy as np
pandas IC006 pandas should be imported as import pandas as pd
Plotly IC007 plotly.express should be imported as import plotly.express as px
Plotly IC008 plotly.graph_objects should be imported as import plotly.graph_objects as go
seaborn IC009 seaborn should be imported as import seaborn as sns
statsmodels IC010 statsmodels.api should be imported as import statsmodels.api as sm

Development

poetry install --with dev
poetry shell

Open the manual_test.py file in VS Code to see the error messages.

pytest tests/ -v

or (to see print()s)

pytest tests/ -v -s

Copy the output of the following script and paste it in the Flake8 codes section:

python gen_table.py

If changes are not reflected in VS Code after changing something in the package, close it and open it again.

Deployment

poetry check
poetry version minor

or

poetry version patch

Commit the change in the pyproject.toml file.

git tag
git tag "v$(poetry version --short)"
git push origin "v$(poetry version --short)"

References

About

An opinionated plugin for Flake8 on how certain packages should be imported or aliased.

https://pypi.org/project/flake8-import-conventions/

License:MIT License


Languages

Language:Python 100.0%