beetbox/beets

tidal: honor manually entered artist and album search terms

開放

#6,795 建立於 2026年6月28日

 (2 則留言) (0 個反應) (0 位負責人)Python (1,837 個分叉)batch import
good first issue

倉庫指標

星標
 (12,133 顆星)
PR 合併指標
 (平均合併 26天 4小時) (30 天內合併 51 個 PR)

描述

Problem

The Tidal plugin ignores the artist and album entered through the importer's Enter search action. Beets passes these values to TidalPlugin.candidates(), but the plugin builds its queries from the existing item tags via _album_queries(items) instead.

This makes manual search repeat the original, incorrect search when users are trying to correct bad or missing tags. The singleton path has the same problem: item_candidates() ignores its artist and title arguments and uses _item_queries(item).

To reproduce:

  1. Enable the Tidal plugin and import an album with incorrect artist or album tags.
  2. Choose Enter search.
  3. Enter a different artist and album.
  4. Observe that Tidal searches using the original tags rather than the entered values.

Expected behavior

Tidal should use the manually entered artist and album or track title when Beets supplies explicit search terms.

Suggested fix

Build Tidal text queries from the artist and album/title arguments accepted by candidates() and item_candidates(), while retaining barcode and ISRC lookup precedence. Add focused regression tests proving that explicit search terms override item metadata for both albums and singletons.

貢獻者指南