From 591ed51f3baceb9a8e2f598f527c380ac87013fe Mon Sep 17 00:00:00 2001 From: Victor239 <12621257+Victor239@users.noreply.github.com> Date: Mon, 23 Mar 2026 14:01:57 +0000 Subject: [PATCH] refactor: Fall back to dateCreated for dateUpdated, not datePublished MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a site does not provide dateUpdated (when the latest chapter was uploaded), the previous fallback used datePublished (the date the story was first posted) before dateCreated (datePackaged). For a long-running story, datePublished could be years in the past and is a poor proxy for when the story was last updated. dateCreated (when FanFicFare packaged the epub) is a much better fallback — for a user who regularly fetches new chapters, it much more closely approximates when new content was last available. --- fanficfare/adapters/base_adapter.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/fanficfare/adapters/base_adapter.py b/fanficfare/adapters/base_adapter.py index 51647b25..515086ef 100644 --- a/fanficfare/adapters/base_adapter.py +++ b/fanficfare/adapters/base_adapter.py @@ -393,10 +393,7 @@ try to download.

self.story.clear_processed_metadata_cache() if not self.story.getMetadataRaw('dateUpdated'): - if self.story.getMetadataRaw('datePublished'): - self.story.setMetadata('dateUpdated',self.story.getMetadataRaw('datePublished')) - else: - self.story.setMetadata('dateUpdated',self.story.getMetadataRaw('dateCreated')) + self.story.setMetadata('dateUpdated',self.story.getMetadataRaw('dateCreated')) self.metadataDone = True # normalize chapter urls. @@ -417,10 +414,7 @@ try to download.

self.story.load_html_metadata(metahtml) self.metadataDone = True if not self.story.getMetadataRaw('dateUpdated'): - if self.story.getMetadataRaw('datePublished'): - self.story.setMetadata('dateUpdated',self.story.getMetadataRaw('datePublished')) - else: - self.story.setMetadata('dateUpdated',self.story.getMetadataRaw('dateCreated')) + self.story.setMetadata('dateUpdated',self.story.getMetadataRaw('dateCreated')) def hookForUpdates(self,chaptercount): "Usually not needed."