Joomla 4 is around the corner

Joomla 4 will be released August 17th, 2021. Here's how it affects our extensiond and how we prepare for it.

Joomla 4 and Joomla 3.10

On August 17th, 2021 the Joomla project will be releasing two versions of the Joomla CMS: Joomla 3.10 and Joomla 4.0.

Joomla 3.10 is the last release in the Joomla 3.x release cycle which start an almost unbelievable 9 years ago. It will be supported for security and minor bug fixes until August 17th, 2023. It is meant as a stepping stone which will allow users to update from Joomla 3 to Joomla 4. In essence, it's the Long Term Support release to help users migrate to the newer, faster and better Joomla 4.

Joomla 4.0 is the next major version. A lot of things has changed. The biggest takeaway is that it's much faster, more accessible, uses modern frontend and backend code and is the version where all new features and major effort will be put on from now on. We recommend our clients to start planning their migration to Joomla 4 as soon as possible, ideally by mid-2022 at the latest.

Our software and Joomla 4

All of our software is already compatible with Joomla 4. In fact, we were the first extension developer to support Joomla 4 ever since it was still in Alpha 2 back in November 2017. We have tracked Joomla 4's development closely through the 12 alpha, 7 beta and 5 release candidate versions even though this was adding obscene amounts of work due to the constant changes. Talking about commitment, right? So, all of our latest versions for Joomla 3 are also compatible with Joomla 4. You can upgrade your sites to Joomla 4 stable without fear that our extensions will interfere.

Moving forward we plan on having Joomla 4-only versions of our software. We have already been rewriting our extensions as native Joomla 4 extensions, using the Joomla 4 core MVC API and native Bootstrap 5 styling. These versions will of course only be compatible with Joomla 4.

We will still be supporting Joomla 3 until it's officially End of Life. We will continue to maintain versions of our software which are compatible with Joomla 3.10 and provide limited support (no feature requests) for it until Joomla 3.10 becomes End of Life on August 17th, 2023. The versions we will be maintaining for Joomla 3 are the same version you were using until now. Their features are frozen in time, we will just make sure they will keep working on Joomla 3.10 and PHP versions up to and including 8.1. We cannot make any promises for any PHP versions past 8.1; it honestly depends on the amount of work required.

So what is supported where? To clarify, there are two distinct cases for our extensions.

A. Only one version available, compatible with Joomla 3.10 and 4. Business as usual. The version is fully supported for installing and using on both Joomla 3.10 and 4.0. It will receive security fixes, bug fixes and new features.

B. Two versions available, one (version X) compatible with Joomla 3.10 and 4 and another one (version Y) compatible with Joomla 4.0 only. Version X is fully supported on Joomla 3.10. It is minimally compatible with Joomla 4 so you can upgrade without causing problems to your site and without losing any settings and files. However, we do not provide support for using that version on Joomla 4. Instead, version Y is fully supported on Joomla 4.0 and we ask you to install and use this one.

For extensions in the first category, we are already working on rewriting them as native Joomla 4 extensions, using the Joomla 4 core MVC API and native Bootstrap 5 styling. When such a version is made available the extension will migrate to the second category. All new features will be implemented for the Joomla 4 native version. The older, primarily Joomla 3 version of our software will only receive the minimum of security fixes, bug fixes and updates to ensure that it can be used with Joomla 3.10 and allow you to update to Joomla 4. In other words our older, Joomla 3-compatible versions will be treated the same way as Joomla 3.10 itself: a long term support release whose primary focus is to allow you a smooth update to Joomla 4.

We will be supporting Joomla 3.10 and our extensions compatible with it until Joomla 3.10's End of Life which is presumably August 17th, 2023 per Joomla's promise for exactly two years of Long Term Support. Kindly note that after August 17th, 2023 we will no longer support installing and using our software on Joomla 3.

Below we will explain the status of each and every of our Joomla extensions as of today, August 6th, 2021. We will be updating this article as we are migrating more extensions.

Akeeba Backup

Akeeba Backup 9 is our new, Joomla 4 native version of Akeeba Backup. It can only be installed and used on Joomla 4. This is where new features and major updates will be implemented. This is the main supported version.

Akeeba Backup 8 is supported for installation and use on Joomla 3.10. It is compatible with Joomla 4 but only so that it's possible for you to update to Joomla 4 and take a backup of your new site before upgrading to Akeeba Backup 9 or later. Akeeba Backup 8 will only receive security fixes, bug fixes and the minimum required updates to run on Joomla 3.10 and PHP versions up to 8.1. We do not plan supporting it on newer PHP versions.

Akeeba Backup is also a bit of a special case. A large part of it is its backup engine (Akeeba Engine) and the restoration script (ANGIE) which is common among all our backup products. Therefore it's possible that we do implement some new features in Akeeba Engine and/or ANGIE which will appear as new features in Akeeba Backup 8. This doesn't mean that we deliberately implement new features in Akeeba Backup 8, it's just that it makes no sense spending additional effort to remove features already implemented in common code from Akeeba Backup 8.

