Skip to content

Commit 895915e

Browse files
committed
v0.2.0
1 parent 27475be commit 895915e

File tree

4 files changed

+46
-17
lines changed

4 files changed

+46
-17
lines changed

CHANGELOG.md

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,31 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to
77
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
88

9+
## [0.2.0] - 2023-03-12
10+
11+
### Breaking Change
12+
13+
The previous behaviour of running the download job with the base command has
14+
been moved into its own subcommand `run` in order to accommodate some features I
15+
plan to add in the future.
16+
17+
### Added
18+
19+
- `--dry-run` flag to get a list of releases Bandsnatch would try to download,
20+
without actually downloading them.
21+
- `--debug` flag to get some extra information in certain circumstances (Might
22+
be changed to `--verbose` in the future if I change my mind).
23+
24+
### Fixed
25+
26+
- Fix problem where some releases could crash a thread with
27+
`` missing field `download_type` ``.
28+
29+
### Changed
30+
31+
- New `run` subcommand which replaces the previous functionality of running the
32+
downloader on the base command.
33+
934
## [0.1.1] - 2022-10-29
1035

1136
### Added
@@ -25,6 +50,7 @@ and this project adheres to
2550

2651
Initial public release of Bandsnatch.
2752

28-
[unreleased]: https://github.com/Ovyerus/bandsnatch/compare/v0.1.0...HEAD
53+
[unreleased]: https://github.com/Ovyerus/bandsnatch/compare/v0.2.0...HEAD
54+
[0.2.0]: https://github.com/Ovyerus/bandsnatch/releases/tag/v0.2.0
2955
[0.1.1]: https://github.com/Ovyerus/bandsnatch/releases/tag/v0.1.1
3056
[0.1.0]: https://github.com/Ovyerus/bandsnatch/releases/tag/v0.1.0

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "bandsnatch"
3-
version = "0.1.1"
3+
version = "0.2.0"
44
edition = "2021"
55
description = "A CLI batch downloader for your Bandcamp collection"
66
authors = ["Michael Mitchell <[email protected]>"]

README.md

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -26,42 +26,43 @@ project in general I'd love to hear them.
2626

2727
## Usage
2828

29-
The most basic usage is along the lines of `bandsnatch -f <format> <username>`,
30-
as it will try to automatically fetch cookies from a local `cookies.json` or
31-
from Firefox (TODO). But if this fails you can provide the `-c` option with a
32-
path to a cookies file to use.
29+
The most basic usage is along the lines of
30+
`bandsnatch run -f <format> <username>`, as it will try to automatically fetch
31+
cookies from a local `cookies.json` or from Firefox (TODO). But if this fails
32+
you can provide the `-c` option with a path to a cookies file to use.
3333

34-
For more advanced usage, you can run `bandsnatch -h` to get output similar to
35-
the following.
34+
For more advanced usage, you can run `bandsnatch run -h` to get output similar
35+
to the following.
3636

3737
```
38-
A CLI batch downloader for your Bandcamp collection
38+
Run Bandsnatch to download your collection
3939
40-
Usage: bandsnatch [OPTIONS] --format <AUDIO_FORMAT> <USER>
40+
Usage: bandsnatch run [OPTIONS] --format <AUDIO_FORMAT> <USER>
4141
4242
Arguments:
4343
<USER> Name of the user to download releases from (must be logged in through cookies) [env: BS_USER=]
4444
4545
Options:
4646
-f, --format <AUDIO_FORMAT> The audio format to download the files in [env: BS_FORMAT=] [possible values: flac, wav, aac-hi, mp3-320, aiff-lossless, vorbis, mp3-v0, alac]
4747
-c, --cookies <COOKIES_FILE> [env: BS_COOKIES=]
48+
--debug Enables some extra debug output in certain scenarios [env: BS_DEBUG=]
49+
-d, --dry-run Return a list of all tracks to be downloaded, without actually downloading them
4850
-F, --force Ignores any found cache file and instead does a from-scratch download run [env: BS_FORCE=]
4951
-j, --jobs <JOBS> The amount of parallel jobs (threads) to use [env: BS_JOBS=] [default: 4]
5052
-n, --limit <LIMIT> Maximum number of releases to download. Useful for testing [env: BS_LIMIT=]
5153
-o, --output-folder <FOLDER> The folder to extract downloaded releases to [env: BS_OUTPUT_FOLDER=] [default: ./]
5254
-h, --help Print help information
53-
-V, --version Print version information
5455
```
5556

5657
Besides these options, you can also use environment variables with the option
5758
name in `SCREAMING_SNAKE_CASE`, prefixed with `BS_`, so that if set up correctly
58-
you can just run `bandsnatch` and have it automatically download your collection
59-
to the folder you want.
59+
you can just run `bandsnatch run` and have it automatically download your
60+
collection to the folder you want.
6061

6162
### Exmaple
6263

6364
```
64-
bandsnatch -c ./cookies.json -f flac -o ./Music ovyerus
65+
bandsnatch run -c ./cookies.json -f flac -o ./Music ovyerus
6566
```
6667

6768
This would download my entire music collection into a local "Music" folder, and
@@ -81,9 +82,11 @@ to extract the cookies in the Netscape format, which Bandsnatch also supports.
8182

8283
If you don't provide the `--cookies` option, Bandsnatch will attempt to
8384
automatically find a file named `cookies.json` or `cookies.txt` in the local
84-
directory and load it. Failing that, if you use Firefox on Windows or Linux,
85+
directory and load it.
86+
87+
<!-- Failing that, if you use Firefox on Windows or Linux,
8588
bandsnatch will try to automatically load the cookies from there if possible
86-
(TODO).
89+
(TODO). -->
8790

8891
## Installing
8992

0 commit comments

Comments
 (0)