Fixed! Claude wrote this summary:
Thanks for the report! I found and fixed the issue.
The Problem:
Story titles with accented characters (like à, é) were getting corrupted during feed fetching, showing up as à or é instead of the correct characters. HTML entities like ’ (smart apostrophes) were being decoded correctly, but regular UTF-8 characters were getting double-encoded.Root Cause:
A bug in feedparser 6.0.12 where it does a case-sensitive lookup for the content-type header. We were passing headers with Content-Type (title case), but feedparser only recognizes content-type (lowercase). When it couldn’t find the header, it defaulted to iso-8859-1 encoding instead of respecting the feed’s UTF-8 declaration.The Fix:
Normalize all HTTP header keys to lowercase before passing them to feedparser. This ensures feedparser correctly detects the UTF-8 charset from the Content-Type header.I’ve also manually corrected the affected story. New stories from this feed will now display correctly.