Skip to main content

Flake8 wrapper to make it nice and configurable

Project description

FlakeHell

It’s a Flake8 wrapper to make it cool.

  • Sharable and remote configs.

  • Legacy-friendly: ability to get report only about new errors.

  • Use only specified plugins, not everything installed.

  • Manage codes per plugin.

  • Enable and disable plugins and codes by wildcard.

  • Make output beautiful.

  • pyproject.toml support.

  • Show codes for installed plugins.

  • Show all messages and codes for a plugin.

  • Check that all required plugins are installed.

  • Syntax highlighting in messages and code snippets.

  • PyLint integration.

output example

Installation

python3 -m pip install --user flakehell

Usage

First of all, let’s create pyproject.toml config:

[tool.flakehell]
# optionally inherit from remote config (or local if you want)
base = "https://raw.githubusercontent.com/life4/flakehell/master/pyproject.toml"
# specify any flake8 options. For example, exclude "example.py":
exclude = ["example.py"]
# make output nice
format = "grouped"
# 80 chars aren't enough in 21 century
max_line_length = 90
# show line of source code in output
show_source = true

# list of plugins and rules for them
[tool.flakehell.plugins]
# include everything in pyflakes except F401
pyflakes = ["+*", "-F401"]
# enable only codes from S100 to S199
flake8-bandit = ["-*", "+S1??"]
# enable everything that starts from `flake8-`
"flake8-*" = ["+*"]
# explicitly disable plugin
flake8-docstrings = ["-*"]

Show plugins that aren’t installed yet:

flakehell missed

Show installed plugins, used plugins, specified rules, codes prefixes:

flakehell plugins
plugins command output

Show codes and messages for a specific plugin:

flakehell codes pyflakes
codes command output

Run flake8 against the code:

flakehell lint

This command accepts all the same arguments as Flake8.

Read flakehell.readthedocs.io for more information.

The FlakeHell mascot (Flaky) is created by @diana_leit and licensed under the CC BY-SA 4.0 license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flakehell-0.2.0.tar.gz (20.4 kB view details)

Uploaded Source

Built Distribution

flakehell-0.2.0-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file flakehell-0.2.0.tar.gz.

File metadata

  • Download URL: flakehell-0.2.0.tar.gz
  • Upload date:
  • Size: 20.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

File hashes

Hashes for flakehell-0.2.0.tar.gz
Algorithm Hash digest
SHA256 aa1bc3d86b0d4cf802603121fd684502c12b30df06b038e7781020d83f8e3734
MD5 59d8fd6aa891267591d96b7156d22f9a
BLAKE2b-256 477790ff8aa09e0a6b74648b2bdde18dab44e1554aa078cce4194d83ddc0d8e7

See more details on using hashes here.

File details

Details for the file flakehell-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: flakehell-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 26.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

File hashes

Hashes for flakehell-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 41cec7e323509de88ccd599d70b31f548aef8f1b7fea06978696bfd42d3016c2
MD5 83d4bfd067791792461f920318869b57
BLAKE2b-256 65bddbc41b5ce631b5a5abefb1a478b27f14327cfd60e5d43d7c9ca2e10d2e8d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page