Skip to content

v0.3.1 — nested refs + TeamRef metadata

Choose a tag to compare

@Mlaz-code Mlaz-code released this 07 May 14:32
· 1 commit to main since this release

Bundles the 0.3.0 (nested refs) and 0.3.1 (TeamRef metadata) work into a single published release. 0.3.0 was never tagged; install 0.3.1 to get all of it.

Added

Nested reference objects (was 0.3.0)

Every odds, opportunity, and reference-list row may now carry optional structured ref objects alongside the legacy flat fields. All additive — clients on older API versions just see None and behave identically.

  • New models: TeamRef, SportRef, EntityRef, Team
  • OddsLine, EVOpportunity, ArbitrageOpportunity, MiddleOpportunity, LowHoldOpportunity — gain home, away, sport_ref, league_ref, market_ref, sportsbook_ref
  • ArbitrageLeg gains sportsbook_ref
  • ClosingOddsLine gains market_ref + sportsbook_ref
  • ClosingSnapshot gains home, away, sport_ref, league_ref
  • Sport, League, Sportsbook, Market gain numerical_id
  • Event gains home, away, sport_ref, league_ref

TeamRef metadata (was 0.3.1)

TeamRef and the Team reference shape gain five optional metadata fields:

  • logo — full CDN URL (~93% coverage)
  • city, mascot, conference, division

All default to None. Unmapped rows omit the field rather than emitting null.

Repo / packaging hygiene

  • Add LICENSE (MIT) and SECURITY.md (hello@sharpapi.io)
  • Author email updated support@hello@
  • Tighten the sdist via [tool.hatch.build.targets.sdist] so .github/ workflow YAML no longer ships to PyPI
  • Drop tests/ from the repo (kept locally for development); CI gate is now lint + typecheck across Python 3.10 → 3.13

Compatibility

No existing field was renamed, retyped, or removed. Code on 0.2.x continues to work.