Changelog¶
Each release usually includes various fixes and improvements. The most noteworthy of these, as well as any features and breaking changes, are listed here.
v4¶
v4.0.0-beta.5¶
- Update lavaplayer to
2.0.3
- Fixed YouTube access token errors - Added default plugin repository. Plugin devs can now request their plugin to be added to the default repository. For more info see here
- Fixed error when seeking and player is not playing anything in
v4.0.0-beta.4¶
- Update lavaplayer to
2.0.2
- Support MPEG 2.5 and fixed some requests not timing out - Add
Omissible#isPresent
&Omissible#isOmitted
to theprotocol
module - Fix null pointer when a playlist has no selected track
v4.0.0-beta.3¶
- Update lavaplayer to
2.0.0
- Fixed YouTube 403 errors & YouTube access token errors
v4.0.0-beta.2¶
- Update lavaplayer to
08cfbc0
- Fixed ogg streaming - Add JDA-NAS support for musl (
x86-64
,aarch64
) based systems (most notablyalpine
) - New config option to specify the directory to load plugins from.
lavalink.pluginsDir
(defaults to./plugins
)
v4.0.0-beta.1¶
- New Lavalink now requires Java 17 or higher to run
- Removal of all websocket messages sent by the client. Everything is now done via REST
- Update to Lavaplayer custom branch, which includes native support for artwork urls and ISRCs in the track info
- Addition of full
Track
objects in following events:TrackStartEvent
,TrackEndEvent
,TrackExceptionEvent
,TrackStuckEvent
- Resuming a session now requires the
Session-Id
header instead ofResume-Key
header - Reworked track loading result. For more info see here
- Update to the Protocol Module to support Kotlin/JS
- Removal of all
/v3
endpoints except/version
. All other endpoints are now under/v4
Warning This is a beta release, and as such, may contain bugs. Please report any bugs you find to the issue tracker. For more info on the changes in this release, see here If you have any question regarding the changes in this release, please ask in the support server or GitHub discussions
Contributors: @topi314, @freyacodes, @DRSchlaubi and @melike2d
v3¶
v3.7.9¶
- Update lavaplayer to
1.5.1
- Fixed YouTube access token errors - Fixed websocket crash when seeking and nothing is playing
- Fixed error when seeking and player is not playing anything
v3.7.8¶
- Fix YouTube 403 errors
- Fix YouTube access token errors
v3.7.7¶
- Add JDA-NAS support for musl (
x86-64
,aarch64
) based systems (most notablyalpine
)
v3.7.6¶
- Update Lavaplayer to
1.4.1
&1.4.2
- New support for
MUSL
based systems (most notablyalpine
) - New
alpine
docker image variant (use-alpine
suffix)
v3.7.5¶
- Fix
endTime
inPlayer Update
endpoint only applying when playing a new track - Fix errors when doing multiple session resumes
- Update lavaplayer to
1.4.0
see here for more info
Note Lavalink Docker images are now found in the GitHub Container Registry instead of DockerHub
v3.7.4¶
- Fix an issue where Lavalink would not destroy a session when a client disconnects
v3.7.3¶
- Fix breaking change where
/decodetrack
would return a full track instead of the track info
v3.7.2¶
- Fix breaking change where frameStats would be null instead of omitted
v3.7.1¶
- Revert of application.yml autocreate as it can cause issues with differently named configs
v3.7.0¶
- New REST API for player control and deprecation of all websocket OPs. For more info see here
- Autocreate default
application.yml
if none was found. https://github.com/lavalink-devs/Lavalink/pull/781 - New config option to disable jda nas. https://github.com/lavalink-devs/Lavalink/pull/780
- New config option to disable specific filters. https://github.com/lavalink-devs/Lavalink/pull/779
- Update lavaplayer to
1.3.99.2
. https://github.com/lavalink-devs/Lavalink/pull/794 - Update udpqueue.rs to
v0.2.6
. https://github.com/lavalink-devs/Lavalink/pull/802
Contributors: @topi314, @Devoxin, @melike2d, @freyacodes, @aikaterna, @ooliver1
v3.6.2¶
- Update lavaplayer to
1.3.99.1
. For more info see here
v3.6.1¶
- Update lavaplayer to
1.3.99
. For more info see here
v3.6.0¶
- New userId & clientName getters in the plugin-api. For more info see here.
Contributors: @melike2d
v3.5.1¶
- Update udpqueue.rs to
0.2.5
which fixes crashes when ipv6 is disabled - Fix null socketContext in
IPlayer
for plugins - New
ping
field in player update. see https://github.com/lavalink-devs/Lavalink/pull/738 for more info
Contributors: @topi314, @Devoxin, and @freyacodes
v3.5¶
- New plugin system. For more info see here.
- Add support for HTTP proxying via httpConfig. For more info see here.
- Update koe version to 2.0.0-rc1.
- this fixes the WebSocketClosedEvent with code 1006 problem.
- Fix error when enabling timescale and lowpass filters.
- Fix player not playing after moving between voice chats or changing regions.
- Fix guild ids sent as numbers in json.
- Fix missing timescale natives.
- Fix setting endMarkerHit to correctly set FINISHED as the reason.
- Undeprecation of the
volume
property in theplay
OP. - Configurable track stuck threshold. For more info see here.
- Add JDA-NAS support for more CPU Architectures. For more info see here. Big thanks goes to @MinnDevelopment here.
- Update lavaplayer to
1.3.98.4
which fixes the latest yt cipher issues and age restricted tracks
Contributors: @freyacodes, @davidffa, @Walkyst, @topi314, @duncte123, @Kodehawa, @Devoxin, @Muh9049, @melike2d, @ToxicMushroom, @mooner1022, @rohank05, @Fabricio20, @TheEssemm, and @jack1142
v3.4¶
- New filters system
- Deprecation of
TrackExceptionEvent.error
, replaced byTrackExceptionEvent.exception
- Added the
connected
boolean to player updates. - Updated lavaplayer, fixes Soundcloud
- Added source name to REST api track objects
- Clients are now requested to make their name known during handshake
Contributors: @freyacodes, @duncte123, @DaliborTrampota, @Mandruyd, @Allvaa, and @topi314
v3.3.2.5¶
- Update Lavaplayer to 1.3.76
v3.3.2.4¶
- Update Lavaplayer to 1.3.74
v3.3.2.3¶
- Update Lavaplayer to 1.3.65, fixes Soundcloud
v3.3.2.2¶
- Updated Lavaplayer to 1.3.61
- Fixed a ConcurrentModificationException (Thewsomeguy)
v3.3.2.1¶
- Updated to Sedmelluq's Lavaplayer 1.3.53
v3.3.2¶
- Replaced Magma with Koe.
- Finally implemented
stopTime
forplay
op. - Added
playerUpdateInterval
config option. - Added
environment
to Sentry config. - Fixed #332
- Updated IP rotator.
- Update lavaplayer to
1.3.59
from devoxin's fork. - Added a Testbot for development.
Contributors: @freyacodes, @Thewsomeguy, @Neuheit, @Sangoon_Is_Noob, @TheEssem, and @Devoxin
v3.3.1.4¶
- Update lavaplayer to
1.3.54.3
from devoxin's fork.
v3.3.1.3¶
- Update lavaplayer to
1.3.53
from devoxin's fork.
v3.3.1.2¶
- Update lavaplayer to @Devoxin's' fork
v3.3.1.1¶
- Updated Lavaplayer to
1.3.50
. This notably fixes YouTube search.
Search patch contributed by @freyacodes
v3.3.1¶
- Update Magma and Lavaplayer.
- Added TrackStartEvent event.
- Added retryLimit configuration option.
- Use a single AudioPlayerManager for all WS connections, reducing overhead.
- Docker images now use Zulu JDK 13 to mitigate TLS 1.3 problems.
Contributors: @freyacodes, @duncte123, @ByteAlex, and @Xavinlol
v3.3¶
Officially limit Lavalink to JRE 11 and up. Magma has long been having issues with older versions.
v3.2.2¶
- IP rotation system for getting around certain ratelimits.
- Update Lavaplayer to 1.3.32.
- Docker container now uses a non-root user.
Contributors: @freyacodes, @ByteAlex, @duncte123, and @james7132
v3.2.1.1¶
- Updated Lavaplayer to 1.3.19. This release includes a patch which fixes loading youtube URLs. https://github.com/sedmelluq/lavaplayer/pull/199
- Made the WebSocket handshake return code 401 instead of 200 on bad auth. #208
Contributors: @freyacodes and @Devoxin
v3.2.1¶
- Update dependencies -- fixes frequent youtube HTTP errors
- Return
FriendlyException
message onLOAD_FAILED
#174 - Add option to disable
ytsearch
andscsearch
#194
Contributors: @Devoxin, @duncte123, @freyacodes, and @napstr
v3.2.0.3¶
- Add compatibility for Java 8-10
Contributor: @MinnDevelopment
v3.2.0.2¶
- Patched magma
Contributor: @freyacodes
v3.2.0.1¶
- Bumped to Java 11. Treating this as a patch version, as v3.2 still requires Java 11 due to a Magma update.
v3.2¶
- Added support for resuming
- Added noReplace option to the play op
- Sending the same voice server update will not cause an existing connection to reconnect
Contributor: @freyacodes
v3.1.2¶
- Add API version header to all responses
Contributor: @Devoxin
v3.1.1¶
- Add equalizer support
- Update lavaplayer to 1.3.10
- Fixed automatic versioning
- Added build config to upload binaries to GitHub releases from CI
Contributors: @Devoxin, @freyacodes, @calebj
v3.1¶
- Replaced JDAA with Magma
- Added an event for when the Discord voice WebSocket is closed
- Replaced Tomcat and Java_Websocket with Undertow. WS and REST is now handled by the same
server and port. Port is specified by
server.port
.
v3.0¶
- Breaking: The minimum required Java version to run the server is now Java 10.
Please note: Java 10 will be obsolete as of September 2018 with the release of Java 11. Expect a Lavalink major version release that will be targetting Java 11 by that time. - Breaking: Changes to the output of the /loadtracks endpoint. #91, #114, #116
- Breaking: The Java client has been moved to a new repository.
- Breaking: The Java client has been made generic. This is a breaking change so please read the migration guide.
- Better configurable logging. #97
- Add custom sentry tags, change sentry dsn configuration location. #103
- Add Lavalink version header to websocket handshake. #111
- Use git tags for easier version visibility. #129
Contributors: @Devoxin, @freyacodes, @napstr, @SamOphis
v2¶
v2.2¶
- Lavaplayer updated to 1.3.x #115
- Version command line flag #121
- Fix race condition in
/loadtracks
endpoint leading to some requests never completing #125
Contributors: @Devoxin, @freyacodes, @napstr
v2.1¶
Contributors: @freyacodes, @napstr, @Repulser
v2.0.1¶
- Configurable playlist load limit #60
- Docker Releases, #74
Contributors: @Devoxin, @freyacodes, @itslukej, @napstr, @Repulser