Skip to content

Changelog

4.6.1 latest 2026-04-16

Bug fixes

  • VoiceRegion: use stats interval from default node options (#51)

4.6.0 2026-04-06

Features

  • QueueManager: new arg 'inQueue' for track events
  • QueueManager: prefer local track objects in events (#48)

4.5.0 2026-03-23

Features

  • VoiceRegion: add forgetAllNodes() method
  • VoiceRegion: improve latency based node selection (#46)

Bug fixes

  • QueueManager: do not add ineligible queue load to node in relocate() (#44)

4.4.0 2026-03-16

Features

  • QueueManager: account for different loads in relocate()
  • QueueManager: improve sync and relocate methods (#42)

Bug fixes

  • QueueManager: make relocate() send requests sequentially
  • QueueManager: make remote sync() send requests sequentially

4.3.0 2026-03-06

Features

  • VoiceCloseCodes: add enum for DAVE protocol required

Bug fixes

  • REST: format error response correctly

4.2.0 2026-02-28

Features

  • voice: include channelId required for DAVE (#34)

4.1.0 2026-02-25

Features

  • HttpStatusCode: add some http status codes
  • Queue: add 'clear' method
  • RequestOptions: add 'headers' field
  • REST: replace axios with native fetch (#35)

Bug fixes

  • FilterManager: use object has-own instead of 'in' for has()
  • LavaLyrics: mark plugin name as readonly
  • NodeManager: prevent deletion of nodes with active queues
  • Queue: allow remove() to remove current track if queue is stopped

4.0.0 breaking 2026-02-19

Breaking changes

  • Plugins: improve event system (#32)

Features

  • Plugins: improve event system (#32)
  • types: add commonly used augmentable types (#31)

Bug fixes

  • isArray: no implicit non-empty check when check is a predicate (#29)

3.0.0 breaking 2026-02-15

Breaking changes

  • typings and queue sync (#27)

Bug fixes

  • typings and queue sync (#27)

2.1.0 2026-02-15

Features

  • Player: add options to toggle queue sync and relocation
  • queue sync and relocation options (#26)
  • Queue: implement sync method
  • QueueManager: implement sync and relocate methods
  • VoiceState: new property for 'disconnected' state (#25)

Bug fixes

  • Node: prevent immediate connect on initial failure (#23)

2.0.1 2026-02-04

Bug fixes

  • Queue: do not construct if one already exists

2.0.0 breaking 2026-02-03

Breaking changes

  • Plugins: better plugin system (#11)
  • Player: removed relocateQueues option
  • Player: removed nodes and plugins from instance options
  • Player: renamed initialized property to ready
  • REST: removed retryLimit option
  • REST: removed request queue and dropSessionRequests()
  • Node: removed handshakeTimeout property
  • FilterManager: removed data property
  • QueueManager: removed cache and relocate()
  • VoiceManager: removed cache property
  • VoiceManager: removed queue auto-destroy feature on guild/channel delete
  • NodeManager: removed queue auto-relocation feature on close/disconnect
  • VoiceRegion: removed nodes property
  • VoiceRegion: getAveragePing() now returns null for insufficient data
  • VoiceState: removed valid, sessionId, token, endpoint, muted, deafened, and reconnect()

Features

  • Plugins: better plugin system (#11)
  • Player: autoInit option to control initialization
  • REST: directly usable common http methods (#16)
  • Node: reconnectLimit can now be an integer, 0 for none, positive for limit, negative for no limit
  • Node: exposed reconnectLimit property
  • NodeManager: exposed metrics and supports()
  • REST: exposed baseUrl and userAgent properties
  • FilterManager: included pluginFilters as a valid filter key
  • FilterManager: added clear filter types native and plugin for clear()

Bug fixes

  • Node: record timestamp before sending ping (#15)
  • Node: persist sessionId when reconnecting
  • Playlist: mandate track(s) in raw api data

1.3.0 2025-11-14

Features

  • Node: immediate connect attempt before reconnect cycle (#8)

Bug fixes

  • VoiceRegionIdRegex: redos vulnerability (#10)

1.2.1 2025-10-19

Bug fixes

  • FilterManager: do not allow getting pluginFilters (#6)
  • voice: do not destroy on arbitrary close codes (#4)

1.2.0 2025-10-09

Features

  • auto-destroy player on guild or channel delete (#2)