Skip to content

Releases: LumePart/Explo

v1.1.2

16 Jun 20:59
0147b7c

Choose a tag to compare

v1.1.2 CHANGELOG

Enhancements

  • #168 [subsonic] Added a fallback search using MusicBrainz Track IDs when title/artist searches return no matches.

Fixed

  • Fixed metadata tag formatting to align with MusicBrainz Picard's tagging.
  • Fixed an issue that could prevent cron jobs from running (#176).

v1.1.1

14 Jun 21:24

Choose a tag to compare

v1.1.1 CHANGELOG

A small release focused on bug fixes and a quality-of-life improvement.

Enhancements

  • Improved playlist and download cleanup controls (by @dammitjeff)
    • Added separate Web UI toggles for playlist removal and downloaded track cleanup

Fixes

  • Fixed multiple issues with scheduled (cron) jobs, including #176 (by @LumePart)

  • Improved slskd wildcard search for artists beginning with the "The" prefix (by @LumePart)

    • Better handling of artist names such as "The Weeknd" and "The Prodigy"

Full Changelog: v1.1.0...v1.1.1

v1.1.0

12 Jun 22:43
de49b91

Choose a tag to compare

v1.1.0 CHANGELOG

This release has been in the works for quite some time and introduces some of the most anticipated features since the launch of the Web UI. Explo is gradually evolving from a playlist importer into a complete music discovery and playlist management tool, with significantly improved metadata handling, smarter matching, and better download organization.

Features

  • Custom playlist import via the Web UI (by @dammitjeff)

    • Import playlists directly from:

      • Apple Music
      • ListenBrainz
      • Spotify
    • Imported playlists appear alongside scheduled playlists

    • Optional automatic refresh support

  • Path templating support (by @DannyTheHeretic, UI implementation by @dammitjeff)

    • Organize downloaded tracks using custom folder structures
    • Easy configuration via settings
    • Includes built-in presets and support for custom templates
  • Release notifications in the Web UI (by @dammitjeff)

    • Receive notifications when a new Explo release is available
    • View release notes directly from the application
  • New Run button on all Playlist Cards (by @dammitjeff)

    • Start a download run directly from the playlist tracklist view
  • Enrich ListenBrainz discovery tracks with additional metadata (by @TiagoSimionato)

    • Adds release year, track number, genre, and MusicBrainz identifiers
    • Enabled via a toggle in settings
    • Currently supported for ListenBrainz discovery playlists only
  • Embed cover art into YouTube downloads (by @TiagoSimionato)

    • Album artwork is embedded directly into downloaded files
    • Enable with EMBED_COVER_ART=true
  • Support creating playlists for non-admin users in Plex and Jellyfin (Plex by @DannyTheHeretic, Jellyfin by @paubineau)

    • Enables creating multi-user setups for those systems
    • See the documentation for details
  • TLS/SSL support for cookie authentication (by @DannyTheHeretic)

Enhancements

  • Added concurrent downloads back to improve speed (by @DannyTheHeretic)

  • Embed MusicBrainz artist, album, and track IDs by default on discovery tracks (by @TiagoSimionato)

  • Improved track searching and matching (by @dammitjeff, @LumePart)

    • Match tracks using MusicBrainz IDs when available
    • More reliable matching with track metadata
    • Reduce duplicate downloads and improve library detection
  • Added fallback searching for slskd (by @LumePart)

    • If an exact search returns no results, Explo automatically retries using a wildcard search
  • Metadata overwrite support for slskd downloads (by @LumePart)

    • Replace downloaded metadata with metadata from ListenBrainz
    • Enable with OVERWRITE_METADATA=true
  • Added artist blacklist support (by @LumePart)

    • Prevent tracks from specific artists from being downloaded
    • Configure with ARTIST_BLACKLIST
    • Value should be a comma-separated list of MusicBrainz Artist IDs
    • Direct feedback to ListenBrainz (e.g. disliking tracks) is generally recommended instead
  • Changed the default YouTube download format from opus to mp3

    • Improves compatibility with music players and media servers

Fixes

  • #144 Properly quote special-character values in environment variables (by @LumePart)

  • Fixed some configuration options resetting to their default values when re-entering the setup wizard

New Contributors


Full Changelog: v1.0.1...v1.1.0

For support, development discussion, or feedback, join the Discord server:

https://discord.gg/uFWWPaN2zk

v1.0.1

12 May 20:19
fc429ac

Choose a tag to compare

v1.0.1 (hotfix) CHANGELOG

Fixes

Full Changelog: v1.0.0...v1.0.1

v1.0.0

12 May 18:14

Choose a tag to compare

v1.0.0 CHANGELOG

A major release introducing the first version of Explo's web interface.

Huge thanks to @dammitjeff for designing and implementing the frontend and setup wizard.

This release focuses on making Explo significantly easier to configure and manage for Docker deployments.

Check out the quick start guide to get started

Features

  • #116 Web UI support (by @dammitjeff)
    • Setup Wizard
    • Configuration management
    • Scheduled imports
    • Manual playlist runs

Enhancements

  • #128 CLI: add -v/--version flag to print version number (by @arunoruto)

Fixes


New Contributors

Full Changelog: v0.11.5...v1.0.0

For support, development discussion, or feedback, join the Discord server:

https://discord.gg/uFWWPaN2zk

v0.11.5

03 Feb 09:53

Choose a tag to compare

v0.11.5 CHANGELOG (hotfix)

Fixes

  • [youtube] #104 Original track title gets discarded when song has multiple artists

Full Changelog: v0.11.4...v0.11.5

v0.11.4

31 Jan 22:17

Choose a tag to compare

v0.11.4 CHANGELOG

Features

  • #75 Add Notification sending
    • Notifications are sent when a playlist is created or when creation fails
    • Currently supports sending via Discord, HTTP, Matrix
    • Variable reference

Enhancements

  • #83 Support adding a date to playlist names
  • #84 Allow adding a custom file extension for Youtube downloads
  • #89 Retry fetching playlists (up to 5 times) when ListenBrainz doesn't respond
  • [subsonic] #96 Support separate admin credentials for subsonic library scans (by @isic96)
  • [subsonic] Check library scan state instead of relying on SLEEP variable

Fixes

  • #80 Add variable to discard original file permissions when moving files (Synology-specific)
  • #88 Handle truncation of multibyte characters
  • #92 Handle ListenBrainz API pagination
  • #93 Use Search/Hints endpoint for Jellyfin playlist lookup (by @paubineau)
  • #94 Correctly build download path in youtube saveVideo function (by @paubineau)

Misc

  • Add User-Agent to all HTTP requests
  • Internal refactoring
  • Updated README, Wiki to reflect the changes above.

New Contributors

Full Changelog: v0.11.3...v0.11.4

v0.11.3

15 Nov 18:50

Choose a tag to compare

v0.11.3 CHANGELOG

Enhancements

  • #76 Added option to start Explo on container start
    • To execute Explo on container start, set EXECUTE_ON_START to true in docker-compose.yaml
  • #78 Allow to optionally pass cookies for yt-dlp
    • In docker it's set through volume mapping
    • In binary it can be set in .env via COOKIES_PATH variable

Fixes

  • #79 Set concurrent track searches to 1 (previously 5)
    • Slskd v0.24.0 introduced rate-limiting which disabled concurrent searching
    • Due to this change, Explo will take longer to fetch all tracks.
  • Fixed PERSIST defaulting to false when it was set to true in .env and --persist wasn’t passed. (now it's truly fixed)

Misc

  • Set timeout for slskd search request to 15s (previously 20s)
  • Edited docker-compose.yaml, sample.env and wiki to document all changes above

Full Changelog: v0.11.2...v0.11.3

v0.11.2

28 Oct 18:48

Choose a tag to compare

v0.11.2 CHANGELOG

Fixes

  • #73 Reverted the Docker change that ran cron jobs under a non-root account.
  • Explo no longer removes Slskd folders when they still contain files (this was fixed in v0.11.1)
    • Previously, in rare cases where Slskd downloaded multiple tracks to the same folder, Explo would move only the first file and delete the others.
  • Fixed PERSIST defaulting to false when it was set to true in .env and --persist wasn’t passed.

Full Changelog: v0.11.1...v0.11.2

v0.11.1

26 Oct 14:24

Choose a tag to compare

v0.11.1 CHANGELOG

Enhancements

  • #53 Add PUID/GID support to the Docker container (by @lpukatch)
  • [subsonic] #61 Added a PUBLIC_PLAYLIST variable to optionally make Subsonic playlists public
  • [slskd] #65 Added support for renaming tracks during migration when RENAME_TRACK is set to true
  • #67 Extended FILTER_LIST support to slskd and added default filters: clean,acapella
  • #70 Deprecated the PERSIST environment variable and replaced it with the --persist flag, allowing playlists to persist individually

Fixes

  • #56 Added a USE_SUBDIRECTORY variable to control whether to download/move tracks under a subdirectory (for systems using structured folders, e.g. Jellyfin)
  • #63 Added a CLIENT_HTTP_TIMEOUT variable to configure custom HTTP timeouts for music systems

Internal

  • Switched to the slog package for logging. The DEBUG variable has been deprecated and replaced with LOG_LEVEL.

Misc

  • Updated sample.env and Wiki to reflect the changes above.

New Contributors

Full Changelog: v0.11.0...v0.11.1