docs: update README and CHANGELOG for v1.4.0

This commit is contained in:
Mathis Maquenne
2026-03-01 22:55:26 +01:00
parent d50945a7ef
commit 9c7580d256
2 changed files with 60 additions and 46 deletions
+33 -1
View File
@@ -5,47 +5,79 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.4.0] - 2026-03-01
### Added
- Automatic database migration from `~/.godeez/tracks.db` to `~/Music/GoDeez/.tracks.db`.
### Changed
- Configuration now uses `DEEZER_ARL` environment variable (replaces `config.toml`).
- Database moved from `~/.godeez/tracks.db` to `~/Music/GoDeez/.tracks.db`.
- Show warning count in download summary.
### Removed
- `config.toml` configuration file and `~/.godeez` directory.
- `--config` flag from CLI.
- `secret_key` and `output_dir` configuration options.
- Watcher feature (`watch` subcommands).
### Fixed
- Track number zero-padding for correct file sorting.
## [1.3.0] - 2025-09-11 ## [1.3.0] - 2025-09-11
### Added ### Added
- Add new `track` command to download individual songs. - Add new `track` command to download individual songs.
- Add `--genre` flag to fetch and embed genre information into file metadata tags. - Add `--genre` flag to fetch and embed genre information into file metadata tags.
### Fixed ### Fixed
- Handle empty media resources gracefully to prevent crashes. - Handle empty media resources gracefully to prevent crashes.
## [1.2.0] - 2025-08-18 ## [1.2.0] - 2025-08-18
### Added ### Added
- Add new `artist` command to download an artists top tracks. - Add new `artist` command to download an artists top tracks.
- Add `--limit` flag for the `artist` command to restrict the number of tracks. - Add `--limit` flag for the `artist` command to restrict the number of tracks.
- Add `--strict` flag for downloads: fail if the requested quality is unavailable. - Add `--strict` flag for downloads: fail if the requested quality is unavailable.
### Changed ### Changed
- Set default download quality to **MP3 320kbps**. - Set default download quality to **MP3 320kbps**.
### Removed ### Removed
- Remove `--quality=best` option. Fallback to lower quality is now the default behavior; use the `--strict` flag to prevent fallback. - Remove `--quality=best` option. Fallback to lower quality is now the default behavior; use the `--strict` flag to prevent fallback.
### Fixed ### Fixed
- Handle error when `SNG_CONTRIBUTORS` metadata is empty. - Handle error when `SNG_CONTRIBUTORS` metadata is empty.
## [1.1.1] - 2025-06-16 ## [1.1.1] - 2025-06-16
### Fixed ### Fixed
- Restore ability to download tracks without a Deezer Premium account (limited to **MP3 128kbps** for free accounts). - Restore ability to download tracks without a Deezer Premium account (limited to **MP3 128kbps** for free accounts).
## [1.1.0] - 2025-05-19 ## [1.1.0] - 2025-05-19
### Added ### Added
- Support downloading full albums and playlists with more than 40 tracks (previous limit removed). - Support downloading full albums and playlists with more than 40 tracks (previous limit removed).
- Fetch and embed **BPM** and **musical key** into metadata tags. - Fetch and embed **BPM** and **musical key** into metadata tags.
- Add local **database system** (`tracks.db`) to track downloaded files and avoid re-downloading, even if files are renamed or moved. - Add local **database system** (`tracks.db`) to track downloaded files and avoid re-downloading, even if files are renamed or moved.
- Improve CLI **output formatting** for a cleaner and more informative user experience. - Improve CLI **output formatting** for a cleaner and more informative user experience.
### Changed ### Changed
- Replace the `godeez` file in the users home directory with a `.godeez/` directory, which now stores both `config.toml` and `tracks.db`. - Replace the `godeez` file in the users home directory with a `.godeez/` directory, which now stores both `config.toml` and `tracks.db`.
👉 If upgrading, move your existing config into `.godeez/config.toml`. 👉 If upgrading, move your existing config into `.godeez/config.toml`.
- Simplify `config.toml`: remove the need for `iv` and `license_token`. - Simplify `config.toml`: remove the need for `iv` and `license_token`.
- Automatically delete corrupted or incomplete files on download failure. - Automatically delete corrupted or incomplete files on download failure.
+25 -43
View File
@@ -37,56 +37,38 @@ To install **GoDeez**, download the latest binary for your platform from the [Re
3. (Optional) Move the binary to a directory included in `$PATH` for easier access. 3. (Optional) Move the binary to a directory included in `$PATH` for easier access.
Example (Linux/macOS): Example (Linux/macOS):
```bash ```bash
# Move the downloaded binary to /usr/local/bin for easy access from anywhere # Move the downloaded binary to /usr/local/bin for easy access from anywhere
mv godeez-1.3.0-linux-amd64 /usr/local/bin/godeez mv godeez-1.4.0-linux-amd64 /usr/local/bin/godeez
``` ```
## Configuration ## Configuration
The first time you run **GoDeez**, a configuration directory named `.godeez` will be automatically created in your home directory (`$HOME` on Linux/macOS, `%USERPROFILE%` on Windows). **GoDeez** requires a Deezer ARL cookie for authentication. Set it as an environment variable:
Inside this directory: ```bash
- `config.toml`: main configuration file you need to edit manually export DEEZER_ARL=”your_arl_cookie_here”
- `tracks.db`: internal database used to track downloads and avoid duplicates
### Steps to configure
1. Run the application once: this creates the `.godeez` directory and the `config.toml` file.
2. Edit the `config.toml` file with a text editor to set the required values.
### Variables to configure
Here are the key variables you need to set in `config.toml`:
1. `arl_cookie`
* **What is it?**: The `arl_cookie` is a session cookie used for authentication with Deezer. Without this cookie, the downloader cannot access your account to retrieve playlists, albums, or songs.
* **How to retrieve it**:
1. Open your browser and log in to your Deezer account.
2. Open the Developer Tools (right-click on the page and select “Inspect” or press F12).
3. Navigate to the Application tab (in Chrome/Edge) or Storage tab (in Firefox).
4. In the left panel, look for Cookies and select `https://www.deezer.com`.
5. Find the arl cookie and copy its value.
2. `secret_key`
* **What is it?**: The `secret_key` is a cryptographic value used to decrypt Deezers media files.
* **How to retrieve it?**: While we cannot provide the specific secret_key in this documentation, it can be found online through various sources or developer communities that focus on Deezer.
3. `output_dir` (optional)
* **What is it?**: The `output_dir` is the path where downloaded music files will be saved.
* **Default**: If left empty, it defaults to `~/Music/GoDeez`.
* **Note**: Once set, it's recommended not to change it, as this may interfere with the skip system that relies on consistent file paths and hash indexing to detect already downloaded songs.
### Example
```toml
# ~/.godeez/config.toml
arl_cookie = 'your_arl_cookie_here'
secret_key = 'your_secret_key_here'
output_dir = '' # optional
``` ```
To make it persistent, add the line above to your shell profile (`~/.bashrc`, `~/.zshrc`, etc.).
### How to retrieve your ARL cookie
1. Open your browser and log in to your [Deezer](https://www.deezer.com) account.
2. Open the Developer Tools (right-click on the page and select “Inspect” or press F12).
3. Navigate to the **Application** tab (Chrome/Edge) or **Storage** tab (Firefox).
4. In the left panel, look for **Cookies** and select `https://www.deezer.com`.
5. Find the `arl` cookie and copy its value.
> **Note:** The ARL cookie may expire after some time. If you get authentication errors, retrieve a fresh cookie using the steps above.
### Output directory
Downloaded files are saved to `~/Music/GoDeez`. The download database (`.tracks.db`) is stored alongside your music in the output directory.
> **Upgrading from v1.3.0?** The `~/.godeez` directory and `config.toml` are no longer used. Set the `DEEZER_ARL` environment variable instead. Your existing database will be migrated automatically on first run.
## Usage ## Usage
### CLI Overview ### CLI Overview
@@ -105,8 +87,7 @@ Available Commands:
help Help about any command help Help about any command
Flags: Flags:
--config string config file (default ~/.godeez/config.toml) -h, --help help for godeez
-h, --help help for godeez
Use "godeez [command] --help" for more information about a command. Use "godeez [command] --help" for more information about a command.
``` ```
@@ -168,6 +149,7 @@ If you have an idea for improvement, feel free to fork the repository and submit
If **GoDeez** helps you enjoy your music collection, please consider giving it a star! If **GoDeez** helps you enjoy your music collection, please consider giving it a star!
**Why star us?** **Why star us?**
- Helps more music lovers discover the project - Helps more music lovers discover the project
- Shows appreciation for the work and motivates development - Shows appreciation for the work and motivates development
- Takes just one click but means the world to us! - Takes just one click but means the world to us!