docs: update for v1.3.0
This commit is contained in:
+23
-15
@@ -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 artist’s top tracks.
|
- Add new `artist` command to download an artist’s 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 user’s home directory has been replaced by a `.godeez/` directory.
|
- Replace the `godeez` file in the user’s 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
|
||||||
|
|
||||||
|
|||||||
@@ -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** (⚠️ non‑premium 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, you’ll 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. Here’s 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 it’s a bug fix, a new feature, or improving documentation, your input is valuable.
|
Whether it’s 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 don’t 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 Deezer’s Terms of Service.
|
> ⚠️ This tool is provided for educational and personal use only. Please ensure your usage complies with Deezer’s Terms of Service.
|
||||||
|
|||||||
Reference in New Issue
Block a user