Skip to content

Support Python 3.13, drop Python 3.8 (PR #64 with merge conflict resolved)#70

Merged
wbarnha merged 17 commits into
masterfrom
claude/faust-mode-open-prs-ur3hqs
Jul 17, 2026
Merged

Support Python 3.13, drop Python 3.8 (PR #64 with merge conflict resolved)#70
wbarnha merged 17 commits into
masterfrom
claude/faust-mode-open-prs-ur3hqs

Conversation

@wbarnha

@wbarnha wbarnha commented Jul 17, 2026

Copy link
Copy Markdown
Member

Description

Lands #64 by @manawasp on current master with its merge conflict resolved. Closes #64.

This branch is a merge of the unmodified #64 head (4b9499c) into master, so all original commits and authorship are preserved. The only conflict was in mode/utils/objects.py: master's is_union() gained a UnionType name check via #69, while #64 rewrites the function as get_origin(typ) in UNION_TYPES. Resolved in favor of #64's version, which supersedes the name check (UNION_TYPES already includes types.UnionType on Python 3.10+). The version-guarded int | None test case from #69 is kept and exercises the new implementation.

Verified on the merged tree: full test suite passes on Python 3.11 and 3.13 (731 passed), ruff check clean.

Note for merging: the branch-protection required check "Run tests with Python 3.8" will never report here since this change removes 3.8 from the CI matrix — it needs to be dropped from required checks or admin-merged.

🤖 Generated with Claude Code

https://claude.ai/code/session_01HgnKFtXZbCjXNoVNWa5JLd


Generated by Claude Code

manawasp and others added 17 commits November 13, 2024 13:44
Resolves the conflict in mode/utils/objects.py in favor of PR #64's
get_origin()-based is_union(), which supersedes the UnionType name
check added by #65/#69: UNION_TYPES already includes types.UnionType
on Python 3.10+. The version-guarded 'int | None' test case from #69
is kept and exercises the new implementation.

Assisted-by: Claude
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HgnKFtXZbCjXNoVNWa5JLd
hypothesis 6.156.0 switched to a mixed Python/Rust build (pyo3),
which has no PyPy wheels and whose pyo3 version requires PyPy >= 3.11.
The pypy3.10 CI job fails building it (and its ast-serialize
dependency) from source. Keep PyPy on the last pure-Python release
line; CPython continues to track the latest hypothesis.

Assisted-by: Claude
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HgnKFtXZbCjXNoVNWa5JLd
mypy 2.x pulls in ast-serialize, a pyo3/Rust extension that cannot
build on PyPy < 3.11, and mypy does not support running under PyPy.
It is not used by the test suite (only the commented-out lint step),
so exclude it from PyPy installs.

Assisted-by: Claude
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HgnKFtXZbCjXNoVNWa5JLd
@wbarnha
wbarnha merged commit e8d0a96 into master Jul 17, 2026
14 checks passed
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.

3 participants