Ticket #95 (accepted enhancement)
RSS action: Use new 3rdparty RSS parser
| Reported by: | dartar | Owned by: | DarTar |
|---|---|---|---|
| Priority: | normal | Milestone: | blue-sky |
| Component: | 3rdparty | Version: | 1.1.6.1 |
| Severity: | normal | Keywords: | syndication |
| Cc: |
Description (last modified by DarTar) (diff)
Due to the several limitations of OnyxRSS, it has been suggested that we replace it with a better RSS parser, like Magpie RSS: http://magpierss.sourceforge.net/
Status
User-contributed code to be tested
Refs
http://wikkawiki.org/NewRSSAction http://wikkawiki.org/JwRssTest
Related issues migrated from WikkaBugs
RSS feed action hangs or crashes browser if feed does not exist
(reported by velkr0 on #wikka, analysis and writeup by me -- JavaWoman)
Problem: When the rss action is included in a page with a feed URL that happens not to exist (or not exist any more), the page "hangs"; once in this state, editing the page also isn't possible: the hang continues until the browser times out or is closed.
The obvious cause is that neither the RSS action nor the underlying onyx-rss class checks for existence of the resource the feed URL refers to. The problem is already hard to detect when you are first including a feed in a page and maybe make a typo in the feed URL. But if your Wikka provides a page with one or more feeds, and a feed suddenly disappears (or is down momentarily) the result will be very annoying for your visitors.
Solution: Either the onyx-rss class or the rss action should check for the availability of the feed (for instance with a HEAD request) before actually trying to retrieve it. Since the class provides caching, the best option would be to handle it in the class (by subclassing the necessary method(s)). If a version of the feed still exists in the cache that version could be displayed (probably this happens automatically anyway), otherwise an error message should be generated instead of the feed output. --JavaWoman
Another problem with Onyx-RSS was just reported by |Sam| on #wikka: in spite of cacheing it seems quite slow, taking something like 2.5 seconds for rendering after retrieving a feed (compared to a normal page rendering time of 0.06 seconds). We should look at the efficiency (or not) of this class - maybe it's time to move to another one that's being actively maintained. --JavaWoman