meoReader Release Notes 1.2.0

Attention! Update Instructions!

With this update the database scheme will be modified. So when you're updating the meoReader plugin from an older version (opposed to installing it for the first time) you have to do the following:

1. Log into your WordPress backend as an administrator.

2. Go to Dashboard/Updates.
If the plugin update is not listed here, click the "check again" button at the top.

3. Update the plugin and when finished click the "Return to plugin page" link.

4. Here you have to DEACTIVATE the meoReader plugin and ACTIVATE it again.
Only then will the database structure be updated!

You should be ready to go now. But in case you want to be 100% sure you should also do the following step:

5. Go to the subscriptions page and export your data in the meoReader XML format.
This will -other than OPML- also save your archived entries (if you have any).

6. Click the "Delete All Feeds" button.

7. (Re-)Import the meoReader XML file again.
This will re-index the feeds so they will match the new database scheme.

I'm really sorry about the additional steps. But I've tried a million ways to do this automatically when (re-)ACTIVATING the plugin. But this was by no means acceptable in terms of being reliable.

Two more HTML Libraries implemented

The HTMLFixer library by Giulio Pons has been implemented in addition to the HTMLPurifier library. This should help fixing broken HTML to an even better degree. Broken HTML in a feed's content can break the whole reader page and as a result it might even look like the reader page isn't showing up at all.

Also, the htmlLawed library by Santosh Patnaik has been implemented as a fallback when the option "Secure HTML output against certain XSS attack vectors" has been disabled. It's not as safe HTMLPurifier but at least it's pretty fast.

Performance

In order to speed things up on the frontend the database has been modified! HTMLPurifier is awesome in terms of sanitizing HTML but it's also yawningly slow. So to safe some time the feed content will now be fully sanitized right before it's being saved to the database. The downside is that in some cases, instead of repairing broken HTML it breaks intact HTML. That should be rare though. Nevertheless when this happens the reader page might not show up as expected. You then can disable the setting "secure html output..." and try again.

From now on two versions of the content will be stored in the database the heavily sanitized version and the light weight sanitized version. So switching between both will be easy and performant.

Import/Export MeoReader XML

You might have wondered why there are two methods to export and import data into the meoReader. With this update, 1.2.0, the meoReader XML format will also export and import the entries that are stored in the archive!

So while the OPML format allows you to backup or move your subscriptions (feeds and categories), the meoReader XML format will backup or move your archive in addition to that.

Minor Code Fixed and Tweaks

As usual, some minor code fixes and tweaks have been made. E.g. converting special characters in category names into proper HTML when exporting data, etc.