From e72afc551f1fa178cb753e1ec164803655ba5692 Mon Sep 17 00:00:00 2001 From: Anthony Sottile Date: Mon, 16 May 2022 20:42:29 -0400 Subject: add python3.11 support (except* and a[*b]) --- .github/workflows/main.yml | 5 ++++- pycodestyle.py | 1 + testsuite/python311.py | 23 +++++++++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 testsuite/python311.py 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]: + ... -- cgit v1.2.1