Skip to content

Releases: lavalibs/lavaqueue

v3.1.8

15 Oct 01:14
Compare
Choose a tag to compare

Fixes

  • Scripts are published with the package

v3.1.7

04 Oct 19:39
Compare
Choose a tag to compare

Fixes

  • Queues no longer skip the current song when the bot leaves the voice channel (#10, 3eb6576, @csuvajit)

v3.1.6

25 Mar 15:31
9098f75
Compare
Choose a tag to compare

Fixes

  • Fix queues immediately ending on latest lavalink release due to the new TrackStartEvent putting players in an unknown state (#6, a0db2e6, @Dramex)
  • Update dev dependencies, pin lavalink.js to latest

v3.1.5

12 Sep 16:10
Compare
Choose a tag to compare

Fixes

  • The Queue#advanceBy option is no longer always called with an undefined previous track (f3e594a, @csuvajit)

v3.1.4

14 Jul 23:22
Compare
Choose a tag to compare

Fixes

  • Tracks that end with exceptions when advanceBy returns 0 no longer cause an infinite loop of play attempts

v3.1.3

08 Jul 16:44
Compare
Choose a tag to compare

Fixes

  • Regression in client export

v3.1.2

07 Jul 16:44
Compare
Choose a tag to compare

Fixes

  • Connection options are typed correctly

v3.1.1

09 Apr 19:08
Compare
Choose a tag to compare

Fixes

  • Lavalink NodeOptions imports

v3.1.0

08 Jan 09:05
Compare
Choose a tag to compare

Additions

  • Queue#splice has been added for easier insertion and deletion of elements after a given index; see Array#splice for information about the behavior and method signature

v3.0.0

21 Nov 05:50
Compare
Choose a tag to compare

Breaking changes

  • Reorganized Redis keys and key types: existing databases should be flushed
    • list has been renamed to next, np has been replaced with a simple pos indicator, and prev has been added to keep track of previous songs
  • Playlists will no longer advance when the player is stopped using the WebSocket
  • Upgraded to ioredis v4
  • lavalink is now a direct dependency
  • Queues now clear themselves after the last song ends

Additions

  • Queue#sort(predicate?: (a: string, b: string) => number): Promise<number> has been added; does not operate on previous songs; resolves with length of the list
  • Queue#move(from: number, to: number): Promise<string[]> has been added. Moves songs from one position to another by index; supports negative indices to wrap around list.; does not operate on previous songs Resolves with the new list.
  • Queue#shuffle(): Promise<string[]> has been added; resolves with the new list; does not operate on previous songs
  • Queue#clear now returns a native Promise instead of PromiseLike
  • Queue#tracks now returns a native Promise instead of PromiseLike
  • Queue#next now accepts negative numbers to advance the queue in reverse
  • NP typedef (represents a currently playing track) now will always have track and position properties.
  • QueueStore#redis has been extended to include new custom commands
    • lmove(key: string, from: number, to: number): Promise<string[]> moves elements in a list from one index to another
    • loverride(key: string, ...args: any[]): Promise<number> will override a key with new list data
    • lshuffle(key: string, seed: number): Promise<string[]> will shuffle elements of a list
    • multirpoplpush(source: string, dest: string, count: number): Promise<string[]> will rpoplpush multiple elements
  • Client now has an advanceBy(queue: Queue, info: { previous: string, remaining: number }): number which will be called in any situation where a track is ended and an advancement count has not been provided. This is typically called when a track ends naturally and the queue needs to determine how many tracks to advance. previous represents the track that just ended. remaining represents the number of songs left in the queue.
    • Client now accepts an advanceBy property in constructor options