📋 What's changed since 4.1.2?
Full Changelog: 4.1.2...4.2.0
📣 Release announcement
Read the blog post: https://www.mautic.org/blog/community/mautic-4-2-one-small-step-mautic
⚠️ If you host Mautic in a sub-folder (e.g. example.com/mautic) please review the guidance in this GitHub issue before updating, as you will probably need to make some changes to the .htaccess file after you update. ⚠️
In this release:
🔒 Security
This issue impacts all versions of Mautic prior to 3.3.5 and 4.2.0. Please update at your earliest convenience.
CVE-2022-25769 - Improper regex in htaccess file
Mautic 3.3.5 release here
✨ Features and Enhancements
- Add UI update deprecation notice by @dennisameling in #10907
- Reusable getStandardColumns method by @escopecz in #10898
- Upgrade to Redis 5 for DDEV by @mabumusa1 in #10856
- Support for emoji in email subjects by @ts-navghane in #10844
- Change btn-primary class of email buttons in campaign send email action to btn-default by @volha-pivavarchyk in #10837
- Add description on Tag form by @mzagmajster in #10799
- Add dynamic content to the Email Builder in MJML mode by @adiux in #10782
- Segment fail notifications by @escopecz in #10772
- Improve and fix the execution of (local) PHPUnit tests by @mollux in #10759
- update list of default themes to be in line with the current ones by @mollux in #10731
- Confirmation unpublishing campaign workflow by @shinde-rahul in #10705
- Inject a caching solution into the DeviceDetector by @nick-vanpraet in #10665
- Add Redis to DDEV by @kuzmany in#10538
- Segment view optimization by @escopecz in #10523
- Add additional checks to installation + update process by @dennisameling in #10459
- Fix elfinder folder perms #10410
- Command for remove webhook log #10405
- Functional tests improvements by @fedys in #10212
- Single landing page scripts by @alfredoct96 in #9695
- Page tracking submissions in landing page by @alfredoct96 in #9693
- Landing pages table new columns by @alfredoct96 in #9691
- Segments table new columns by @alfredoct96 in #9690
- Assets table new columns by @alfredoct96 in #9688
- Re: FullCalendar localization by @hissy in #9432
- Segment filter refactoring by @escopecz in #8649
- TPROD-260 Marketplace: allow installing/removing plugins from within Mautic by @dennisameling in #10518
- Email table new columns by @alfredoct96 in #9685
- Migrate demo to mjml, add custom font by @adiux in #10445
- Removing disabled tracking for localhost on prod env by @escopecz in #10646
- Update grapesjs and other js dependencies by @adiux in #10760
- Update language string by @kathrin-schmid in #10683
🐛 Bugs
- Stop unnecessary query by @escopecz in by @escopecz in #10876
- Heath Dutton: Improve boolean import/API support #7513 #10866
- Fix default order direction in controllers #10862
- Fix group by If you use count columns for assets download 2 by @kuzmany in #10833
- Small text update to reflect change from apply to save on button by @RCheesley in #10826
- REST API for forms allows to send certain fields with HTML tags by @volha-pivavarchyk in #10820
- fix static config file in tests by @adiux in #10810](#10810)
- Fix email_queued search query by @patrykgruszka in #10803
- add pagehit index in entity metadata instead of fixture by @mollux in #10787
- Fix issue #10675 - respect 'Reply to Contact' by @J-Light in #10773
- Repeatable campaign loop fix by @escopecz in #10766
- process booleans correctly in the install command to prevent unwanted actions and incorrect data by @mollux in #10757
- Fix SQL issue when creating a backup during install by @mollux in#10747
- Imports not completing by @anton-vlasenko in #10744
- Campaign event api fix by @escopecz in #10708
- Sugar Integration works better when the endpoint is using HTTP GET method by @bodrak in #10667
- Remove points from properties for contacts import by @kuzmany in#10635
- Switch to skip empty decrypted keys instead of returning empty array and dropping other keys by @mkurzeja in #10574
- Fix SendGrid Attachments on Queue Mode by @mabumusa1 in #10566
- DDEV fix windows style line breaks for pre-commit and post-checkout git hooks by @kuzmany in #10551
- Updated the stat count for week and added tests by @shinde-rahul in #10543
- Fix PHP Notice - Undefined index: ct by @kuzmany in #10418
- Fix accessibility of HTML Emails by @kuzmany in #10402
- Contact email validation by @kuzmany in #10273
- Add 191 length validation on lookup type contact field by @julienWebmecanik in #10225
- Quote regular expression characters - added test #10218
- Migration may run in wrong order by @escopecz in #10213
- Empty and Not Empty report date filters are not compatible with MySQL8 by @fedys in #10194
- Fix unsubscribe form usage by @kuzmany in #9752
- Fix scaffolded files and add sanity checks to github workflow by @mollux in #10857
- Fix MJML email builder - "Edit Code" is broken by @adiux in #10842
- Exclude the phpstan baseline file from releases by @mollux in #10839
- Truncate page hit title by @kuzmany in #10709
- Fix csv header with 'file' column issue while contact import by @ts-navghane in #10823
💖 Contributors
We'd like to thank all the contributors who worked on this release!
- @mollux
- @shinde-rahul
- @bodrak
- @hissy
- @mkurzeja
- @adiux
- @mzagmajster
- @mabumusa1
- @alfredoct96
- @kuzmany
- @dadarya0
- @kathrin-schmid
- @patrykgruszka
- @escopecz
- @RCheesley
- @dennisameling
- @julienWebmecanik
- @ts-navghane
- @J-Light
- @fedys
- @volha-pivavarchyk
- @nick-vanpraet
- @heathdutton
- @anton-vlasenko
🚀 New Contributors
- @rpayanm made their first contribution in #10673
- @mzagmajster made their first contribution in #10765
- @bodrak made their first contribution in #10667
- @nick-vanpraet made their first contribution in #10665
- @J-Light made their first contribution in #10773
- @volha-pivavarchyk made their first contribution in #10837
- @mkurzeja made their first contribution in #10574
SHA1(4.2.0.zip)= 3d9e6e79d60256247890d9e8963826622478d6b1
SHA1(4.2.0-update.zip)= 5e78395be978f353a08b80ac2837b4f97e65b22b