Getting extensions ready for Joomla 4 - Alejandro Schmeichler
Joomla 4 Beta 2 was released at the end of June, taking a further step towards the stable version. It also means that Joomla users are starting to test Joomla 4 and wonder what the migration from Joomla 3 will be like and what will happen to the extensions they currently have installed on their sites.
Since May issue, we are talking with extension developers, to know first hand their impressions about this migration. This time, we are pleased to have Alejandro Schmeichler, developer of JReviews.
This well-known extension started as a component for reviews and evolved along with its customers and Joomla.
First of all, we want to thank Alejandro for the time in answering our questions.
What will happen with the extensions when J4 is released? Will they be compatible, or will the developers have to provide complete new versions?
Joomla 4 introduces a few backward breaking changes that will most likely require developers to spend time updating their J3 extensions to make them compatible. I believe the degree of difficulty in updating an extension will depend on the following criteria:
- Size of the extension in terms of code and features
- Code architecture
- Coupling with Joomla core: Does it augment core features, or does it provide standalone functionality?
In our particular case, several years ago, we made our products compatible with both Joomla and WordPress using a single code base. This required building an abstraction layer that has really helped us in the transitions from Joomla 2 to Joomla 3, and now Joomla 4 because the majority of the Joomla-specific code we use is isolated in just a few places.
What should users do when they migrate to J4 with the extensions? What should they expect from their extension providers?
My recommendation for end-users when updating their sites to J4 is as follows:
- Conduct a site audit to remove unused extensions
- Contact developers to find more about their plans for J4
- Look for alternative solutions ahead of time.
Over time, many sites get bloated with extensions that were installed and never used, or that are seldom used and are not critical for the site. This is the right time to review everything you have installed on your site. Make a list of all the extensions you don't use and remove them.
Before doing this, I recommend creating a copy of the site for development purposes to ensure that removing these extensions doesn't break an important part of your site.
Many developers will jump at the opportunity of providing a new version of their product for J4. Still, others may be unable to find the time or resources to update their extensions.
This is a good time to find out what their plans are. Look at their social media posts, their blog, and, if you can't find any information there, reach out directly. If your site depends on the functionality of specific extensions, it's essential to understand ahead of time if those extensions will remain available for J4.
Having followed the above steps, if you find out that an extension central to your site is no longer being developed or won't be updated for J4, then you must start looking for alternatives.
As a developer, it is important to start working on the update as soon as possible?
Yes, of course. We owe it to our users to stay on top of the latest developments and to ensure that our extensions remain compatible with new PHP versions, with the integrations we offer with other extensions, and last but not least, with new versions of Joomla.
While it is true that it has been a couple of years since the first Alpha version was released, the momentum now points to an RC version sooner, rather than later, and developers shouldn't be caught off guard.
Also, the sooner you allow everyone to begin testing your extension with J4, the sooner you'll be able to receive and deal with feedback and bug reports that will ensure a smooth transition.
How the different types of versions impact on the update of extensions (alpha, beta, RC)
Alpha versions may be too soon for developers to begin making changes to their extensions. Still, they definitely provide useful insights into understanding where the platform is headed and which changes may be needed in our extensions to support it and to take advantage of new capabilities.
Beta and RC versions are perfect to begin testing and updating your extensions because you know there shouldn't be any more breaking changes, or if there are, these would be minor. It also provides an opportunity to get your user-base involved with testing so they can provide feedback.
How do you expect the launch of J4 to impact your business?
I expect that it will be a smooth transition. Our flagship product, JReviews, is already compatible with the latest J4 beta. As with previous major version releases of Joomla, the transition for our user-base should also be seamless.
Of course, there are always issues that can arise with 3rd party integrations or bugs, and we'll deal with those in a timely fashion, as they arise.
Joomla 4 brings some exciting opportunities related to web services. We are looking forward to seeing how these develop and what we can do to strengthen our offering in this area.