chore: move the exact mthds pin to 0.14.0 so pipelex and pipelex-sdk co-install - #25
Merged
Conversation
…co-install Both packages pin `mthds` exactly, so they resolve together only when they name the same version. `pipelex` moved to `mthds==0.14.0` on its `dev` branch, which left this SDK at `0.13.0` and made the pair unresolvable from source; on PyPI the break arrives with the next `pipelex` release. Nothing in this client needed adapting. The release's substantive change is `MTHDS_STANDARD_VERSION` going from 1.0.0 to 2.0.0, which this SDK never reads — it stamps no crates and ships no manifest — and the new `is_mthds_version_satisfied` helper and the `parse_constraint` whitespace fix land in `mthds.package.manifest.schema`, which nothing here imports. `PROTOCOL_VERSION` stays at 0.6.0, so the routes and the wire contract are untouched. The inherited seam is unchanged: every protected member this client extends is still present, the four overrides still have base counterparts, and the ruff `runtime-evaluated-base-classes` dotted paths all still resolve. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DuEKzDiMDWrABBibqwdFTt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
pipelexandpipelex-sdkboth pinmthdsexactly, so they install together only when they name the same version.pipelexhas already moved tomthds==0.14.0on itsdevbranch, which left this SDK at0.13.0and made the pair unresolvable from source. On PyPI the break is still latent — publishedpipelex0.56.0 andpipelex-sdk0.9.0 both requiremthds==0.13.0— so it arrives the moment apipelexrelease carrying the new pin is published. This is the move that keeps the two co-installable, and it reaches consumers at the nextpipelex-sdkrelease.What changed
The pin, the lock, and a changelog entry — nothing else. No source or test adaptation was needed.
mthds0.14.0's substantive change isMTHDS_STANDARD_VERSIONgoing from1.0.0to2.0.0, which this SDK never reads: it stamps no crates and ships no manifest. The release's other additions —is_mthds_version_satisfiedand theparse_constraintwhitespace fix — live inmthds.package.manifest.schema, which nothing here imports.PROTOCOL_VERSIONstays at0.6.0, so the routes and the wire contract are untouched.The inherited seam is unchanged
This SDK builds on
MthdsAPIClient's protected extension surface, so that is the part worth stating explicitly rather than inferring from a three-line diff:_API_PREFIX,_DEFAULT_REQUEST_TIMEOUT_SECONDS,_post_validate,_raise_if_execute_degraded,_send,_url.execute,start,start_client,validate) still have base counterparts, so the transitionaltype: ignore[override]suppressions are still load-bearing — none expired.runtime-evaluated-base-classesdotted paths all still resolve, so themthds.protocolannotations stay runtime-evaluated.Every
mthdsimport in this package is undermthds.protocol.*ormthds.runners.api.*, neither of which 0.14.0 touched.Not breaking for importers, but marked breaking
No symbol was renamed, re-exported, or narrowed, so nothing importing
pipelex_sdkhas to move. The changelog still marks it breaking, because the pin move narrows what every downstream environment may install.Checks
make agent-check(pyright 0 errors, mypy clean),make agent-test, plus the two CI gatesagent-checkomits:make pylintat 10.00/10 andmake check-unused-imports. All green, with no test fixture edits.Closes L-260906-d7e27c
🤖 Generated with Claude Code
https://claude.ai/code/session_01DuEKzDiMDWrABBibqwdFTt
Summary by cubic
Moves the exact
mthdspin from 0.13.0 to 0.14.0 sopipelexandpipelex-sdkco-install again.MTHDS_STANDARD_VERSIONbump and other 0.14.0 additions are unused here;PROTOCOL_VERSIONremains 0.6.0.Closes L-260906-d7e27c.
Written for commit 8075a9b. Summary will update on new commits.