zotify/CHANGELOG.md

91 lines
4.6 KiB
Markdown
Raw Normal View History

2023-04-08 04:31:29 -06:00
# STILL IN DEVELOPMENT, EVERYTHING HERE IS SUBJECT TO CHANGE!
2023-03-24 04:57:10 -06:00
## v1.0.0
2023-05-29 05:58:06 -06:00
2023-03-24 04:57:10 -06:00
### BREAKING CHANGES AHEAD
2023-05-29 05:58:06 -06:00
2023-03-24 04:57:10 -06:00
- Most components have been completely rewritten to address some fundamental design issues with the previous codebase, This update will provide a better base for new features in the future.
- ~~Some~~ Most configuration options have been renamed, please check your configuration file.
2023-07-31 00:14:25 -06:00
- There is a new library path for playlists, existing playlists will stay where they are.
2023-03-24 04:57:10 -06:00
### Changes
2023-05-29 05:58:06 -06:00
2024-02-16 21:59:23 -07:00
- Genre metadata available for all tracks
2023-03-24 04:57:10 -06:00
- Boolean command line options are now set like `--save-metadata` or `--no-save-metadata` for True or False
2023-07-31 00:14:25 -06:00
- Setting `--config` (formerly `--config-location`) can be set to "None" to not use any config file
2023-05-29 05:58:06 -06:00
- Search result selector now accepts both comma-seperated and hyphen-seperated values at the same time
2023-03-24 04:57:10 -06:00
- Renamed `--liked`/`-l` to `--liked-tracks`/`-lt`
- Renamed `root_path` and `root_podcast_path` to `music_library` and `podcast_library`
- `--username` and `--password` arguments now take priority over saved credentials
- Regex pattern for cleaning filenames is now OS specific, allowing more usable characters on Linux & macOS.
2023-07-31 00:14:25 -06:00
- On Linux both `config.json` and `credentials.json` are now kept under `$XDG_CONFIG_HOME/zotify/`, (`~/.config/zotify/` by default).
2023-03-24 04:57:10 -06:00
- The output template used is now based on track info rather than search result category
- Search queries with spaces no longer need to be in quotes
- File metadata no longer uses sanitized file metadata, this will result in more accurate metadata.
2024-02-16 21:59:23 -07:00
- Replaced ffmpy with custom implementation providing more tags
- Fixed artist download missing some tracks
2023-03-24 04:57:10 -06:00
### Additions
2023-05-29 05:58:06 -06:00
2024-02-16 21:59:23 -07:00
- New library location for playlists `playlist_library`
2023-03-24 04:57:10 -06:00
- Added new command line arguments
2023-09-07 23:22:55 -06:00
- `--library`/`-l` overrides both `music_library` and `podcast_library` options similar to `--output`/`-o`
2023-05-29 05:58:06 -06:00
- `--category`/`-c` will limit search results to a certain type, accepted values are "album", "artist", "playlist", "track", "show", "episode". Accepts multiple choices.
- `--debug` shows full tracebacks on crash instead of just the final error message
2023-09-07 23:22:55 -06:00
- Added new shorthand aliases to some options:
- `-oa` = `--output-album`
- `-opt` = `--output-playlist-track`
- `-ope` = `--output-playlist-episode`
- `-op` = `--output-podcast`
2023-07-31 00:14:25 -06:00
- Search results can be narrowed down using search filters
- Available filters are 'album', 'artist', 'track', 'year', 'upc', 'tag:hipster', 'tag:new', 'isrc', and 'genre'.
- The 'artist' and 'year' filters only shows results from the given year or a range (e.g. 1970-1982).
- The 'album' filter only shows results from the given album(s)
- The 'genre' filter only shows results from the given genre(s)
- The 'isrc' and 'track' filters can be used while searching tracks
- The 'upc', tag:new and tag:hipster filters can only be used while searching albums
- 'tag:new' filter will show albums released within the past two weeks
- 'tag:hipster' will only show albums in the lowest 10% of popularity
2023-03-24 04:57:10 -06:00
- Search has been expanded to include podcasts and episodes
- New output placeholders / metadata tags for tracks
2023-05-29 05:58:06 -06:00
- `{artists}`
- `{album_artist}`
- `{album_artists}`
2023-07-31 00:14:25 -06:00
- `{duration}` (milliseconds)
2024-02-16 21:59:23 -07:00
- `{explicit}`
2023-05-29 05:58:06 -06:00
- `{isrc}`
- `{licensor}`
2023-07-31 00:14:25 -06:00
- `{popularity}`
2023-05-29 05:58:06 -06:00
- `{release_date}`
- `{track_number}`
2023-03-24 04:57:10 -06:00
- Genre information is now more accurate and is always enabled
- Added download option for "liked episodes" `--liked-episodes`/`-le`
- Added `save_metadata` option to fully disable writing track metadata
- Added support for ReplayGain
- Added support for transcoding to wav and wavpack formats
- Unsynced lyrics are saved to a txt file instead of lrc
- Unsynced lyrics can now be embedded directly into file metadata (for supported file types)
2023-07-31 00:14:25 -06:00
- Added new option `save_lyrics_file`
2023-05-29 05:58:06 -06:00
- This option only affects the external lyrics files
2023-07-31 00:14:25 -06:00
- Embedded lyrics are controlled with `save_metadata`
2023-03-24 04:57:10 -06:00
### Removals
2023-05-29 05:58:06 -06:00
2023-03-24 04:57:10 -06:00
- Removed "Zotify" ASCII banner
2023-07-31 00:14:25 -06:00
- Removed search prompt, searches can only be done as cli arguments now.
2023-03-24 04:57:10 -06:00
- Removed song archive files
- Removed `{ext}` option in output formats as file extentions are managed automatically
2023-07-31 00:14:25 -06:00
- Removed `split_album_discs` because the same functionality can be achieved by using output formatting
- Removed `print_api_errors` because API errors are now treated like regular errors
- Removed the following config options due to their corresponding features being removed:
2023-05-29 05:58:06 -06:00
- `bulk_wait_time`
2024-02-16 21:59:23 -07:00
- `chunk_size`
2023-05-29 05:58:06 -06:00
- `download_real_time`
- `md_allgenres`
- `md_genredelimiter`
- `metadata_delimiter`
- `override_auto_wait`
- `retry_attempts`
- `save_genres`
- `temp_download_dir`