Skip to content

feat: remove GraalPy 3.11 (gp311) support#2895

Merged
henryiii merged 1 commit into
pypa:mainfrom
henryiii:remove-gp311
Jun 7, 2026
Merged

feat: remove GraalPy 3.11 (gp311) support#2895
henryiii merged 1 commit into
pypa:mainfrom
henryiii:remove-gp311

Conversation

@henryiii

@henryiii henryiii commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

GraalPy 3.11 interacts poorly with delvewheel on Windows. I've seen two errors, #2883, and ImportError: cannot load C:\Users\runneradmin\AppData\Local\Temp\cibw-run-dwn70_yl\gp311_242-win_amd64\venv-test\Lib\site-packages\python_example.graalpy242-311-native-x86_64-win32.pyd. AFAICT, both work fine in GraalPy 3.12. In #2741 (comment), @timfel said we could drop 3.11 in March. This is after March, so I think the best path forward is to just drop it before 4.0.0 instead of complicating the default windows repair option. Though we could introduce graalpy-eol instead if better.

This gets rid of several workarounds, too.

🤖 AI text below 🤖

Removes GraalPy 3.11 / GraalPy 24.2 (gp311_242) support, as agreed in #2741 — a ~6-month overlap after the GraalPy 25 (gp312) release. GraalPy 3.12 (gp312_250) stays.

What's removed

Intentionally kept (apply to all GraalPy, not gp311-specific)

Testing

  • prek -a clean; all 790 unit tests pass.

cc @timfel — this is the gp311 drop we discussed in #2741.

Drops the GraalPy 3.11 / GraalPy 24.2 builds (gp311_242) as agreed in
pypa#2741: a ~6-month overlap after the GraalPy 25 (gp312)
release. GraalPy 3.12 (gp312_250) stays.

This also removes the GraalPy 24-only workarounds that were explicitly
marked "Remove when GraalPy 24.x is dropped":
- the Visual Studio compiler-discovery (vswhere) and build-isolation
  (graalpython#491) workarounds in the Windows backend
- the issue-491 Windows skip/filter hacks in test_pep518 and
  test_dependency_versions (added in the original GraalPy PR pypa#1538 and
  unneeded since GraalPy 25 per pypa#2597)

The uv-doesn't-support-graalpy skip (pypa#2754), the `graalpy` enable group,
and the generated constraints pins apply to all GraalPy and are kept.

Assisted-by: ClaudeCode:claude-opus-4.8

@joerick joerick 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.

Looks good to me! Lets see what @timfel thinks, but I think the major version would be a good time to drop gp311.

@agriyakhetarpal agriyakhetarpal requested a review from timfel June 6, 2026 04:17
@henryiii henryiii merged commit 557c5f6 into pypa:main Jun 7, 2026
45 checks passed
@henryiii henryiii deleted the remove-gp311 branch June 7, 2026 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants