Skip to content

Python: Allow trailing commas in type parameter lists - #22743

Open
jketema wants to merge 1 commit into
mainfrom
fix/python-trailing-type-parameter-comma
Open

jketema wants to merge 1 commit into
mainfrom
fix/python-trailing-type-parameter-comma

Conversation

@jketema

@jketema jketema commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

Vibe coded by Copilot.

Trailing commas in PEP 695 type parameter lists are valid Python syntax and are emitted by formatters when a list is split across lines. Accept an optional trailing comma in the Tree-sitter grammar and add extractor parser coverage for type aliases, functions, and classes.

Fixes #22739

Testing

  • pytest -q tests/test_parser.py (39 passed)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings October 2, 2026 09:10
@jketema
jketema requested review from a team as code owners October 2, 2026 09:10
@jketema
jketema marked this pull request as draft October 2, 2026 09:13

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

The compiled parser source must be regenerated and committed for clean builds to include the fix.

Review effort: Balanced
Findings: 1 High severity

Open (1)
What changed in this PR

Updates the Python extractor grammar to accept trailing commas in PEP 695 type parameter lists, addressing #22739.

Changes:

  • Allows an optional trailing comma in the grammar.
  • Adds parser fixtures for type aliases, functions, and classes.
File Description
python/​extractor/​tsg-python/​tsp/​src/​grammar.json Updates the generated grammar definition.
python/​extractor/​tsg-python/​tsp/​grammar.js Allows trailing commas in type parameter lists.
python/​extractor/​tests/​parser/​type_parameters_new.py Adds regression inputs for all three declaration forms.
python/​extractor/​tests/​parser/​type_parameters_new.expected Records expected parser output.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread python/extractor/tsg-python/tsp/grammar.js

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Python: trailing comma in a PEP 695 type parameter list causes a parse error

2 participants