github Listenarrs/Listenarr v1.3.16-canary
Canary 1.3.16

latest release: v1.3.17-canary
pre-release2 hours ago

Fixes #1042

Problem

On a non-US setup, Library Import adds region-only books without authors or narrators, and Rescan metadata can't repair them. Start Matching searches the configured region; the import then fetches full metadata with getAudibleMetadata(asin) and no region, which defaults to us; and the metadata sent to library/add has no region, so the ASIN identifier is stored without one and Rescan metadata asks the US catalogue again. Details and logs in #1042.

Rule

As decided in the review: the configured region by default, an explicit choice of another region, no automatic switch to the US catalogue. Mixed-language libraries are supported: each edition stays its own book, with its own ASIN and region.

Change

Library Import (libraryImport.ts, LibraryImportSearchModal.vue)

  • Start Matching and Find Match search the configured region (defaultSearchRegion) only. Results are tagged with the region they were found in (SearchResult.region, new optional field).
  • Find Match has a Region selector: the region of the row's current match, or the configured region, then US, then the other regions alphabetically (orderedSearchRegionOptions in languageMapping.ts, shared with the add modal).
  • The import fetches full metadata from the match's region and sends that region to library/add, so SyncImportedIdentifiersFromLegacyFields stores it on the ASIN identifier. A match saved before regions were recorded is imported with the configured region.
  • When the match's catalogue has no record for its ASIN (404 or empty stub), the book is not imported: the row loses its match and says "Audible {region} has no record for {ASIN}. Use "Search for a match" to pick the book again, in the right region." Before, it was imported without authors or narrators and with that region on the ASIN, so rescans stayed there. Any other lookup failure (429, network) also stops that row, keeping its match ...

Automated Canary build

Don't miss a new Listenarr release

NewReleases is sending notifications on new releases.