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.0.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pep8-naming-0.14.0.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.0.tar.gz
Algorithm Hash digest
SHA256 c2dcf35de7731b4fe1adcea4ca97e0abf52c811b137054edd25816a34016c9cd
MD5 118065a73e8985aa3a27703e7b0c94ae
BLAKE2b-256 c85c3140be131b7f4632c364481477fc09ecd5f6858dff628e36532548bd55ff

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pep8_naming-0.14.0-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.9

File hashes

Hashes for pep8_naming-0.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5a74972c7a0f882aa643120c8de16b5d8b8b1636a17ac04dbeaff5ce393aa8b4
MD5 6a42703c49109541cd7c815e6cccb71d
BLAKE2b-256 f5272ec315f5dc5601f800322760192bba6e543f925678cc6a54d3e75d794e98

See more details on using hashes here.

Supported by

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