ikiwiki (3.20130711) unstable; urgency=low
[ikiwiki.git] / doc / bugs / __38__uuml__59___in_markup_makes_ikiwiki_not_un-escape_HTML_at_all.mdwn
1 I'm experimenting with using Ikiwiki as a feed aggregator.
2
3 The Planet Ubuntu RSS 2.0 feed (<http://planet.ubuntu.com/rss20.xml>) as of today
4 has someone whose name contains the character u-with-umlaut. In HTML 4.0, this is
5 specified as the character entity uuml. Ikiwiki 2.47 running on Debian etch does
6 not seem to understand that entity, and decides not to un-escape any markup in
7 the feed. This makes the feed hard to read.
8
9 The following is the test input:
10
11     <rss version="2.0">
12     <channel>
13             <title>testfeed</title>
14             <link>http://example.com/</link>
15             <language>en</language>
16             <description>example</description>
17     <item>
18             <title>&uuml;</title>
19             <guid>http://example.com</guid>
20             <link>http://example.com</link>
21             <description>foo</description>
22             <pubDate>Tue, 27 May 2008 22:42:42 +0000</pubDate>
23     </item>
24     </channel>
25     </rss>
26
27 When I feed this to ikiwiki, it complains: 
28 "processed ok at 2008-05-29 09:44:14 (invalid UTF-8 stripped from feed) (feed entities escaped"
29
30 Note also that the test input contains only pure ASCII, no UTF-8 at all.
31
32 If I remove the ampersand in the title, ikiwiki has no problem. However, the entity is
33 valid HTML, so it would be good for ikiwiki to understand it. At the minimum, stripping
34 the offending entity but un-escaping the rest seems like a reasonable thing to do,
35 unless that has security implications.
36
37 > I tested on unstable, and ikiwiki handled that sample rss fine,
38 > generating a `ΓΌ.html`. --[[Joey]]
39
40 >> I confirm that it works with ikiwiki 2.50, at least partially. The HTML output is
41 >> OK, but the aggregate plugin still reports this:
42 >>
43 >>    processed ok at 2008-07-01 21:24:29 (invalid UTF-8 stripped from feed) (feed entities escaped)
44 >>
45 >> I hope that's just a minor blemish. --liw
46
47 >>> Sounds like this is [[done]] --[[Joey]]