github vavallee/bindery v1.36.1

4 hours ago

The header fits again, plus import, regrab and refresh fixes

v1.36.0's new search box pushed the header past the edge of the page on most laptop screens, so the header has been rearranged with your name, the version and Sign out behind one account icon. The rest are fixes: a deleted book's release can be grabbed again, bulk import trusts author folders, imports stop linking authors to a fallback provider while your primary is down, Refresh metadata stops showing day old data, and the admin screens work again with authentication turned off. One security fix for installs with more than one user is listed at the end.

Changed

  • Your name, the version and Sign out now sit behind one account icon at the right of the header, with an amber dot on it when an update is available. On a phone they stay at the bottom of the menu, where they were.
  • Between 1024 and 1279 pixels wide, the page links move into the menu, while the library search, Search indexers, Users, Settings and the account icon stay in the header. Wider screens show everything in one row; phones are unchanged.

Fixed

  • The header fits again on desktop: v1.36.0 added a library search box to the header, and on most desktop screens the logo, the page links and the search box touched while the right side ran past the edge of the page, so the page scrolled sideways on common laptop widths. The row now keeps a fixed gap between its parts and the search box keeps one width, and the header fits at every width from a 360 pixel phone to a 1920 pixel monitor.
  • Admin screens open with authentication turned off: installs with authentication set to disabled showed the admin screens but got "forbidden" on them, so storage, logs, backups and the users page could not be seen. In that mode every request now acts as the administrator, which is what the page already said it was. Scripts that call Bindery with the API key in that mode can also make changes without being refused. Anyone who can reach Bindery while authentication is off can now see the API key and manage accounts, so if that included anyone but you, regenerate the key and check the Users page after turning authentication back on.
  • Deleting a book frees its release to be grabbed again (#2289): once a release had imported, deleting the book left it marked as imported, so grabbing that release again answered "already grabbed: this release has already been imported" with nothing in Bindery to clear it, and automatic search skipped it without a word. Removing the torrent from your download client did not always help either. A release whose book is gone can now be grabbed again, by hand or by automatic search once you add the book back, including ones left behind by books deleted before this update. If the torrent is still in qBittorrent, Transmission, Deluge or rTorrent, Bindery picks it up instead of downloading it again; Deluge used to fail that grab with "Torrent already in session". The Troubleshooting page lists the two cases where you still need to remove the torrent first. Thanks schmitzkr and Terebi42 for the reports.
  • Bulk folder import trusts author folders again (#2331): a file whose name puts the author before the title, sitting in that author's folder, was read with author and title swapped, so a book already in your library showed "No catalogue match" and could not be selected. A file that matches nothing the usual way round, in a folder named after the first part of its name, is now tried as author then title too, and that reading is kept only when it matches a book by an author in your library. Bulk folder import also takes the author from the folder when the filename's author matches none of the books with that title and the folder name does. Manual Import of a single file inside your library folder, and Library Scan in author folders with no book folder below them, get the same second reading. Library Scan tries it first, so such a file no longer lands on a book with the author's name in its title (Tom Clancy Enemy Contact, Agatha Christie: An Autobiography), and it now covers audiobooks whose tags name only the folder's author.
  • Imports no longer tie authors to a fallback provider while your primary is down (#2332): a CSV, Readarr or Goodreads import that ran while your primary metadata provider was timing out could link an author to whichever other provider answered, and CSV and Readarr imports also marked every author as OpenLibrary regardless. Once the primary was back, adding the same author made a second copy. Those authors are now reported with the reason instead (as a failure in CSV and Readarr imports, as unresolved in the Goodreads preview), so you can run the import again once the provider responds, and imported authors record the provider their record actually came from. A row that found nothing now says either that the primary did not answer or which providers had no match, instead of "no OpenLibrary match" or a hint to fix the ISBN. CSV and Readarr imports also stop creating an author with no provider id from a Google Books name match, and no longer fall back to a different author who does have one (only Google Books knowing "Andy Weir" no longer imports OpenLibrary's "Andrew Weir"), and authors relinked from a Calibre import record their real provider rather than always OpenLibrary.
  • Refresh metadata fetches current data (#2601): refreshing an author from their page now asks the metadata providers for their current bio, photo and book list, plus their Audible catalogue when the default media type is audiobook or both, instead of reusing a copy Bindery cached up to 24 hours earlier. The page waits for the refresh to finish and then shows the result, so a change made upstream shows up on the first click. If a provider fails, OpenLibrary answers only in part, or any provider returns an empty book list, Bindery keeps the copy it already had rather than replacing it with a shorter one. Clicking Refresh again while a refresh is still running waits for it instead of starting another, and if that running refresh was a scheduled or bulk one reading the cache, the page waits for it and then runs its own. Refresh all metadata, the bulk Refresh action and the scheduled refresh still use the cache so a whole library refresh stays gentle on the providers. Thanks magrhino for tracing it.

Security

  • The last library scan summary is now admin only (#2361): the scan results panel lists your library folders and where each unmatched file sits on disk, so it now follows the same rule as storage paths and path settings and is only served to admins. Admins see no change, and other accounts never saw the panel in the first place.

Don't miss a new bindery release

NewReleases is sending notifications on new releases.