Issues You Might Run into When Upgrading TYPO3 Extensions
When considering to upgrade your TYPO3 installation, one of the bigger parts you need to take care of is the upgrade of all installed extensions. Some of them might be your own, others are public extensions. Upgrading your own extensions is normally no problem for your team. The TYPO3 Core Team provides migration paths and documentation on how to make your own code compatible and your team has the necessary knowledge of your extensions. Most of the time third-party extensions are the challenge. In this article we want to present the most common issues you can run into while upgrading TYPO3 with third-party TYPO3 extensions.
If you want to upgrade to a new TYPO3 version early after its release you will find few extensions already compatible with the new version. Many third-party extensions are developed by people in their spare time. Depending on the extension and team it might take them a while to make their extension compatible. Most extension authors only start upgrading their extensions after the feature set for a new TYPO3 version is fully defined and all breaking changes are known. For extension authors this is beneficial as they have to touch their code only once to make it compatible. For you as “early adopter” it means you may have to wait some time until a compatible version is released.
Sometimes extensions get abandoned by the original author or team. There may be various reasons for that. Maybe the author(s) wrote the extension because they needed the functionality “back then” but they don’t need it today, maybe they don’t have enough time. Whatever the reason you are left with an incompatible extension that you can’t upgrade.
When extension authors upgrade their extensions they sometimes decide to do a full rewrite instead of an upgrade only. This may result in extensions “losing” functionality you were using because the authors decided not to implement it again or did not yet implement it.
For various reasons extension authors might change behavior in their extensions, for example when the original behavior was unintended, the requirements in their context change or compatibility to third parties make changes necessary. Whatever the reason you might run into problems expecting the extension to work the way it did before.
Do you have another issue with an extension upgrade that’s not yet on this list? Let us know the issues you ran into and how you solved them. Tell us about it in the comments.
There are multiple ways to solve these issues. As TYPO3 and its extensions are open source the easiest way to fix your issues - if you have your own developers - is to look for contribution possibilities for an extension. Most of them are public and extension authors are grateful for contributions. This way you can fix almost all the problems yourself - from missing features to non-ready versions.
If you don’t have your own developers or they don’t have the time to contribute you can also see if there is a way to support the extension developers in another way - for example with money by directly paying the developer for an update.
In case the extension was abandoned by the author you can see whether there is an equal alternative available - possibly with a migration path. Or you can take over development of that extension by requesting the extension key and continuing its development.
If the extension changed its behavior, look at the documentation. More often than not there will be instructions on how to integrate the new behavior in your project.
At last, if none of the previous solutions works out for you there is always the possibility to stay on your old TYPO3 version a bit longer by using LTS and ELTS - but you should consider this as a last resort as you are just delaying your issues. Find out more about ELTS here.
Are you an extension author yourself? Find out more about funding your extension development at https://coders.care/blog/article/various-typo3-extension-funding-concepts/
March 21st, 2017
When plan an upgrade from TYPO3 CMS 6.2 LTS to 7.6 LTS, you may possibly find this extension useful: "Extension Compatibility Check". https://typo3.org/extensions/repository/view/extension_compatibility_check