root/trunk/plagger/Changes

Revision 1810 (checked in by miyagawa, 14 years ago)

packaging 0.7.15

Line 
1 The latest, HTML version of this document is always available at http://plagger.org/trac.cgi/wiki/PlaggerChangeLog
2
3 == 0.7.15 (2006/11/01) ==
4
5 === Core ===
6
7  * bump up Encode::Detect dependency so it's easier to install
8  
9 === New Plugins ===
10
11  * Summary::GetSen: Use GetSen web service to get summary
12
13 === Plugins Updates ===
14
15  * CustomFeed::YouTube: Update queries unencoded in YAML (mizzy)
16  * Summary::Simple: Get the first sentence if it's plain text
17  * Filter::StripRSSAd: support pheedo variant ads, RSScache.com
18  * Publish::Gmail: now allows non-UTF8 encoding by setting 'encoding'
19  * CustomFeed::Mixi: Updated regular expression to keep up with the site updates
20  * Publish::Maildir: fixed enclosure bugs
21  * Filter::Markdown: fixed configuration pass bug
22  * Filter::GuessTimeZoneByDomain: bump up DateTime::TimeZone requirement
23  * Publish::Gmail: don't die if enclosure URL is not found and thus not saved in the local
24  * CustomFeed::Script: added SSL expire example code
25  * Subscriptoin::Planet: Update Google Blog search to use Japanese version
26  * Filter::EntryFullText: show debug message if YAML mandatory key is not found
27  * Publish::Feed: fixed a critical bug that the content is always b64 encoded
28
29 == 0.7.14 (2006/10/17) ==
30
31 === Core ===
32
33  * include YAML::Loader in inc
34  * Introduced new spell typo checker Test::Spelling
35  * Merged hackathon-summary for a pluggable summary generation
36  * Added Plagger::Text object for title, author, entry, summary and body
37  * Better html2text function using HTML::TreeBuilder and (optional) HTML::FormatText
38  * Plagger::Date parse* method now doesn't set Timezones by default
39  * Move namespecific parsing logic into Namespace::* plugins
40
41 === New Plugins ===
42  
43  * Summary::Auto: Auto-extract summaries
44  * Summary::Simple: Default summary extractor using regular expression
45  * Summary::English: Wrapper for Lingua::EN::Summarize
46  * Summary::HatenaBookmark: Extract summary using Hatena Bookmark
47  * Summary::TextOriginal: Wrapper for Text::Original
48  * Summary::TrackbackRDF: Extract summary from Trackback RDF data
49  * Filter::GuessTimeZoneByDomain: guess timezones of entry using URL domains
50  * Filter::ForceTimeZone: force timezone regardless of they're UTC/Olson/Floating
51  * Namespace::HatenaFotolife: Hatena fotolife module handler
52  * Namespace::ApplePhotocast: Apple Photocast module handler
53  * Namespace::MediaRSS: Media RSS module handler
54  * Bundle::Defaults: Default plugins loader
55  * Filter::Kansai: Converts Japanese text body to Kansai Dialect
56
57 === Plugins Updates ===
58
59  * Notify::UpdatePing: support weblogUpdates.extendedPing #419
60  * Notify::OpenBrowser: support FreeBSD
61  * Filter::EntryFullText: fixed bad regular expressons in stage6
62  * CustomFeed::Script: load YAML output as Unicode
63  * Publish::iCal: better Timezone handling. requires DateTime::Format::ICal
64  * Filter::FloatingDateTime: use config 'timezone' if set
65  * CustomFeed::Mixi: support my diary and calendar (otsune)
66  * Filter::HatenaBookmarkUsersCount: Iterate links so that it support 50+ URLs
67  *
68
69
70 == 0.7.13 (2006/10/09) ==
71
72 === Core ===
73
74  * Example of Kwalify schema file in examples/schema.yaml
75  * Dumpes template path in Plagger::Template for debug-aid
76
77 === New Plugins ===
78
79  * Filter::LivedoorClipUsersCount: get livedoor Clip users count via API (otsune)
80  * CustomFeed::Script: Call script via shell to get the feed as RSS/Atom or YAML (miyagawa)
81  * Publish::iCal: Simple Feed to iCal generator (miyagawa, kentaro)
82  * Notify::OpenBrowser: Open updated entries in a browser, cross-platform. (kazeburo, miyagawa, youpy)
83
84 === Plugins Updates ===
85
86  * Publish::CHTML: workaround for symlinks in Win32 (charsbar)
87  * Publish::2chdat: Fixed typo and added escape for <> in the content
88  * CustomFeed::AmazonAssociateReportJP: Fixed follow_link (otsune)
89  * Notify::UpdatePing: Wrap ping sending code to trap errors (otsune)
90  * Publish::MT: fixed POD
91  * Publish::Palmdoc: Fixed UTF-8 error on feed title (cheebow)
92  * Subscription::PingServer: Fixed unused dependency
93  * Filter::FindEnclosures: Added stage6 and dailymotion assets (taro)
94  * CustomFeed::Frepa: Updated regular expression to deal with site updates (nipotan)
95  * Publish::PDF: Added 'html.tt' template which was missing
96  * Publish::PDF: now accepts 'filename' as a parameter
97
98 == 0.7.12 (2006/09/15) ==
99
100 === Core ===
101
102  * [Backward Incompatible] Updated $feed->id implementation to return unique ID
103  * Requires XML::RSS::LibXML 0.23
104  * allow '-' as a config name to read from STDIN
105  
106 === New Plugins ===
107
108  * Search::Grep: Search engine using flat file and grep (ko)
109  * Filter::UnicodeNormalize: Normalize entry body using Unicode::Normalize (otsune)
110  
111 === Plugins Updates ===
112
113  * Misc plugins updates to use Plagger::Util filename_for
114  * Subscription::LivedoorReader: modified_on can be null
115  * BloglinesContentNormalize: hack space before empty elements
116  * Rule::URLBL: fixed bug with non-HTTP URLs
117  * Filter::StripRSSAd: Update for Bloglines
118  * CustomFeed::Simple: Support XPath based link extraction
119  * Publish::CHTML: use id_safe for safe feed ID generation
120  * Filter::EntryFullText: support XPath with custom_feed_follow_xpath
121  * Filter::TruePermalink: Don't die if it detects infinite reditrection loop
122
123 == 0.7.11 (2006/08/30) ==
124
125 === Core ===
126
127  * Makefile.PL now prioritizes "default" plugins first, then otherwise alphabetically sorted
128  * testcritic test is now not in distribution since it's unnecessary and annoys people
129  * Updated POD document of some core modules (Mark Fowler)
130  * $ua->mirror(URI, $path) now works
131  * t::TestPlagger: allow strings rather than regexp in file_contains
132  * tools/plugin-start: optionally call svn/svk if it's detected
133
134 === New Plugins ===
135
136  * Notify::Command: generic command caller plugin for notification (miyagawa)
137
138 === Plugins Updates ===
139
140  * Publish::Feed: fixed RSS 2.0 webMaster validity problem
141  * Search::Rast: moved some code to plugin.init. updated document
142  * Subscription::XPath: Accept non-absolute link as well
143  * Filter::StripRSSAd: some spacing fix for bloglines nasty content updates
144  * Filter::BloglinesContentNormalize: strip &#13; added by Bloglines
145  
146 == 0.7.10 (2006/08/29) ==
147
148 === Core ===
149
150  * Added Test::Perl::Critic test
151  * Fixed 2 args open to 3 args to follow PBP
152  * Added video/mp4 MIME type to mime_type_of
153  * Fixed bug in mime_type_of in extracting mp3 from "foo.bar.mp3"
154  * Refactored enclosure detection code to Util. Added ogg to known list by hardcoding
155  * bumped up XML::Atom and XML::Liberal requirement
156  * tools/chimp-smoker: fixed bug in get_branch
157  * Encode::Detect is no more recommended module by default
158  * Fixed ConfigLoader bug that it doesn't do rewrite_config correctly (by charsbar)
159  
160 === Plugins Updates ===
161
162  * Filter::TruePermalink: refactored assets loading code. Store redirection result even if it's empty
163  * Fitler::TruePermalink: Don't handle HTTP response body when it checks redirection, to skip huge files like mp3
164  * Filter::EntryFullText: refactored assets loading code.
165  * Fitler::StripRSSAd: refactored assets loading code. Renamed pattern files to .pat
166  * Filter::StripRSSAd: Added slashdot.jp and pheedo.jp handler
167  * Publish::Feed: use permalink to set to entry link
168
169 == 0.7.9 (2006/08/24) ==
170
171 === Core ===
172
173  * Fixed BaseDirURI logic to allow empty dirname on Mac OSX (Yappo)
174  * Added tests to lots of plugins thanks to Testathoners
175  * Added Plagger::Walker util class to serialize feed data
176  * Merged from hackathon-mt branch. Added Plagger->set_context method
177  * Split bootstrap into new() and run() to be used in persisten programs
178  * Added $context->search() stub to get Plagger::Feed object from Search::* backends
179  * Added bin/plagger-search prototype CLI
180  * Added bin/plagger-atom-stream-consumer, very experimental AtomStream consumer
181  * Updated Plagger::Template->new() parameter
182  * assets_path: can now be localized per plugins using config:assets_path
183  * lots of fixes to tests so it can work on Windows
184  * decode config.yaml as UTF-8 automatically before run, unless you specify global:no_decode_utf8=1
185  * chimps-client: create lock dir to avoid double excecution
186  * Split feed parsing logic from Aggregator::Simple to Plagger::FeedParser so plugins can use.
187  * Added $ua->fetch_parse($feed) and $ua->find_parse($url)
188  * Fixed misusage of Term::Encoding (Yappo)
189  * Support entry level image in RSS 0.91 and 2.0
190
191
192 === New Plugins ===
193
194  * Publish::JSON: Serialize feed to JSON (miyagawa)
195  * Publish::Serializer: Dump feed to various format using Data::Serializer (naoya, miyagawa)
196  * Notify::Audio: Play sound files when feed comes. Support playing enclosure files as well (miyagawa, youpy)
197
198 === Plugins Updates ===
199
200  * Publish::Gmail: support APOP authentication in POP before SMTP
201  * Filter::Delicious: use Plagger::UA for caching.
202  * CustomFeed::Yahoo360JP: removed from the distro since no one is using it and it's broken
203  * Widget::Simple: Added lots of widgets (hsbt, jiro, drawnboy)
204  * Filter::EntryFullText: Fixed XHTML numeric entities issue when using XPath (spotted by otsune)
205  * Filter::2chRSSContent: Strip AD entry
206  * CustomFeed::YouTube: fix regexp to get page content (mizzy)
207  * Subscription::OPML: Fixed bug where containers are not correctly loaded because of array reference
208  * Subscriptoin::OPML: Ditch XML::OPML and rewrite OPML parser using XML::LibXML::SAX
209  * Filter::EntryFullText: extract_capture defaults to 'body' (suggested by otsune)
210  * Search::Rast: implemented searcher.search API (Yappo)
211  * Filter::TruePermalink: Fixed ref=rss YAML. Removed redirectors.yaml and instead introduced 'follow_redirect' config (default: 1)
212  * Notify::IRC: use color code scheme to colorize feed title and author (#movabletype)
213
214 == 0.7.8 (2006/08/18) ==
215
216 === Core ===
217
218  * More fixes to Chimps client to deal with dependencies
219  * Win32 fix to $t::TestPlagger::BaseDirURI
220  * Deal with Unicode filenames on Win32
221  * DWIM config filter for t::TestPlagger
222  * Cookies parser warns if cookie file is not found (reported by otsune)
223  * Fix to t/core/cache.t for more time interval (charsbar)
224  * More tests to more plugins!
225  * Set cache base to File::Temp::tempdir in tests
226  * Bump up XML::Feed requirement to 0.12
227  * refactored include/recipes handler to Plagger::ConfigLoader so bin/* scripts can use
228  * Fixed Aggregator::Simple bug to deal with single MediaRSS element in Flickr feeds
229  * Added tools/plugin-start.pl to start a new plugin module
230  * test_requires_network() now can take an argument host to test (youpy)
231  * Update include_deps in Makefile.PL to include YAML dependencies
232
233 === New Plugins ===
234
235  * UserAgent::RequestHeader: Add arbitary HTTP request header based on URL (miyagawa)
236  * Filter::ExtractAuthorName: Extract author name from RFC 2822 address in RSS 2.0 (miyagawa)
237  * Widget::Simple: config based simple Widget creator (miyagawa)
238
239 === Plugin Updates ===
240
241  * Publish::CHTML: Insert generated time in HTML (otsune)
242  * Filter::BreakEntriesToFeeds: Support rules (suggested by otsune)
243  * Search::Estraier: use "estmaster stop". Work with estmaster 1.3.x config files (reported by youpy)
244  * Filter::Delicious: scrape big users count (taro)
245  * Filter::Thumbnail: Add 'set_per_entry' config
246
247 == 0.7.7 (2006/08/10) ==
248
249 === Core ===
250  
251  * Misc test fixes to work on Win32 (reported by charsbar)
252  * use File::HomeDir on Win32 if available rather than $ENV{HOME}
253  * Plagger::Date->set_time_zone now doesn't die even if it can't figure out TZ
254  * require HTML::Parser 3.51 to handle nasty HTML entities in tag attributes (reported by mizzy)
255  * Fix core/cache.t to sleep a little bit (suggested by charsbar)
256  * require XML::Feed 0.11 to handle Atom links without @rel (jwang)
257  * Fix to Publish::Feed to emit valid Atom 1.0
258  * Fix parsing RSS 2.0 category tags with @domain (reported by typester)
259  * Add Plagger::UserAgent hooks
260  * Support Atom 1.0 category extraction (reported by jwang)
261  * SUpport Atom 1.0 entry date handling without published (reported by jwang)
262  
263 === New Plugins ===
264
265  * UserAgent::AuthenRequest: Add per-site credentials to Plagger::UserAgent (typester)
266  * Filter::GuessLanguage: guess language using Text::Language::Guess and other technique (charsbar)
267
268 === Plugins Updates ===
269
270  * Notify::IRC: move to publish.entry so Rule plugin can work per entry (reported by clkao)
271  * EntryFullText: Coule updates to sites (otsune)
272  * Filter::Babelfish: use Filter::GuessLanguage (charsbar)
273  * CustomFeed::YouTube: HTML layout update (yoshiki)
274  * Publish::MT: hack SOAP::Transport::HTTP to use Plagger::UserAgent instead of LWP
275
276 == 0.7.6 (2006/08/07) ==
277
278 === Core ===
279
280  * $context->run_hook can now take callbacks to pass result value
281  * Use title specified in Subscription (Suggested by John Wang) #344
282  * Aggregator::Simple: looks_like_feed handles RSS 1.0 feed more generously
283  * CustomFeed::Simple: fixed UUV warnings
284  * Now plugin dependencies are defined in separate files in deps/
285  * Plagger::Date now supports $date->format( DateTime::Format object )
286  * SmartFeed::All: dedupe_entries now respects feed source domain, older date entry and full content feed. #333
287  * Publish::Feed: Make sure that generated Atom 1.0 and RSS feeds are valid using feedvalidator
288
289 === New Plugins ===
290
291  * Search::KinoSearch: Use KinoSearch as a search backend (miyagawa)
292  * Filter::Babelfish: Use WWW::Babelfish to translate entry content (charsbar)
293  * Notify::NetSend: Use NetSend to notify entries (jiro)
294  * Publish::Excel: Store feed entries body to .xls spreadsheet (jiro)
295
296 === Plugins Updates ===
297
298  * EntryFullText: Fix YouTube handler.
299  * Search::Estraier: Added unit test. Support searcher.search API
300  * StripRSSAd: Add namaan.net ad entry stripper
301  * Publish::SWF: Added j/k keyboard shortcut (akihito)
302
303 == 0.7.5 (2006/07/26) ==
304
305 === Core ===
306
307  * Merge from branches/refactoring-planet
308  * Plagger::UserAgent now deals with local files to get their MIME type correct
309  * Big refactoring done for $plugin->templatize() usage. #229
310  * Start using Test::Base for unit tests and convert most of existent tests to TB based
311  * Plagger->bootstrap() now returns $context
312  * Added $plugin->load_assets method in a base class
313  * decode $content before feed auto-discovery to avoid HTML::Parser warnings
314  * Bump up XML::Feed requirement to 0.09 so it can generate RSS 2.0 with content:encoded. #104
315  * remove inc from svn
316  * $feed->primary_author to return feed author by invsesting entries authors
317
318 === New Plugins ===
319
320  * Bundle::Planet: to load bunch of plugins under the table to create Planet site with a few lines of config
321  * Filter::StripTagsFromTitle: Strip tags found in title. #289
322  * Filter::HTMLScrubber: standalone HTML filter to scrub HTML, merged from feature-server (typester)
323  * Publish::FOAFRoll: generate foafroll RDF ala Planet
324  
325 === Plugin Updates ===
326
327  * Publish::Planet: accept style_url as a list. #316
328  * Publish::Planet: Fixed typo in sixapart-std template. #309
329  * Publish::Planet: members_list is now deprecated and on by default
330  * Publish::Planet: Bye to HTML::Tidy and HTML::Scrubber
331  * Publish::Planet: 'skin' config is now renamed to 'theme'
332  * Publish::Planet: skip non-http URLs
333  * Subscription::Planet: add URL based search. #286
334  * Subscription::Planet: language based goruping. #288
335  * Bundle::Planet: Add OPML generation support
336  * Bundle::Planet: Add FOAFRoll generation support
337  * Aggregator::Null: fixed the fatal bug so it works
338  * Rule::Fresh: now you can use human readable duraion format like '7 days'. Requires Time::Duration::Parse
339  * Publish::Feed: 'full_content' config (defaults to 1) specified whether to publish fullcontent in the feeds
340  * Publish::Feed: now generate Atom 1.0 by default if you use XML::Atom >= 0.20
341  * Publish::OPML: Now OPML validator compatible
342
343 == 0.7.4 (2006/07/24) ==
344
345 === Core ===
346
347  * Support parsing multiple enclosures in RSS 2.0
348  * require URI::Fetch 0.071 which is not broken
349  * Aggregator::Simple: More Liberal RSS 2.0 detection code
350  * Rule::Deduped: Use entry's datetime as a part of key if it's there
351  * Purge cache on the global destruction phase of every run. #306
352  * Fix Mac dependencies
353  * RSS 2.0 feed will have the 1st enclosure with the URL defined. #325
354  * CustomFeed::Simple now resolves relative link before parsing. #325
355  * SmartFeed now allows setting 'link' (otsune, Dave Cross)
356  * Don't override XML::LibXML with Liberal other than feed parsing. #324, #328
357  * plugin_path now can be a scalar
358  * Use Term::Encoding to detect terminal encoding automatically if available. #329
359  * Updated Encode.pm dependency for callbacks.
360  * Filter::EntryFullText now allows to write XPath expression to extract entry body (youpy)
361  * Replace 'FOREACH foo IN bar' with 'FOREACH foo = bar' for TT backward compatibility (cmarcelo)
362
363 === New Plugins ===
364
365  * CustomFeed::PerlMonks: Newest nodes on perlmonks (Jeff Bisbee)
366  * Publish::LivedoorClip: Post entries to Livedoor Clip (Yappo)
367  * Notify::Balloon: Notify updates using BalloonNotify on Win32 (miyagawa)
368  * Publish::PowerPoint: Publish slides off of feeds (charsbar)
369  * Publish::SWF: Publish Flash .swf file off of feed entries (akihito)
370
371 === Plugins Updates ===
372
373  * Notify::IRC: better document, ick_taken error handling (Thanks to Jeff Bisbee), update template
374  * Notify::IRC: refactored internal code and check IKC on init (Jeff Bisbee)
375  * Subscription::LivedoorReader: Better JSON error handling
376  * CustomFeed::Debug: Now being able to set datetime
377  * Widget::Delicious: Update the post URI to v4. No username needed anymore.
378  * Widget::HatenaBookmarkUsersCount: Use image based API if XMLRPC is not enabled (default)
379  * Publish::Gmail: use permalink rather then entry.link
380  * CustomFeed::AmazonAssociateReportJP: Added ordersReport (otsune)
381  * CustomFeed::YouTube: update regular expressions (mizzy)
382  * Filter::BreakEntriesToFeeds: Added 'use_entry_title' config
383
384 == 0.7.3 (2006/06/22) ==
385
386 === Core ===
387  
388  * Added Net::SMTP::TLS as a dependency
389  * rewrite_config doesn't die if there's permission error
390  * rewrite_config escapes regexp meta characters (Reported by s_fujiwara)
391  * Don't include t/core in the distro now
392  *   
393
394 === New Plugins ===
395
396  * Filter::FetchEnclosure::Curl: download enlcosures using Curl
397  * CustomFeed::MixiDiarySearch: CustomFeed handler for mixi.jp diary search
398  * Rule::Deduped: dedupe entries based on URL
399  * CustomFeed::2chSearch: CustomFeed to handle find.2ch.net SERP
400  * Notify::Beep: Beep your PC for feed notification using Audio::Beep
401  * Subscription::Bookmarks: Extract subscription from Bookmarks of IE, Firefox and Safari (miyagawa, youpy)
402  
403 === Plugins Updates ===
404
405  * Publish::Gmail: wrap MIME::Lite errors in eval
406  * Filter::FindEnclosures: Added yourfilehost.com, Mainichi Interactive and TypePad.com enclosure finder
407  * CustomFeed::Flickr: refactored from scratch and added enclosure support
408  * Filter::FetchEnclosure::ParallelUA: support Cookie sharing
409  * Filter::EntryFullText: misc upgrader files (topia, otsune, youpy, drawnboy)
410  * Notify::SSTP: added missing template (secondlife)
411  * Filter::2chRSSContent: Support id-less boards
412  * Publish::Gmail: don't send email when there's no entry #297
413  * Filter::EntryFullText: Added config parameter "force_upgrade"
414  * Rule::URLBL: support DNS caching
415  * Filter::TruePermalink: Don't rewrite permalink but link
416  * Publish::JavaScript: code tweaks and document updates
417  * Filter::EntryFullText: use Last-Modified to populate entry date even if there's no match
418  * Publish::CHTML: don't die if entry body contains non-sjis mappable entities. Change default to cp932
419  * Subscription::Planet: Added feedster.jp
420  * CustomFeed::Mixi: don't try to get unknown owner_id in RecentComment
421
422 == 0.7.2 (2006/06/02) ==
423
424 === Core ===
425
426  * Make Cookies instances Singleton (suggested by Yappo)
427  * Calls env_proxy on Plagger::UserAgent so that HTTP_PROXY env variable is respected (woremacx)
428  * Add w3m cookie files support
429  * Aggregator::Simple globally overrides LibXML parser with Liberal if possible
430  * Recommend newest XML::Liberal 0.11 so that liberal XML parsing would take the best effect
431  * $ua->mirror can take $req so that plugins can add custom HTTP headers like Referer. #208
432  * Change flv MIME value to video/x-flv
433  * Media RSS support in RSS parsers to extract enclosures and thumbnails. #141
434  * XML::Feed, XML::Atom, XML::LibXML and XML::RSS::LibXML are now core required modules. #176
435  * Support Hatena Fotolife and Apple photocast namespaces for thumbnail extraction.
436
437 === New Plugins ===
438
439  * Filter::LivedoorKeywordUnlink: strip and normalize links to livedoor keywords (miyagawa)
440  * Subscription::File: subscribe to URLs in plain text file (wolverian)
441  * Subscription::FOAF: subscribe to friends' weblogs in FOAF:knows (wolverian)
442  * Subscription::Feed: subscribe to item links in RSS/Atom Feeds (miyagawa)
443  * Filter::FetchEnclosure::Xango: Xango-based asynchronous POE downloader (dmaki)
444  * Filter::FetchEnclosure::Wget: use wget command line tool for async download (miyagawa)
445  * Filter::FetchEnclosure::ParallelUA: use LWP::Parallel for async download (miyagawa)
446  
447 === Plugins Updates ===
448
449  * Filter::2chRSSContent: Updated regexp so that it works without milliseconds (miagawa)
450  * Filter::FeedBurnerPermalink: Work with Atom 1.0 feed to extract permalink
451  * Subscription::Bloglines: Try with mark_read=0, then fallback to loop mode if it failed, to avoid data loss
452  * CustomFeed::YouTube: updated regexp for thumbnail servers (fujiwara)
453  * Filter::EntryFullText: move the place of hook before date parser to hack date format
454  * Filter::BreakEntriesToFeeds: Don't change feed title. #220
455  * Filter::FetchEnclosure: Added fake_referer config to add Referer header.
456  * Publish::Gmail: attaches inline img enclosures as multipart/related and replace img src with Content-IDs.
457  * Publish::Gmail: attach_enclosures is now optional, defaults to off.
458  * Fliter::RSSLiberalDateTime: Fixed bug around minus timezones
459  * Filter::EntryFullText: Support icon extraction
460  * Filter::EntryFullText: Added NoNetwork option to URI::Fetch so that it's much faster
461  * Filter::EntryFullText: thinkit.co.jp and pasonatech.co.jp (otsune)
462  * Subscription::Planet: Added new Bloglines feed search
463  * Filter::*Permalink: removed in favor of TruePermalink
464  
465 == 0.7.1 (2006/05/24) ==
466
467 === Core ===
468
469  * Added woremacx, topia and cheebow as AUTHORS
470  * Plagger::Cookies and Plagger::Mechanize allows Plagger to share cookies with your browser like Firefox, IE or Safari.
471
472 === New Plugins ===
473
474  * Notify::UpdatePing: notify updates via XMLRPC pings (miyagawa)
475  * Notify::Tiarra: notify updates via Tiarra control socket (topia)
476  * Publish::PalmDoc: publish updates to PalmDoc (cheebow)
477  * Publish::OutlineText: publish updates as outline text (cheebow)
478
479 === Plugins Updates ===
480
481  * Filter::Regexp: now you can use utf-8 regular expressions (woremacx)
482  * Widget::Delicious: Support one_click_post to automatically post by clicking (s_nobu)
483  * Filter::FindEnclosures: Now it's extensible using meta-plugins. Added youtube.pl as an example. Thanks to mizzy
484  * CustomFeed::Simple: deduplicate links by URLs. Don't add links associated with images without alt (miyagawa)
485  * Filter::TruePermalink: Added YouTube, MSN Mainichi
486  * Publish::MT: Fixed blog_id config bug. #252
487  * Subscription::LivedoorReader: Adds ApiKey as a sticky query to their API (suggested by mala)
488  * Publish::Gmail: Don't trim lines over 1000 by using quoted-printable.
489  * CustomFeed::GoogleNews: now accepts keyword search result page as well
490  * Filter::HatenaRSS: Update OPML URL. Uses Cookie sharing framework.
491  * CustomFeed::Frepa: Uses Cookie sharing.
492  * CustomFeed::Mixi: Uses Cookie sharing.
493  * CustomFeed::Yahoo360JP: Uses Cookie sharing.
494  * Subscription::LivedoorReader: Uses Cookie sharing.
495  * Notify::Campfire: Uses Cookie sharing.
496
497 == 0.7.0 (2006/05/17) ==
498
499 === Core ===
500
501  * Shiny new Enclosure support!
502  * Dependency for MIME::Types
503  * Fix $cache->path_to auto creation bug
504  * Allow plugins/Foo/Bar.pm directory strcuture to be backward compatible
505  * Added regression and plugins tests suite for the first time
506
507
508 === New Plugins ===
509
510  * Filter::FetchEnclosure: Download enclosures automatically to local
511  * CustomFeed::YouTube: Search YouTube and find enclosures (mizzy)
512  * Filter::RewriteEnclosureURL: Rewrite enclosure's URL when you republish downloaded enclosures
513  * Filter::POPFile: Use POPFile XMLRPC API to classify feeds (charsbar)
514  * Filter::TagsToTitle: Add tags to title as prefixes (charsbar)
515  * Filter::FindEnclosures: Automatically discover enclosures in entry content
516  * Filter::HEADEnclosureMetadata: Send HEAD requests to enclosures to get Length and correct filename
517  * Subscription::XPath: extract subscriptions from XHTML using XPath (youpy)
518  * Subscription::PlanetINI: extract subscriptions from Planet's config.ini file
519
520 === Plugins Updates ===
521
522  * Publish::2chdat: Internal fix to use id_safe method
523  * Subscription::Bloglines: support enclosures taken from sync API
524  * Publish::Gmail: Attach enclosures if they're downloaded locally with FetchEnclosure
525  * Filter::TruePermalink: Now supports rewriting enclosure URL as well.
526  * Filter::TruePermalink: Support recursive mode and redirector resolution
527  * Publish::Feed: Support enclosure creation in RSS 2.0 and Atom feeds
528  * Filter::SpamAssassin: Nuked some options (charsbar)
529  * Filter::HatenaKeyword: Use title to extract keywords as well
530  * Filter::StripRSSAd: Added pheedo.jp pattern. Now can strip entry if it contains certain pattern.
531  *
532 == 0.6.6 (2006/05/12) ==
533
534 === Core ===
535
536  * Added sites upgrade files (woremacx)
537  * Don't truncate newline after password rewrite #200
538  * Share $feed object between subscription and update
539  * encode detection now uses XML encoding declaration first
540  * Unhandled feed is removed from $context->subscription
541  * Plagger::Date->parse doesn't force preference timezone if parsed datetime is floating
542  * Load plugins from plugins/*/lib #212
543
544 === New Plugins ===
545  
546  * Filter::HatenaKeywordTag: Use Hatena Keyword API to auto-tag (secondlife)
547  * Search::Estraier: Search plugin to use Hyper Estraier Node API (miyagawa)
548  * Subscription::XOXO: load subscription from XOXO microformats (miyagawa)
549  * Publish::2chdat: Create 2ch subject.txt and *.dat files (miyagawa)
550  * Filter::2chRSSContent: Fix rss.s2ch.net feed content (miyagawa)
551  * Filter::Markdown: Filter entry body using Markdown syntax (s_nobu)
552
553 === Plugins Updates ===
554
555  * Notify::IRC: added password config to plagger-ircbot #197
556  * Filter::TruePermalink: Updated Y! Blogsearch pattern. Added reedit.com
557  * rename Publish::Spotlight to Search::Spotlight #207
558  * CustomFeed::Mixi: support "ashiato". Update WWW::Mixi deps
559  * Rule::URLBL: now works with $args->{entry} to be used with Filter::Rule
560  * Publish::Planet: get members from subscription rather than update #198
561  * CustomFeed::BloglinesCitation: Handle local datetime PST #187
562  * Filter::EntryFullText: now work with rule
563
564 == 0.6.5 (2006/04/28) ==
565
566 === Core ===
567
568  * Aggregator::Simple: Allow bad content-type feeds like text/plain (miyagawa)
569  * Aggregator::Simple: Hack nasty Unicode unflagness in Atom feed with XML::Feed (miyagawa, reported by otsune)
570
571 === New Plugins ===
572
573  * Subscription::LivedoorReader: Fetch subscription via LDR (miyagawa)
574  * Filter::CompositeFeed: pack all the feeds into entries of single feed (miyagawa)
575  * Filter::AtomLinkRelated: Use link rel="related" as a link in Atom feeds (miyagawa)
576  
577 === Plugins Updates ===
578  
579  * Filter::TruePermalink: minor updates in refrss (otsune) updated Yahoo! blog redirector (miyagawa)
580  * Filter::ResolveRelativeLink: don't die even if there's no link found
581  * Subscription::OPML: broken OPML feed support with XML::Liberal (miyagawa)
582  * Filter::EntryFullText: Lots of feed upgrade files (manabou, woremacx, kazeburo)
583  * Filter::StripRSSAd: support branded feed domain in FeedBurner (miyagawa)
584  * Widget::HatenaBookmarkUsersCount: Autoload Filter::HBUC (reported by otsune)
585  * CustomFeed::Frepa: defaults to all feed types
586  * Publish::Delicious: Fixed interval bug
587  
588 == 0.6.4 (2006/04/19) ==
589
590 === Core ===
591
592  * Fixed MANIFEST to include assets
593  * Reorganized assets directory naming. Keep cases of plugin names. #106
594  * More feed upgrader files (manabou, youpy)
595  * Update XML::RSS::LibXML to avoid non-UTF8 feed breakage (Thanks to dmaki, Reported by manabou)
596
597 === New Plugins ===
598  
599  * Filter::BloglinesContentNormalize: normalize HTML attributes in Bloglines body (miyagawa)
600  * Filter::TruePermalink: Permalink rewriting framework (youpy, miyagawa)
601
602 === Plugins Updates ===
603
604  * Filter::StripRSSAd: now load pattern files from assets directory #179 (miyagawa)
605  * Filter::StripRSSAd: Add npr.org valueclick feed ads. Updated Google AdSense pattern
606  * CustomFeed::Mixi: Make cache TTL of fetch_body longer to avoid Footprint issue (miyagawa)
607  * Subscription::2chThread: Accept multiple thread URLs (youpy)
608  * Deprecate NamaanPermalink, 2chRSSPermalink and YahooBlogSearchPermalink in favor of TruePermalink (miyagawa)
609  * Subscription::Planet: nuked MSN Search, added Technorati Tag search
610
611 == 0.6.3 (2006/04/15) ==
612
613 === Core ===
614
615  * EntryFullText: Fixed bug that date format is not properly decoded as UTF-8
616  * requires URI::Fetch 0.06. #168
617  * Added various sites upgrader files (miyagawa, s_nobu, ko, mamorou, nTeTs, youpy)
618  * Added atode.cc sample in examples directory
619
620 === New Plugins ===
621
622  * Filter::BreakEntriesToFeeds: Break entries in each entry as a feed containing single entry (miyagawa)
623  * Filter::2chRSSPermalink: Fix rss.s2ch.net feeds permalink (youpy)
624  * Subscription::2chThreadList: Add 2ch threads to Subscription using rss.s2ch.net feeds (youpy)
625
626 === Plugins Updates ===
627
628  * Subscription::Planet: Allow multiple keywords set in config files. Allow non utf-8 URI escape (Suggested by secondlife)
629  * CustomFeed::Mixi: Fix newline are not correctly extracted in Messages feed. Fixed first-time access bug without cookies
630  * Subscription::Bloglines: Fix atom:id bug when permaLink="false"
631
632 == 0.6.2 (2006/04/10) ==
633
634 === Core ===
635
636  * When character set declared is invalid, falls back to auto detection (Reported by typester)
637  * Fix Atom feeds handling when there's no content
638  * requires URI::Fetch 0.06 which has better redirection support
639  * Fixed $plugin->assets_dir bug that it doesn't respect global config (Reported by s_nobu)
640  
641
642 === New Plugins ===
643
644  * Filter::HatenaDiaryKeywordUnlink: strip links to Hatena Diary Keywords (miyagawa)
645  * CustomFeed::GoogleNews: Create custom feeds off of Google News (miyagawa)
646  
647 === Plugins Updates ===
648
649  * CustomFeed::Yahoo360JP: Separate blast feed as a different feed (miyagawa)
650  * Filter::EntryFullText: Added lots of site upgrade files (miyagawa, typester, s_nobu)
651  * CustomFeed::Frepa: Fix buddy icon link to your own comment (miyagawa)
652  * Subscription::Bloglines: Fix $entry->permalink bug when atom:id is tag (miyagawa)
653  * Subscription::Config: now allows empty list of feeds (miyagawa)
654
655
656 == 0.6.1 (2006/04/03) ==
657
658 === Core ===
659
660  * New Feed Upgrade framework: CustomFeed::Simple and Filter::EntryFullText
661  * Supports .pl and .yaml file based site upgrader scripts
662  * Plagger::Util has decode_content and extract_title
663  * Support metadata in config.yaml
664  * Support automatic config rewriting for password fields using Base64 for now
665  * New dependencies: Module::Pluggable::Fast and HTML::ResolveLink
666  * Uses Encode::Detect and falls back to Encode::Guess to guess charset of HTML
667  * New author: typester (Daisuke Murase)
668  * Added lots of site upgrade scripts
669
670 === New Plugins ===
671
672  * Filter::YahooBlogSearchPermalink: Fixes permalink redirector of Y! Blog Search (.jp) (miyagawa)
673
674 === Plugins Updates ===
675
676  * WebService::Bloglines: Fix guid stringification bug (typester)
677  * CustomFeed::iTunesRecentPlay: Amazon Web Services Integration (mizzy)
678  * CustomFeed::Frepa: Fixed blast error logic (secondlife)
679  * Subscription::Planet: Added Yahoo! Blog Search, Feedster and BlogPulse
680
681
682
683 == 0.6.0 (2006/04/02) ==
684
685 === Core ===
686
687  * revamped CustomFeed API
688  * Aggregator::Simple supports RSS/Atom auto-discovery. #20
689  * Fixed CustomFeed multiple instances bug. #110
690  * Autoload Aggregator::Simple when no Aggregator is used. #125
691  * Added $context->is_loaded($plugin). #125
692  * $plugin->log is now supported
693  * Uses newly added $plugin->plugin_id method to avoid cache gotcha. #95
694  * $plugin->cache->path_to automatically creates sub directories. #118
695  * SmartFeed now uses permalink to dedupe entries
696  
697 === New Plugins ===
698
699  * Filter::FeedFlareStripper: Strip FeedFlare from FeedBurner feeds (miyagawa)
700  * Widget::BloglinesSubscription: Link to edit subscription of Bloglines #123 (miyagawa)
701  * Subscription::DBI: manage subscriptions using database (Franck Cuny)
702  * CustomFeed::SVNLog: Create feeds from subversion log (Michiya Honda)
703  * Filter::Profanity: replace profane terms to !%$@# (miyagawa)
704  * Filter::Thumbnail: create thumbnail screenshot to use as feed icon (miyagawa)
705  * Widget::BulkfeedsSpamReport: Report feed as Splog to Bulkfeeds. #135 (miyagawa)
706  * Filter::NamaanPermalink: extract permalink from redirector URL (miyagawa)
707  * Filter::Romanize: uses kakasi to filter content into Roman (miyagawa)
708  * Subscription::Planet: Aggregates entries from various RSS search engines (youpy)
709  * Subscription::PingServer: Load pinged feeds to ping servers as subscription (ko)
710  * Filter::Rule: generic rule based feed trimming (miyagawa)
711  * Publish::Takahashi: Published feed entry titles as takahashi.xul file (miyagawa)
712  * Filter::EntryFullText: Fetch Full-Text using site handler files (miyagawa)
713  * Rule::URLBL: rule used with Aggregator to skip URLBL'ed feeds (ko)
714  
715 === Plugins Updates ===
716
717  * Filter::StripRSSAd: More Google AdSense patterns, FeedBurner ads, seesaa.jp
718  * Filter::FeedBurnerPermalink: Now work with RSS 1.0 feeds. #122
719  * CustomFeed::Frepa: Update HTML pattern.
720  * Filter::Base: new base class to handle HTML-only filter. #88
721  * Publish::Speech: MacOSX impementation supported (Ryo Okamoto)
722  * Publish::Planet: don't use HTML::Tidy for now. Fixed templates
723  * Aggregator::Xango: Now requires Xango 1.04. Support RSS/Atom auto-discovery
724  * Publish::Gmail: overwrite X-Mailer header
725  * CustomFeed::Frepa: support FriendStatus and RecentComment (tokuhirom)
726  * CustomFeed::Mixi: support Message and RecentComment (tokuhirom)
727  * Subscription::Bloglines: Set RSS 2.0 guid as permalink (typester)
728
729 == 0.5.7 (2006/03/13) ==
730
731 === Core ===
732
733  * $entry->id tries hard to get unique ID
734  * $entry->feed_link to point feed's link
735  * Rename define_recipes and recipes
736
737 === New Plugins ===
738
739  * Publish::Maildir: Store updates to local mailbox (s_nobu)
740  * Publish::IMAP: Store updates to IMAP mailbox (s_nobu)
741  * CustomFeed::Debug: Create feed using config.yaml for debugging (naoya)
742  * Filter::Emoticon: filter emoticons of MSN, Yahoo! or Google Talk (naoya)
743  
744 === Plugin Updates ===
745
746  * Publish::MTWidget: fixed template rebuild bug (Thanks to charsbar)
747
748 == 0.5.6 (2006/03/08) ==
749
750 === Core ===
751
752  * New AUTHORS: Yuichi Tateno, Gosuke Miyashita, Casey West, Jesse Vincent, Naoya Ito and Kenichi Ishigaki
753  * Make ~/.plagger directory not readable by other users. (Thanks to typester)
754  * Better package management and pod tests (obra)
755  * config examples/ directory (cwest)
756  * Templates and other plugins resource rename (cwest)
757  * SmartFeed now has $entry->source to point to source feed (miyagawa)
758  * $context->templatize($plugin, $file, $var) conveniene method (miyagawa)
759  * Plagger::Date now uses local timezone as a default, when there's no config
760  * Added aggregator.aggregate.filter experimental hook for Aggregator::Simple (miyagawa)
761  * Implement define_recipes, recipes and includes directive in config for DRY (Yappo, secondlife)
762  * $plugin->cache->path_to() to point plugin specifc temp file (miyagawa)
763  * Added 'plugin.init' hook (miyagawa)
764
765 === New Plugins ===
766
767  * Notify::SSTP: Notify updates to Sakura Script Transfer Protocol (secondlife)
768  * Publish::Playlog: Use Atom Publishing Protocol to post iTunes playlog (mizzy)
769  * CustomFeed::iTunesRecentPlay: iTunes' recent playlist as a custom feed (mizzy)
770  * SmartFeed::All: All updates as one feed (miyagawa, cwest)
771  * Publish::CSV: publish updates as Comma Separated Value format (naoya)
772  * Filter::HatenaFormat: filter hatena format (naoya)
773  * Publish::MT: publish updates using MT XML-RPC API (naoya)
774  * Publish::Planet: Planet-Planet clone in Plagger (cwest)
775  * Publish::OPML: publish OPML files based on subscription (miyagawa)
776  * CustomFeed::FlickrSearch: Use Flickr API to create custom feeds (cwest)
777  * CustomFeed::AmazonAssociateReportJP: Fetch Amazon's associate report (naoya)
778  * Filter::ImageInfo: fetch information of $feed->image and $entry->icon (miyagawa)
779  * Subscription::HatenaGroup: fetch Hatena Group blogs as subscription (tokuhirom)
780  * Filter::BlogPet: Strip BlogPet's post (naoya)
781  * Filter::SpamAssassin: Use SpamAssassin to strip spam posts (charsbar)
782  * Filter::RSSLiberalDateTime: parses pubDate sring liberally (miyagawa)
783
784 === Plugins Updates ===
785
786  * Aggregator::Xango: Added conditional GET support #93 (Daisuke)
787  * CustomFeed::Mixi: Support links to deleted entry #96 (miyagawa)
788  * Aggregator::Simple: Fixed error handling bug when URL is 404 #97 (miyagawa)
789  * CustomFeed::POP3: Create one feed per one mail (tokuhirom)
790  * Publish::Gmail: Fixed bad MAIL FROM: when used with Sendmail (Thanks to maru.gs)
791  * Subscription::Config: Support array of just URLs (miyagawa)
792  * Publish::PSP: template typo fix in permalink (miyagawa)
793  * Rule::Fresh: no datetime field means it's fresh (miyagawa)
794  * Subscription::Bloglines: Liberal parser support. Fallbacks to loop mode when it still finds error (miyagawa
795 )
796  * Aggregator::Simple: uses XML::RSS::Liberal if it's installed (miyagawa)
797  * Publish::Gmail: resizes feed and entry images when it's too big (miyagawa)
798  * Filter::StripRssAd: Support Pheedo ads pattern (miyagawa)
799  * Rule::Fresh: Handle empty dates better (cwest)
800  * Aggregator::Simple: handle Atom 1.0 date fields (miyagawa, cwest)
801  * Widget::HatenaBookmarkUsersCount: Support '#' in the URL (otsune)
802  * CustomFeed::Frepa: Fixed to support Frepa's new HTML (miyagawa)
803
804 == 0.5.5 (2006/03/03) ==
805
806 === Core ===
807
808  * Added --version and shorter -c & -v to plagger script
809  * $entry->body_text now decode HTML entities correctly. #82
810  * New Plagger::Cache framework, accessible via $plugin->cache
811  * Added cookie_jar method to cache. $plugin->cache->cookie_jar
812  * config.yaml is now found using FindBin, rather than the current directory (Naoya Ito)
813  * New AUTHORS: Yoshiki Kurihara, Fumiaki Yoshimatsu, Masafumi Otsune, Takeshi Nagayama and fuba
814
815 === New Plugins ===
816
817  * Filter::HatenaDiaryKeywordLink: Automatically link Hatena Diary Keywords in entry body (tokuhirom)
818  * Publish::Feed: Output Atom and RSS feeds using XML::Feed (clouder)
819  * Filter::ResolveRelativeLink: Fix relative links in entry body (miyagawa)
820  * CustomFeed::Yahoo360JP: Login to Yahoo! 360 Japan and fetch blogs and blasts (miyagawa)
821  * Filter::BulkfeedsTerms: Use Bulkfeeds API to fetch specific terms in entry (miyagawa)
822  * Filter::2chNewsokuTitle: Add prefix and postfix to entry title ala 2ch.net Newsoku style (miyagawa)
823  * Notify::Eject: eject your CD drive to notify feed updates! :-) (Yappo, fumiakiy, otsune)
824  * Publish::Pipe: use UNIX pipe to notify the updates to commands (e.g: lpr, /usr/bin/say) (youpy)
825  * Notify::Campfire: Notify feed updates to 37 signals' Campfire chat service (nagayama)
826  * Filter::Regexp: Update entry body by a regular expression in config (miyagawa)
827  * Publish::HatenaBookmark: post updates to Hatena Bookmark using Atom Protocol (fuba)
828  * CustomFeed::POP3: Fetch email using POP3 protocl and creates feed off of it (tokuhirom)
829  * Filter::RSSTimeZoneString: Fix RSS 2.0 bad timezone string in RFC 822 date format (miyagawa)
830  * Filter::FloatingDateTime: Fix floating datetime (dc:date and such) to your local timezone (kazeburo)
831
832 === Plugins Updates ===
833
834  * Publish::Delicious: fix UTF-8 escape bug.
835  * Subscription::Bloglines: Added 'fetch_meta' option to fetch folder structure and feed URL
836  * Subscription::Bloglines: Fix annoying UTF-8 bad sequences by upgrading to WebService::Bloglines 0.10
837  * Filter::TTP: Added 'text_only' option to filter text element only in HTML. #76
838  * Fitler::StripRSSAd: Now it works with Bloglines subscription. Added Google AdSense pattern.
839  * Publish::IRC, Publish::MSAgent and Publish::Growl are now renamed to Notify::*
840  * Publish::Gmail: fixed typo in "Permalink" footer
841  * CustomFeed::Mixi, CustomFeed::Frepa now uses Cache framework to store persistent cookies
842  * CustomFeed::Frepa: support PNG buddyicon
843  * Publish::Gmail: do POP before SMTP authentication only once per whole publish
844  * Subscription::OPML and Aggregator::Simple now use URI::Fetch and Cache framework for conditional GET
845
846 == 0.5.4 (2006/02/27) ==
847
848 === Core ===
849
850  * Makefile.PL has a much better dependencies definition #59 (Thanks to Daisuke Maki)
851  * Fixed multiple categories handling bug in Aggregator::Simple (Thanks to koyachi)
852  * Added body_text, title_text convinience methods to Feed and Entry
853  * Now uses FindBin module to find templates directory in a better way (youpy)
854  * New authors: Daisuke Maki, Tokuhiro Matsuno and Tsutomu Koyachi
855
856 === New Plugins ===
857
858  * Aggregator::Xango - POE based high-speed parallel crawling (daisuke)
859  * Publish::PDF - Create PDF files based on feeds (miyagawa)
860  * Publish::Speech - Make the feeds as an audio using Text-to-Speech (miyagawa)
861  * Publish::MSAgent - Let Microsoft Agent speak feeds content (miyagawa)
862  * Publish::Growl - Send feed notifications to Mac OSX Growl (kazeburo)
863  * Filter::tDiaryComment - strip comments from tDiary RSS (tokuhirom)
864  * Filter::TTP - replace ttp: with http: (tokuhirom)
865  * Filter::DeliciousFeedTags - split del.icio.us "foo bar baz" tags into array (miyagawa)
866  * Publish::Delicious - post entries to del.icio.us automatically (koyachi)
867
868 === Plugins Updates ===
869
870  * Publish::Spotlight: Now it fallbacks to osascript when Mac::Glue is not installed
871  * Publish::MTWidget: Added an option to rebuild the blog templates after updating widgets
872  * Publish::Gmail: Added an option to support POP3 before SMTP (tokuhirom)
873
874 == 0.5.3 (2006/02/25) ==
875
876 === Core ===
877
878  * Added aggregator.finalize, publish.entry and publish.init hook
879  * Added Plagger::Rule::Fresh to match with 'fresh' entries (thanks to youpy)
880  * Fixed bug with SmartFeed creating duplicated entries #61
881  * Support log:level global configuration flag to set min loglevel
882
883 === Plugins ===
884
885  * Added Publish::Spotlight to create WebBookmark searchable with Spotlight (youpy)
886  * Added Search::Namazu to create HTML files searchable with Namazu (miyagawa)
887  * Added Search::Rast to index entries with Rast (Yappo)
888  * Added Publish::MTWidget to publish Movable Type Sidebar Manager widget (miyagawa)
889  * Added an option 'show_icon: 1', to show users pic in Frepa and Mixi custom feeds
890  * Fixed Subscription::Mailman to handle subject prefixes without index
891  * Publish::IRC now has 'announce: action' option to use CTCP ACTION rather than NOTICE
892  * Filter::StripRSSAd now strips Rakuten Hiroba (plaza.rakuten.co.jp) ad pattern
893  * Fixed CustomFeed::Frepa to complete the trimmed title under fetch_body mode
894  * Fixed typo in Subscription::HatenaRSS
895
896 == 0.5.2 (2006/02/22) ==
897
898  * Added Subscription::HatenaRSS plugin to fetch subscription from Hatena RSS (http://r.hatena.ne.jp/)
899  * Added Subscription::Odeo plugin to fetch subscription from Odeo (http://www.odeo.com/): #43
900  * Added Publish::IRC plugin to notify updates to IRC channel: #46 (Masayoshi Sekimura)
901  * Fixed critical bug that Rule::Expression is broken: #51
902  * Fixed Mailman CustomFeed bug around English localization: #49
903  * Added Filter::RSSStripAd plugin to strip ads of Google AdSense or RssAd.jp: #33
904
905 == 0.5.1 (2006/02/17) ==
906
907  * Updated package name from "plagger" to "Plagger"
908  * Fixed MANIFEST problem that doesn't contain "config.yaml.sample"
909
910 == 0.5.0 (2006/02/17) ==
911
912  * First release
Note: See TracBrowser for help on using the browser.