Releases: devoxin/Lavalink.py
Releases · devoxin/Lavalink.py
Lavalink.py 4.0.6
Fixes
- Fixed
DefaultPlayer.play
not throwing if the provided track does not have atrack
str, and it is not an instance ofDeferredAudioTrack
.
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
- Added
ping
field toPlayerUpdateEvent
after it somehow got removed. - Added
Node
type def toBasePlayer.node
,BasePlayer.change_node
, andDefaultPlayer.__init__
. - Changed
Equalizer.update
to also acceptfloat
for thegain
value.
Lavalink.py 4.0.4
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
Fixes
- Fix
DefaultPlayer._last_update
being incorrectly reset inplay()
leading to brief periods whereposition
would read incorrectly between tracks.
Lavalink.py 4.0.2
- Fix
**extra
not being used when AudioTrack is passed an instance of itself.
Lavalink.py 4.0.1
Additions
NodeManager.get_nodes_by_region
Changes
NodeManager.DEFAULT_REGIONS
- These now correlate with Discord's RTC regions.
Lavalink.py 4.0.0
Non-exhaustive list of changes:
Additions
- Lavalink
filters
support. - Support Java's modified utf by including a dedicated
utfm
codec.- This should provide fewer erroneous decodes, as well as displaying previously-unsupported characters.
- Support Lavalink's new exception format (#105, contributors: @apex2504).
Utils.timestamp_to_mills
helper function.PlayerUpdateEvent.connected
.- Custom source support + DeferredAudioTrack.
player.destroy
.- Support for
volume
andpause
kwargs inplay()
. @lavalink.listener
decorator.- ssl support for nodes (wss/https).
/plugins
route support (#124, contributors: @apex2504).node_unavailable()
method added toBasePlayer
.- Docstrings.
Changes
user_id
now acceptsint
orstr
.- HTTP-based functions now raise appropriate errors rather than returning false/misleading values.
- Renamed
lavalink.exceptions
tolavalink.errors
to be more inline withError
naming. - Websocket closures now have a default error messages.
- Websocket closures now better attempts to extract the close code.
ConnectionResetError
should be better handled.- Updated a few logging messages to better show which module emitted the log.
position
andencoder_version
properties are now exposed in decoded AudioTracks.- Documented
player.channel_id
. player.guild_id
is now anint
.TrackEndEvent.track
is now markedOptional
to cover any potential scenarios where track decoding fails.- Marked
set_gain
,set_gains
, andreset_equalizer
as deprecated.- Their equivalents are listed in the docs, so endeavour to change this as they will probably be removed on the next minor/major version.
player.add
parameter has been re-ordered to be more logical.- The behaviour of the
requester
param inplayer.add
has been altered so that non-zero values now overwrite the track's requester. get_tracks
now returns aLoadResult
class rather than the raw JSON (dict).- Best effort was made to ensure this was backwards compatible, however it's marked as breaking as it's a large change, so you should verify you're unaffected.
AudioTrack
supports construction from anotherAudioTrack
instance.- Docstrings.
Fixes
- Lavalink.py client will no longer dispatch to empty hooks.
- Altered how Lavalink's
TrackStartEvent
is processed internally to avoid emittingNoneType
events. - Docstrings.
Notes
- Any non-essential functions (basically
routeplanner_*
functions in Client) have been moved to Node. They didn't make sense as they required a Node instance, so it seemed more logical to incorporate them directly into the Node instance itself. - Refactored logging formats.
Lavalink.py 2.1.10
Changes in this version
- Stats events are now handled within Lavalink.py
- A stats event is now dispatched when received from the server
- Lavalink.py now detects server version and adjusts some stuff internally to match
DefaultPlayer
'splay
function now accepts some additional parametersignore_shuffle
,index
DefaultPlayer
has some additional helper functions regarding playing and queueingplay_at
,play_now
,play_previous
,add_at
,add_next
- Track hooks can now be a normal function
- Numerous code improvements + docstrings which your editor might thank you for
Lavalink.py 2.1.9
- Add
connected
property to WebSocket - Encode query in
get_tracks
to resolve issues with playlist/mix loading - Remove
async
keyword from cleanup function
Lavalink.py 2.1.8
- Cleanup doesn't need to be an abstract method