Add macos-latest to the CI test matrix
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- github-actions, macos, python
- Domain
- ci-cd, testing-qa
Research direction
Locate the CI workflow that defines the Ubuntu and Windows test matrix, then review the test named test_modern_post_with_deeply_nested_body_is_rejected_not_a_crash. Add macos-latest to the matrix and verify that the named test and the macOS CI leg run successfully.
Written by the indexing model from the issue text.
Description
Description
The macOS-only test failure reported in #3146 went unnoticed for an extended period because the CI matrix runs Ubuntu and Windows only. The failing test (test_modern_post_with_deeply_nested_body_is_rejected_not_a_crash) encodes an assumption about where CPython's recursion guard strikes, and that assumption silently broke on macOS + Python 3.14 — a platform/interpreter combination the matrix never exercised.
Adding macos-latest to the test matrix would have surfaced this at the point it was introduced rather than via a downstream bug report. The failure was deterministic and reproducible across repeated macos-latest runs, so it is a reliable signal, not flaky-runner noise.
Worth noting for scoping: the failure mode is CPython-version-sensitive (pre-3.14 the recursion limit ignores stack size entirely, so the test is deterministic and platform-independent there; on 3.14 the outcome depends on per-thread stack headroom). A macOS matrix leg therefore provides the most value on 3.14+, but including it across the supported range also guards against other platform-specific regressions in the server transport stack.
Context: this was flagged during review of #3147 (which fixes #3146) as the "more valuable half" of that issue — splitting it out so it doesn't get closed along with the PR.
References
- #3146 — the macOS failure this leg would have caught
- #3147 — fix for #3146, review discussion where the matrix gap was raised
- Dominant language
- Python
- Stars
- 24.4k
- Forks
- 4k
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 18
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from modelcontextprotocol/python-sdk
-
v1 v2
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
modelcontextprotocol/python-sdk#3592 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
modelcontextprotocol/python-sdk#3590 ·
Maintainers usually reply within 1 day
-
v1 v2
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
modelcontextprotocol/python-sdk#3589 ·
Maintainers usually reply within 1 day
-
v1 v2
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
modelcontextprotocol/python-sdk#3585 · 1 comment ·
Maintainers usually reply within 1 day
-
v1 v2
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
modelcontextprotocol/python-sdk#3578 · 1 comment ·
Maintainers usually reply within 1 day
All issues in modelcontextprotocol/python-sdk
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
PedestrianDynamics/pyFDS-Evac#343 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
theskumar/python-dotenv#708 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Maintainers usually reply within 2 days
-
Docs Timedelta
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
pandas-dev/pandas#69919 ·
Maintainers usually reply within 1 day
-
API documentation
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
zephyrproject-rtos/west#1009 · 2 comments ·
Maintainers usually reply within 3 days