summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Peek <mark@peek.org>2016-07-01 09:03:18 -0700
committerMark Peek <mark@peek.org>2016-07-01 09:03:18 -0700
commit72acd6f9471f8a1c3a79b0e3785f77e84ac6244d (patch)
tree4511103dab6c60e3afbfa92f047113ad6752233a
parent4438622d0b62df53a1999301d1bdc9fa119ae763 (diff)
downloadpep8-72acd6f9471f8a1c3a79b0e3785f77e84ac6244d.tar.gz
Report E302 for blank lines before an "async def"
-rwxr-xr-xpycodestyle.py4
-rw-r--r--testsuite/E30.py6
2 files changed, 9 insertions, 1 deletions
diff --git a/pycodestyle.py b/pycodestyle.py
index a5f5534..3ee688b 100755
--- a/pycodestyle.py
+++ b/pycodestyle.py
@@ -250,10 +250,12 @@ def blank_lines(logical_line, blank_lines, indent_level, line_number,
Use blank lines in functions, sparingly, to indicate logical sections.
Okay: def a():\n pass\n\n\ndef b():\n pass
+ Okay: def a():\n pass\n\n\nasync def b():\n pass
Okay: def a():\n pass\n\n\n# Foo\n# Bar\n\ndef b():\n pass
E301: class Foo:\n b = 0\n def bar():\n pass
E302: def a():\n pass\n\ndef b(n):\n pass
+ E302: def a():\n pass\n\nasync def b(n):\n pass
E303: def a():\n pass\n\n\n\ndef b(n):\n pass
E303: def a():\n\n\n\n pass
E304: @decorator\n\ndef a():\n pass
@@ -266,7 +268,7 @@ def blank_lines(logical_line, blank_lines, indent_level, line_number,
yield 0, "E304 blank lines found after function decorator"
elif blank_lines > 2 or (indent_level and blank_lines == 2):
yield 0, "E303 too many blank lines (%d)" % blank_lines
- elif logical_line.startswith(('def ', 'class ', '@')):
+ elif logical_line.startswith(('def ', 'async def', 'class ', '@')):
if indent_level:
if not (blank_before or previous_indent_level < indent_level or
DOCSTRING_REGEX.match(previous_logical)):
diff --git a/testsuite/E30.py b/testsuite/E30.py
index 1471079..9397541 100644
--- a/testsuite/E30.py
+++ b/testsuite/E30.py
@@ -44,7 +44,13 @@ def a():
def b():
pass
#:
+#: E302:4:1
+def a():
+ pass
+async def b():
+ pass
+#:
#: E303:5:1
print