<feed xmlns='http://www.w3.org/2005/Atom'>
<title>jellyfin/Emby.Server.Implementations/ScheduledTasks, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.lodewillems.com/jellyfin/atom?h=master</id>
<link rel='self' href='https://git.lodewillems.com/jellyfin/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/'/>
<updated>2026-07-10T06:46:27Z</updated>
<entry>
<title>Fix potential garbled text in FFmpeg logs on Windows</title>
<updated>2026-07-10T06:46:27Z</updated>
<author>
<name>nyanmisaka</name>
<email>nst799610810@gmail.com</email>
</author>
<published>2026-07-10T06:46:27Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=631a314d24bd2c7e1b3e0b81aa65437586794ccd'/>
<id>urn:sha1:631a314d24bd2c7e1b3e0b81aa65437586794ccd</id>
<content type='text'>
Explicitly set StandardErrorEncoding and StandardOutputEncoding to
Encoding.UTF8 when invoking the FFmpeg subprocess.

This prevents log encoding issues and character corruption on Windows
environments that default to non-UTF8 ANSI code pages.

This fixes garbled metadata and font names in the FFmpeg logs.

Signed-off-by: nyanmisaka &lt;nst799610810@gmail.com&gt;
</content>
</entry>
<entry>
<title>Use IItemTypeLookup and QueryPartitionHelpers</title>
<updated>2026-06-29T01:44:47Z</updated>
<author>
<name>John Corser</name>
<email>johnpc@umich.edu</email>
</author>
<published>2026-05-17T14:28:40Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=ef6f342a54c9c6c8713b650c4ad60005af600ade'/>
<id>urn:sha1:ef6f342a54c9c6c8713b650c4ad60005af600ade</id>
<content type='text'>
Address review feedback:
- Replace typeof(Person).FullName with IItemTypeLookup.BaseItemKindNames
- Replace foreach+ToListAsync with PartitionEagerAsync for batched
  iteration with built-in progress reporting
- Check HasImage/HasOverview on the loaded domain Person object
  instead of projecting from the DB query
</content>
</entry>
<entry>
<title>Project hasImage/hasOverview from DB query</title>
<updated>2026-06-29T01:44:46Z</updated>
<author>
<name>John Corser</name>
<email>johnpc@umich.edu</email>
</author>
<published>2026-05-09T18:38:22Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=a888257c8299026fb73c4c90160c71cdacc0ee37'/>
<id>urn:sha1:a888257c8299026fb73c4c90160c71cdacc0ee37</id>
<content type='text'>
Instead of re-checking image/overview on the domain object after loading,
project the values directly from the database query as part of the
anonymous type selection. This avoids redundant checks since the DB
already has this information.
</content>
</entry>
<entry>
<title>Move people filtering to database query</title>
<updated>2026-06-29T01:44:46Z</updated>
<author>
<name>John Corser</name>
<email>johnpc@umich.edu</email>
</author>
<published>2026-05-09T18:11:16Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=d55f80842391e1b69db927ae8938c0455ddb5192'/>
<id>urn:sha1:d55f80842391e1b69db927ae8938c0455ddb5192</id>
<content type='text'>
Instead of loading all people names and checking each one in memory,
query the database directly for Person items that need refresh:
- Missing primary image OR missing overview
- Not refreshed within the last 30 days

This reduces the operation from N+1 queries (1 for all names + 1 per
person to load) to a single filtered query returning only the IDs that
need work.
</content>
</entry>
<entry>
<title>Fix actor images not displayed until clicked</title>
<updated>2026-06-29T01:44:46Z</updated>
<author>
<name>John Corser</name>
<email>johnpc@umich.edu</email>
</author>
<published>2026-04-19T17:33:29Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=dc92e3b0e489b7d6efe9ba950cbf124b84a3a4ce'/>
<id>urn:sha1:dc92e3b0e489b7d6efe9ba950cbf124b84a3a4ce</id>
<content type='text'>
Move image refresh logic from PeopleValidator (which runs during library
scans) into PeopleValidationTask (the "Refresh People" scheduled task).
This keeps library scans fast while ensuring the scheduled task fetches
missing images from remote providers like TMDB.

People missing a Primary image or overview get refreshed with
MetadataRefreshMode.Default instead of ValidationOnly, with a 30-day
cooldown to avoid hammering providers for people they have no data for.

Fixes jellyfin#8103
</content>
</entry>
<entry>
<title>Merge branch 'master' into clean-orphaned-people</title>
<updated>2026-06-27T14:02:33Z</updated>
<author>
<name>Cody Robibero</name>
<email>cody@robibe.ro</email>
</author>
<published>2026-06-27T14:02:33Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=75d71cb73cb0b1e64b893b72afec1d59963e7e56'/>
<id>urn:sha1:75d71cb73cb0b1e64b893b72afec1d59963e7e56</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Skip backups whens can is running</title>
<updated>2026-06-26T05:34:19Z</updated>
<author>
<name>Shadowghost</name>
<email>Ghost_of_Stone@web.de</email>
</author>
<published>2026-06-26T05:34:19Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=fa07a3abe89b6e0eb96a9f8d8a3eb57dea20ca2a'/>
<id>urn:sha1:fa07a3abe89b6e0eb96a9f8d8a3eb57dea20ca2a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't run heavy DB tasks while scan is running</title>
<updated>2026-06-25T17:32:36Z</updated>
<author>
<name>Shadowghost</name>
<email>Ghost_of_Stone@web.de</email>
</author>
<published>2026-06-25T17:32:36Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=1947296edd449e9a7244d18716fcb8ff0e9f0dc8'/>
<id>urn:sha1:1947296edd449e9a7244d18716fcb8ff0e9f0dc8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reorder ValidatePeople</title>
<updated>2026-06-20T03:10:32Z</updated>
<author>
<name>theguymadmax</name>
<email>theguymadmax@proton.me</email>
</author>
<published>2026-06-20T03:10:32Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=310a47c1d4f241346cc4cda4e025758bf1e6247c'/>
<id>urn:sha1:310a47c1d4f241346cc4cda4e025758bf1e6247c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove orphaned people</title>
<updated>2026-06-19T17:28:22Z</updated>
<author>
<name>theguymadmax</name>
<email>theguymadmax@proton.me</email>
</author>
<published>2026-06-19T15:24:27Z</published>
<link rel='alternate' type='text/html' href='https://git.lodewillems.com/jellyfin/commit/?id=24886d48494ab579c860654a908dbbe7fa5b8525'/>
<id>urn:sha1:24886d48494ab579c860654a908dbbe7fa5b8525</id>
<content type='text'>
</content>
</entry>
</feed>
