Pin pycodestyle to latest version 2.3.1
Created by: pyup-bot
pycodestyle is not pinned to a specific version.
I'm pinning it to the latest version 2.3.1 for now.
These links might come in handy: PyPI | Changelog | Docs
Changelog
2.3.1
Bugs:
- Fix regression in detection of E302 and E306; 618, 620
2.3.0
New Checks:
- Add E722 warning for bare
except
clauses- Report E704 for async function definitions (
async def
)
Bugs:
- Fix another E305 false positive for variables beginning with "class" or "def"
- Fix detection of multiple spaces between
async
anddef
- Fix handling of variable annotations. Stop reporting E701 on Python 3.6 for variable annotations.
2.2.0
Announcements:
- Added Make target to obtain proper tarball file permissions; 599
Bugs:
- Fixed E305 regression caused by 400; 593
2.1.0
Announcements:
- Change all references to the pep8 project to say pycodestyle; 530
Changes:
- Report E302 for blank lines before an "async def"; 556
- Update our list of tested and supported Python versions which are 2.6, 2.7, 3.2, 3.3, 3.4 and 3.5 as well as the nightly Python build and PyPy.
- Report E742 and E743 for functions and classes badly named 'l', 'O', or 'I'.
- Report E741 on 'global' and 'nonlocal' statements, as well as prohibited single-letter variables.
- Deprecated use of
[pep8]
section name in favor of[pycodestyle]
; 591- Report E722 when bare except clause is used; 579
Bugs:
- Fix opt_type AssertionError when using Flake8 2.6.2 and pycodestyle; 561
- Require two blank lines after toplevel def, class; 536
- Remove accidentally quadratic computation based on the number of colons. This will make pycodestyle faster in some cases; 314
2.0.0
Announcements:
- Repository renamed to
pycodestyle
; Issue 466 / 481.- Added joint Code of Conduct as member of PyCQA; 483
Changes:
- Added tox test support for Python 3.5 and pypy3
- Added check E275 for whitespace on
from ... import ...
lines; 489 / 491- Added W503 to the list of codes ignored by default ignore list; 498
- Removed use of project level
.pep8
configuration file; 364
Bugs:
- Fixed bug with treating
~
operator as binary; 383 / 384- Identify binary operators as unary; 484 / 485
1.7.0
Announcements:
- Repository moved to PyCQA Organization on GitHub: https://github.com/pycqa/pep8
Changes:
- Reverted the fix in 368, "options passed on command line are only ones accepted" feature. This has many unintended consequences in pep8 and flake8 and needs to be reworked when I have more time.
- Added support for Python 3.5. (Issue 420 & 459)
- Added support for multi-line config_file option parsing. (Issue 429)
- Improved parameter parsing. (Issues 420 & 456)
Bugs:
- Fixed BytesWarning on Python 3. (Issue 459)
1.6.2
Changes:
- Added check for breaking around a binary operator. (Issue 197, Pull 305)
Bugs:
- Restored config_file parameter in process_options(). (Issue 380)
1.6.1
Changes:
- Assign variables before referenced. (Issue 287)
Bugs:
- Exception thrown due to unassigned
local_dir
variable. (Issue 377)
1.6.0
News:
- Ian Lee <ianlee1521gmail.com> joined the project as a maintainer.
Changes:
- Report E731 for lambda assignment. (Issue 277)
- Report E704 for one-liner def instead of E701. Do not report this error in the default configuration. (Issue 277)
- Replace codes E111, E112 and E113 with codes E114, E115 and E116 for bad indentation of comments. (Issue 274)
- Report E266 instead of E265 when the block comment starts with multiple ````. (Issue 270)
- Report E402 for import statements not at the top of the file. (Issue 264)
- Do not enforce whitespaces around
**
operator. (Issue 292)
- Strip whitespace from around paths during normalization. (Issue 339 / 343)
- Update
--format
documentation. (Issue 198 / Pull Request 310)
- Add
.tox/
to default excludes. (Issue 335)
- Do not report E121 or E126 in the default configuration. (Issues 256 / 316)
- Allow spaces around the equals sign in an annotated function. (Issue 357)
- Allow trailing backslash if in an inline comment. (Issue 374)
- If
--config
is used, only that configuration is processed. Otherwise, merge the user and local configurations are merged. (Issue 368 / 369)
Bug fixes:
- Don't crash if Checker.build_tokens_line() returns None. (Issue 306)
- Don't crash if os.path.expanduser() throws an ImportError. (Issue 297)
- Missing space around keyword parameter equal not always reported, E251. (Issue 323)
- Fix false positive E711/E712/E713. (Issues 330 and 336)
- Do not skip physical checks if the newline is escaped. (Issue 319)
- Flush sys.stdout to avoid race conditions with printing. See flake8 bug: https://gitlab.com/pycqa/flake8/issues/17 for more details. (Issue 363)
1.5.7
Bug fixes:
- Skip the traceback on "Broken pipe" signal. (Issue 275)
- Do not exit when an option in
setup.cfg
ortox.ini
is not recognized.
- Check the last line even if it does not end with a newline. (Issue 286)
- Always open files in universal newlines mode in Python 2. (Issue 288)
1.5.6
Bug fixes:
- Check the last line even if it has no end-of-line. (Issue 273)
1.5.5
Bug fixes:
- Fix regression with E22 checks and inline comments. (Issue 271)
1.5.4
Bug fixes:
- Fix negative offset with E303 before a multi-line docstring. (Issue 269)
1.5.3
Bug fixes:
- Fix wrong offset computation when error is on the last char of a physical line. (Issue 268)
1.5.2
Changes:
- Distribute a universal wheel file.
Bug fixes:
- Report correct line number for E303 with comments. (Issue 60)
- Do not allow newline after parameter equal. (Issue 252)
- Fix line number reported for multi-line strings. (Issue 220)
- Fix false positive E121/E126 with multi-line strings. (Issue 265)
- Fix E501 not detected in comments with Python 2.5.
- Fix caret position with
--show-source
when line contains tabs.
1.5.1
Bug fixes:
- Fix a crash with E125 on multi-line strings. (Issue 263)
1.5
Changes:
- Report E129 instead of E125 for visually indented line with same indent as next logical line. (Issue 126)
- Report E265 for space before block comment. (Issue 190)
- Report E713 and E714 when operators
not in
andis not
are recommended. (Issue 236)
- Allow long lines in multiline strings and comments if they cannot be wrapped. (Issue 224).
- Optionally disable physical line checks inside multiline strings, using
noqa
. (Issue 242)
- Change text for E121 to report "continuation line under-indented for hanging indent" instead of indentation not being a multiple of 4.
- Report E131 instead of E121 / E126 if the hanging indent is not consistent within the same continuation block. It helps when error E121 or E126 is in the
ignore
list.
- Report E126 instead of E121 when the continuation line is hanging with extra indentation, even if indentation is not a multiple of 4.
Bug fixes:
- Allow the checkers to report errors on empty files. (Issue 240)
- Fix ignoring too many checks when
--select
is used with codes declared in a flake8 extension. (Issue 216)
- Fix regression with multiple brackets. (Issue 214)
- Fix
StyleGuide
to parse the local configuration if the keyword argumentpaths
is specified. (Issue 246)
- Fix a false positive E124 for hanging indent. (Issue 254)
- Fix a false positive E126 with embedded colon. (Issue 144)
- Fix a false positive E126 when indenting with tabs. (Issue 204)
- Fix behaviour when
exclude
is in the configuration file and the current directory is not the project directory. (Issue 247)
- The logical checks can return
None
instead of an empty iterator. (Issue 250)
- Do not report multiple E101 if only the first indentation starts with a tab. (Issue 237)
- Fix a rare false positive W602. (Issue 34)
1.4.6
Changes:
- Honor
noqa
for errors E711 and E712. (Issue 180)
- When both a
tox.ini
and asetup.cfg
are present in the project directory, merge their contents. Thetox.ini
file takes precedence (same as before). (Issue 182)
- Give priority to
--select
over--ignore
. (Issue 188)
- Compare full path when excluding a file. (Issue 186)
- New option
--hang-closing
to switch to the alternative style of closing bracket indentation for hanging indent. Add error E133 for closing bracket which is missing indentation. (Issue 103)
- Accept both styles of closing bracket indentation for hanging indent. Do not report error E123 in the default configuration. (Issue 103)
Bug fixes:
- Do not crash when running AST checks and the document contains null bytes. (Issue 184)
- Correctly report other E12 errors when E123 is ignored. (Issue 103)
- Fix false positive E261/E262 when the file contains a BOM. (Issue 193)
- Fix E701, E702 and E703 not detected sometimes. (Issue 196)
- Fix E122 not detected in some cases. (Issue 201 and 208)
- Fix false positive E121 with multiple brackets. (Issue 203)
1.4.5
- When no path is specified, do not try to read from stdin. The feature was added in 1.4.3, but it is not supported on Windows. Use
-
filename argument to read from stdin. This usage is supported since 1.3.4. (Issue 170)
- Do not require
setuptools
in setup.py. It works around an issue withpip
and Python 3. (Issue 172)
- Add
__pycache__
to the ignore list.
- Change misleading message for E251. (Issue 171)
- Do not report false E302 when the source file has a coding cookie or a comment on the first line. (Issue 174)
- Reorganize the tests and add tests for the API and for the command line usage and options. (Issues 161 and 162)
- Ignore all checks which are not explicitly selected when
select
is passed to theStyleGuide
constructor.
1.4.4
- Report E227 or E228 instead of E225 for whitespace around bitwise, shift or modulo operators. (Issue 166)
- Change the message for E226 to make clear that it is about arithmetic operators.
- Fix a false positive E128 for continuation line indentation with tabs.
- Fix regression with the
--diff
option. (Issue 169)
- Fix the
TestReport
class to print the unexpected warnings and errors.
1.4.3
- Hide the
--doctest
and--testsuite
options when installed.
- Fix crash with AST checkers when the syntax is invalid. (Issue 160)
- Read from standard input if no path is specified.
- Initiate a graceful shutdown on
Control+C
.
- Allow changing the
checker_class
for theStyleGuide
.
1.4.2
- Support AST checkers provided by third-party applications.
- Register new checkers with
register_check(func_or_cls, codes)
.
- Allow constructing a
StyleGuide
with a custom parser.
- Accept visual indentation without parenthesis after the
if
statement. (Issue 151)
- Fix UnboundLocalError when using
noqa
with continued lines. (Issue 158)
- Re-order the lines for the
StandardReport
.
- Expand tabs when checking E12 continuation lines. (Issue 155)
- Refactor the testing class
TestReport
and the specific test functions into a separate test module.
1.4.1
- Allow sphinx.ext.autodoc syntax for comments. (Issue 110)
- Report E703 instead of E702 for the trailing semicolon. (Issue 117)
- Honor
noqa
in addition tonopep8
. (Issue 149)
- Expose the
OptionParser
factory for better extensibility.
1.4
- Report E226 instead of E225 for optional whitespace around common operators (
*
,**
,/
,+
and-
). This new error code is ignored in the default configuration because PEP 8 recommends to "use your own judgement". (Issue 96)
- Lines with a
nopep8
at the end will not issue errors on line length E501 or continuation line indentation E12*. (Issue 27)
- Fix AssertionError when the source file contains an invalid line ending
"\r\r\n"
. (Issue 119)
- Read the
[pep8]
section oftox.ini
orsetup.cfg
if present. (Issue 93 and 141)
- Add the Sphinx-based documentation, and publish it on https://pycodestyle.readthedocs.io/. (Issue 105)
1.3.4
- Fix false positive E124 and E128 with comments. (Issue 100)
- Fix error on stdin when running with bpython. (Issue 101)
- Fix false positive E401. (Issue 104)
- Report E231 for nested dictionary in list. (Issue 142)
- Catch E271 at the beginning of the line. (Issue 133)
- Fix false positive E126 for multi-line comments. (Issue 138)
- Fix false positive E221 when operator is preceded by a comma. (Issue 135)
- Fix
--diff
failing on one-line hunk. (Issue 137)
- Fix the
--exclude
switch for directory paths. (Issue 111)
- Use
-
filename to read from standard input. (Issue 128)
1.3.3
- Fix regression with continuation line checker. (Issue 98)
1.3.2
- Revert to the previous behaviour for
--show-pep8
: do not imply--first
. (Issue 89)
- Add E902 for IO errors. (Issue 87)
- Fix false positive for E121, and missed E124. (Issue 92)
- Set a sensible default path for config file on Windows. (Issue 95)
- Allow
verbose
in the configuration file. (Issue 91)
- Show the enforced
max-line-length
in the error message. (Issue 86)
1.3.1
- Explain which configuration options are expected. Accept and recommend the options names with hyphen instead of underscore. (Issue 82)
- Do not read the user configuration when used as a module (except if
config_file=True
is passed to theStyleGuide
constructor).
- Fix wrong or missing cases for the E12 series.
- Fix cases where E122 was missed. (Issue 81)
1.3
.. warning:: The internal API is backwards incompatible.
- Remove global configuration and refactor the library around a
StyleGuide
class; add the ability to configure various reporters. (Issue 35 and 66)
- Read user configuration from
~/.config/pep8
and local configuration from./.pep8
. (Issue 22)
- Fix E502 for backslash embedded in multi-line string. (Issue 68)
- Fix E225 for Python 3 iterable unpacking (PEP 3132). (Issue 72)
- Enable the new checkers from the E12 series in the default configuration.
- Suggest less error-prone alternatives for E712 errors.
- Rewrite checkers to run faster (E22, E251, E27).
- Fixed a crash when parsed code is invalid (too many closing brackets).
- Fix E127 and E128 for continuation line indentation. (Issue 74)
- New option
--format
to customize the error format. (Issue 23)
- New option
--diff
to check only modified code. The unified diff is read from STDIN. Example:hg diff | pep8 --diff
(Issue 39)
- Correctly report the count of failures and set the exit code to 1 when the
--doctest
or the--testsuite
fails.
- Correctly detect the encoding in Python 3. (Issue 69)
- Drop support for Python 2.3, 2.4 and 3.0. (Issue 78)
1.2
- Add E121 through E128 for continuation line indentation. These checks are disabled by default. If you want to force all checks, use switch
--select=E,W
. Patch by Sam Vilain. (Issue 64)
- Add E721 for direct type comparisons. (Issue 47)
- Add E711 and E712 for comparisons to singletons. (Issue 46)
- Fix spurious E225 and E701 for function annotations. (Issue 29)
- Add E502 for explicit line join between brackets.
- Fix E901 when printing source with
--show-source
.
- Report all errors for each checker, instead of reporting only the first occurrence for each line.
- Option
--show-pep8
implies--first
.
1.1
- Add E901 for syntax errors. (Issues 63 and 30)
- Add E271, E272, E273 and E274 for extraneous whitespace around keywords. (Issue 57)
- Add
tox.ini
configuration file for tests. (Issue 61)
- Add
.travis.yml
configuration file for continuous integration. (Issue 62)
1.0.1
- Fix inconsistent version numbers.
1.0
- Fix W602
raise
to handle multi-char names. (Issue 53)
0.7.0
- Now
--first
prints only the first occurrence of each error. The--repeat
flag becomes obsolete because it is the default behaviour. (Issue 6)
- Allow specifying
--max-line-length
. (Issue 36)
- Make the shebang more flexible. (Issue 26)
- Add testsuite to the bundle. (Issue 25)
- Fixes for Jython. (Issue 49)
- Add PyPI classifiers. (Issue 43)
- Fix the
--exclude
option. (Issue 48)
- Fix W602, accept
raise
with 3 arguments. (Issue 34)
- Correctly select all tests if
DEFAULT_IGNORE == ''
.
0.6.1
- Fix inconsistent version numbers. (Issue 21)
0.6.0
- Test suite reorganized and enhanced in order to check more failures with fewer test files. Read the
run_tests
docstring for details about the syntax.
- Fix E225: accept
print >>sys.stderr, "..."
syntax.
- Fix E501 for lines containing multibyte encoded characters. (Issue 7)
- Fix E221, E222, E223, E224 not detected in some cases. (Issue 16)
- Fix E211 to reject
v = dic['a'] ['b']
. (Issue 17)
- Exit code is always 1 if any error or warning is found. (Issue 10)
--ignore
checks are now really ignored, especially in conjunction with--count
. (Issue 8)
- Blank lines with spaces yield W293 instead of W291: some developers want to ignore this warning and indent the blank lines to paste their code easily in the Python interpreter.
- Fix E301: do not require a blank line before an indented block. (Issue 14)
- Fix E203 to accept NumPy slice notation
a[0, :]
. (Issue 13)
- Performance improvements.
- Fix decoding and checking non-UTF8 files in Python 3.
- Fix E225: reject
True+False
when running on Python 3.
- Fix an exception when the line starts with an operator.
- Allow a new line before closing
)
,}
or]
. (Issue 5)
0.5.0
- Changed the
--count
switch to print to sys.stderr and set exit code to 1 if any error or warning is found.
- E241 and E242 are removed from the standard checks. If you want to include these checks, use switch
--select=E,W
. (Issue 4)
- Blank line is not mandatory before the first class method or nested function definition, even if there's a docstring. (Issue 1)
- Add the switch
--version
.
- Fix decoding errors with Python 3. (Issue 13 [1]_)
- Add
--select
option which is mirror of--ignore
.
- Add checks E261 and E262 for spaces before inline comments.
- New check W604 warns about deprecated usage of backticks.
- New check W603 warns about the deprecated operator
<>
.
- Performance improvement, due to rewriting of E225.
- E225 now accepts:
- no whitespace after unary operator or similar. (Issue 9 [1]_)
- lambda function with argument unpacking or keyword defaults.
- Reserve "2 blank lines" for module-level logical blocks. (E303)
- Allow multi-line comments. (E302, issue 10 [1]_)
0.4.2
- Decorators on classes and class methods are OK now.
0.4
- Support for all versions of Python from 2.3 to 3.1.
- New and greatly expanded self tests.
- Added
--count
option to print the total number of errors and warnings.
- Further improvements to the handling of comments and blank lines. (Issue 1 [1]_ and others changes.)
- Check all py files in directory when passed a directory (Issue 2 [1]_). This also prevents an exception when traversing directories with non
*.py
files.
- E231 should allow commas to be followed by
)
. (Issue 3 [1]_)
- Spaces are no longer required around the equals sign for keyword arguments or default parameter values.
.. [1] These issues refer to the
previous issue tracker
__. .. __: http://github.com/cburroughs/pep8.py/issues
0.3.1
- Fixes for comments: do not count them when checking for blank lines between items.
- Added setup.py for pypi upload and easy_installability.
0.2
- Loads of fixes and improvements.
0.1
- First release.
Got merge conflicts? Close this PR and delete the branch. I'll create a new PR for you.
Happy merging!