Releases: Sheppsu/osu.py
Releases · Sheppsu/osu.py
v0.6.0
New changes
- Updated
UserStatisticsobject with several attributes:count_300,count_100,count_50,count_miss - Updated
NotificationWebsocketwith updated functionality. If you're looking to check out all the functionality, check out this example. - Created a class for each type of detail object for
Notification.details - Added enums
NotificationCategoryandNotificationType - Update chat_acknowledge with new query params.
Bug fixes
- Fix mark_notifications_read
v0.5.1
New
- New mod AC added to
Modenum. LazerModwill fallback to using a string value when theModenum does not contain a mod.
Breaking change
ScoreDataStatistic->ScoreDataStatistics
I know I really shouldn't be putting a breaking change in a minor version change, but it was more like a typo fix so w/e.
v0.5.0
All changes to Client have also been applied to AsynchronousClient
All changes to HTTPHandler have also been applied to AsynchronousHTTPHandler
New
Client.chat_acknowledgeClient.get_new_score_tokenClient.submit_scoreClient.favourite_beatmapsetClient.get_open_chat_channelsClient.join_user_to_roomClient.kick_user_from_roomClient.reportClient.create_multiplayer_roomClient.create_playlistClient.check_download_quota- added
use_lazerargument toClientinit - added
Client.from_osu_credential LazerAuthHandlerRoomFilterModeenumPlaylistItemUtilReadNotificationUserStatistics.pp_expUserStatistics.global_rank_expRoom.realtime_typeMod.FreezeFrameChatChannelType.ANNOUNCEScopesupports being passed "*"Detailsprints a warning when given an unknown typeSearchResultsHTTPHandlerandAsynchronousHTTPHandlerprint an error message if the api replies with one
Breaking change
- The return type for
Client.searchhas changed
Non-breaking changes
Commentrepresentation changes from showingmessage,user_id, andcreated_attouser_idandmessage
Bug fixes
- fixed typo for
CurrentUserAttributesif typeChatChannelUserAttributes - fixed values for
Room.typesandRoom.queue_mode - KeyError being thrown in
Navigation - KeyError being thrown in
CommentBundle - KeyError being thrown in
Spotlight - KeyError being thrown in
MultiplayerScores - KeyError being thrown in
Comment - KeyError being thrown in
ChatChannel - fixed all bugs with
NotificationWebsocket - fixed
Client.create_new_pm - fixed
Client.get_updates - fixed
Client.mark_channel_as_read - fixed
Client.create_channel - fixed
Client.get_channel - fixed
Client.get_comments - fixed
Client.post_comment - fixed
Client.edit_comment - fixed
Client.get_notifications - fixed
Client.mark_notifications_read - fixed
Client.get_rooms
Inside changes
- request method is associated with
Pathinstead of passed as argument when making requests HTTPHandlerandAsynchronousHTTPHandlercan send multipart/form-data requests- added
lazer_base_urlandlazer_token_urlto constants - added
Path.beatmapset_search
v0.4.2
New
OsuBeatmapDifficultyAttributesobjects havespeed_note_countattribute now.
Breaking changes
TaikoBeatmapDifficultyAttributesobject no longer hasapproach_rateattribute and now has apeak_difficultyattributeManiaBeatmapDifficultyAttributesobject no longer hasscore_multiplierattribute.LazerMod.settingscan now beNone
v0.4.1
v0.4.0
New
- get_lazer_beatmap_scores endpoint was added
- SoloScore object was added
- New enums were added (UserScoreType, ForumTopicType, ChatChannelType)
Breaking changes
- Score class was renamed to LegacyScore and the Score class is a class for instantiating a score object (SoloScore or LegacyScore) based on the type attribute given by the API.
Non-breaking changes
- The scope required for the get_users endpoint changed from lazer to public.
v0.3.0
Changes from v0.2.10 to v0.3.0
New
- More custom rate limit handling. You can choose the wait time between requests as well as the max requests per minute. Just make sure you're always following peppy's TOU for the api:
Use the API for good. Don't overdo it. If in doubt, ask before (ab)using :). this section may expand as necessary.
Current rate limit is set at an insanely high 1200 requests per minute, with burst capability of up to 200 beyond that. If you require more, you probably fall into the above category of abuse. If you are doing more than 60 requests a minute, you should probably give peppy a yell.
Modsenum has new methods to check compatibility between mods.- Scope object has a
__str__method. ( #5 ) Modsenum has new methods:__iter__andto_readable_string(read about it here https://osupy.readthedocs.io/en/latest/api.html#osu.Mods.to_readable_string)- All objects have
__repr__method. (#7 ) - Many new objects, enums, and endpoints. All new objects and enums are related to the new endpoints. List of new endpoints:
get_beatamapset_eventsget_matchesget_matchget_roomsget_seasonal_backgroundsget_roomget_score_by_idsearch_beatmapsetsget_room_leaderboardget_replay_dataget_friends
AuthHandlerhas save and load utilities now.- Endpoints are marked as needing a user where necessary and an error is raised when trying to make a request to an endpoint that requires a user without having a user authorized.
Modenum which is an enum for all mods and is not a flag enum compared to theModsenum.
Breaking changes
- Deleting and adding a few mods to the
Modsenum as well as changing Relax2 to AutoPilot. Mods.parse_and_return_any_list->Mods.parse_any_list- (Possibly breaking)
Score.mods is of typeModsnow.
Non-breaking changes
AsynchronousClientuses aiohttp for asynchronous requests.