brightdigit/SyndiKit

dataCorrupted for some feeds

Closed this issue · 2 comments

When I try to parse https://feeds.npr.org/344098539/podcast.xml, I get this error. Tried with another RSS parser, and it was able to parse it, so I'm not sure what's wrong exactly.

dataCorrupted(Swift.DecodingError.Context(codingPath: [], debugDescription: "Failed to decode data with several decoders.", underlyingError: Optional((extension in SyndiKit):Swift.DecodingError.Dictionary(errors: ["RSS": Swift.DecodingError.keyNotFound(CodingKeys(stringValue: "link", intValue: nil), Swift.DecodingError.Context(codingPath: [CodingKeys(stringValue: "channel", intValue: nil), CodingKeys(stringValue: "item", intValue: nil), XMLKey(stringValue: "193", intValue: 193), XMLKey(stringValue: "193", intValue: 193), CodingKeys(stringValue: "link", intValue: nil)], debugDescription: "No attribute or element found for key CodingKeys(stringValue: \"link\", intValue: nil) (\"link\").", underlyingError: nil)), "Atom": Swift.DecodingError.keyNotFound(CodingKeys(stringValue: "id", intValue: nil), Swift.DecodingError.Context(codingPath: [CodingKeys(stringValue: "id", intValue: nil)], debugDescription: "No attribute or element found for key CodingKeys(stringValue: \"id\", intValue: nil) (\"id\").", underlyingError: nil))]))))

It seems Wait Wait Don't Tell Me just stops adding a <link> element to each item at 193.

TIL That's Okay

I already have a fix in the new branch rss-item-link-fix which you can try. I'll be merging this into 0.4.0 and incorporating updates to the workflow to test with Xcode 15.1

Fixed in #72