Releases: tybug/ossapi
v4.0.0
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
toapi.score_mode
- add a new
api.score
method which takes the new score id format - rename
api.download_score
toapi.download_score_mode
- rename
BeatmapScores.userScore
toBeatmapScores.user_score
- add a new
api.download_score
method which takes the new score id format - rename
before
andafter
parameters ofapi.match
tobefore_id
andafter_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
- 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
Migration guide
- change any
api.score
calls toapi.score_mode
(and consider migrating to the newapi.score
, to use the new score ids without gamemodes) - change any
api.download_score
calls toapi.download_score_mode
(and consider migrating to the newapi.download_score
, for the same reason) - rename any
api.match(before=..., after=...)
calls toapi.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
v4.0.0beta1
This is a beta release. You can install it with pip install -U --pre ossapi
. I may make breaking changes based on feedback before releasing 4.0.0 final (though I don't expect to).
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
toapi.score_mode
- add a new
api.score
method which takes the new score id format - rename
api.download_score
toapi.download_score_mode
- add a new
api.download_score
method which takes the new score id format - rename
before
andafter
parameters ofapi.match
tobefore_id
andafter_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
- 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
Migration guide
- change any
api.score
calls toapi.score_mode
(and consider migrating to the newapi.score
, to use the new score ids without gamemodes) - change any
api.download_score
calls toapi.download_score_mode
(and consider migrating to the newapi.download_score
, for the same reason) - rename any
api.match(before=..., after=...)
calls toapi.match(before_id=..., after_id=...)
Non-breaking changes
- make
Statistics
counts optional - correctly type
cursor_string
as optional
v3.4.4
- add provisional
api._beatmap_scores_non_legacy
endpoint- this implements the
/beatmaps/{beatmap}/solo-scores
endpoint, which returns lazer-specific data in a new format. - feel free to give feedback on this endpoint on either discord or through github issues! The api design and classes on ossapi's side are not final and subject to change.
- speaking of, this is a provisional and unstable api. I may and will make breaking changes to this endpoint without a major version bump before I finalize it by removing its underscore. As always, I will try to minimize this changes, and any changes will be communicated in release notes and on discord.
- this implements the
- add
UserCompact.active_tournament_banners
- add
UserCompact.session_verified
- add
Events.cursor
- fix some events from
api.events()
not parsing correctly
v3.4.3
v3.4.2
v3.4.1
v3.4.0
- implement endpoint
api.beatmap_packs()
- implement endpoint
api.beatmap_pack()
- add
GithubUser.github_username
- fix
api.ranking
withtype="country"
erroring - fix
RankingType.CHARTS
value. previouslyspotlight
, nowcharts
- remove
User.is_{admin, bng, full_bn, gmt, limited_bn, moderator, nat}
- these attributes have not been returned from the api in years. Use
user.groups
instead
- these attributes have not been returned from the api in years. Use
- add a user agent header to all requests, in the format
ossapi (vx.x.x)
- use correct return type annotation for
api.beatmap_user_scores()