Skip to content

Releases: devoxin/Lavalink.py

Lavalink.py 5.4.0

10 May 21:13
69dca8a
Compare
Choose a tag to compare

Additions

  • Added a connect kwarg to add_node.
  • Added source_encoders option to encode_track for specifying per-source data to be encoded into the base64 track string.

Fixes

  • Fixed overload ordering for Node.request so that the str overload is now correctly selected.
  • Fixed an issue with last_position being incorrectly set and used during node failover.
  • Fixed AuthenticationError being caught and rethrown as ClientError during HTTP requests.

Changes

  • Added a note about the potential consequences of calling DefaultPlayer.play, DefaultPlayer.skip and BasePlayer.play_track.
  • Documentation for the DataIO module.
  • Documentation notes about when to call play/play_track methods from track events.

Lavalink.py 5.3.0

08 Mar 20:15
4ea2dc7
Compare
Choose a tag to compare

Additions

  • [typings] Add player types to PlayerManager class.
  • [docs] Annotate return type of DeferredAudioTrack.load method.
  • [docs] Expose the DataReader and DataWriter classes in DataIO.
  • [interface] Add support for per-source base64 track field decoding.
  • [interface] Add DefaultPlayer.remove_filters method for removing multiple filters at once.

Fixes

  • [typings] Fix events type for @lavalink.listener decorator.
  • [internal] Fix LowPass filter trying to convert 'smoothing' to a float.
  • [internal] Attach exception information to error log when handling websocket message.

Changes

  • [interface] Renamed AudioTrack.stream to AudioTrack.is_stream for naming consistency and clarity.
    • AudioTrack.stream is still available but marked deprecated.

Lavalink.py 5.2.0

17 Feb 14:24
c9f80b9
Compare
Choose a tag to compare

Additions

  • Added public Node.request method for making HTTP requests.
  • Added Client.remove_event_hooks method.

Fixes

  • Fix a potential issue where player.current would be set to None upon receiving subsequent TrackStartEvents.
  • Fix position potentially reading incorrectly when a non-zero start_time was provided.
  • Fix player.paused potentially holding an incorrect state if the player is paused and then skipped (forcing an un-pause).

Changes

  • Documentation improvements.
  • Improve robustness of player failover.

Lavalink.py 5.1.0

17 Dec 16:44
Compare
Choose a tag to compare

Additions

  • Node.get_rest_latency()

Lavalink.py 5.0.0

08 Dec 20:22
2816893
Compare
Choose a tag to compare

This release adds support for Lavalink server v4 (with REST API).

For a full changelog, you can view the commits here

Lavalink.py 4.0.7

05 Mar 18:05
Compare
Choose a tag to compare

Fixes

  • Fix bad endTime check.
    • Additionally, raise minimum endTime duration to 1.

Additions

  • Add LoadResult.selected_track convenience property.
  • Add Client.get_source() convenience method.

Changes

  • Raise original error in utils.timestamp_to_millis.
  • Slight improvement to DefaultPlayer.play documentation to clarify the difference between it and BasePlayer.play_track.

Lavalink.py 4.0.6

17 Feb 22:28
Compare
Choose a tag to compare

Fixes

  • Fixed DefaultPlayer.play not throwing if the provided track does not have a track str, and it is not an instance of DeferredAudioTrack.

Additions

  • Add return type to utfm_codec.read_utfm.
  • Add return type to utils.encode_track.
  • Improved typedefs of Stats object.
  • Improved typedefs of Penalty object.
  • Improved typedefs of Node.
  • Improved typedefs of NodeManager.
  • Improved typedefs of PlayerManager.
  • Improved typedefs of QueueEndEvent.
  • Improved typedefs of PlayerUpdateEvent.
  • Improved typedefs of WebSocketClosedEvent.
  • Improved typedefs of track events.
  • Improved typedefs of node events.

Lavalink.py 4.0.5

10 Feb 19:28
Compare
Choose a tag to compare
  • Added ping field to PlayerUpdateEvent after it somehow got removed.
  • Added Node type def to BasePlayer.node, BasePlayer.change_node, and DefaultPlayer.__init__.
  • Changed Equalizer.update to also accept float for the gain value.

Lavalink.py 4.0.4

02 Nov 13:55
cc8df70
Compare
Choose a tag to compare

Fixes

  • Use asyncio.gather over asyncio.wait

Additions

  • Add rudimentary track encoding support

Changes

  • Don't default to -1 if frame stats missing.

Lavalink.py 4.0.3

23 Sep 00:24
Compare
Choose a tag to compare

Fixes

  • Fix DefaultPlayer._last_update being incorrectly reset in play() leading to brief periods where position would read incorrectly between tracks.