Cache and Conditional GET
0.5.5 core support Cache API so that plugins can use. The Cache directory and driver (implementation) is configured automatically by default and plugin can access them via $plugin->cache without any setup.
We made a fix to existent plugins like Aggregator::Simple, CustomFeed::Mixi and Subscription::Bloglines, so that loading heavy URL, or URL that doesn't get updated more than once a day would be cached, which makes aggregation much faster. An update to Aggregator::Simple now requires Ben Trott's URI::Fetch module, which support conditional GET (If-Modified-Since and If-None-Match). Conditional GET is sometimes called smart GET too, and is quite essential to write a bot that behaves nicelyl.
Publish Feed, Atom and everything
Publish::Feed creates XML feeds (RSS or Atom), using Ben's XML::Feed and my XML::Atom underneath. It might be useful when combined with Plagger core SmartFeed functionality, so you can republish (splice) an RSS feed containing entries tagged with "Plagger" from del.icio.us, technorati , flickr and others.
Publish::HatenaBookmark publishes entries to a social bookmarking Hatena Bookmark (Japanese del.icio.us), using its Atom API. It's handy when you wanna sync your del.icio.us feed to Hatena for example. Now that you have Publish::Delicious as well, it's easy to do that other way round.
Publish::Pipe is a super generic publish plugin, which prints the feed updates to UNIX pipe. Piping to lpr prints the feed, piping to /usr/bin/say will speak the feed, etc. when you think of a nice hack using Pipe plugin, drop us a line and that would be appreciated.
Plagger is designed on top of UNIX philosophy and Publish::Pipe fits very well with it. The author of the Pipe plugin also is working on CustomFeed::Pipe and I'm sure it'll be incorpolated in Plagger core sooner or later.
Filter my feeds!
This release include lots of filters. Filter::HatenaDiaryKeywordLink filters entry body using Hatena's Diary Keyword link API. It creates an entry like Wikipedia's one, with all the keywords highlighted.
Filter::ResolveRelativeLink fixes relative link contained in feed body, Filter::RSSTimeZoneString fixes bad RFC 822 date format in RSS 2.0 feeds (which I wrote to handle bad Kwiki-RecentChangesRss output), Filter::FloatingDateTime "fixes" date time string without timezone information, like dc:date without TZ offset. Those three filters are useful to make Plagger behave as a "liberal" feed parser.
Mail is feed!
CustomFeed::POP3 fetches email from your POP3 server and create feed based on the mail. Wow, Plagger is now not only RSS/Atom, but does email aggregation as well! Adding enclosure support based on Email attachement might be very interesting and is planned, of course.
If you're interested, #plagger on irc.freenode.net and subscribe to our Mailing List.