- Fix line number offsets when reporting errors involving functions with decorators in Python 3.8 and later.
- Drop support for Python 3.3 and 3.4.
- Support positional-only arguments in Python 3.8.
- Recognize
abc.ABCMeta
as a metaclass base type. ignore-names
now also applies to the N803 check.- Handle assigning exceptions to object attributes in Python 2.
- Fix a problem with
ignore-names
option initialization.
ignore-names
now also applies to the N806, N815, and N816 checks.failureException
,longMessage
, andmaxDiff
have been added to the defaultignore-names
list.- Allow lowercase names to be imported as just
_
. - Allow function arguments to be named just
_
. - Support Python 2's tuple syntax in
except
clauses.
- Detect N806 errors within
for
loops and exception handlers. - Improve support for non-ASCII characters.
- Detect mixedCased variable names at class (N815) and global (N816) scope.
- Ignore Django's
setUpTestData
method by default. - Fix column offsets for N803, N804, and N805 under Python 3.
- Detect underscores within class names as N801 errors.
- Don't flag
__getattr__
and__dir__
as N807 errors. (See PEP 562). async
function and method names are now checked.- Detect N806 errors in generator expressions and comprehensions.
- Detect N81x errors in
import x as y
statements.
- Detect N806 in
with ... as ...:
statements. - Detect N806 in multiple assignment statements, e.g.,
Foo, Bar = unpacking
. - Allow class names to be properly ignored.
- Remove spurious 'xxx' from error message
- Detect N807 within conditional statements.
- Fix N804 check for
cls
used in metaclass methods (See also PyCQA#53)
- Separate check for
__
in function names to its own code: N807 - Consider all metaclass methods to be class methods
- Add configurable list of classmethod and staticmethod decorators
- Print the offending name as part of the error message
- Correct N804/N805 for __init_subclass__
- Note to self: Never do releases before ~0600 or coffee on a Sunday.
- Fix option parsing for Flake8 3.0 (store parsed value on class)
- Fix integration with Flake8 3.0.0b1
- Start testing against Python 3.5
- Fix bug where ignored names were not properly split into a list.
- Fix bug trying to call
split
on a list.
- Fix optparse exception resulting from trying to register an option twice.
- Relaxed N806 checking for use with namedtuples
- Add
--ignore-names
which allows the user to specify a list of names to ignore. By default this includessetUp
,tearDown
,setUpClass
, andtearDownClass
.
- Do not require
setuptools
in setup.py. It works around an issue withpip
and Python 3. __new__
is now considered asclassmethod
implicitly- Run unit tests on travis-ci.org for python2.6, 2.7, 3.2, and 3.3
- Add unit tests and support running them with setup.py
- Support Python 3.4
- Do not require
flake8
- Rename project
flint-naming
topep8-naming
- Fix a crash when function argument is a tuple of tuples
- First release