Skip to content

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 03:17
· 47 commits to main since this release
b42021f

Added

  • Add TEXT_CHECK=false to skip reading text on art, for machines with little memory such as a Raspberry Pi.
  • Support Emby 4.10 as the media server, with EMBY_URL and EMBY_API_KEY and its built-in webhooks.
  • Refuse to start with a data folder that belongs to another media server.
  • Give collections that are not a streaming service Apple TV's category tile: the art in a genre palette with the name.
  • Draw Persian, Arabic, Hebrew, Hindi, Thai, Chinese, Japanese and Korean names with matching fonts and shaping.
  • Add a service mark for ADN (Anime Digital Network).
  • Use TMDB network logos as streaming marks for services without a built-in mark, such as Exxen, SkyShowtime, U-NEXT, JioHotstar, BINGE, discovery+ and Shudder.
  • Add NOTIFY_EVENTS to also send alerts for new posters, with the image, and a daily summary.
  • Send an alert when TMDB, the media server, Maintainerr, scheduled runs or service collections work again.
  • Print the settings in use at start, and log each name in LIBRARIES the server does not have.
  • Document what Posteryard changes on the server and how to undo each change.
  • Add the why TITLE command to list a poster's art candidates and why each was used or not.
  • Add the health command, which the Docker health check now runs.
  • Document starting Posteryard with docker run instead of Compose.

Changed

  • Leave the black fade off posters whose white logo, labels and badges already read on the art.
  • Shorten the README to setup and settings, and move commands, server notes, alerts, troubleshooting and design details into pages in docs/.
  • Read series art for season posters only when a season needs it, and stop at the first usable image. The first season poster of a show no longer reads up to 12 images it does not use.
  • Stop the text reader after 10 idle minutes and drop downloaded images while idle, to use less memory. A read that hangs stops the text reader at once instead of holding up the worker.
  • Write the log as logfmt lines with the title and the art source, one line per image, and end each full pass with a summary.
  • Keep the 6-hour alert limit across restarts, and try an undelivered alert again after 10 minutes.
  • Use TMDB's best-voted textless poster before Apple TV art; with APPLE_ART, Apple TV art now fills in before backdrops.
  • Leave the unused sympy library out of the image, about 31 MB smaller.
  • Process leaving titles again only when their Maintainerr date changes, and all of them once a day, instead of every sweep.
  • Skip titles the server has not matched to TMDB, IMDb or TVDB with one log line, instead of failing, retrying and counting them in the daily summary.

Fixed

  • Queue only the titles in ONLY_RATING_KEYS in full passes and sweeps, instead of fetching every title to skip it.
  • Measure the fade and logo ink again when the poster design changes, instead of reusing values from the old design. Every poster is measured once after the update.
  • Delete cached art choices and measurements from older versions at start.
  • Stop rejecting clean art when OCR reads a large shape, such as a window or an emblem, as one character. Art is checked again once after the update.
  • Turn off onnxruntime's telemetry, which looked up Microsoft's telemetry server from the container, and its warning in the log.
  • Hide image decoder messages from the debug log.
  • Find Jellyfin and Emby titles by name and year, such as why "Dune 2021".
  • Stop within a second on docker stop, instead of after up to 30 seconds, which Docker ended with a kill after 10.
  • Upload an image again when a stop or crash cut its upload off, instead of treating the poster as changed by hand, and give it back with restore --all.
  • Ignore Plex webhooks with an invalid rating key, including a Jellyfin-style ID, instead of retrying them forever.
  • Wait 2 minutes after a failed scheduled run, as the log says, instead of 30 seconds.
  • Name the media server in the --season error, instead of always Plex.
  • Keep a mistyped NOTIFY_URLS address, and the secret in it, out of the log.
  • Match Jellyfin library folders on Windows servers, so their titles are no longer skipped.
  • Give seasons of a Jellyfin or Emby show without season folders their show's library, so they are no longer skipped.
  • Draw in dark ink only when the logo, the badges and the label each read where they sit.
  • Leave out automatic streaming marks that turn into a solid shape or specks in one colour, such as Sony LIV, without showing another service's mark instead.
  • Keep white letters of a coloured logo, such as the "HI" of HIDIVE, in its one-colour mark.
  • Use the Sky mark for Sky X.
  • Draw the streaming mark black or white without a shadow, by contrast where the mark sits.
  • Keep one logo design per show: draw a one-colour logo dark on light art instead of switching to another logo.
  • Choose a dark logo only when it reads where the logo sits, not across the whole bottom of the art.
  • Treat crops and redrawn versions of a picture as the same picture when giving seasons their art.
  • Keep art next working when art it skipped earlier has since been deleted from TMDB or Apple TV.
  • Give collections that only start with a service's name, such as Max Payne Collection, a category tile instead of that service's channel tile.
  • Select the right image when a render is identical to one uploaded before, so an expired label no longer stays on the poster.
  • Give Sky service collections the channel tile instead of the category tile.
  • Keep a show the server has not matched in the service collections it is in, instead of removing it or deleting a collection left with fewer than 3 shows.
  • Count Maintainerr's leaving days in the container's time zone, so the label is no longer one day off.
  • Skip only one image when removing the posteryard-next label fails and is retried.
  • Remove a posteryard-next label typed with capital letters.
  • Leave the posteryard-next label and the art unchanged while DRY_RUN is on.
  • Run the Docker health check on LISTEN_PORT instead of port 8000.
  • Retry and alert on unexpected errors like other failures.
  • Keep the record of an uploaded episode thumbnail while DRY_RUN is on, so restore --all can still give it back.
  • Keep the record of every uploaded image while DRY_RUN is on, so going live again leaves posters changed by hand alone and does not upload unchanged images again.