From 010ac71a845e3e5d6597477f376bd26b325f3317 Mon Sep 17 00:00:00 2001 From: AntsyLich <59261191+AntsyLich@users.noreply.github.com> Date: Mon, 12 Oct 2026 13:01:01 +0600 Subject: [PATCH] Revert "Always update uninitialized library entries (#3179)" This reverts commit 8c0419657bb6ca2651b170404f6e17f883c8a825. Closes #4081 --- CHANGELOG.md | 1 + .../eu/kanade/tachiyomi/data/library/LibraryUpdateWorker.kt | 5 +---- .../mihon/domain/source/interactor/UpdateMangaFromRemote.kt | 5 ++--- 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c918cf4e5..10240ae90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -45,6 +45,7 @@ The format is a modified version of [Keep a Changelog](https://keepachangelog.co - Fixed installing or updating an extension sometimes cancelling the install of another one ([@AntsyLich](https://github.com/AntsyLich)) - Fixed updating from v0.20.x taking up to hours on libraries with many duplicate entries ([@AntsyLich](https://github.com/AntsyLich)) - Fixed the app staying on the updating screen for good when updating its data failed, it now shows what went wrong, and updating failing on leftover data of deleted entries ([@AntsyLich](https://github.com/AntsyLich)) +- Fixed library updates ignoring the smart update restrictions for entries whose details were never fetched ([@AntsyLich](https://github.com/AntsyLich)) ## [v0.21.0] - 2026-10-12 ### Added diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateWorker.kt b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateWorker.kt index 8e2d9f4d6..c96e06639 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateWorker.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateWorker.kt @@ -192,9 +192,6 @@ class LibraryUpdateWorker(private val context: Context, workerParams: WorkerPara mangaToUpdate = listToUpdate .filter { when { - // Entries added without opening them have no details yet - !it.manga.initialized -> true - it.manga.updateStrategy == UpdateStrategy.ONLY_FETCH_ONCE && it.totalChapters > 0L -> { skippedUpdates.add( it.manga to context.stringResource(MR.strings.skipped_reason_not_always_update), @@ -357,7 +354,7 @@ class LibraryUpdateWorker(private val context: Context, workerParams: WorkerPara val update = updateMangaFromRemote( source = source, manga = manga, - fetchDetails = !manga.initialized || libraryPreferences.autoUpdateMetadata.get(), + fetchDetails = libraryPreferences.autoUpdateMetadata.get(), fetchChapters = true, fetchWindow = fetchWindow, ) diff --git a/app/src/main/java/mihon/domain/source/interactor/UpdateMangaFromRemote.kt b/app/src/main/java/mihon/domain/source/interactor/UpdateMangaFromRemote.kt index d7e6d1660..75f35b17d 100644 --- a/app/src/main/java/mihon/domain/source/interactor/UpdateMangaFromRemote.kt +++ b/app/src/main/java/mihon/domain/source/interactor/UpdateMangaFromRemote.kt @@ -69,7 +69,7 @@ class UpdateMangaFromRemote( fetchDetails = fetchDetails, fetchChapters = fetchChapters, ) - awaitUpdateFromSource(manga, update.manga, fetchDetails, manualFetch) + awaitUpdateFromSource(manga, update.manga, manualFetch) val newChapters = syncChaptersWithSource.await( rawSourceChapters = update.chapters, manga = manga, @@ -89,7 +89,6 @@ class UpdateMangaFromRemote( private suspend fun awaitUpdateFromSource( localManga: Manga, remoteManga: SManga, - fetchDetails: Boolean, manualFetch: Boolean, ): Boolean { val remoteTitle = try { @@ -135,7 +134,7 @@ class UpdateMangaFromRemote( thumbnailUrl = thumbnailUrl, status = remoteManga.status.toLong(), updateStrategy = remoteManga.update_strategy, - initialized = localManga.initialized || fetchDetails, + initialized = true, memo = remoteManga.memo, ), )