summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Sottile <asottile@umich.edu>2022-05-16 20:42:29 -0400
committerAnthony Sottile <asottile@umich.edu>2022-05-16 20:43:36 -0400
commite72afc551f1fa178cb753e1ec164803655ba5692 (patch)
tree0423c433caf722ca612d6c9f57d57a0155845a94
parenta7938390f6eb1a3e2880f512223af03b844a7de7 (diff)
downloadpep8-e72afc551f1fa178cb753e1ec164803655ba5692.tar.gz
add python3.11 support (except* and a[*b])
-rw-r--r--.github/workflows/main.yml5
-rwxr-xr-xpycodestyle.py1
-rw-r--r--testsuite/python311.py23
3 files changed, 28 insertions, 1 deletions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 0d26707..00f5e75 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -29,7 +29,10 @@ jobs:
py: 3.9
toxenv: py
- os: ubuntu-latest
- py: 3.10-dev
+ py: '3.10'
+ toxenv: py
+ - os: ubuntu-latest
+ py: '3.11-dev'
toxenv: py
- os: ubuntu-latest
py: 3.9
diff --git a/pycodestyle.py b/pycodestyle.py
index e2e4b96..550770b 100755
--- a/pycodestyle.py
+++ b/pycodestyle.py
@@ -496,6 +496,7 @@ def missing_whitespace_after_keyword(logical_line, tokens):
keyword.iskeyword(tok0.string) and
tok0.string not in SINGLETONS and
tok0.string not in ('async', 'await') and
+ not (tok0.string == 'except' and tok1.string == '*') and
tok1.string not in ':\n'):
line, pos = tok0.end
yield pos, "E275 missing whitespace after keyword"
diff --git a/testsuite/python311.py b/testsuite/python311.py
new file mode 100644
index 0000000..a405125
--- /dev/null
+++ b/testsuite/python311.py
@@ -0,0 +1,23 @@
+#: Okay
+try:
+ ...
+except* OSError as e:
+ pass
+#: Okay
+from typing import Generic
+from typing import TypeVarTuple
+
+
+Ts = TypeVarTuple('Ts')
+
+
+class Shape(Generic[*Ts]):
+ pass
+
+
+def f(*args: *Ts) -> None:
+ ...
+
+
+def g(x: Shape[*Ts]) -> Shape[*Ts]:
+ ...