Orion Edition 6.0.0 Switch to the latest release
Mautic 6 is here!
Today we are excited to announce the release of Mautic 6.0 General Availability.
This release includes support for Symfony 6, PHP 8.3 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.
π¨ IMPORTANT: Please read our release blog post BEFORE UPDATING at https://mautic.org/blog/mautic-6-0-orion-edition-is-released/, which contains important information about things that have changed in Mautic 6. Importantly you will need to check your email and landing pages are compatible with the GrapesJS builder, as the legacy builder has now been removed.
Developers and advanced users: The blog post has some plain-english information but you can find the finer details in https://github.com/mautic/mautic/blob/6.x/UPGRADE-6.0.md for information on upgrading plugins.
Update to Mautic 6 in the usual way (at command line) after taking a full backup of your files and database and verifying its integrity.
Whatβs changed?
With any major Mautic release we always try to remove old code, and bump up support to the next Symfony version. This means that developers are going to need to make changes to their code in order to support Mautic 6.x.
Please check the 6.0-upgrade file for all the information youβll need.
Some key things to note from this release:
- PHPSTAN and Rector are now updated to v2
- There has been extensive removal of deprecated code and refactoring
- Mautic now uses Symfonyβs Authentication system which replaces the Guard component
β οΈ Breaking changes
- Remove deprecated GenericPointSettingsType for M6 by @putzwasser in #13904
- Removing the Gated Video feature by @escopecz in #14284
- Use the new Symfony authenticator system. by @biozshock in #14219
- [UI] Remove Froala styles by @andersonjeccel in #14271
- Upgrading Mautic to Symfony 6 by @escopecz in #13962
- [UI] Remove Font Awesome by @andersonjeccel in #14265
- Removing the legacy builder by @escopecz in #14450
- Removed MauticFactory::getDatabase. by @biozshock in #14418
- Removed MauticFactory::getIpAddressFromRequest and MauticFactory::getDate. by @biozshock in #14564
- Removed MauticFactory::getParameter. by @biozshock in #14565
- Removed MauticFactory::getEntityManager. by @biozshock in #14611
- Remove whole MauticFactory by @biozshock in #14682
- Removed CodeMirror JS by @escopecz in #14512
- Removed Froala JS by @escopecz in #14501
- Removed ModernizrJS as not necessary anymore at this age by @escopecz in #14636
- Removed deprecated CoreParametersHelper::getParameter by @putzwasser in #13837
- Added missing return type to LeadEvent + unit test by @putzwasser in #13842
- Fixed data encoding inconsistency for Form submissions by @patrykgruszka in #14604
π§ Refactoring
- Automatic code cleanup (Rector) by @escopecz in #14094
- Tighten types that were reported by phpstan. by @biozshock in #13110
- Remove deprecated getUniqueIdentiferFields from FieldModel. by @biozshock in #14144
- Running composer fixcs after CS Fixer was updated by @escopecz in #14391
- Removed unused methods from MauticFactory. by @biozshock in #14400
- Upgrading PHPSTAN and Rector to v2 by @escopecz in #14408
- Removed getSecurity and getSecurityContext from MauticFactory. by @biozshock in #14399
- Remove MauticFactory::getHelper. by @biozshock in #14382
- [UI] Refactor user preferences to use database instead of localStorage by @andersonjeccel in #14398
- Removed MauticFactory::getKernel. by @biozshock in #14435
- Removed MauticFactory::getDispatcher. by @biozshock in #14436
- Removing deprecated parts from the PageBundle by @JonasLudwig1998 in #14244
- Remove MauticFactory::getTheme and MauticFactory::getInstalledThemes. by @biozshock in #14443
- Remove MauticFactory::getRequest. by @biozshock in #14446
- Remove MauticFactory::getLogger. by @biozshock in #14463
- Global search by @shinde-rahul in #14432
- Remove MauticFactory::getVersion. by @biozshock in #14464
- Remove MauticFactory::getMailer. by @biozshock in #14494
- Remove MauticFactory::get and MauticFactory::serviceExists. by @biozshock in #14462
- Remove MauticFactory::getSystemPath. by @biozshock in #14496
- Refactored onCampaignTriggerActionUpdateLead to use batches by @rohitpavaskar in #14495
- Resolved PHP 8.0 warnings by @escopecz in #14664
β¨ Features and enhancements
π Categories
- Restrict user deletion of categories associated with other resources by @avikarshasaha in #14567
π₯ Contacts
β¬οΈ Dependencies
π§π»βπ» Developer experience
- Add UUID for each resource by @avikarshasaha in #14558
- Add workflow to verify E2E tests with multiple iterations by @matbcvo in #14318
π Email
- Campaign weekday and hourly email metrics by @patrykgruszka in #14414
π Forms
- Mark form fields read only where existing data is pre-filled by @shinde-rahul in #14422
π GrapesJS Builder
- GrapesJS Text Editor Modal Save UX Improvements by @patrykgruszka in #14533
π Landing pages
- Use page language if contact doesnβt have preferred locale set on preference centres by @shinde-rahul in #14370
π Performance and optimization
- Adding index to speed up the integration sync as it overloads DB servers by @escopecz in #14556
- Indices For Query Optimisation by @aarohiprasad in #14625
- UUID implementation by @avikarshasaha in #14558
π± Plugin support
- Allow plugins to output custom content in more places by @rohitpavaskar in #14488
- New pre- and post- event save batch events for plugins by @rohitpavaskar in #14503
π Reports
- Adding focus item data source in reports in m6 by @JonasLudwig1998 in #14340
π Segments
- Show Building if a segment is new or updated but not yet rebuilt by @driskell in #14431
- New command to get usage of all segments by @avikarshasaha in #14575
π΅π» Search
- Enabling Searching Contacts and Companies by Custom Field Values Without Field Alias Prefix by @shinde-rahul in #14393
π Themes
- [Page theme] Capture by @andersonjeccel in #14545
- [Page theme] Mono by @andersonjeccel in #14536
- [Page theme] Blend by @andersonjeccel in #14534
- [Page theme] ReachOut by @andersonjeccel in #14519
- [Page theme] Formscape by @andersonjeccel in #14527
- [Form theme] Chord by @andersonjeccel in #14547
- [Form theme] Eclipse by @andersonjeccel in #14591
π¨ User Experience / User Interface
- Add configuration tips and extra context by @andersonjeccel in #13883
- Add a Dynamic Content slot generator by @andersonjeccel in #14372
- Updating Remix icon pack to 4.6.0 by @andersonjeccel in #14520
- Better fields experience when creating forms by @andersonjeccel in #14513
- Better action labels when creating forms by @andersonjeccel in #14514
- Improve the Marketplace details header and layout by @andersonjeccel in #14199
- Moving accent colors to global configuration by @andersonjeccel in #14637
- Add support for a primary brand color and company name for themes by @andersonjeccel in #14649
- Toolbar batch actions by @andersonjeccel in #14306
π Bugs
π» API
π§π»βπ» Automated tests
- Do not fail tests on Sunday and Saturday. by @biozshock in #14612
- Fix form subscriber test by @fedys in #14473
- Set timezone to fix test cases by @dadarya0 in #14499
π Campaigns
- Stop double increasing failure in campaign by @rohitpavaskar in #14470
- Fix CC and BCC handling in Send Email to User Campaign Action by @patrykgruszka in #14719
βοΈ Custom fields
Fix #14562: Resolve error while creating company custom field by @shinde-rahul in #14566
π©π»βπ» Developer experience
- Pull-request-template by @Jaishree2310 in #14585
- fix: typo in parameter condition by @Hugo-Prossaird in #14581
- Update symfony/dependency injection to notify devs about circular references in DI. by @biozshock in #14684
- UUID implementation fix + added to roles and permissions by @dadarya0 in #14751
π€ DevOps
π Email
- Fixing Email Dynamic Content conditions with decimal values. by @nileshlohar in #14481
- Fixing the FROM email creds for tokenized email transports by @escopecz in #14661
- Fixing attaching an asset to an email by @escopecz in #14715
π Focus items
- Fixing more places getting non-scalar values from request in Symfony 6 by @escopecz in #14384
- Fix #14734: Remove obsolete classes for focus details view by @PatrickJenkner in #14773
π Forms
- Updated the field entity to set readOnly to false when passed null by @shinde-rahul in #14502
- Fixing companies not being updated by a form by @escopecz in #14688
π Import/export
π Landing pages
π£ Marketing messages
- Fixing marketing message view after Symfony 6 upgrade by @escopecz in #14489
- Improve Marketing message event log handling by @nileshlohar in #14583
π Notifications
π± Plugin support
- Fix Salesforce warnings for PHP8.0 upgrade by @avikarshasaha in #14532
- PHP 8 related issue fix for implode by @avikarshasaha in #14571
- Integration sync more stable, notify user instead of failing the sync by @escopecz in #14666
π Segments
- Numeric segment filters with or glue bug + boolean regex fix by @escopecz in #14555
- Resolving an error when deleting segments by @escopecz in #14553
- Incorrect date value being calculating when the segment filter value is yesterday/today/tomorrow and operator is gt or lte for date - and datetime field by @dadarya0 in #14552
π£ Tracking
- Preventing bots making page hits by @avikarshasaha in #14593
π Themes
- Update mautic/core-lib version constraint by @matbcvo in #14546
- Fix missing fonts to Formscape theme by @andersonjeccel in #14692
- Fix solarized themes variable name by @andersonjeccel in #14733
π¨ User Experience / User Interface
- Fix #14485 => Fields on modal popup for dashboard widget creation are too small by @rishithreddy89 in #14573
- Fix modal form buttons by @andersonjeccel in #14646
- Improving saving options for Categories: Save only by @andersonjeccel in #14680
- Adjust background color of confirmation modal to work with different themes by @farzammadani in #14687
- Fixing the delete list actions UI bug by @escopecz in #14723
- Avoid showing rebuilding label when the segment is unpublished by @npracht in #14706
- Fix #14702: Increase contrast for url fields by @PatrickJenkner in #14771
- Update filter icons to RemixIcon by @PatrickJenkner in #14781
π Our awesome contributors
Alpha release
@biozshock
@matbcvo
@shinde-rahul
@escopecz
@fedys
@patrykgruszka
@rohitpavaskar
@putzwasser
@dadarya0
@andersonjeccel
@JonasLudwig1998
Beta release
@biozshock
@driskell
@matbcvo
@shinde-rahul
@escopecz
@defaults
@avikarshasaha
@patrykgruszka
@rohitpavaskar
@nileshlohar
@putzwasser
@aarohiprasad
@dadarya0
@Jaishree2310
@andersonjeccel
@levente999
@Hugo-Prossaird
@rishithreddy89
Release Candidate
@escopecz
@fedys
@avikarshasaha
@patrykgruszka
@npracht
@rohitpavaskar
@nileshlohar
@farzammadani
@andersonjeccel
General Availability
@escopecz
@kuzmany
@dadarya0
@PatrickJenkner
@ricfreire