Commit graph

223 commits

Author SHA1 Message Date
Kai Norman Clasen
b3adb9a331
fix: plugin decrypt rebuild-chapters without -c (#205) 2024-05-02 21:49:03 +02:00
mkb79
1a1f25bc2d Refactor error messages in cmd_decrypt.py
The changes aim to enhance the syntax and readability of the error messages in cmd_decrypt.py. The `raise` method syntax was corrected for better readability and adjustments were made to option usage error messages to improve clarity for the user.
2024-04-16 20:41:09 +02:00
mkb79
6165e95f40 Optimize error handling in cmd_download.py
The current change replaces generic `click.Abort()` statements with `click.BadOptionUsage()` to provide clearer error messages. These updates occur when there are conflicts in options chosen (e.g. choosing both `--all` and `--asin` or `--title`), no download option is chosen, or if both *ignore-podcasts* and *resolve-podcasts* options are selected together. It is now highlighted when the start date is after the end date in the parameters as well.
2024-04-16 20:34:17 +02:00
mkb79
009a7e69ec fix: Raise click.Abort() in audible_cli.decorators
In the audible_cli decorators file, the click.Abort() function previously was not raising an exception in case an error occurred. This has been modified to correctly raise the exception using the "raise" keyword, thereby handling exceptions accurately.
2024-04-16 20:33:44 +02:00
Isaac Lyons
efcad39b8e
refactor: fix typo from 'podcats' to 'podcasts' (#141)
* fix typo from 'podcats' to 'podcasts'

* missed on first check

* Deprecate resolve_podcats method

The resolve_podcats method is marked as deprecated, and a warning message is added to inform users. It is recommended to use the resolve_podcasts method. This commit helps to phase out the resolve_podcats method, aiming to eliminate any spelling errors in method naming.

* Fix typo in variable name

A typo in the variable name 'resolve_podcats' was corrected to 'resolve_podcasts'. This ensures that the conditional check operates as designed, without causing errors due to referencing a non-existent variable.

* Fix typos and improve readability in CHANGELOG.md

The commit fixes several typos including changing `resolve_podcats` to `resolve_podcasts` and fixing spelling of 'titles'. In addition, it formalizes the formatting of terms and phrases by using backticks around them for more readability. Furthermore, a missing comma has also been added to enhance sentence clarity.

---------

Co-authored-by: mkb79 <mkb79@hackitall.de>
2024-04-16 20:10:17 +02:00
mkb79
705d6f0959
fix: error Invalid cross-device (#204)
* refactor: resume file location match target file

* update CHANGELOG.md
2024-04-16 19:39:53 +02:00
dependabot[bot]
3a6db75e0d
build(deps): Update httpx requirement from <0.26.0,>=0.23.3 to >=0.23.3,<0.28.0 (#185)
* Update httpx requirement from <0.26.0,>=0.23.3 to >=0.23.3,<0.28.0

Updates the requirements on [httpx](https://github.com/encode/httpx) to permit the latest version.
- [Release notes](https://github.com/encode/httpx/releases)
- [Changelog](https://github.com/encode/httpx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/encode/httpx/compare/0.23.3...0.27.0)

---
updated-dependencies:
- dependency-name: httpx
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update httpx version range in CHANGELOG

The CHANGELOG.md has been updated to reflect the changes in the httpx version range. This update includes a specification that the version should be >=0.23.3 and <0.28.0.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mkb79 <mkb79@hackitall.de>
2024-04-16 18:45:34 +02:00
vwkd
22e388dfaa
Add -c, --remove-intro-outro option to decrypt (#171) 2024-04-08 23:31:34 +02:00
Paul
0a9b2f9c7d
fix: decrypt command filename escape (#202) 2024-04-08 22:58:07 +02:00
mkb79
8dc8739f66
Rework flat chapter option (#201)
* Capitalize chapter type in get_content_metadata function

The get_content_metadata function in audible_cli's models.py file has been updated to capitalize the chapter type parameter. This ensures any case variations in the parameter will pass the assert condition, improving the handling of chapter types and method consistency.

* Update chapter type handling in cmd_download.py

Updated the cmd_download.py file to add a "config" choice to the chapter type and move the declaration of chapter_type to a more appropriate location. Also, the logging message has been updated to include the selected chapter type. This enhances traceability and ensures chapter type is handled consistently.

Flat chapters can be enabled by default in the config file. In the APP or profile section must be a setting `chapter_type = "flat"`.

* Update README with new `chapter_type` option

Updated README.md to include a new `chapter_type` field in both the APP and profile sections. This new field allows users to specify a chapter type for the `download` command with the `--chapter-type` option. If not provided, it defaults to "tree". This change aims to increase customizability for users.

* Update CHANGELOG to include new config file option

The CHANGELOG has been updated to reflect the addition of the ability to set a default chapter type in the config file. This allows the user to specify whether chapters should be downloaded as `flat` or `tree` type without having to state it each time a download command is given.

* Update audible-cli version

Version number has been updated from "0.3.2b2" to "0.3.2b3" in the _version.py file. This indicates a new build of the code that may include minor enhancements or bug fixes.
2024-04-01 13:20:06 +02:00
mkb79
7f01949413 Update audible-cli version
The version of the audible-cli package has been updated from "0.3.2b1" to "0.3.2b2". This version upgrade reflects changes made to the functionality or features of the package.
2024-03-31 11:57:09 +02:00
mkb79
48946ab8b8
feat: Add option to download flat chapters (#200)
* Adjust get_content_metadata method in audible_cli model

Updated the get_content_metadata method to accept a new parameter 'chapter_type'. This adjustment also enables passing additional request parameters via **request_kwargs, allowing for more flexible HTTP requests.

* Add chapter type parameter to download chapters function

The download_chapters function has been updated to include 'chapter_type' as a parameter to support different types of chapters. It also modifies the get_content_metadata method to handle the new argument. This makes API interaction more adaptive by facilitating more varied request parameters.

* Update CHANGELOG.md
2024-03-31 11:55:23 +02:00
mkb79
24c57ec73e Update audible-cli version
The version of audible-cli has been updated from 0.3.1 to 0.3.2b1. This update may involve bugs fixes, improvements, or new features in the audible-cli package.
2024-03-24 23:01:53 +01:00
mkb79
513b97a3cc
refactor: downloader head request (#196)
* Replace HEAD request with faster GET request in downloader

Switched from a HEAD to a GET request without loading the body in the get_head_response method. This change improves the program's speed, as the HEAD request was taking considerably longer than a GET request to the same URI.

* Update CHANGELOG.md
2024-03-24 22:58:59 +01:00
mkb79
45bd5820ad
refactor: rework skip podcast options of download command (#195)
* Improve podcast ignore feature in downloader

Added conditional code in the cmd_download.py file to ignore any items that are parent podcasts if the ignore_podcasts flag is set. This allows users to choose whether or not they want to download podcasts.

* Prevent mixing resolve and ignore podcasts options

Added a check in cmd_download.py to prevent combining both "resolve_podcasts" and "ignore_podcasts" options. A flag was added that aborts the process if both options are activated at once. Additionally, enhanced the feature to ignore parent podcasts during download, if "ignore_podcasts" flag is set.

* Update CHANGELOG.md
2024-03-24 22:53:41 +01:00
mkb79
707a4b9192
Release v0.3.1 2024-03-19 23:25:15 +01:00
mkb79
d6ce4041d8
fix: Fix TypeError on some Python versions (#191) 2024-03-19 23:21:24 +01:00
mkb79
0fa4dfc931
Release v0.3.0 2024-03-19 22:26:51 +01:00
mkb79
87bedc1080
refactor: rework plugin module (#189)
* refactor: rework plugin module

- using importlib.metadata over setuptools (pkg_resources) to get entrypoints
- help text now starts with ´(P)` for plugin commands
- plugin command help page now contains additional information about the source of the plugin
2024-03-19 20:32:19 +01:00
mkb79
91b3f63bd3
fix: move QUEUE init position 2024-01-30 15:21:22 +01:00
mkb79
098714e410
fix: Uncaught Exception (#181) 2024-01-30 15:16:20 +01:00
mkb79
ce8f59b732
feat: downloading large audiobooks (#178)
* catch asyncio.CancelledError

* add download parts feature

* fix downloading book in parts

* fix aax_fallback

* Update default timeout value to 30

* Refactor check_status_for_message function

* rework is_published method to take care about AudioPartd

* update cmd_download.py

* Update CHANGELOG.md
2024-01-29 11:44:01 +01:00
mkb79
56333360da
docs: Add install guide using pipx to README.md 2024-01-23 22:12:01 +01:00
mkb79
385f353403
feat: Add a resume feature for aaxc file (#164)
* Add a resume feature for aaxc file

* rework downloader class

* add additional message

* forgot to reduce MAX_FILE_READ_SIZE to 3 MB

* Rework downloader module

* Update CHANGELOG.md
2024-01-19 08:23:45 +01:00
vwkd
e82aa52c02
add overwrite option to decrypt command (#176) 2024-01-09 16:39:55 +01:00
vwkd
8bb611e5db
Add -f, --force-rebuild-chapters option to decrypt (#175) 2024-01-09 15:42:46 +01:00
mkb79
1bfbf72f66
doc: fix CHANGELOG.md 2023-11-16 14:02:16 +01:00
mkb79
d463dbae94
Release v0.2.6 2023-11-16 13:55:54 +01:00
mkb79
e996fb619d
Update httpx version range to >=0.23.3 and <0.26.0 2023-11-16 13:38:54 +01:00
mkb79
8f8eacf324
fix: Fixing an issue with unawaited coroutines (#166)
Fixing an issue with unawaited coroutines when the download command exited abnormal.

* Refactor consume function and queue_job function

* doc: Update CHANGELOG.md
2023-11-15 10:58:37 +01:00
mkb79
cda40c62d7
fix: Fix progressbar issue (#165)
* fix: Avoid tqdm progress bar interruption

Avoid tqdm progress bar interruption by logger's output to console

* doc: Update CHANGELOG.md
2023-11-15 07:52:49 +01:00
mkb79
72b4ff916f
add freeze_support to pyinstaller entry script (#162)
* fix: add freeze_support to pyinstaller entryscript

* docs: update CHANGELOG.md
2023-11-08 22:08:25 +01:00
mkb79
275a2b2b77
Update marketplace choices in manage command (#161)
* Update marketplace choices in `manage auth-file add` command

* docs: update CHANGELOG.md
2023-11-08 22:05:22 +01:00
mkb79
0f55179bff
Create FUNDING.yml 2023-09-29 06:41:07 +02:00
mkb79
6da1eda757
ci: Update build action (#158)
* ci: update build action

* docs: Update README.md
2023-09-27 10:36:14 +02:00
mkb79
4398a4f268
ci: fix spelling on gh action publish 2023-09-26 21:36:38 +02:00
mkb79
377c3771af
ci: update gh sction publish 2023-09-26 21:33:07 +02:00
mkb79
69504d6205
feat: load marketplaces dynamically from audible package (#157)
* feat: dynamically load available marketplaces

* docs: modify CHANGELOG

* build: bump version 0.2.4 > 0.2.5
2023-09-26 20:22:23 +02:00
mkb79
acbfa2da7c
docs: Update README.md (#152) 2023-07-26 07:24:12 +02:00
mkb79
59ec48189d
Delete cmd_remove-encryption.py
Added new cmd_decrypt.py file in plugin_cmds
2023-02-23 15:33:18 +01:00
mkb79
9bbfa5c1a4
Create cmd_decrypt.py 2023-02-23 15:32:17 +01:00
mkb79
6af331f43a
Release v0.2.4 2022-09-21 13:33:46 +02:00
mkb79
c1b2d1db52
rework start_date and end_date option (#124) 2022-09-19 14:14:57 +02:00
mkb79
1318c6d7d1
Add support to download multiple cover sizes 2022-09-07 12:42:16 +02:00
mkb79
fb365311ae release v0.2.3 2022-09-06 21:32:03 +02:00
mkb79
cf17c05c7e Update CHANGELOG.md 2022-09-06 21:31:43 +02:00
mkb79
33533583a2 count downloaded AYCL items 2022-09-06 21:24:24 +02:00
mkb79
0924df43b0
Extend download command and other optimizations
- check a download link before reuse them
- `--ignore-errors` flag of the download command will now continue if on item failed to download
- add the `--start-date` and `--end-date` option to the `library list` and `library export` command
- make sure an item is published before downloading the aax, aaxc or pdf file
2022-09-06 21:13:16 +02:00
mkb79
107fc75f36
Update CHANGELOG.md 2022-09-01 17:53:10 +02:00
mkb79
cf7d6c02cf
add start-date and end-date option to library export and list command (#116) 2022-09-01 17:49:30 +02:00