Skip to content

Releases: epoupon/lms

v3.62.1

20 Dec 08:36
Compare
Choose a tag to compare

Bugfixes:

  • Fixed typo that prevents m3u8 files from being scanned #574
  • Subsonic API: return error code 50 when attempting to modify a public playlist that does not belong to the user #574
  • Correctly sort tracks within playlists #574

v3.62.0

18 Dec 22:59
Compare
Choose a tag to compare

Updates:

  • Added support for importing and syncing .m3u playlist files. Imported playlists are categorized as shared playlists and exposed via the Subsonic API as public, ownerless playlists #391
  • Prefer embedded covers marked as "front"
  • Subsonic API:
    • Serve raw cover files if no size is provided
    • Added timestamps in coverArt identifiers

Bugfixes:

  • Subsonic API: root music folders are now returned as int
  • OpenSubsonic API: use albumArtists and displayAlbumArtist in Child responses for albums, instead of artists and displayArtist

v3.61.0

30 Nov 15:53
Compare
Choose a tag to compare

Caution: this update brings an important authentication change regarding Subsonic API authentication!
Each user has now to generate an API key to use the Subsonic API. This API key can be used as the password for clients that do not implement the new API key authentication extension.
The "Remember me" option of the web interface won't work after upgrading LMS, you will have to manually log in again.

Updates:

  • Subsonic API:
    • implemented the new API key authentication extension #555
    • removed createUser, updateUser, deleteUser, and changePassword endpoints, as they are not compatible with a limited API key scope
    • added getAlbumInfo support
    • added savePlayQueue and getPlayQueue support
  • Upgraded default bcrypt round count to 12. This can be tweaked in lms.conf using the internal-password-bcrypt-round setting
  • Take labels + barcode into account to avoid merging unrelated albums, #550

Bugfixes:

  • Subsonic API: fixed xml response to please some clients #559
  • Fixed crash when a library is set with a trailing / #552
  • Lyrics: fixed bad empty line parsing when timestamps are set

v3.60.1

11 Nov 15:01
Compare
Choose a tag to compare

Bugfixes:

  • OpenSubsonic API: fixed getLyricsBySongId
  • Fixed lyrics parsing that may crash on very long lines

v3.60.0

30 Oct 22:16
Compare
Choose a tag to compare

Updates:

  • Added lyrics support #379
    • Both embedded and external lyrics (.lrc files) are supported.
    • OpenSubsonic API: added Song Lyrics extension support
  • Internationalization for date and numbers #539
  • Better artist image picking #538

Bugfixes:

  • SubsonicAPI: fixed scrobble endpoint for MusicAssistant #542
  • Fixed regression on artist display names

v3.59.1

11 Oct 20:24
Compare
Choose a tag to compare

Updates

  • Now use a grid view to display artists
  • For albums, external images are searched first, using names configured in lms.conf in the cover-preferred-file-names option (default values are "cover", "front", "folder", "default"). There is no longer a fallback to a random picture in the album directory. #503
  • Added a user setting to select how to sort albums in the artist view #498
  • Better integration with reverse proxy. Two new configuration options have been added in lms.conf: original-ip-header and trusted-proxies #532

Bugfixes

  • Fixed last join phrase not being displayed in UI for artists #528
  • Fixed bad multi-disc album merging in case of migration/rescan #481
  • Updated the way the artist display name is reconstructed #491

Note: a full rescan is mandatory to make album covers correctly associated.

v3.58.0

18 Sep 21:59
Compare
Choose a tag to compare

Updates

  • Made some UI states persistent across sessions #484
  • Added support for record labels #502
  • Added compilation tag support #520
  • More permissive grouping of multi disc albums (each disc can now be split on sub directories) when musicbrainz ids are not set #481
  • Improved the artist display name string reconstruction to match more case #491
  • Apply all custom separators, not only the first one found #518
  • Now buildable on macOS
  • Subsonic API: report the cover of the release if no embedded cover is found for the track #519

v3.57.0

30 Aug 19:46
Compare
Choose a tag to compare

Updates

  • Added comment tag support (in both UI and Subsonic API)
  • Handle embedded covers in AIFF and in WAV files
  • Improved the display artist name string construction when tags are not set as expected #513
  • Subsonic API: added support for 5 stars rating

Bugfixes

  • Fixed originaldate tag parsing in m4a files with TagLib 2.0 (used in the official docker image)
  • Do not return an error if artist not found in getTopSongs #507

v3.56.0

28 Jul 13:26
Compare
Choose a tag to compare

Updates

  • Subsonic API: can now browse by directory #474
  • Display disc subtitles even for single-disc releases #492

Bugfixes

  • Fixed crash during scan, due to very long genre tags #496
  • Subsonic API:
    • Fixed bad json field in getArtistInfo2
    • Fixed missing albumCount and songCount in getGenres when using xml output.

v3.55.0

06 Jul 21:47
Compare
Choose a tag to compare

Updates

  • Image paths and directory structures are now saved in database to allow further improvements. Please report any regressions!
  • Subsonic API:
    • support fromYear > lastYear to sort by descending order #482
    • artist images are reported in Subsonic API only if present #435
    • OS: reconstruct the artist display name if a custom artist delimiter is found in the artist tag, using a comma to separate names
  • Updated C++ requirements to C++20 #489

Bugfixes

  • Fixed occasional incorrect reporting of artist delimiters in the UI #491
  • Really flush cover cache when a scan is complete #487
  • Fixed a bug in the scan settings view when no extra tag is to be parsed
  • Subsonic API: fixed bad albumCount #483