๐ Changes in 2.9.0โ
tip
This is a major release with braking changes. Please update your code accordingly.
Hello, here you will find information on what has changed and what you need to change when upgrading to version 2.9.0.
๐ ๏ธ How to update?โ
- npm
- pnpm
- yarn
npm update magmastream
pnpm update magmastream
yarn upgrade magmastream
๐ Changes
ManagerOptionsโ
- plugins โ
enabledPlugins- autoPlay โ
playNextOnEnd- usePriority โ
enablePriorityMode- replaceYouTubeCredentials โ
normalizeYouTubeTitles- autoPlaySearchPlatform โ
autoPlaySearchPlatforms(array ofAutoPlayPlatform)
NodeOptionsโ
- secure โ
useSSL- retryAmount โ
maxRetryAttempts- retryDelay โ
retryDelayMs- resumeStatus โ
enableSessionResumeOption- resumeTimeout โ
sessionTimeoutSeconds- requestTimeout โ
apiRequestTimeoutMs- priority โ
nodePriority
PlayerOptionsโ
- node โ
nodeIdentifier
โจ New Features
Queue Storage Optionsโ
Choose between Memory (default), JSON, or Redis for queue persistence.
New Manager Eventsโ
New Lyrics Events (with LavaLyrics plugin enabled)โ
Discord Client Wrappersโ
Added official support for
NodeLink v2 Supportโ
Fully integrated.
Lyrics Subscriptionsโ
Live lyrics streaming when LavaLyrics is available.
Automatic Inactive Player Cleanupโ
Enabled by default
Backup Node Supportโ
Check
NodeOptions(isBackup, default โfalse).
FilterChange added as a possible
PlayerStateEventTypes.โ
โ๏ธ Fixes & Improvements
AutoPlayโ
Expanded to include more sources and fixed issues with reloading.
Track Restorationโ
Tracks now play correctly even if stored with an empty player state.
Last.fm API Keyโ
Now optional instead of required.
Previous Track Handlingโ
Respects
ManagerOptions.maxPreviousTracks.
Player & Cluster Fixesโ
player.moveNode()validates session token & endpoint.Manager.options.clusterIdis now stored on each player.- Duplicate
PlayerDestroyevent on disconnect removed.
State Managementโ
- Player states are saved & cleaned on
Manager.handleShutdown().- Restore now works correctly after shutdown & restart.
Plugin Lifecycleโ
Loading/unloading works as expected.
Player Updatesโ
PlayerMovecorrectly updatesPlayerOptions.voiceChannelId.player.setTextChannelId()updatesPlayerOptions.textChannelId.player.setVoiceChannelId()updatesPlayerOptions.voiceChannelId.
๐ฌ Questions?โ
Join our Discord โ we're happy to help.