Expand description
feed-rs → crate::model conversion. Owner: parser agent.
Frozen public interface — crate::core depends on these exact signatures.
§Requirements
- Parse
bodywithfeed_rs::parser::parse(auto-detects RSS/Atom/JSON Feed). Be lenient: malformed feeds should yieldRssError::Parse, never a panic. - Normalize all dates to RFC-3339 UTC strings (
feed-rsyieldschrono::DateTime). - Resolve relative item links to absolute URLs against
feed_url(use theurlcrate). - For each item, compute the stable id via
crate::identity::item_idand the content viacrate::content, honoringparams.content_format. - Apply
params.since(drop older items) andparams.limit(keep newest N) — sort bypublished(fallbackupdated) descending before limiting. - Populate
title,site_url(the feed’s<link>/homepage), andupdated.
Structs§
- Parsed
Feed - Parsed feed metadata plus its items, ready to drop into a
crate::model::FeedResult.
Functions§
- parse_
feed - Parse raw feed bytes into a
ParsedFeed.feed_urlis the (post-redirect) URL the bytes came from, used both for relative-link resolution and as the id namespace.