Skip to content

Playlist IDs refactor#94

Merged
pSpitzner merged 12 commits into
mainfrom
plist_ids
May 17, 2026
Merged

Playlist IDs refactor#94
pSpitzner merged 12 commits into
mainfrom
plist_ids

Conversation

@semohr
Copy link
Copy Markdown
Contributor

@semohr semohr commented May 5, 2026

This pull request refactors how playlist identifiers are handled across the codebase, moving from service-specific PlaylistIDs dictionaries to strongly-typed, immutable PlaylistID dataclasses for each service (e.g., Plex and Spotify). This change improves type safety, clarity, and extensibility for playlist identification and lookup. The update also removes now-obsolete ID extraction utilities and ensures all playlist operations use the new identifier types.

Todos:

  • Decide how to handle offline playlists:
    • Either we add a OfflinePlaylistID as wrapper for multiple other ids
    • or we allow a list of ids (makes working within our abstraction a bit awkward tho)
  • Fix playlist tests base for new Id system
  • Changelog
  • Notebooks
  • Add tests for OfflinePlaylistID

@semohr semohr had a problem deploying to integration_tests May 5, 2026 14:52 — with GitHub Actions Failure
@semohr semohr had a problem deploying to integration_tests May 5, 2026 14:52 — with GitHub Actions Failure
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 5, 2026

Thank you for the PR! The changelog has not been updated, so here is a friendly reminder to check if you need to add an entry.

@codecov
Copy link
Copy Markdown

codecov Bot commented May 5, 2026

@semohr semohr had a problem deploying to integration_tests May 5, 2026 15:01 — with GitHub Actions Failure
@semohr semohr had a problem deploying to integration_tests May 5, 2026 15:01 — with GitHub Actions Failure
@semohr semohr temporarily deployed to integration_tests May 7, 2026 14:35 — with GitHub Actions Inactive
@semohr semohr temporarily deployed to integration_tests May 7, 2026 14:35 — with GitHub Actions Inactive
@semohr semohr temporarily deployed to integration_tests May 7, 2026 15:01 — with GitHub Actions Inactive
@semohr semohr temporarily deployed to integration_tests May 7, 2026 15:01 — with GitHub Actions Inactive
@pSpitzner pSpitzner had a problem deploying to integration_tests May 11, 2026 17:23 — with GitHub Actions Failure
@pSpitzner pSpitzner temporarily deployed to integration_tests May 11, 2026 17:23 — with GitHub Actions Inactive
@pSpitzner pSpitzner temporarily deployed to integration_tests May 11, 2026 17:38 — with GitHub Actions Inactive
@pSpitzner pSpitzner temporarily deployed to integration_tests May 11, 2026 17:38 — with GitHub Actions Inactive
@pSpitzner pSpitzner temporarily deployed to integration_tests May 11, 2026 17:42 — with GitHub Actions Inactive
@pSpitzner pSpitzner temporarily deployed to integration_tests May 11, 2026 17:42 — with GitHub Actions Inactive
@semohr semohr marked this pull request as ready for review May 11, 2026 17:55
@semohr semohr temporarily deployed to integration_tests May 11, 2026 17:55 — with GitHub Actions Inactive
@semohr semohr temporarily deployed to integration_tests May 11, 2026 17:55 — with GitHub Actions Inactive
@pSpitzner pSpitzner merged commit 3d98d00 into main May 17, 2026
15 checks passed
@pSpitzner pSpitzner deleted the plist_ids branch May 17, 2026 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants