Mautic 3: Building stable foundations

The world of technology is ever evolving, and with this release, Mautic 3 establishes stable foundations from which to build the Mautic of the future.

A huge thanks to Acquia's R&D team for leading this project and doing the vast majority of the heavy lifting, also to the community contributors who have submitted pull requests, bug fixes, and helped with rebasing pull requests from Mautic 2.x (which is an ongoing process). 

Many of you have also been involved with testing throughout the alpha and beta release cycles, contributing documentation, and helping us with the launch campaign. Without you, we would not be here making this release today, so thank you very much!

Mautic 3 is predominantly an ‘under the hood’ release which updates several outdated frameworks that Mautic relies upon.

Major changes in Mautic 3 include:

  • Updating from the deprecated Symfony 2.x framework to the Symfony 3.x framework.
  • Updating from the deprecated jQuery 2.x version to v3.3.1.
  • Updating the file manager.

Also, the minimum PHP version required has now been increased from 5.6.19 to 7.2.21, and the minimum MySQL version has been raised from 5.5.3 to 5.7.

These long-awaited improvements are not only important for future security, stability and performance, but also lays the foundation for future development. 

We expect our recently defined release strategy to bring some much-requested features and updates, ensuring that Mautic becomes the tool of choice for the digital marketer.

What has changed?

Although there is a lot of change in the codebase with this release (nearly 4,000 files were modified!), there will be little impact to Mautic users in their daily work – you will find the user interface and the feature set largely unchanged.

There are, however, some key changes that administrators of Mautic instances will need to bear in mind:

User-facing changes in Mautic 3 include:

  • {leadfield=...} tokens were removed. You will need to use {contactfield=...} tokens instead.
  • Console (used in cron jobs and command line tasks) was moved to another directory. You will need to update all your cron jobs and replace app/console with bin/console
  • There is a new file manager. You can see it when you go to a WYSIWYG editor and try to add an image, for example.
  • The Rackspace and OpenStack plugins for remote assets were removed due to an outdated library from Rackspace.

These changes have been reflected in the documentation, find more information on the Features by major release page.

The most significant changes will impact developers. A full list of deprecations and changes can be found here

We are in the process of updating the developer documentation to incorporate all of these changes. If you would like to help us with this project, please join the Education team slack channel - get an invite to the Slack instance at mautic.org/slack.

How do I download Mautic 3?

From today when you download from mautic.org/download you will automatically download Mautic 3.0.

Note: If you plan to integrate with HubSpot or run in a Windows environment, we have a couple of outstanding bugs which we plan to fix with the 3.0.1 release on 29th June 2020.

How do I update to Mautic 3?

Today we are releasing 2.16.3-beta. This release includes the upgrade script which will allow you to migrate from Mautic 2 to Mautic 3.   We will be releasing the stable version on 29th June 2020, subject to successful tests during this beta phase.

If you would like to test the migration script, we strongly recommend that you create a staging site rather than do this directly in your live instance. Take a look at this great blog article which explains how to do this.

As always, ensure that you have a working backup before updating.

To download the 2.16.3-beta, change your stability setting to beta in Configuration > System Settings and clear your cache. You will see the notification bell with the option to update, or at the command line you can run the command mautic:update:find.

Note: If you currently integrate with HubSpot or run in a Windows environment, we have a couple of outstanding bugs which we plan to fix with the 3.0.1 release on 29th June 2020.  Please wait until then if this applies to you.

Running the migration

The upgrade script can be executed in the user interface or at the command line. It has many built-in checks to ensure that your environment is suitable for Mautic 3.  If the script encounters any problems, you will receive an error code with a link that takes you directly to the relevant part of the documentation to learn what happened, and what to do next.

During the upgrade process a backup is made of your file and database structure. You will therefore need at least twice the size of your Mautic instance (files and database) available to run the upgrade.

If you have any third party plugins or custom plugins which you have not updated to support Mautic 3, you will need to move them from the plugins directory to, for example, a new plugins-backup directory before you run the migration. 

The script will remind you to do this during the upgrade process. This step is important, if your plugins are not Mautic 3 compatible you may experience errors on completion of the migration making your instance inaccessible.

A big thank you to Dennis Ameling for his work on this migration script!

How do I get help?

If you encounter errors with installing or upgrading to Mautic 3, we have dedicated documentation available, and a forum category for community-powered support.  

Please ensure that you use the post template and provide all the required information, as this enables our volunteers to troubleshoot with you more efficiently.

This is a companion discussion topic for the original entry at https://www.mautic.org/blog/community/mautic-3-building-stable-foundations
17 Likes

SO excited about this release! Can’t wait to see what’s next for the community :rocket: enjoy everyone!!!

6 Likes

What a task that was. Thanks to the entire team - you rock!
:heart:

4 Likes