Delayed upgrades: extension compatibility problems
Are you keeping up with CiviCRM security updates? Delaying your upgrades can create more than security problems.
---
By now you probably understand the importance of keeping up with CiviCRM security updates, to avoid operating with known security vulnerabilities.
And maybe you’ve taken my general advice about not upgrading needlessly (“chasing version numbers”), to avoid the headache of potentially introducing new bugs into the system.
But it’s worth noting:
Security issues aren’t the only potential problem with avoiding periodic upgrades.
“Don’t upgrade needlessly” is good advice; but treating it as “wait as long as possible to upgrade” can get you into trouble.
This week I spoke with someone from an organization who decided — for their own reasons, which I won’t question here — to avoid CiviCRM upgrades for almost 2 years.
Until recently.
A few weeks ago, they finally decided to
upgrade to the newest CiviCRM version.
upgrade all extension to the latest versions.
Unfortunately, this led to a problem — specifically with one or two custom extensions.
The problem was this: Since these custom extensions are used only by this one organization, nobody else was working to improve them and keep them compatible with newer CiviCRM versions along the way.
The result?
These extensions aren’t fully compatible with their current CiviCRM version, so now they’re misbehaving.
They’ve now got some tough decisions to make:
Should they drop the extensions and try to make do another way?
Should they try to get their in-house tech staff to debug and fix the extensions?
Should they search for — and then hire — a CiviCRM specialist to do that?
How should they handle the missing functionality in the mean time?
It’s not an easy situation to be in.
Here’s the thing:
As with your CMS (WordPress, Drupal, etc.), the CiviCRM functionality you rely on is very likely built on a number of extensions.
And when you can’t find a well-supported existing extension that does what you need, custom-built extensions are a fine way to add that functionality.
But then the maintenance of that extension — for as far into the future as you’ll use it — rests with you.
And if you then happen to delay upgrading CiviCRM for a long time, you could be looking at some big surprises when you finally decide to start upgrading again.
See also: Upgrades: the bigger, the harder; CiviCRM upgrade oddities: extension compatibility; and Cooperative customizations.
All the best,
A.