flake8-new-union-types

Flake8 plugin to enforce the new Union and Optional annotation syntax defined in PEP 604


Keywords
flake8, flake8-plugin, linting, linter, code, quality, pep604, pep, 604, syntax
License
MIT
Install
pip install flake8-new-union-types==0.4.1

Documentation

flake8-new-union-types

Build Status PyPI PyPI - Python Version PyPI - License

Flake8 plugin to enforce the new Union and Optional annotation syntax defined in PEP 604.

Union[X, Y] = X | Y

Optional[X] = X | None

Note that it's impossible to use forward references in the new syntax, like this:

"X" | int

such a case can be expressed as a string containing both union terms:

"X | int"

Installation

pip install flake8-new-union-types

or if you use poetry:

poetry add --dev flake8-new-union-types

Usage

Error list

  • NU001 Use Foo | Bar syntax instead of Union (PEP 604)
  • NU002 Use Foo | None syntax instead of Optional (PEP 604)
  • NU003 Present the whole expression as a string to annotate forward refs, e.g. "int | Foo" (PEP 604)

Configuration

There is no way to configure the plugin at the moment.