0.13 added "stream context" support to rippy_readfile and higher-level routines; this allows use of HTTP proxies, and user agent setting improved parsing of unclosed tags when scraping old non-XML HTML fixed handling of failed self-modifying format commands; this has the effect of fixing "empty URL" bug in default item format added sanity check for top-level tag in feed file; this fixes crash when delinquent feeds return HTML instead minor syntax cleanup 0.12 added @ to reduce the error messages during installation tweaked the conditions for cache updating fixed a longstanding bug in XML parsing that affected attribute values added translations for a few numeric entities more cautious clearing of the "recent" flag, to prevent seeing an entire feed as new when it comes back from having been broken. added rippy_export_opml() added Skippy scraping extension - alpha code, not fully documented 0.11 added "nofollow" support, and commentary for it 0.10 added per-feed "key" option to allow for title-less entries, etc. removed user-controlled filter dependence on register_globals (which probably shouldn't be turned on if allow_url_fopen, which the caching code needs, is also turned on - SECURITY ISSUE) added per-feed retention and display time limits and counts added global config parameter for retention and display limits fixed keep-everything-forever bug (tsk, that one should never have existed) and several secondary bugs created or revealed by this fix added "extended" formatting commands: FILTERIN and FILTEROUT (and the "kill" formatting variable) for regexp-based item filtering; FIRSTCHOICE (support of the existing formatting system in the new framework); HTMLESCAPE (used for RSS output); and REPLACE (to edit items, for instance to remove constructs). added experimental Atom support added UTF-8 translation kludge added RSS output demo (achwood-blogs.php) changed caching to load feed files in random order, so aggregation will still work when there are slow feeds on the list, as long as there are enough page loads in total. 0.9 changed filtering code to display items still in the RSS, even if they are old, if we're low on items to display (makes aggregator less likely to run dry) changed filtering code to only display items from feeds that are in the feeds array (even if others are in the aggregation file) to permit the next feature to work and solve some startup issues added optional "display only one or a few feeds" feature, managed by form variable, to aggregate.php added support for image caching the usual addition and removal of default feeds moved reading of files (both local and remote) into rippy_readfile() and built in my own timeout; this fixes problem noted at baremetal.com where Rippy sleeps forever waiting on a delinquent feed, eventually filling process table, and neither PHP nor Apache timeouts kill it file locking procedures revised and expanded change to rippy_updatecache: don't overwrite on failed HTTP transaction 0.8 fixed inconsistent version number in page title (minor typo) added "rippy_" prefix to function names to solve name clash with aggregate() built-in function of PHP 4.2 and future problems of this type - WARNING - this means you can't upgrade by just dropping in the new rippy,php, but must actually edit your calling code added translation for ' character entity fixed Ozy&Millie scraper script added clarifications to the README 0.7 new "formatting" system, allows comprehensive redefinition of the generated HTML without touching rippy.php (should ease future upgrades for the majority of users who customize the code) per-feed information placed in an array of arrays to allow more detailed configuration control cache updating moved into aggregate() (although you can still do it the old way if you really want to); now a new feed only needs to be added in one place in the code, although you still have to think about creating the cache file. more new feeds in the default list, some delinquent ones commented out reduced the emphasis on gDefaultIconURL because people hated it 0.6 made it process all new items in a given update at the same virtual time, to fix a bug that would mess up the order of items if there were many new in the same file. repaired the Ozy&Millie scraper script to accomodate changes on that site two changes suggested by Ewen McNeill: - changed HTML to be more XHTML-compliant (probably still not perfect) - only display