Skip to content

v4.0.0

Latest
Compare
Choose a tag to compare
@tybug tybug released this 29 May 18:03
· 5 commits to master since this release

The big change in this release is to account for the migration from old score ids (https://osu.ppy.sh/scores/osu/3772000814) to new score ids (https://osu.ppy.sh/scores/1312718771). The former requires the gamemode while the latter does not. Endpoints which previously took both a gamemode and a score id have been changed to take just a score id (new format), while the previous endpoint behavior was kept under a different method name.

Breaking changes

  • rename api.score to api.score_mode
  • add a new api.score method which takes the new score id format
  • rename api.download_score to api.download_score_mode
  • rename BeatmapScores.userScore to BeatmapScores.user_score
  • add a new api.download_score method which takes the new score id format
  • rename before and after parameters of api.match to before_id and after_id, to better reflect that the api filters by id and not something like time
  • remove Domain.LAZER
    • lazer.ppy.sh was decommissioned in the past few months, so this parameter has no effect and in fact causes errors. Lazer data is now live on the main site and you do not need to pass a Domain to access it

Migration guide

  • change any api.score calls to api.score_mode (and consider migrating to the new api.score, to use the new score ids without gamemodes)
  • change any api.download_score calls to api.download_score_mode (and consider migrating to the new api.download_score, for the same reason)
  • rename any api.match(before=..., after=...) calls to api.match(before_id=..., after_id=...)

Non-breaking changes

  • add legacy_only parameter to applicable endpoints
  • make Statistics counts optional
  • correctly type cursor_string as optional