* add tests (failing)
* Improve error handling and logging in media download processes
- Add exception handling and logging for track and media item downloads
- Capture and log errors during album, playlist, and media ripping
- Provide summary of failed items when download process completes
* Add SSL verification configuration option
- Add `verify_ssl` parameter to DownloadsConfig to control SSL certificate verification
- Update client methods to use the new SSL verification setting
- Add CLI option `--no-ssl-verify` to disable SSL verification
- Implement SSL verification support across various clients and network requests
- Add test suite to validate SSL verification configuration
* Enhance SSL certificate handling with certifi support
- Add new `ssl_utils.py` module for SSL certificate management
- Implement optional certifi package support for improved certificate verification
- Add utility functions for creating SSL contexts and handling connector kwargs
- Update various clients to use new SSL utility functions
- Add helpful error messaging for SSL certificate verification issues
- Include optional certifi dependency in pyproject.toml
* Enhance SSL verification tests and configuration support
- Add comprehensive test suite for SSL verification utilities
- Implement tests for SSL context creation and configuration
- Update test configuration to include verify_ssl option
- Add test coverage for SSL verification across different clients and methods
- Improve error handling and testing for SSL-related configurations
* run ruff format
* Fix ruff checks
---------
Co-authored-by: Nathan Thomas <nathanthomas707@gmail.com>
Qobuz client and fixture had to be imported
The embedded cover is saved somewhere else now. Uses the path from the
object itself to check if it gets downloaded, unsure if this is static
or dynamic.