docs: update for v1.3.0

This commit is contained in:
Mathis Maquenne
2025-09-11 01:18:14 +02:00
parent e4c421ff00
commit 2ef1ba42a8
2 changed files with 44 additions and 38 deletions
+23 -15
View File
@@ -5,18 +5,27 @@ 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.3.0] - 2025-09-11
### Added
- Add new `track` command to download individual songs.
- Add `--genre` flag to fetch and embed genre information into file metadata tags.
### Fixed
- Handle empty media resources gracefully to prevent crashes.
## [1.2.0] - 2025-08-18 ## [1.2.0] - 2025-08-18
### Added ### Added
- New `artist` command to download an artists top tracks. - Add new `artist` command to download an artists top tracks.
- `--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.
- `--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
- Default download quality is now **MP3 320kbps**. - Set default download quality to **MP3 320kbps**.
### Removed ### Removed
- The `--quality=best` option. Fallback to lower quality is now the **default behavior**; use the new `--strict` flag if you want 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.
@@ -24,22 +33,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [1.1.1] - 2025-06-16 ## [1.1.1] - 2025-06-16
### Fixed ### Fixed
- Restored 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 for 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).
- Option to fetch and embed **BPM** and **musical key** into metadata tags. - Fetch and embed **BPM** and **musical key** into metadata tags.
- New 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.
- Improved 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
- The `.godeez` file in the users home directory has been replaced by a `.godeez/` directory. - Replace the `godeez` file in the users home directory with a `.godeez/` directory, which now stores both `config.toml` and `tracks.db`.
It now stores both `config.toml` and the internal `tracks.db`. 👉 If upgrading, move your existing config into `.godeez/config.toml`.
If you're upgrading from an older version, move your existing config into `.godeez/config.toml`. - Simplify `config.toml`: remove the need for `iv` and `license_token`.
- Simplified `config.toml`: `iv` and `license_token` are no longer required. - Automatically delete corrupted or incomplete files on download failure.
- Cleanup logic: corrupted or incomplete files are now automatically deleted on download failure.
## [1.0.0] - 2024-10-15 ## [1.0.0] - 2024-10-15
+21 -23
View File
@@ -20,26 +20,26 @@ A simple Go tool for downloading music from [Deezer](https://www.deezer.com).
## Features ## Features
* Download playlists, albums, artists' top tracks, and individual tracks from Deezer - Download playlists, albums, artists top tracks, and individual tracks
* Select audio quality: MP3 128kbps, MP3 320kbps (default), or FLAC (⚠️ non-premium accounts are limited to 128kbps) - Choose audio quality: **MP3 128kbps**, **MP3 320kbps** (default), or **FLAC** (⚠️ nonpremium accounts are limited to 128kbps)
* Automatically adds metadata tags to downloaded files - Automatically embed metadata tags (artist, album, title, artwork, etc.)
* Fetch and tag songs with BPM and musical key - Fetch and tag songs with **BPM**, **musical key**, and **genre**
* Smart skip system: avoids re-downloading already existing files using hashes and metadata - Skip already-downloaded files using hashes and metadata
* Cross-platform support (works on Windows, macOS, and Linux) - Support Windows, macOS, and Linux
* Simple and easy-to-use CLI - Provide a simple, easy-to-use CLI
## Installation ## Installation
To install **GoDeez**, simply download the latest binary for your platform from the Releases page. To install **GoDeez**, download the latest binary for your platform from the [Releases](https://github.com/mathismqn/godeez/releases) page.
1. Go to the [Releases](https://github.com/mathismqn/godeez/releases) page. 1. Go to the [Releases](https://github.com/mathismqn/godeez/releases) page.
2. Download the appropriate binary for your operating system (Windows, macOS, or Linux). 2. Download the appropriate binary for your operating system (Windows, macOS, or Linux).
3. Move the binary to a directory included in $PATH for easy access (optional but recommended). 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.2.0-linux-amd64 /usr/local/bin/godeez mv godeez-1.3.0-linux-amd64 /usr/local/bin/godeez
``` ```
## Configuration ## Configuration
@@ -47,12 +47,12 @@ mv godeez-1.2.0-linux-amd64 /usr/local/bin/godeez
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). 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).
Inside this directory: Inside this directory:
- `config.toml`: main configuration file which contains several important variables that you need to fill out manually - `config.toml`: main configuration file you need to edit manually
- `tracks.db`: internal database used to track downloaded files and prevent duplicates - `tracks.db`: internal database used to track downloads and avoid duplicates
### Steps to configure ### Steps to configure
1. Run the application for the first time: this creates the `.godeez` directory and the `config.toml` file inside it. 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. 2. Edit the `config.toml` file with a text editor to set the required values.
### Variables to configure ### Variables to configure
@@ -79,7 +79,6 @@ Here are the key variables you need to set in `config.toml`:
### Example ### Example
Here's an example of a minimal `config.toml` you can customize:
```toml ```toml
# ~/.godeez/config.toml # ~/.godeez/config.toml
@@ -92,7 +91,8 @@ output_dir = '' # optional
### CLI Overview ### CLI Overview
When you run `godeez` without any additional commands, youll see a general help menu: Running `godeez` without arguments shows the help menu:
```bash ```bash
GoDeez is a tool to download music from Deezer GoDeez is a tool to download music from Deezer
@@ -110,9 +110,9 @@ Flags:
Use "godeez [command] --help" for more information about a command. Use "godeez [command] --help" for more information about a command.
``` ```
This provides an overview of the available commands and flags.
To download music, you need to use the download command. Heres how the CLI looks when you run `godeez download`: ### Download commands
```bash ```bash
Download songs from Deezer Download songs from Deezer
@@ -128,6 +128,7 @@ Available Commands:
Flags: Flags:
--bpm fetch BPM/key and add to file tags --bpm fetch BPM/key and add to file tags
--config string config file (default ~/.godeez/config.toml) --config string config file (default ~/.godeez/config.toml)
--genre fetch genre and add to file tags
-h, --help help for download -h, --help help for download
-q, --quality string download quality [mp3_128, mp3_320, flac] (default "mp3_320") -q, --quality string download quality [mp3_128, mp3_320, flac] (default "mp3_320")
--strict fail the song download if the quality is not available --strict fail the song download if the quality is not available
@@ -138,8 +139,6 @@ Use "godeez download [command] --help" for more information about a command.
### Examples ### Examples
Here are some examples of how to use the different download commands:
```bash ```bash
# Download an album # Download an album
godeez download album 12345678 godeez download album 12345678
@@ -153,8 +152,8 @@ godeez download artist 11223344 --limit 5
# Download a single track # Download a single track
godeez download track 98765432 godeez download track 98765432
# Download with specific quality and BPM data # Download with specific quality, BPM and genre data
godeez download track 98765432 --quality flac --bpm godeez download track 98765432 --quality flac --bpm --genre
``` ```
## Contributing ## Contributing
@@ -163,7 +162,6 @@ Contributions help make **GoDeez** a better tool for everyone, and any help is g
Whether its a bug fix, a new feature, or improving documentation, your input is valuable. Whether its a bug fix, a new feature, or improving documentation, your input is valuable.
If you have an idea for improvement, feel free to fork the repository and submit a pull request. You can also open an issue if you spot a bug or have a feature suggestion. If you have an idea for improvement, feel free to fork the repository and submit a pull request. You can also open an issue if you spot a bug or have a feature suggestion.
Every bit of support counts, so dont forget to give the project a star if you enjoy using it. Thank you for helping make this project better!
## ⭐ Support the Project ## ⭐ Support the Project
@@ -180,4 +178,4 @@ This project is licensed under the MIT License. See the [LICENSE](https://github
--- ---
> ⚠️ This tool is provided for educational and personal use only. Please ensure your usage complies with Deezers Terms of Service. > ⚠️ This tool is provided for educational and personal use only. Please ensure your usage complies with Deezers Terms of Service.