Skip to content

Add version locking and CI for the conformance suite#2200

Merged
JelleZijlstra merged 3 commits intopython:mainfrom
JelleZijlstra:codex/conformance-lock-and-ci
Feb 28, 2026
Merged

Add version locking and CI for the conformance suite#2200
JelleZijlstra merged 3 commits intopython:mainfrom
JelleZijlstra:codex/conformance-lock-and-ci

Conversation

@JelleZijlstra
Copy link
Member

The current system where we always pick the latest version of every type checker causes some changes to randomly pick up unrelated upgrades to type checkers, which makes it more difficult to make focused changes.

We were also not checking in CI that the conformance results were correct. This change introduces a GitHub action to do that, which exposed a bug due to a recent change in the typevartuple test.

@@ -1,6 +1,5 @@
conformant = "Pass"
output = """
qualifiers_final_decorator.py:8:6 - warning: Import "_qualifiers_final_decorator" could not be resolved from source (reportMissingModuleSource)
Copy link
Member Author

Choose a reason for hiding this comment

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

Not sure why this changed


def has_int_and_str(a: int, b: str, c: float, d: complex):
assert_type(func3(a, b, c, d), tuple[float, str, complex])
assert_type(func3(a, b, c, d), tuple[complex, str, float])
Copy link
Member Author

Choose a reason for hiding this comment

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

This was wrong. We call func3 with arguments (int, str, float, complex), so we get Ts = (str, float) and T = complex. func3 returns tuple[T, *Ts], so (complex, str, float).

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, sorry for that. I probably pulled in a change from Alex without rerunning tests.

Copy link
Member

Choose a reason for hiding this comment

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

My bad really, I think I gave you the buggy suggestion!

@AlexWaygood AlexWaygood added the topic: conformance tests Issues with the conformance test suite label Feb 28, 2026
@JelleZijlstra JelleZijlstra merged commit 40b929c into python:main Feb 28, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

topic: conformance tests Issues with the conformance test suite

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants