A Cautionary Tale For All Plugins Users

Well, it’s been a bit of a rough week for AZIndex and some of its users.  I knew that adding better support for indexes in other languages would be tricky, but I didn’t realize that it would be quite so difficult and bug-ridden.  After five quick updates in succession, I believe the serious bugs have been squashed and things seemed to have settled down (or it could be just that everyone’s taken the weekend off!).

Unfortunately, one of the bugs I introduced caused the upgrading of the AZIndex database table to fail on some systems, causing the loss of all their index settings.  I will be making changes to the plugin to prevent such a catastrophic loss from happening in future, but there is one lesson we can all learn from this incident…

Don’t go blindly upgrading every plugin the moment you see that a new version is available, especially if it an essential part of your blog, and certainly if your blog is a critical part of your business (or hobby).  That holds doubly true for plugins that are still under development and tagged as BETA software (as AZIndex still is).

The introduction of automatic upgrades for plugins has made it much easier for blog owners to keep their blog software up-to-date, but the process is now so easy that I suspect the vast majority of users (myself included) simply click the “Upgrade” link without even bothering to check to see if:

  1. they need the new version,
  2. they have a recent backup of their blog and database,
  3. other people have been having problems with the new version of the plugin.

Now, in all the time I have used plugins, I have never encountered a bad upgrade (though I caused others to have one last week 😥 ), but that has simply made me more complacent about the whole process of blind plugin upgrades.  All it takes is for one mistake by a plugin owner (we’re only human, after all) and your blog could be rendered partly or mostly inoperable.

For example, if the front page of your heavily trafficked blog used AZIndex to display an index of your blog’s pages and you quickly and blindly upgraded to version 0.7.2 last week, your blog would have been dead in the water until you could recreate your index.  If it was a simple index, that would not have been too bad, but what if you had just spent hours tailoring the index’s CSS styling to get it looking just right?

So the moral of this tale is to look before you leap.  Unless you want the latest version of a plugin because it has some bug fixes or new features you need then wait a few days before you upgrade.  What’s the rush?  In fact, ask yourself if you need to upgrade at all.  If everything is working great then why risk causing headaches for yourself by blinding upgrading every plugin in sight?  Just because your blog’s plugin page is nagging you about new versions being available, doesn’t mean you have to give in to the urge to get rid of those nags.

Probably the best time to bring all your plugins up-to-date is just before you upgrade your blog to the latest version of WordPress.  In some cases you will have to anyway (as happened with AZIndex when WordPress 2.7 was released) but since this is the time when you are most likely to have made a backup of your blog and your blog’s database (you do, don’t you?) then if something goes horribly wrong with any of the plugin upgrades, you have a recent backup to fall back on.

So, in conclusion, I would recommend that all blog owners follow these simple rules when upgrading their plugins:

  1. Don’t automatically give in to those tempting nag messages on your blog’s plugin page.
  2. Go to the plugin’s repository to find out what the new version of the plugin is adding/fixing.
  3. Don’t upgrade your plugins unless you need to.  Valid reasons for upgrading include:
    • bug fixes for problems you are experiencing
    • new features you want to use
    • essential security fixes
    • performance enhancements (if you need them)
    • upgrading to a new version of WordPress
  4. If you do decide you want to upgrade, wait at least two or three days before you do.  That should give other users enough time to discover any serious problems with the new version and report them back to the plugin owner so they can put out a newer version with the bugs fixed.
  5. Remember to make backups.  There are plenty of plugins around for making easy and automatic backups of your blog and blog’s database.  Use one of them.  You never know when you might need it, and not just for problems with plugin upgrades.

Leave a Reply

Your email address will not be published. Required fields are marked *