beetbox/beets

tidal: `search_limit` is ignored

Open

#6,770 opened on Jun 24, 2026

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Python (1,837 forks)batch import
good first issuetidal

Repository metrics

Stars
 (12,133 stars)
PR merge metrics
 (Avg merge 9d 12h) (46 merged PRs in 30d)

Description

Problem

The Tidal plugin does not appear to honor tidal.search_limit. With a config such as:

tidal:
  search_limit: 1

Tidal album and track searches still return (at least 20+) results.

Expected behavior

Tidal should cap album and track search candidates using the configured search_limit, matching the behavior of other metadata source plugins.

Likely cause

Tidal implements candidates() and item_candidates() directly, then calls api.search_results() from search_albums_by_query() and search_tracks_by_query(). That bypasses the shared search path that reads search_limit into SearchParams.limit.

Suggested fix

Thread search_limit through the Tidal query search path, or truncate returned Tidal relationships before resolving album/track IDs. Add focused tests for both album and track search with search_limit: 1.

Tagging @semohr for visibility.

Contributor guide