Migration required. Akeeba Backup 9 uses a different package name (pkg_akeebabackup in version 9 instead of pkg_akeeba in version 8) and component name (com_akeebabackup in version 9 instead of com_akeeba in version 8). Its database tables are also different. A migration assistant will pop-up the first time you run Akeeba Backup 9 on your Joomla 4 site as long as you still have Akeeba Backup 8 installed. After the migration — and only after the migration — you can uninstall Akeeba Backup 8. There are instructions in our documentation.

CRON jobs need to change. Our Joomla 4 native extensions use Joomla 4's brand new CLI script, cli/joomla.php, instead of our old custom CLI scripts. You will need to edit your CRON jobs. Instructions for that are in the documentation. Don't worry, it's a very simple replace in your CRON jobs.

Admin Tools

Admin Tools 7 is our new, Joomla 4 native version of Admin Tools. It can only be installed and used on Joomla 4. This is where new features and major updates will be implemented. This is the main supported version.

Admin Tools 6 is supported for installation and use on Joomla 3.10. It is compatible with Joomla 4 but only so that it's possible for you to update to Joomla 4 and subsequently install Admin Tools 7 or later. Admin Tools 6 will only receive security fixes, bug fixes and the minimum required updates to run on Joomla 3.10 and PHP versions up to 8.1. We do not plan supporting it on newer PHP versions.

CRON jobs need to change. Our Joomla 4 native extensions use Joomla 4's brand new CLI script, cli/joomla.php, instead of our old custom CLI scripts. You will need to edit your CRON jobs. Instructions for that are in the documentation. Don't worry, it's a very simple replace in your CRON jobs.

Akeeba Ticket System

Akeeba Ticket System 4 is currently supported on BOTH Joomla 3.10 AND Joomla 4.0. It works in both CMS versions just fine.

We expect to begin work on a Joomla 4 native version for Akeeba Ticket System (version 5) towards the end of 2021 and a first public release of that version in Q3 2022. The reason for the long delay is that Akeeba Ticket System is a very complicated component which needs to be rearchitectured and rewritten whereas most other extensions had a lot of common code between their Joomla 3 and Joomla 4 versions.

No migration required. The current version works on Joomla 3 and 4 just fine.

LoginGuard

Akeeba LoginGuard 5 is currently supported on BOTH Joomla 3.10 AND Joomla 4.0. It is written with the Joomla 3 MVC API and runs under Joomla 4's backwards compatibility layer.

We expect to rewrite LoginGuard as a Joomla 4 native extension and release a new major version of it in Q4 2022 to Q2 2023, depending on how soon Joomla 4 will remove the backwards compatibility layer.

No migration required. The current version works on Joomla 3 and 4 just fine.

SocialLogin

Akeeba SocialLogin 4 is our new, Joomla 4 native version of SocialLogin. It can only be installed and used on Joomla 4. This is where new features and major updates will be implemented. This is the main supported version.

Akeeba SocialLogin 3 is supported for installation and use on Joomla 3.10. It is compatible with Joomla 4 but only so that it's possible for you to update to Joomla 4 and subsequently install SocialLogin 4 or later. Please note that unlike our other extensions we will NOT be treating any changes in third party APIs as bugs. It is possible that some social login integrations will stop working with Akeeba SocialLogin 3 before Joomla 3.10's End of Life in August 2023.

No migration required. Just install the new version on top of the old one. Joomla 4 should be able to find the update automatically.

Engage

Akeeba Engage 2 is currently supported on BOTH Joomla 3.10 AND Joomla 4.0. It works in both CMS versions just fine.

We expect to begin work on a Joomla 4 native version for Akeeba Engage (version 3) towards the end of Q3 2021 and a first public release of that version in Q1 2022.

No migration required. The current version works on Joomla 3 and 4 just fine.

DataCompliance

Akeeba DataCompliance 2 is currently supported on BOTH Joomla 3.10 AND Joomla 4.0. It works in both CMS versions just fine.

We WILL NOT work towards a Joomla 4 native version of this extension. This extension is deprecated (we have stopped working on it) and will become End of Life in August 2022. Please use Joomla's built-in Privacy Consent component instead.

Apparently, the Joomla Privacy Consent component is considered a little more than a Proof of Concept which shouldn't have made it into production by its own author. We have also found some issues which put into question whether it is GDPR compliant at all.

As a result we decided to keep maintaining Akeeba DataCompliance and create a new version 3.0 as a native Joomla 4 MVC component. This should be available towards Q4 2022. We will also make sure that both version 2 and version 3 work with both our own DataCompliance plugins and Privacy plugins, expanding DataCompliance's support to third party extensions.

ContactUs

Akeeba ContactUs 4 is our new, Joomla 4 native version of ContactUs. It can only be installed and used on Joomla 4. This is where new features and major updates will be implemented. This is the main supported version.

Akeeba ContactUs 3 is supported for installation and use on Joomla 3.10. It is compatible with Joomla 4 but only so that it's possible for you to update to Joomla 4 and subsequently install ContactUs 4 or later. ContactUs 3 will only receive security fixes, bug fixes and the minimum required updates to run on Joomla 3.10 and PHP versions up to 8.1. We do not plan supporting it on newer PHP versions.

