You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
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.