mautic 5 – Mautic https://mautic.org World's Largest Open Source Marketing Automation Project Wed, 18 Dec 2024 11:56:40 +0000 en-US hourly 1 https://wordpress.org/?v=6.8.1 https://mautic.org/wp-content/uploads/2024/10/iTunesArtwork2x-150x150.png mautic 5 – Mautic https://mautic.org 32 32 Mautic 5: Beyond Expectations, Beyond Limits https://mautic.org/blog/mautic-5-beyond-expectations-beyond-limits Tue, 09 Jan 2024 16:22:24 +0000 https://www.mautic.org/mautic-5-beyond-expectations-beyond-limits/ Note: After release we found a bug with two missing migrations which was fixed with 5.0.1, released on 10th January. Please report any issues you find in this forum category.

Today we are excited to announce the release of Mautic 5.0 General Availability. Docker images will be available in the coming days. In addition we have formally released our new user documentation, and developer documentation which are capable of versioning and, in the future, multilingual translations.

This release includes support for Symfony 5, PHP 8.1 and updates many of our very outdated dependencies ‘under the hood’ to ensure Mautic remains secure and fit for the future.

We’ve also removed and updated a vast amount of old, legacy code which makes our core more streamlined and modern.

Since Mautic 3.0 we’ve been diligently working on increasing the amount of our codebase which is covered by automated tests – these tests pick up on bugs and problems with code quality for developers to address before they get to you, the user. We’re delighted to share that we’re now at 58.6% coverage, up from 30% with Mautic 3.0 and 50.28% with Mautic 4.4 – a further demonstration of our commitment to delivering a more robust, reliable open source marketing automation platform.

Mautic 5 Infographic showing the logo and an illustrated rocket with Mautic 5 Launch beneath, and text saying '7080 files changed, 4787 commits, 70+ contributors, Project started 8 April 2022, Alpha release June 30 2023, Beta release Oct 18 2023, Release Candidate 1 Nov 15 2023, Release Candidate 2 Dec 19 2023, Stable release Jan 8 2024

We have almost doubled the number of contributors to this major release compared to Mautic 4.0, which is testament to our growing, vibrant and welcoming community. Without you all, this would not have been possible – so a huge thank you to everybody who has contributed!

What has changed?

For Users

Security

The main goal for Mautic 5 was to replace all End of Life dependencies with versions that are still receiving security updates. This goal was achieved. We recommend upgrading to Mautic 5 as soon as possible, and right after upgrading to PHP version 8.1.

