Skip to main content

flake8 extension to force running check

Project description

flake8-force

PyPI Test

Flake8 extension that provides force-check option.

When this option is enabled, flake8 performs all checks even if the target file cannot be interpreted as a Python source code (e.g., when there is a syntax error in the file).

This extension was written to bring back the behavior of flake8 v3.x in flake8 v4.0+ to lint against Cython code. Note that the option is ineffective in flake8 v3.x or earlier.

Installation

pip install flake8-force

Usage

  • Specify the option via the command line: flake8 --force-check ....
  • Add force-check = True to the flake8 configuration file.

Tips for checking Cython code

While this extension "forces" flake8 to ignore problems with parsing Cython syntax as Python code, flake8 must be separately configured to permit Cython syntax through ignoring certain rules. The configuration below is suggested for that purpose. Some projects may not need to ignore every rule, depending on the use of Cython. The pycodestyle docs define what each rule means.

[flake8]
filename = *.py,*.pyx,*.pxd,*.pxi
ignore = E203,E225,E226,E227,E402,E741,E901,E999,W503,W504
force-check = True

Pre-commit hook

The configuration below can be used with pre-commit to install this extension alongside flake8 and enable checking Cython files. Also see the flake8 docs on version control hooks.

-   repo: https://github.com/PyCQA/flake8
    rev: ''  # Pick a git hash / tag to point to
    hooks:
    -   id: flake8
        types: ["file"]  # Override the default types (only python)
        types_or: ["python", "cython"]  # Support both python and cython types
        additional_dependencies: ["flake8-force"]  # Add this extension

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

flake8-force-0.0.2.tar.gz (3.9 kB view hashes)

Uploaded Source

Built Distribution

flake8_force-0.0.2-py3-none-any.whl (4.3 kB view hashes)

Uploaded Python 3

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