summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES.txt6
-rwxr-xr-xpep8.py11
-rw-r--r--testsuite/E12.py18
-rw-r--r--testsuite/E90.py2
4 files changed, 31 insertions, 6 deletions
diff --git a/CHANGES.txt b/CHANGES.txt
index ec029cb..87efd72 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,12 @@ Changelog
=========
+1.x (UNRELEASED)
+----------------
+
+* Fix cases where E122 was missed. (Issue #81)
+
+
1.3 (2012-06-15)
----------------
diff --git a/pep8.py b/pep8.py
index c5ce31d..9f7fb60 100755
--- a/pep8.py
+++ b/pep8.py
@@ -93,7 +93,7 @@ for space.
"""
-__version__ = '1.3'
+__version__ = '1.3.1a0'
import os
import sys
@@ -528,10 +528,10 @@ def continuation_line_indentation(logical_line, tokens, indent_level, verbose):
pass
else:
# indent is broken
- if indent[depth]:
- error = 'E127', 'over-indented for visual indent'
- elif hang <= 0:
+ if hang <= 0:
error = 'E122', 'missing indentation or outdented'
+ elif indent[depth]:
+ error = 'E127', 'over-indented for visual indent'
elif hang % 4:
error = 'E121', 'indentation is not a multiple of four'
else:
@@ -567,7 +567,8 @@ def continuation_line_indentation(logical_line, tokens, indent_level, verbose):
if prev_indent in indent_chances:
del indent_chances[prev_indent]
depth -= 1
- indent_chances[indent[depth]] = True
+ if depth:
+ indent_chances[indent[depth]] = True
for idx in range(row, -1, -1):
if parens[idx]:
parens[idx] -= 1
diff --git a/testsuite/E12.py b/testsuite/E12.py
index 1a66b47..7b8313b 100644
--- a/testsuite/E12.py
+++ b/testsuite/E12.py
@@ -242,4 +242,22 @@ rv.update(d=('a' + 'b', 'c'),
rv.update(d=('a' + 'b', 'c'),
e=42, f=(42
+ 42))
+#: E122
+if some_very_very_very_long_variable_name or var \
+or another_very_long_variable_name:
+ raise Exception()
+#: E122
+if some_very_very_very_long_variable_name or var[0] \
+or another_very_long_variable_name:
+ raise Exception()
+#: E122
+if True:
+ if some_very_very_very_long_variable_name or var \
+ or another_very_long_variable_name:
+ raise Exception()
+#: E122
+if True:
+ if some_very_very_very_long_variable_name or var[0] \
+ or another_very_long_variable_name:
+ raise Exception()
#:
diff --git a/testsuite/E90.py b/testsuite/E90.py
index 953bb0e..35a91a2 100644
--- a/testsuite/E90.py
+++ b/testsuite/E90.py
@@ -8,7 +8,7 @@ while True:
pass
except:
print 'Whoops'
-#: E128 E225 E251 E701
+#: E122 E128 E225 E251 E701
# Do not crash if code is invalid
if msg: