All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.10.3 - 2024-01-14
- Implemented automated authentication for Apple Music. #623, #624
- Fixed the YouTube Music logic for sourcing tracks. #632
- Tracks from Deezer now encode copyright information. #639
- Sort metadata (sonm, soar, soal) are now embedded in the output file. #636
- Tracks from Spotify now encode copyright in the format
℗ {YEAR} {LABEL}
to match Apple Music. #638 - Non-explicit Spotify tracks are now tagged "Inoffensive". #635
- Fix the Apple Music uri format for tracks. #622
- Fix the total disc number count. #634
0.10.2 - 2024-01-01
- Ensure tracks maintain their order from collections to playlist file output. #569
- Support non-latin letters in source search. #574
- Failure to acquire an audio source is now handled gracefully. https://github.com/miraclx/freyr-js/commit/fc2925627736f2965fbd162e457cad62d366b49e
- Updated Apple Music access token. #610, #583
0.10.1 - 2023-08-08
- Added support for Apple Music song URLs -
https://music.apple.com/us/song/1699712652
. #552 - Embed a locale in the URLs generated from parsing Deezer URLs. #553
0.10.0 - 2023-08-08
- Changed Spotify credentials, introduced migrations to mitigate any complications. #454, #470, #526
- Improved the YouTube Music track weighing logic, we should get 30% more accurate results. #472
- Freyr now supports paginated track artists. #471
- Accented words like
Solidarité
now get properly normalized, helping more accurate lookups. #473 - Fix bug with Apple Music & Deezer URI parser. #403, #549
- Freyr now treats binaries in
bins/{posix,windows}
as being of higher priority than those inPATH
. #474 - Freyr now properly handles tracks that have no copyright information. #467
- Freyr now properly checks the base dir instead of the current working dir for existing tracks. #527
- Updated logic for extracting source feeds from yt-dlp's response. #515
- Freyr now auto-disables the progress bar when it detects the absence of a compatible TTY, avoiding errors wherever possible. #506
- Allow overriding the atomicparsley binary used with the
ATOMIC_PARSLEY_PATH
environment variable. #475 - Updated
AtomicParsley
in the Docker images, fixing a class of errors. #476 - Ignore yt-dlp warnings that could cause hard errors when parsing its response. #511
- Fixed YouTube accuracy calculation. #509, #510
0.9.0 - 2022-12-18
- BREAKING: replaced
-D, --downloader
with-S, --source
, introduced the-D, --check-dir
flag. #350 - BREAKING: replaced the
.downloader.order
entry in the config file with.downloader.sources
. #350 - BREAKING: freyr no longer uses the temp directory by default to cache assets. #354
- BREAKING: freyr now persists the cached assets across runs, this will grow over time, but you can clear it at will. #354
- Replaced native
ffmpeg
with bundled Wasm version. #305 - Implemented Apple Music pagination. #348, #400
- Implemented ability to check for track existence in other directories. #350
- Allow excluding download sources. #355
- Use correct cover art file extension. #311
- Simplified the banner to 8-bit instead of the 24-bit truecolor version. #309
- Add support for Docker Desktop, or generic NAS with Docker support. #316
- Fix race condition potentially resulting in file corruption when two identical tracks are downloaded at the same time. #338
- Persist configuration options in the user config file. #353
- Stripped HTML tags from playlist descriptions. #324
- Fix
urify
subcommand with Spotify URLs. #308 - Fix YouTube feed sourcing logic after dependency update. #299
- Update minimum Node.js version to
v16
. #293, #332, https://github.com/miraclx/freyr-js/commit/d4ed669b068ad417cdf21b27d42ed2fdccc68544 - Remove the temporary image downloaded when an error is detected. https://github.com/miraclx/freyr-js/commit/5e7f5513bad9fd7366cd5bf562a516584308c74f
- Revamp the test runner. #303, #304
- Removed unimplemented features. #368
- Updated Apple Music access token. #399
0.8.1 - 2022-08-04
- Ensure maximum compatibility with axios when npm fails to install an expected version. #291
0.8.0 - 2022-08-04
- Refactored the Dockerfile, and reduced the docker image size by 23%. #257
- Manually compile
AtomicParsley
during docker build to allow for maximum platform support. #212 - Add Mac M1 support to the docker image. #214
- Made docker build faster by caching and unbinding nondependent layers. #273, #268
- Fix
yarn install
not ahering to dependency overrides. #215 - Add ability to disable the progressbar. #263
- Remove persistent
tty
writing for normal logs. Allowingstdout
piping for everything except the progressbar. #231 - Fix long standing issue with freyr seeming frozen on exit. #216
- Upgraded to ES6 Modules. #202
- Introduced the pushing of docker images for each PR. #218, #228
- Introduced a test runner, with local reproducible builds. #264
- Redesigned the auth page a bit. #286
- Introduced CI checks for formatting.
- Updated dependencies.
- Removed some unused dependencies. #217, #245
0.7.0 - 2022-06-09
- Updated Apple Music access key. #191
- Simplified the output of using the
-v, --version
. #152 - Dropped extra version in the header. #153
- Fixed issue with docker build not bundling dependencies. #165
- Update dependencies.
0.6.0 - 2022-02-21
- All dependencies updated.
- Support
"single"
specification in"type"
filter. #124 - Address hanging problem on exit. #125
- Touch up final stats. #126
- Fix
AND
andOR
behavior when dealing with filters. #127 - Added the
CHANGELOG.md
file to track project changes. #148 - Introduced CI runtime checks. #121
- Introduced CI lint checks. #123 #137
- Automated the CI release process. #123 #148
- Support either
AtomicParsley
oratomicparsley
. #140 - Documents the dependency on YouTube for sourcing audio. #142
- Documentation now links to file index of an example library – https://miraclx.github.io/freyr-demo-library/.
0.5.0 - 2022-01-27
Release Page: https://github.com/miraclx/freyr-js/releases/tag/v0.5.0