Title: Prepare release machinery for v2 pre-releases by maxisbey · Pull Request #2831 · modelcontextprotocol/python-sdk · GitHub
Open Graph Title: Prepare release machinery for v2 pre-releases by maxisbey · Pull Request #2831 · modelcontextprotocol/python-sdk
X Title: Prepare release machinery for v2 pre-releases by maxisbey · Pull Request #2831 · modelcontextprotocol/python-sdk
Description: Prepares the repo to publish v2 pre-releases (2.0.0aN) from main.
Motivation and Context
We want to start publishing v2 alphas to PyPI to get the rework into testers' hands. PEP 440 pre-release semantics keep 2.0.0aN invisible to anyone on mcp>=1.x (installers only select pre-releases on explicit opt-in), but some repo machinery assumes a single release line, and the published metadata would have been wrong:
pyproject.toml pointed PyPI's long description at the frozen v1 README.md, so a pre-release's PyPI page would have shown v1 docs. It now uses README.v2.md, with a refreshed banner (alpha status, opt-in install lines, v1.x recommendation, no committed GA date), absolute URLs (PyPI doesn't resolve relative links), and no GitHub-only [!IMPORTANT] alert syntax (PyPI's renderer shows it as literal text).
comment-on-release.yml picked the "previous release" by list order, which breaks once two release lines publish interleaved: v2.0.0a1's previous release would have been v1.27.2 — a cross-branch compare spanning all of main since the v1.25.0 branch point — and the next v1.x release would then have compared against v2.0.0a1. It now walks back to the nearest release whose tag is an ancestor of the current tag on the same major line, paginates the commit range instead of truncating at one response, tolerates candidates whose tag no longer resolves, accepts a release re-cut on the same commit, and labels comments on pre-releases as "pre-release". The first release of a new major line has no same-line predecessor, so it intentionally skips commenting rather than commenting on every PR in the new line's history.
RELEASE.md documents the pre-release flow: verify the matrix on the release commit, gh release create vX --prerelease --target
Open Graph Description: Prepares the repo to publish v2 pre-releases (2.0.0aN) from main. Motivation and Context We want to start publishing v2 alphas to PyPI to get the rework into testers' hands. PEP 440 pre-release...
X Description: Prepares the repo to publish v2 pre-releases (2.0.0aN) from main. Motivation and Context We want to start publishing v2 alphas to PyPI to get the rework into testers' hands. PEP 440 pre-rel...
Opengraph URL: https://github.com/modelcontextprotocol/python-sdk/pull/2831
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:bd95d84e-3ea9-e4db-8180-78d283b5a7be |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | CBA2:C57C7:891D30:B98ACC:6A5A85D1 |
| html-safe-nonce | 379c72ed99d2b316d43c2beb199e25eefeedf453baaca69e5ba70ad0b9545dd7 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQkEyOkM1N0M3Ojg5MUQzMDpCOThBQ0M6NkE1QTg1RDEiLCJ2aXNpdG9yX2lkIjoiNzIyMzI1MDYxMjY0NTQzMDczNyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | f3a2facdd08691dea1c1c82393d6bddbc521843e994dc1f58eed740b1870d3f8 |
| hovercard-subject-tag | pull_request:3842156177 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/modelcontextprotocol/python-sdk/pull/2831/files |
| twitter:image | https://avatars.githubusercontent.com/u/224885523?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/224885523?s=400&v=4 |
| og:image:alt | Prepares the repo to publish v2 pre-releases (2.0.0aN) from main. Motivation and Context We want to start publishing v2 alphas to PyPI to get the rework into testers' hands. PEP 440 pre-release... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 922bdba685ea48400234d557977f0e32d9adbae6f5125725b4f48cacc6801106 |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/modelcontextprotocol/python-sdk git https://github.com/modelcontextprotocol/python-sdk.git |
| octolytics-dimension-user_id | 182288589 |
| octolytics-dimension-user_login | modelcontextprotocol |
| octolytics-dimension-repository_id | 862584018 |
| octolytics-dimension-repository_nwo | modelcontextprotocol/python-sdk |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 862584018 |
| octolytics-dimension-repository_network_root_nwo | modelcontextprotocol/python-sdk |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 7c8a44665d760d73ead7e85d8f88b299152aa681 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width