feat(qobuz): implement concurrent playlist pagination

Parallelize Qobuz playlist track fetching by increasing the page size to 500 and processing remaining pages concurrently via `futures::try_join_all` with a configurable semaphore (default 3). Results are offset-sorted to preserve original order. Adds a `page_concurrency` configuration option, updates the API client initialization, and introduces the `futures` dependency. This reduces large playlist latency from ~1.6s to ~0.7s.
This commit is contained in:
2026-06-11 14:49:44 +02:00
parent a30186485f
commit 1d3a9379a1
7 changed files with 132 additions and 48 deletions

1
Cargo.lock generated
View File

@@ -4072,6 +4072,7 @@ dependencies = [
"cbc",
"chrono",
"ctr",
"futures",
"hex",
"hkdf",
"indexmap 2.12.0",