github FoxxMD/multi-scrobbler 0.13.0
v0.13.0

9 hours ago

What's New?

Yandex Music Source

Thanks to @Druidblack for implementing a new source for the Yandex Music service! ๐ŸŽ‰

Check the docs for setup and configuration.

Improved Source/Client Restart

An overhaul of the functionality responsible for Source polling and Client scrobble processing makes restarts from the dashboard cleaner and more dependable. There shouldn't be any more instances of unable to restart due to waiting for signal... ๐ŸŽ‰

New Docs Domain and Social Previews

Docs are now "officially" located at https://docs.multi-scrobbler.app

Note

The old site at https://foxxmd.github.io/multi-scrobbler will continue to work and both sites are the same documentation. Eventually, the old site will be retired and redirect to the new one automatically.

Docs have also been improved with nice social graph preview images (og:image) that will display when a page is shared on a social site. There are images generated for each page that include the page title and/or description.

Tip

You can help improve these cards:

  • click the โœ๏ธ Edit this page link at the bottom of any page to open the corresponding file in the repo
  • open a PR (or click Pencil Icon at the top of the file) and fill in the description or title property
image

Docker Log Colors

Logs viewed through docker logs now have ~f a n c y~ colors that mirror what is seen in the dashboard.

These are turned on by default but if you prefer plain logs they can be disabled by setting this environmental variable:

COLORED_STD=false

Image Cleanup Space Savings ๐Ÿงน

Fixing how the frontend is served from the backend enabled almost all frontend packages to be removed from the production build. This, along with a node_modules cleanup script, results in a ~32% decrease in docker image size.

Breaking Changes

Important

BREAKING: Node has been updated to 24.14.0. This does not affect docker users but if you are running a local installation you will need to update your local node/npm install.

Changelog Highlights

โ›ฐ๏ธ Features

  • (client) Make scrobble processing abortable
  • (client) Strict ENV types
  • (docker) Use prune-mod to remove unneeded files in image
  • (docker) Make colored console output the default
  • (docs) Update docusaurus to 3.9.2
  • (musicbrainz) Handle rate limiting within api calls
  • (source) Make discover abortable
  • (sources) Better type enforcement
  • (yandex) add yandex music by @Druidblack #523

๐Ÿ› Bug Fixes

  • (jellyfin) Fix typo on devicesBlock env assignment #522
  • (scrobbler) Fix stagger map generation variable usage
  • (No Category) Fix circular dependency in error utils
  • (No Category) Align dockefile and devcontainer node/npm versions to fix lockfile mismatch
  • (No Category) Initialize plays in correct scope
  • (No Category) Build vite-express config based on production env to avoid making vite fallback to development

โš™๏ธ Miscellaneous Tasks

  • (No Category) Remove unused testing libraries and fix storybook version
  • (No Category) Update node/npm engine constraints in package.json
  • (No Category) Bump node to 24
    • BREAKING: Bump node to 24

๐Ÿ“š Documentation

  • (No Category) Add Yandex Music Source docs
  • (No Category) Replace instances of foxxmd.github.io
  • (No Category) Finalize a working social card strategy

๐Ÿšœ Refactor

  • (No Category) Implement abortable source polling
  • (No Category) Reduce docker image by moving frontend packages to devDependencies
  • (No Category) Install expressjs@5
  • (No Category) Replace awaitjs/express with express usage

๐Ÿงช Testing

  • (No Category) Make loop stop wait time configurable so tests run faster/more stable

Don't miss a new multi-scrobbler release

NewReleases is sending notifications on new releases.