[PR #922] [MERGED] Improve loading paginated items with parallelism #924

Closed
opened 2026-03-03 00:01:28 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/aome510/spotify-player/pull/922
Author: @aome510
Created: 2/10/2026
Status: Merged
Merged: 2/10/2026
Merged by: @aome510

Base: masterHead: improve-loading


📝 Commits (2)

  • 81ccdef implement all_paging_items2 method with parallelism support
  • 273431e integrate new all_paging_items API with parallelism support

📊 Changes

3 files changed (+118 additions, -106 deletions)

View changed files

📝 Cargo.lock (+1 -0)
📝 spotify_player/Cargo.toml (+1 -0)
📝 spotify_player/src/client/mod.rs (+116 -106)

📄 Description

This PR updates Client::all_paging_items API to support parallelism, i.e. making multiple API requests in batch

Benchmark loading GetUserTopTracks with 3k5 songs takes 4600ms, a big playlist with 1k7 songs takes 3600ms

Resolves #732
Resolves #502
Resolves #782
Resolves #840


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/aome510/spotify-player/pull/922 **Author:** [@aome510](https://github.com/aome510) **Created:** 2/10/2026 **Status:** ✅ Merged **Merged:** 2/10/2026 **Merged by:** [@aome510](https://github.com/aome510) **Base:** `master` ← **Head:** `improve-loading` --- ### 📝 Commits (2) - [`81ccdef`](https://github.com/aome510/spotify-player/commit/81ccdefdd4cfcc45f9b05da4dc08235126800bf4) implement all_paging_items2 method with parallelism support - [`273431e`](https://github.com/aome510/spotify-player/commit/273431e767d011b04cab4dd6545fd8722cda6300) integrate new all_paging_items API with parallelism support ### 📊 Changes **3 files changed** (+118 additions, -106 deletions) <details> <summary>View changed files</summary> 📝 `Cargo.lock` (+1 -0) 📝 `spotify_player/Cargo.toml` (+1 -0) 📝 `spotify_player/src/client/mod.rs` (+116 -106) </details> ### 📄 Description This PR updates `Client::all_paging_items` API to support parallelism, i.e. making multiple API requests in batch Benchmark loading `GetUserTopTracks` with 3k5 songs takes 4600ms, a big playlist with 1k7 songs takes 3600ms Resolves #732 Resolves #502 Resolves #782 Resolves #840 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-03 00:01:28 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/spotify-player#924
No description provided.