Skip to main content

Check PEP-8 naming conventions, plugin for flake8

Project description

Check your code against PEP 8 naming conventions.

This module provides a plugin for flake8, the Python code checker.

(It replaces the plugin flint-naming for the flint checker.)

Installation

You can install, upgrade, uninstall pep8-naming with these commands:

$ pip install pep8-naming
$ pip install --upgrade pep8-naming
$ pip uninstall pep8-naming

Plugin for Flake8

When both flake8 and pep8-naming are installed, the plugin is available in flake8:

$ flake8 --version
4.0.1 (mccabe: 0.6.1, naming: 0.13.0, pycodestyle: 2.8.0, pyflakes: 2.4.0) CPython 3.8.10 on Linux

By default the plugin is enabled.

Error Codes

These error codes are emitted:

code

sample message

N801

class names should use CapWords convention (class names)

N802

function name should be lowercase (function names)

N803

argument name should be lowercase (function arguments)

N804

first argument of a classmethod should be named ‘cls’ (function arguments)

N805

first argument of a method should be named ‘self’ (function arguments)

N806

variable in function should be lowercase

N807

function name should not start and end with ‘__’

N811

constant imported as non constant (constants)

N812

lowercase imported as non-lowercase

N813

camelcase imported as lowercase

N814

camelcase imported as constant (distinct from N817 for selective enforcement)

N815

mixedCase variable in class scope (constants, method names)

N816

mixedCase variable in global scope (constants)

N817

camelcase imported as acronym (distinct from N814 for selective enforcement)

N818

error suffix in exception names (exceptions)

Options

The following flake8 options are added:

--ignore-names

Ignore errors for specific names or glob patterns.

Currently, this option can only be used for N802, N803, N804, N805, N806, N815, and N816 errors.

Default: setUp,tearDown,setUpClass,tearDownClass,setUpModule,tearDownModule,asyncSetUp,asyncTearDown,setUpTestData,failureException,longMessage,maxDiff.

--classmethod-decorators

List of method decorators pep8-naming plugin should consider class method.

Used to prevent false N804 errors.

Default: classmethod.

--staticmethod-decorators

List of method decorators pep8-naming plugin should consider static method.

Used to prevent false N805 errors.

Default: staticmethod.

FAQ

How do I configure classmethod_decorators to recognize SQLAlchemy class methods?

classmethod_decorators =
    classmethod
    declared_attr
    expression
    comparator

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

pep8-naming-0.14.1.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

pep8_naming-0.14.1-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file pep8-naming-0.14.1.tar.gz.

File metadata

  • Download URL: pep8-naming-0.14.1.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.9

File hashes

Hashes for pep8-naming-0.14.1.tar.gz
Algorithm Hash digest
SHA256 1ef228ae80875557eb6c1549deafed4dabbf3261cfcafa12f773fe0db9be8a36
MD5 9f7bfb53831ec3a6adfc97f39b23ab72
BLAKE2b-256 be8e1de32e908d8b008bb9352bfe7749aedecb71e2793d36c7ee342716acd1ec

See more details on using hashes here.

File details

Details for the file pep8_naming-0.14.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pep8_naming-0.14.1-py3-none-any.whl
Algorithm Hash digest
SHA256 63f514fc777d715f935faf185dedd679ab99526a7f2f503abb61587877f7b1c5
MD5 6e1d5c69e9d6bfa8ae60fc834a6fe656
BLAKE2b-256 eca2450b71d1a87fcee50a7b994a53b1c68fc6a6b718df0eb035f2bffb2d3a4f

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