New features

  • Token Support in the email & landing page builder: The ability to insert tokens via the GrapesJS email and landing page builder front end was introduced to make it easier for people to use and insert tokens for fields in Mautic. (https://github.com/mautic/mautic/pull/11525)
     
  • New Feature: Point Groups: You can now have different types of points – known as Point Groups. Point groups give unlimited dimensions to your lead scoring. The new point groups structure not only helps you to learn more about your contacts, but also use this new info during the whole automation process. Point groups can be used in segments, campaigns as well! (https://github.com/mautic/mautic/pull/11891)
     
  • Email click heat map: Now a new feature, the email click heat map will show you exactly how your contacts click on your emails. Email heatmaps help to optimize your email communication and reveal black spots in your email. (https://github.com/mautic/mautic/pull/12696)

Enhancements to existing features

  • Remove cookies no longer used: We won’t use some of the old cookies anymore, which are not needed and are deprecated. This makes your GDPR Privacy Policy a lot shorter! (https://github.com/mautic/mautic/pull/12440)
     
  • Removed email configuration via the installation interface: As Email setting can be set through the UI very easily, it is removed from the installer. This makes the installer just 2 steps instead of 3. (https://github.com/mautic/mautic/pull/12216)
     
  • Queue settings in the user interface: If you use a queue for managing page or email hits, you can now set up a queue directly from the user interface, which gives you more control without needing to edit configuration files. (https://github.com/mautic/mautic/pull/12648)
  • URL shortener configuration in the user interface: If you need to collect extra information on your traffic or need more control over redirects, you can now integrate URL shorteners really simple into Mautic 5. (https://github.com/mautic/mautic/pull/12128)

Things to do after updating

  • Check URL shorteners: The bit.ly shorting service has been removed from core, with extended support now available for developers to integrate shortening services. A third party alternative is available if you need to use bit.ly.
     
  • Check your Email transports: Email transports need to be checked to verify they remain functional both for sending and processing bounces, unsubscribes etc. – there is a migration in place, but it’s recommended to do your own testing. If you use an email service provider via API, you probably need to install a plugin to continue using it. Please refer to the developer section below for more detail. Currently supported ESPs include Amazon SES, Sparkpost and Omnivery. Developers can submit new plugins via the Marketplace.
     
  • Verify the local.php file is in the correct location: The local configuration file was moved from app/config/local.php to config/local.php. The reason is that all user-created files shouldn’t be inside the source code. There is a migration that will move the config file to the new location.
     
  • Update your cron jobs: The command bin/console mautic:emails:send for sending emails via cron jobs was removed and now Symfony Messenger is used instead. Use this command to start a consumer: bin/console messenger:consume email. Check the cron jobs documentation for further details.
     
  • Check plugins: If you used the built-in Citrix or Pipedrive plugins, you need to install the third-party plugins and configure appropriately.

Removed Features

  • The calendar feature was removed and there is no replacement at this time.
  • The Froala editor is turned off by default. Turn it on if you use the legacy email or page builder via global settings.
  • Themes from Mautic 1.x (mauve, coffee and nature) have been removed.

Changes with Plugins

  • The Pipedrive Plugin is removed from Mautic Core.You can usethe third party alternative instead.
  • The Citrix Plugin has been removed from Mautic Core. You can usethe third party alternative instead.
  • The LinkedIn plugin has been removed from Mautic Core as it did not work with the new LinkedIn API. There is no replacement at this time.

For Developers

The main focus of all Mautic 5 refactoring was to get out of EOL (End of Life) libraries and PHP versions. With Mautic 5 we are getting closer to stock Symfony apps. It will help PHP developers to feel more comfortable with Mautic code and speed up development.

  • Autowiring and autoconfiguration for PHP services: Developers finally don’t have to update config.php files when adding PHP services or changing dependencies of the existing services.
     
  • JavaScript libraries are being installed and versioned via NPM: instead of using hard-coded JS files, using NPM is making it easier to update in the future.
     
  • More Rector: Rules were added so once you start updating your Mautic plugins to Mautic 5, it will do some of the refactoring for you.
     
  • index_dev.php is dead: Long live the env.local file! The environment (dev, prod, test) and debug (on, off) options are now configurable in the env.local file rather than accessing via index_dev.php.
     
  • Templating via Twig: All the PHP templates were converted into Twig as the PHP templating engine was removed in Symfony 5.
     
  • Symfony Messenger: Emails as well as processing email opens and page hits can be done asynchronously with Symfony Messenger queueing system and worker. Everything works synchronously by default so no extra configuration is needed.
     
  • Symfony Mailer: The Swiftmailer library used in previous Mautic versions is End Of Life. We had to switch to the new replacement. Not all of the email transports that worked in Mautic 4 will work in Mautic 5, some will need a plugin to be installed. Read more
     
  • New email send/queue system: The way messages are sent and queued has fundamentally changed as Mautic moves from using Swiftmailer to Symfony Messenger and Symfony Mailer. This has tremendous gains in terms of speed and performance.
     

    • Currently the following email service providers are supported:
      • SMTP (out of the box)
      • Amazon SES (plugin – coming soon)
      • Sparkpost (plugin)
      • Omnivery (plugin)
         
    • Other email service providers can use the basic Symfony plugins, but these don’t support callback loops (bounces, unsubscribes etc) so a specific plugin for Mautic is needed. Developers can learn more in the documentation and submit plugins to the Marketplace.

Mautic 5 makes 44% less requests for the first load, uses 21% less memory and loads 42% faster than Mautic 4.4 when loading the dashboard in a browser.

Static analysis tool PHPSTAN reported issues worth 4.3 MB for Mautic 4. In Mautic 5 the team reduced this to 2.2 MB. That means that almost a half of known technical debt was resolved.

Mautic 5 changes were made in 7,080 files. 187,363 lines were added and 587,501 lines were removed. That means that Mautic 5 is around 400,000 lines leaner compared to Mautic 4.

]]>
Announcing Mautic 5 Release Candidate-2 and revised date for General Availability https://mautic.org/blog/announcing-mautic-5-release-candidate-2-and-revised-date-general-availability Tue, 19 Dec 2023 15:04:46 +0000 https://www.mautic.org/announcing-mautic-5-release-candidate-2-and-revised-date-general-availability/ Today we’ve made an important update in our journey towards Mautic 5. Building upon the previous Release Candidate, we’ve taken into consideration your feedback and insight and have been striving to make Mautic 5 even better. Today, we’re excited to announce the availability of our Mautic 5 Release Candidate 2 (RC2) for testing!

Why a Release Candidate 2?

Since the release of the first Release Candidate a month ago, we’ve made a substantial number of revisions. These modifications are primarily focused on eliminating old code and enhancing the quality of the existing code. While our priority has always been the stability and performance of Mautic, we also value cleanliness and efficiency of our codebase. A streamlined code structure helps us ensure the platform’s scalability and maintainability.

Most of this work was done by Thomas Votruba from Rector who contributed an astounding 60+ pull requests to improve Mautic using Rector. Massive thanks to Thomas for this work.

Given the broad nature of these revisions, it’s critical that we perform more rigorous testing than usual to ensure stability, hence the decision to release an RC2.

When is the General Availability release coming?

We’re planning to release the General Availability on 9th January, assuming all goes well with testing and documentation.

We need your help

Now, we invite you, our awesome Mautic community, to take part in this crucial stage of testing. Your input and insight will allow us to identify any issues that need attention before the final release. By participating in the testing of RC2, you are directly shaping the final version of Mautic 5 and helping us make it the most robust and stable version we’ve ever had.

How to get involved

To participate in testing, simply download the Mautic 5 Release Candidate 2 here if you want to work locally, or follow the instructions at https://mau.tc/tester for using Gitpod to test in the cloud. For any bugs encountered, please report them via our GitHub issues after searching to ensure it’s not already been reported, ensuring you mention that you’re testing the RC2.

We are incredibly grateful for your continued support and assistance in this process. The collaborative testing of RC2 represents our commitment to providing the most reliable and effective marketing automation platform out there.

Thank you in advance for your active contribution to our community testing!

]]>
Announcing the Mautic 5 Release Candidate https://mautic.org/blog/announcing-mautic-5-release-candidate Thu, 16 Nov 2023 11:49:25 +0000 https://www.mautic.org/announcing-mautic-5-release-candidate/ We are excited to announce the Release Candidate of Mautic 5! This release sees numerous enhancements and bug fixes, maintaining our commitment to deliver a stable and improved platform to our community. 

⚠ This is a pre-release and should only be used in a test or development environment for the purposes of testing new features and bug fixes.

Here’s a rundown of all the fantastic work the contributors have done:

Refactoring

  • The deprecated cache helper is now replaced. This is important because it allows you to use Redis instead of MySQL to cache requests, which is much faster and helps reduce the load on MySQL. Kudos to John Linhart for the improvement (#12699).

Features and Enhancements

  • A new feature, the Email Click Heatmap, has been implemented by Patryk Gruszka to provide users with more in-depth insights (#12696). NB. This was available in the Beta release, but it was missed in the release notes due to a technical oversight.

Bug Fixes

Several bugs have been addressed in this release:

  • When cloning an email, the publish up and down dates are copied over. This can cause issues when clients do not notice, and publish the email but have no intention of automatically sending it (yet) using broadcast:send. This has been fixed by Nick Vanpraet (#12784).
     
  • When you clone emails with plaintext you see URLs in the tracking data from the original email, which is confusing for the user. This is now reset when cloning an email. This has been solved by Zdeno Kuzmany (#12748).
     
  • A user with “View Others” access to contacts is unable to see any other contacts but their own on the dashboard widget for contacts created in time. This issue has been tackled by Jason Woods in their first contribution to Mautic! (#12819).
     
  • Several places in Mautic resulted in a 500 error when cloning the entities, including reports and SMS message. This was due to a missing request object on clone operations which has been fixed by Mattias Michaux (#12811).
     
  • When a user tries to perform an “override lock” action while another user is in the process of editing a form, it triggers an Error 500. This error disrupts the expected workflow and prevents the intended action from being completed. Nick Vanpraet resolved this bug. (#12837).
     
  • When creating a new email, the options for selecting the preference centre were missing. This has been fixed by Anna Munk (#12829).
     
  • And many more.

A big thank you to everybody who has helped with testing and reviewing over the last month:

  • John Linhart (20)
  • Zdeno Kuzmany (11)
  • Patrick Jenkner (10)
  • Ruth Cheesley (9)
  • Patryk Gruszka (2)
  • Volha Pivavrchyk (1)
  • Jan Kozak (1)
  • Mattias Michaux (1)
  • Anna Munk (1)

If you’d like to help with this essential task – which can all be done in the browser without even needing to install Mautic – please check our onboarding guide at https://mau.tc/tester.

New Contributors

We’d like to give a shout-out to Jason Woods for their first contribution (#12819). Welcome to the Mautic community!

This release is the result of the outstanding work, skills, and dedication of the Mautic community. Mautic grows thanks to these collective efforts!

Please join us in testing this release candidate to ensure a smooth final release. Download the Mautic 5 Release Candidate here.

Please report any issues in #mautic-5 on Slack (get an invitation at https://mau.tc/slack-invite) so that the team can review them with you.

And as always, happy marketing automation!

]]>
Announcing Mautic 5 Beta – Now Available for Testing https://mautic.org/blog/announcing-mautic-5-beta-now-available-testing Wed, 25 Oct 2023 09:58:19 +0000 https://www.mautic.org/announcing-mautic-5-beta-now-available-testing/ Hello community!

We are excited to announce that Mautic 5 beta-2, the newest version of our open source marketing automation platform, is available for public testing!

With Mautic 5, we aim to bring you a more intuitive, powerful, and seamless marketing automation experience. We’ve worked really hard to get to this point – huge thanks to all the community members who have contributed to the release!

⚠IMPORTANT NOTE:

This is a pre-release, which means it should never be used in a production environment. It would be helpful that people could test upgrading your development instances from Mautic 4 – there will be an upgrade path to the Release Candidate when it is released. 

Please only use it in testing environments, and report back your findings.

The major release focuses mainly on a major update to Symfony 5 and supports PHP 8.1, but it also brings several user-facing changes and exciting news for developers. Read on for more information.

What’s New in Mautic 5 Beta?

In addition to the updates that were released in the alpha and 86 new bugs being squashed, we have the following notable features and enhancements with the Beta release:

  • CKEditor has been updated from v4 to v5 (#12641)
  • Custom emails can now set a reply-to address (#11662)
  • More detailed information on email engagement stats available in reports (#12713)
  • Engagement with focus items is now displayed on the contact timeline (#11999)
  • Focus items now display click conversion rates (#11945)
  • Segments with filters now display an icon in list view (#12533)
  • Update to URL shortener system – if you use bit.ly you now need to use the third party plugin (#12299)
  • The Marketplace now shows you the command to install a plugin at the command line (#12529)
  • Improvements to the new queueing system including UI-based configuration (#12648)
  • Google Analytics now supports GA4 (#12421)
  • The application and local configuration has been separated, to better support composer-based installations (#11561)
  • More autowiring (#12493)
  • Speed improvements with automated tests (#12531)

How Can You Help?

By testing the Mautic 5 beta, you have a chance to contribute to its success. Here’s how you can help:
 

  1. Test the Beta: Download the beta, test it diligently, and let us know if you encounter any bugs or issues. Your feedback can help us improve the final product. Please search first on github.com/mautic/mautic/issues before reporting any bugs there.
     
  2. Provide Feedback: Share your thoughts about the features and functionality. We want to know what works for you and what doesn’t.
     
  3. Spread the Word: Tell your communities, colleagues, and friends about the new Mautic 5 beta. The more people that test the beta version, the more feedback we’ll receive, leading to a stronger final product,

All being well, the Release Candidate will be published on 30th October – but we have a lot to do between now and then, so please consider volunteering to help with testing, especially on Fridays in #t-product and #mautic-5 on Slack in our Open Source Friday sprints!

Please remember that this is a beta version and should not be used in a production environment. We recommend testing it in a safe staging or development environment. Thank You!

We are excited to see Mautic evolve with the needs of its community and are grateful for your continued support and feedback in this process. You make Mautic what it is, and for that, we thank you.

Download the Mautic 5 Beta now, dive in, and let us know what you think. We believe that with your help, we can make Mautic 5 the best version yet!

Until then, happy testing!

]]>
The power of emails: unveiling the magic behind marketing and transactional messages https://mautic.org/blog/power-emails-unveiling-magic-behind-marketing-and-transactional-messages Wed, 23 Aug 2023 11:23:23 +0000 https://www.mautic.org/power-emails-unveiling-magic-behind-marketing-and-transactional-messages/ Welcome to the exciting world of email marketing, where communication meets innovation! 

Whether you’re a budding enthusiast just beginning your journey or an experienced marketer seeking to develop your strategies, understanding the different types of emails that can be used when you are communicating with your contacts is vital. In this article, we’ll explore the two primary email categories which you’ll work with in Mautic: marketing and transactional emails. 

We will explore their purposes, significant distinctions between the two, and the importance of the changes coming with Mautic 5.0 and later, where you will be able to send transactional emails even when contacts have opted out of receiving marketing communications. So let’s embark on this adventure and unlock the wonders of email marketing together!

Unveiling the two sides: marketing and transactional emails

Marketing emails: the essence of promoting

Marketing emails serve as potent tools for businesses to connect with their audience, build brand awareness, and drive conversions. They encompass a wide range of email campaigns, including newsletters, promotional offers, product updates, and customer surveys. 

The primary objective of marketing emails is to engage subscribers, nurture leads, and generate conversions. Conversions might mean purchasing something, but equally it could be signing up for an event, attending a webinar, or any other action that you want the contact to take. The important thing here is that you’re trying to promote a specific action or goal to your contact.

Transactional emails: the fundamental pillars of communication

While marketing emails focus on promotion – like the initial, exciting stages of a relationship, where attraction and curiosity are sparked – transactional emails reflect the ongoing, reliable communication and commitment that lay the foundation for a long-lasting customer relationship.

Transactional emails are generally triggered by specific interactions or transactions between the customer and the business. Examples of transactional emails might include order confirmations, shipping notifications, password resets, re-validating consent to contact and account-related updates. 

Transactional emails are often personalized, and provide essential information to customers, enhancing their overall experience with your brand.

The difference between marketing and transactional emails

In summary, transactional emails differ from marketing emails in three key ways:

  • Purpose: Transactional emails aim to facilitate a transaction or provide information directly related to a contact’s interaction with a business. Marketing emails, on the other hand, are designed to promote products, services, or events to the contact.
     
  • Content: Transactional emails are typically triggered by a specific action and are personalized accordingly, containing specific details relevant to the customer’s action, such as purchase receipts or password reset links. Marketing emails often encompass a broader range of content and while there may be personalization, in general they are tailored to engage a larger audience.
     
  • Consent: Transactional emails are considered ‘transactional’ because they do not require explicit consent from the recipient, and therefore do not need to provide an unsubscribe link. By contrast, marketing emails must comply with spam regulations, requiring recipients to provide opt-in consent to receive promotional content and be able to remove themselves from receiving such content.

Working with consent

Email marketers shoulder the responsibility of adhering to legal requirements such as the General Data Protection Regulation (GDPR) and Anti-Spam regulations. GDPR governs the protection of personal data, ensuring that individuals have control over their information and how it is used. When sending marketing emails, businesses must obtain explicit consent from recipients.

However, transactional emails are treated differently under GDPR. As they are crucial for completing a transaction or delivering vital information, they are considered a legitimate interest of both the business and the customer. Therefore, they can be sent to recipients even if they have previously opted out of marketing communications.

As a result, transactional emails typically tend to be delivered into the main inbox rather than the promotions section, for example, because they are deemed to be important and individual, rather than promotional and bulk mailed.

Transactional emails in Mautic 5.0

From Mautic 5.0 onwards, transactional emails will be sent even if the contact has opted out of email communication. They will no longer have an unsubscribe header – because it’s not relevant for a contact to unsubscribe from essential transactional emails.

To maintain compliance, it’s crucial to ensure that when you are sending transactional emails, they are primarily used to serve their intended purpose. 

Marketers should limit promotional content within transactional emails to avoid blurring the lines with marketing messages, where consent is required. By providing only relevant, necessary information, you can leverage the power of transactional emails effectively as part of your marketing strategy.

If you try to send marketing emails as transactional emails – for example to circumvent landing in the Promotions tab or remove the unsubscribe options – it might work for a short while but you will eventually be flagged by your contacts as spam or caught and flagged by email providers’ systems. This can result in catastrophic damage to your deliverability, which can be extremely damaging and difficult to recover from. Don’t do it!

Understanding the potential of transactional emails

Enhancing user experience

Transactional emails offer invaluable touchpoints to build and nurture customer relationships. While marketing emails focus on the broader audience, transactional emails provide personalized interactions directly tied to a customer’s actions. By delivering exceptional transactional experiences, you foster stronger connections and amplify brand loyalty.

Seizing upselling and cross-selling opportunities:

While we have mentioned that you must be careful not to send marketing content as transactional emails, there is some leeway when it comes to including small amounts of highly relevant promotional content within a transactional email.

For example, including personalized product recommendations in a shipping confirmation email can entice customers to explore complementary items or upgrades. Leveraging transactional emails carefully and strategically allows you to maximize revenue potential while providing the all important additional value to customers.

Showcasing a consistent brand identity

Every email, whether marketing or transactional, provides a chance to showcase your brand’s identity. Consistency in design, tone, and formatting across all email types reinforces your brand image. From the logo placement to the choice of language, transactional emails should align with your brand’s essence, leaving a lasting impression on recipients.

Conclusion

As we conclude this expedition into the realm of email marketing, we’ve explored the pivotal roles played by marketing and transactional emails. 

Marketing emails drive engagement and conversions, while transactional emails facilitate seamless transactions and foster customer relationships. 

Understanding the nuances of transactional emails, complying with legal regulations like GDPR, and leveraging their potential for enhancing user experiences and brand loyalty will empower you on your email marketing journey

So, embrace the power of emails, and unlock new possibilities in expanding your business horizons!

P.S. If you want some inspiration of great examples of transactional email designs, check out this blog post: https://www.brevo.com/blog/transactional-email-design-examples/

]]>
An update on the Mautic 5 release schedule https://mautic.org/blog/update-mautic-5-release-schedule Tue, 25 Oct 2022 15:46:18 +0000 https://www.mautic.org/update-mautic-5-release-schedule/ Much work has been happening since we released Mautic 4 just over a year ago, to prepare for our next major update.

What follows is an update on how we’re getting on with that process, and what you can expect as a Mautic user as regards timelines and new features.

tl;dr

  1. There will be no more feature releases for Mautic 4
  2. Monthly bug fix releases for Mautic 4 will continue
  3. Mautic 5 alpha is expected to be released by the end of November, with the aim of a General Availability release in early January 2023
  4. Developers need to take note of our new workflows when contributing bug fixes and features

Mandatory upgrades

Symfony 5 support

Mautic uses several different tools ‘under the hood’ which we have to keep up to date, and the biggest of these is Symfony, the framework that underpins Mautic. Symfony has a regular release schedule just like Mautic, and as a result we have to keep up with that and implement support for new releases in Mautic.

Screenshot showing the Symfony release schedule - key points being end of active support for Symfony 4 in Nov 2022 and Security Support in Nov 2023, end of active support for Symfony 5 in Nov 2023 and end of security support in Nov 2024

Mautic 5 will ship with Symfony 5 support, and we are very nearly complete with the work that needs to be done in this area, which we are tracking under https://mautic.atlassian.net/browse/TPROD-248

We recently crowdfunded $4,000 to support a contractor working through a large part of the outstanding tasks where we could not find community contributors to work on. This work has just been started and is expected to be concluded by the end of October.

As soon as this work is completed we will be able to test Mautic with Symfony 5, and fix any outstanding issues.

We aim to have this completed by the end of November, with a view to making a testable alpha release at that point. We are aiming for a Release Candidate in December, with General Availability in January 2023 assuming the support from the community with testing and reviewing.

If the work proceeds faster than expected (which you can help with, by joining us on Fridays to help with testing!) we may also consider whether we can jump two versions, and include support for Symfony 6 with Mautic 5.

The revised release schedule can be found below, and is always available on the Releases page.

PHP 8.1 support

We were not able to implement support for version 8.1 until Mautic 5, because it requires some changes which break backwards compatibility. The work to introduce support for 8.1 will necessarily mean that we no longer support the outdated version, 7.4, as we only support the latest two minor versions of PHP. 

This work will commence as soon as we have completed the work for Symfony 5 support, because it is dependent on several aspects of that work.

We aim to have PHP 8.1 support included in the alpha release at the end of November.

New features

Mautic 5 will ship with some new features:

Contacts

  • Allow exporting of stage with contact exports
  • Show contact’s engagement statistics on their profile (Total sent, Open rate (OR), Click-through rate (CTR), Click-to-open rate (CTOR))
  • Show contact created and modified date on profile

Campaigns

  • Use stages as a condition in Campaign Builder

Segments

  • Showing a segment dependency tree to identify optimization opportunities in your segmentation
  • Several substantial performance optimizations for building segments

Emails

  • Replace Swiftmailer with Symfony Mailer (3x faster message sending, and no more cron jobs for sending messages!)
  • Prevent duplicate sending of segment emails when a send is already in action
  • Addition of dropdown in editor for inserting Mautic tokens into the GrapesJS builder

Forms

  • Allow formatting of help messages on Forms with HTML

Landing pages

  • Configure a success message when preference center options are updated

Reports

  • Filtering reports by tags
  • Reports based on devices used

Webhooks

  • Several substantial performance optimisations relating to the processing of the Webhooks queue

Potential features

More features may be added over the coming months, if we have help to test them. Some examples of features waiting for review include:

Anybody who uses Mautic can help with testing these features, and developers can help with doing code review. Read more in our Community Handbook, and if you can join us on Fridays that is the best time, as we have a community contribution event every week – just head to Slack (get an invite at https://mautic.org/slack) and join #t-product.

A note for developers

As we have been working with the release process since Mautic 3, we have been refining our workflows. We have made a change to help with improving the stability of releases and prevent bugs slipping in as a result of merging changes from one branch to another.

The basic principles:

Assuming a = current major release, b = current minor release, c = upcoming major release

At the present time, a.b = 4.4, c.x = 5.x

  • Features and bug fixes should always made against the c.x branch in the first instance – for example 5.x
     
  • Bug fixes that need to be released into a minor or patch release should ALSO be made against the current minor release branch a.b – for example 4.4, in addition to being made on the c.x branch
    • This means creating a duplicate PR – we know it is an extra step, but:
       

      • This helps to prevent bugs with complex merges of minor to feature branch (often having over 100 conflicts to be resolved)
         
      • This means that the correct environments for the unit tests with the appropriate PHP and MySQL versions can be run at the point where you create the PR, and you can address any issues right away
         
      • This means that your bug fix will be tested in both versions, not just one and hoping it works in the other (which has led to several bugs recently).
         
      • This means we should be able to merge your PRs much faster and with greater confidence.

We know that this is an extra step, however doing this when you create the PR significantly reduces the possibility of bugs and helps us to move faster with making releases.

]]>