docs: add the 1.0 migration guide (#287) - #293
Merged
Merged
Conversation
Co-authored-by: Matthew Spah <spahmatthew@gmail.com>
Co-authored-by: Matthew Spah <spahmatthew@gmail.com>
Mattsface
marked this pull request as ready for review
August 6, 2026 01:22
Mattsface
commented
Aug 6, 2026
Mattsface
left a comment
Member
Author
There was a problem hiding this comment.
Looks good. The docs check out.
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Closes #287
Why
Version 1.0.0 changes the default HTTP behavior so
Mlb()is equivalent toMlb(strict_http=True). Users upgrading from 0.9.x need exact guidance about what now raises, what remains compatible, and how to temporarily retain the historical behavior.Breaking change documented
Mlb()/MlbDataAdapter()now default to strict HTTP handlingMlbHttpErrorby defaultstrict_http=Falseremains an explicit temporary compatibility opt-outREADME changes
strict_http=Falseexamplesdocs/releases/1.0.0.mddocs/public-api.md(file lands with Audit and define the stable public API for 1.0 #286)python-mlb-statsapi/0.9.0because package metadata on this branch is still0.9.0(offline docs consistency test)Transport-guide changes
strict_http=False, historical empty result, 1.0 default, how to raise)Migration steps
Documented the recommended process: find empty-result 4xx reliance → handle
MlbHttpError→ distinguish 404 domain results → temporarystrict_http=Falseonly where needed → test warning-as-error configs → remove the opt-out → confirm Session/retry behavior.Warning-as-error guidance
Documented promoting
MlbHttpCompatibilityWarningto an error, preferred migration via removingstrict_http=False, and that ignoring the warning or disabling all warnings is temporary / not recommended.404 distinction
Documented that endpoint-specific 404
None/[]/{}behavior is preserved under both the default and compatibility mode, and that a missing person may still returnNonewithout raising.Compatibility-mode positioning
Described
strict_http=Falseas a temporary migration opt-out and explicit request for historical 0.9 behavior, not the recommended long-term 1.0 configuration.Public API contract integration
Links to
docs/public-api.mdare present, but #286 has not merged yet, so that file does not exist onrelease/1.0.0. Stability wording will be reconciled against the final #286 classification after rebase. This PR remains draft until #286 is integrated. #285 is already merged.Release-note structure
Created
docs/releases/1.0.0.mdwith breaking change, highlights, migration guidance, documentation links, and not-included exclusions. Does not claim PyPI publication, tagging, or GitHub release.Historical release notes preserved
docs/releases/0.8.0.mdanddocs/releases/0.9.0.mdwere not rewritten.Dependencies integrated
8d3b7c8, verified as ancestor ofrelease/1.0.0)40babef/ PR #292)docs/public-api.mdmissingFocused validation results
git diff --check: cleanpoetry check: exit 0 (existing Poetry deprecation warnings only)Full offline-suite results
Build result
Release-validator result
Exact blocker (unrelated pending release work; validator not changed in this issue):
The smoke test embedded in
scripts/validate_release.pystill asserts the 0.9 default. Package metadata on the branch is still0.9.0. Updating the validator belongs to the release-prep / validator issue, not #287.Link validation
Remaining blockers
release/1.0.0docs/public-api.mdlink validation must be confirmed against the final Audit and define the stable public API for 1.0 #286 classificationstrict_httpdefaultFalseand version0.9.0— pending separate release workRisk assessment
Documentation-only change. No runtime behavior, constructor defaults, warnings, exceptions, retries, Session ownership, endpoint models, package exports, CI, or version metadata were modified.