github vavallee/bindery v1.44.0

5 hours ago

Releases the filters dropped can be grabbed, Hardcover series in one step, metadata sources you can switch off, author photos from Wikidata, and a database check with a one click cleanup

Added

  • Grab a release the filters dropped (#2334). Interactive search on a book page used to throw away anything the title and author check or the language filter rejected, so when a filter got it wrong you could see the release in the search details and still not grab it. Those releases now sit in a collapsed "Filtered (N)" section under the results, with the reason on each row and the same Grab button. Video and other non book junk stays out of it. The free text Search page does not have this yet. Thanks to omegaliterosmalakas on Discord for the report.
  • Search Hardcover and add a series in one step (#1706). With enhanced Hardcover data on, the Add Series box on the Series page now has a search. Type a title, press Enter, and every result shows its author, how many books it has and the first few titles, so near-identical series are easy to tell apart. Pick one and Bindery creates the series already linked to Hardcover and opens it with its list of missing books. Nothing is added to your library until you choose, one book at a time or with Fill gaps. If that Hardcover series is already in your library you land on the existing one instead of getting a second copy. Typing a plain name still works as before. Thanks to Aiz0 for asking for this in discussion #1682, and to Noxxiss for the idea of previewing a series before importing it.
  • Turn metadata sources off one by one (#1890, #2015). Settings, Metadata now has a checkbox for each enricher (OpenLibrary, Hardcover, Google Books and DNB) and for the two audiobook sources, the Audible catalogue and audnex. Untick one and Bindery stops using it as an enricher (the two audiobook sources are not asked at all), so you can skip DNB if you read no German, or leave Amazon's unpublished Audible endpoint alone. It applies to the next lookup with no restart. Everything stays on by default, and the primary provider can never be turned off. Turning a source off means less fill in, for example DNB also supplies covers and Hardcover also supplies genres, series and edition language. Thanks to EricSilberberg for the ask.
  • Author photos and bios from Wikidata (#3287). An author whose provider has no photo or bio, as is the case for every Nasjonalbiblioteket, BnF and DNB author, can now get one from Wikimedia Commons and Wikipedia, found on Wikidata by the authority ID Bindery already stores, never by name. It is off by default: switch it on in Settings, Metadata. Lookups happen when you add an author or press its Refresh button, and otherwise ride on the daily author refresh at most once a month per author, never on imports or bulk refreshes. Each photo and bio is credited on the author's page with its source and licence, and an enriched value never replaces one from the author's own provider or one you chose. Thanks to @francisrath for the request and the fix.
  • Link-local service URLs can be allowed (#2036). BINDERY_ALLOW_LINK_LOCAL_SERVICES=1 is an opt in that lets the service URLs you type (indexers, Prowlarr, download clients, Audiobookshelf, Grimmory, the Calibre plugin) use link-local addresses. This is what rootless Podman with pasta networking needs, since the host is only reachable at 169.254.1.2 there. It is off by default, cloud metadata addresses stay blocked even when it is on, and indexer download links, covers and webhooks are unaffected. The refusal message now names the variable. Thanks to seannymurrs for the report.
  • Progress for the catalogue fetch after a Readarr import (#2136). Once the database import finished, Bindery went on fetching every new author's books in the background with nothing on screen to say so, which looked like a stuck import on a big library. The Import page now follows the import itself and then shows "Fetching catalogues: X of Y" until it is done, and picks the line back up if you leave and return. The pace is unchanged at about 3 seconds per author, so 500 authors take around 25 minutes. A restart clears the count. Thanks to gchahcg for the report.
  • Filter the Series page by how many books a series holds (#3317). A new row of buttons next to the status filters shows only one book series or only series with two or more books, which makes a long list of single volumes much easier to go through. It combines with the existing filters and the title search, and is kept in the page address. Thanks to condensed69 for the report.
  • Check the database for drift from Settings (#3356). Older versions could leave rows behind that point at a parent that was deleted. Settings, General now has a "Check database" button (admins only) that counts those rows per relationship and shows what the schema would have done to them. It only reads, and only runs when you press it. The cleanup is below.
  • Clean up database drift from Settings (#3357). After "Check database" finds rows that point at a parent that was deleted, a "Preview cleanup" button shows what would happen to each relationship: rows whose parent should have cascaded are deleted, references that should have been cleared are cleared, and anything else is left alone. Nothing changes until you confirm. Bindery saves a backup of the database first and tells you where it is, and if the backup fails nothing is touched. It then checks again and shows what is left. Admins only, one run at a time, and Bindery keeps answering while it works. bindery db-repair is still there for an instance that will not start.

Fixed

  • Disc folders named after the book are one audiobook (#3327). A multi disc audiobook ripped from CD often has each disc folder named after the book, such as Fjellvinden (2002)/Fjellvinden Disc 1, and Bindery treated each disc as a separate book, both on the Import page and in the library scan. A disc folder that starts with its book folder's own title and ends in a CD or disc number now counts as one disc of that book. Folders named Book 1, Vol 1 or after a different title stay separate, as before. Thanks to @francisrath for the report and the fix.
  • The Docker healthcheck now works with BINDERY_URL_BASE (#3352). With a path prefix set, the container's built in healthcheck still asked for /api/v1/health at the root, where nothing answers, so the container showed as unhealthy even though Bindery was running. It now asks under the prefix. Thanks to manolb for the report.
  • The database check reads the live database for in-memory paths (#3356). With BINDERY_DB_PATH set to :memory: or a file: URI the check opened a different, empty database and reported clean, or failed with an error. It now scans the database Bindery is running on.

Don't miss a new bindery release

NewReleases is sending notifications on new releases.