No migration required. Just install the new version on top of the old one. Joomla 4 should be able to find the update automatically.

DocImport

Akeeba DocImport 4 is our new, Joomla 4 native version of ContactUs. It can only be installed and used on Joomla 4. This is where new features and major updates will be implemented. This is the main supported version.

Akeeba DocImport 3 is supported for installation and use on Joomla 3.10. It is compatible with Joomla 4 but only so that it's possible for you to update to Joomla 4 and subsequently install DocImport 4 or later. DocImport 3 will only receive security fixes, bug fixes and the minimum required updates to run on Joomla 3.10 and PHP versions up to 8.1. We do not plan supporting it on newer PHP versions.

No migration required. Just install the new version on top of the old one. Joomla 4 should be able to find the update automatically.

FOF and FEF

FOF 4 can be used on BOTH Joomla 3 AND Joomla 4. However, we consider it deprecated. We will continue maintaining it until August 17th, 2023 at which point it will become End of Life. No further releases of FOF are planned. If you are a developer using FOF for your extensions we strongly recommend migrating them to Joomla 4 core MVC.

FEF 2 can be used on BOTH Joomla 3 AND Joomla 4. However, we consider it deprecated for use with Joomla. We will continue maintaining the Joomla package until August 17th, 2023 at which point it will become End of Life. Beyond that point in time we will only be using FEF in our WordPress plugins. Our Joomla extensions will be using Joomla's core Bootstrap styling.

DarkMagic

DarkMagic was an experimental plugin to add Dark Mode support for Joomla 3. This is discontinued effective immediately.

We are working on a DarkMagic version for Joomla 4. However, it's nowhere as complete as DarkMagic for Joomla 3 ever was. As a result we have removed public downloads and relegated it to the status of an “internal extension”, only to be used on our own site. If / when we are confident it can be generally useful we will add a public download with a big warning that the quality of results is not guaranteed.

If you want Dark Mode for your Joomla administrator today you can use the third party Bettum administrator template. We are not aware of a Dark Mode aware frontend template for Joomla 4 which uses Bootstrap 5. There are other templates using different template frameworks, such as Lightning, but it also means that you need to learn yet another frontend framework and create template overrides for every core and third party extension. These limitations is why we keep on working on DarkMagic.

Experimental extensions

We had some experimental extensions for Joomla 3. Most of them have been replaced by core features. For example, you no longer need MailMagic; Joomla 4 has customisable HTML mail templates. You no longer need our SVG support plugin; Joomla 4's media manager can be configured to support SVG just fine. Overload was used to mass-create articles for testing purposes; Joomla has long changed its database schema to no longer cause problems with hundreds of thousands of articles per category.

So, there's really nothing left to do with these experimental extensions but thank them for their service and retire them. They are discontinued effective immediately.

Before upgrading an existing site to Joomla 4

Some of our software has been around since Joomla 1.0. Ever since Joomla 1.6 it's been possible to directly upgrade your site to the newer Joomla version, even a new major version, instead of “migrating” it (create a new site and transfer most of its content). As a result, if you have a site which has been around for years it's possible it may have accumulated some ‘cruft’: obsolete extensions which should've been removed a long time ago but are still present on your site. These extensions will appear as potential upgrade issues when you are trying to install a Joomla 3.10 update (including upgrading to Joomla 4) or when you are trying to update Joomla 4 itself. These old extensions have not been maintained for anywhere between 1 to 10 years at the time of this writing (August 2021) and will not work on Joomla 4. It's extremely doubtful they will even work on Joomla 3.10. As a result, they need to be removed.

We could list these extensions but it would be very complicated for you to go through each and every site you want to upgrade and go through a list of approximately 150 extensions. So, we did something better: we automated cruft removal!

We have create a special extension called Magic Eraser which attempts to automatically remove all remnants of our VERY old extensions which are now obsolete. The Magic Eraser can be downloaded from here.

Please only try to use Magic Eraser if you have already updated all of our extensions to their latest versions. Also make sure that you have taken a backup of your site before trying to install Magic Eraser. It is very aggressive in removing obsolete versions of our software, to the point that it might break something if you are actually still using one of these old versions, especially Akeeba Release System and Akeeba Subscriptions.

If you want to still use an old version of Akeeba Release System and Akeeba Subscriptions you will need to install the package of that version again after installing Magic Eraser. Please note that these old versions will NOT work with Joomla 4. It's the end of the line. Kindly note that we gave warning that Akeeba Subscriptions was not going to be maintained since November 2013. Moreover, please do keep in mind that Akeeba Release System DOES have a new version, compatible with Joomla 4, without losing any substantial features.

If you are unsure, try creating a copy of your site using Akeeba Backup Core, the free of charge edition of Akeeba Backup. First run Magic Eraser on the copy of your site and make sure nothing breaks. Then and only then should you try running it on the live version of your site.

Just download the very small ZIP file and install it like any other extension. It will find and uninstall all previous versions of our extensions. The installation will print an error that it failed; this is deliberate. After cleaning up your site we block the rest of the installation so that we don't leave any leftovers behind.