# Changelog

## v2.0-rc1

Release candidate covering milestones M1 through M9.

### Added

- M1: Multi-source downloads for yt-dlp-supported sources including YouTube,
  X/Twitter, SoundCloud, Bandcamp, Mixcloud, Vimeo, and Twitch.
- M2: SQLite download history and duplicate detection.
- M3: Playlist downloads and live queue UI.
- M3.1: Windows test runner via `run_tests.bat`.
- M4: Metadata tags and album art embedding.
- M4.1: Album metadata cleanup to avoid fake album tags.
- M5: Playlist and channel subscriptions with new-item filtering.
- Release audit fixes: deterministic SQLite connection closing, thumbnail
  thread-safety fix, subscription URL uniqueness, and audit documentation.
- M6: Spotify track, album, and playlist support as metadata-only sources that
  resolve to yt-dlp searches.
- M7: Smart search and bulk search downloads from plain song-name input.
- M8: One-click yt-dlp updater button in Settings.
- M9: Download analytics dashboard using the local history database.

### Notes

- Spotify support does not download Spotify audio and does not require Spotify
  Premium. Spotify URLs are used only for public metadata and search queries.
- FFmpeg is still required on `PATH` for MP3 conversion.
- aria2c remains optional and is used only when available.
