This is an out-of-cycle release which provides PHP 8.0 support to Mautic 4 users, and some other bug fixes. This should allow Mautic users to update their PHP versions before PHP 7 reaches end of life in November, without needing to update to Mautic 5.
What's Changed
✨ Features and enhancements
- PHP 8.0 support by @mollux in #11217
🚀 - Add default parameters to public method by @kuzmany in #11259
🐛 Bugs
- Email address with two dots mark as invalid by @kuzmany in #11258
- Disable default values by @escopecz in #11250
- Do not perform delete queries on the sync tables for anonymous contacts by @escopecz in #11262
- Report date fix (mostly added test) by @escopecz in #11256
- Do not retry all objects if one of them should be retried. Retry only the right one(s) by @escopecz in #11252
- Disable default values [for fields used to identify the contact] by @escopecz in #11250
- Fix normalize value for boolean contact field by @kuzmany in #11235
- Flip array returned by getDateChoices by @pety-dc in #11233
- Code mode fix by @escopecz in #11221
- Tag import fix by @escopecz in #11220
- Align lock file with change from #11203 by @mollux in #11218
- Ensure the app folder is seen as the 4.3.x instead of a specific version in composer by @mollux in #11213
- Improve GrapesJS dev demo by @adiux in #11210
- Fixing DoctrineEventSubscriber for plugin installations by @escopecz in #11206
- Fix: The decision step ignores the preceding condition in the campaign by @patrykgruszka in #11200
- Marketplace version fix by @escopecz in #11197
- The email update success message is a notice (by default) by @volha-pivavarchyk in #11192
- Integer range point action validation by @aarohiprasad in #11191
- Fix the issue with saving contact settings by @volha-pivavarchyk in #11187
- Modify the form label by @volha-pivavarchyk in #11166
- Email dc multi select filter by @shinde-rahul in #10871
⬆️ Dependencies
- Bump guzzlehttp/guzzle from 7.4.2 to 7.4.4 by @dependabot in #11241
- Bump guzzlehttp/oauth-subscriber to 0.6.* by @benji07 in #11203
🔎 CI/CD and Quality
- Changing Rector config to the new format by @escopecz in #11227
- Run PHPUnit tests with a random db prefix by default by @mollux in #11196
💖 New Contributors
- @uzegonemad made their first contribution in #11240
- @benji07 made their first contribution in #11203
- @aarohiprasad made their first contribution in #11191
Full Changelog: 4.3.1...4.4.0
SHA1(4.4.0.zip)= 5a19eb5186ae80a4bcff892607581e5569686fbf
SHA1(4.4.0-update.zip)= 42ecea5b246a5deddf12030e57c70a949045752b
This hotfix version is fixing a bug in the installer identified after the 4.3.0 release.
SHA1(4.3.1.zip)= 6de39c8e131658a57656adf470fbceeb0451ffa1
SHA1(4.3.1-update.zip)= f81cd9990f6969bec8c39d75ee5659f1cec45ec1
What's Changed
🔒 Security fixes
- CVE-2021-27914 - XSS vulnerability in installer (Please see https://github.com/mautic/mautic/releases/tag/4.3.1 which fixes a bug in this security fix) - GHSA-jrwm-pr9x-cgq3
- CVE-2022-25772 - XSS vulnerability in tracking pixel functionality - GHSA-pjpc-87mp-4332
✨ Features and enhancements
- Dynamic content events by @escopecz in #10886
- Allow composer scripts to use php-cs-fixer configuration to allow multiple files at once by @ts-navghane in #10624
- Added provision to check if edited segment is new by @ts-navghane in #10003
- Added support for MySQL full-text search queries by @fedys in #9335
- Feature new click filters by @alanhartless in #9852
- Remove doc blocks TPROD-131 by @escopecz in #10970
- Segment query optimization by @escopecz in #10904
- Import validation by @escopecz in #10884
- Segment delegate decorator event by @escopecz in #10890
- TPROD-289 : Replace Client with KernelBrowser by @ts-navghane in #11049
- TPROD-280 - The scale option was removed from the IntegerType by @fedys in #11034
- Improve docs on builder events by @dennisameling in #11047
- Add company_id search command by @kuzmany in #10702
- Updating the email validation mode to work in Symfony 5.0 by @escopecz in #11054
- Removing options for TimeType that would cause an exception in Symfony 5.0 by @escopecz in #11040
- rework the seek / fgets combo to be compatible with both PHP 7 and 8 by @mollux in #11060
- split up of lead column structure and field data fixtures by @mollux in #11059
- Segment optimization IN to EXISTS by @escopecz in #10903
- Don't show empty fields in the contact and company detail view by @volha-pivavarchyk in #11016
- Remove transChoice() as it is deprecated in Symfony 4.2 by @ts-navghane in #11046
- Deprecate AbstractIntegration by @dennisameling in #11050
- TPROD-281 - Test kernel boot fix for Symfony 5 by @fedys in #11045
- Recommended configuration added to System Info + Zend assertions check by @escopecz in #11019
- TPROD-274: Replace uses of Symfony\Component\Debug\Debug by Symfony\Component\ErrorHandler\Debug by @kuzmany in #11143
- Asynchronously loaded segment contact list by @escopecz in #11005
- Added Curaçao and Isle of Man by @Dylan-86 in #10498
- Add log processor by @ts-navghane in #11121
- Custom Objects plugin support by @escopecz in #10883
- Change version regexp by @kuzmany in #10919
- TPROD-233 Enable hybrid Twig templates support in Mautic (
MauticCoreBundle:Default:content.html.twig
) by @dennisameling in #10129 - TPROD-278 - Do not add format option when html5 is set for DateType by @fedys in #11038
- TPROD-279 - The getExtendedType() method was removed from the FormTypeExtensionInterface by @escopecz in #11037
- Adding test for a translation initialisation issue by @ts-navghane in #11118
- Fast rendering segment list by @ts-navghane in #11071
⬆️ Dependencies
- Bump grunt from 0.4.5 to 1.5.2 by @dependabot in #11113
- Phpstan, Rector and JMS Serializer update by @escopecz in #11131
- Bump minimist from 1.2.5 to 1.2.6 by @dependabot in #11026
- Bump minimist from 1.2.5 to 1.2.6 in /plugins/GrapesJsBuilderBundle by @dependabot in #11027
🐛 Bugs
- fix scaffolding issue in tests (4.x) by @mollux in #10923
- fix segments list order by @alfredoct96 in #10938
- Fixing BC change after moving some segment filters to behaviors by @escopecz in #11003
- Fixed Import validation when uploading a CSV file in Mautic 4.x with PHP 8 by @alinmbb in #11011
- Corrected zip key for IPStack by @stevedrobinson in #10722
- Instances with DB prefix set failed after #11059 by @escopecz in #11128
- Fix progressive forms by @kuzmany in #11125
- Clearing risky tests by @escopecz in #11132
- Tprod 293 - Replacing deprecated Intl methods by @escopecz in #11036
- Fix: Tags filter Tag IDs are displayed as dropdown options instead of… by @ts-navghane in #11088
- Fix 500 error on contact API batch endpoint by @escopecz in #10724
- Segment mysql8 fix by @escopecz in #11126
- Fix audit log old value for company by @ts-navghane in #11110
- Fix crash when getting a field that is missing column if more missing by @kuzmany in #10458
- Fix writeMessage type int error by @kuzmany in #10343
- Reports not equal expression include nullable values by @kuzmany in #10043
- Blank theme if no theme exists by @lukassykora in #10154
- Fix JS translations by @kuzmany in #9749
- Fix 191 characters for created lead fields by @kuzmany in #9460
- Move removal of duplicate indexes from fixture to Doctrine event listener by @mollux in #11058
- Campaign forms source - add contact just to active campaign by @kuzmany in #11130
- Adding missing table prefix by @escopecz in #11159
- Fix tag name cannot be empty and throw validation error by @ts-navghane in #11120
- Fix: API - GET tag replace Apostrophe with its HTML Entity Number by @ts-navghane in #11116
- Allow console to leverage the generic autoloader regardless of the location (part 2) by @mollux in #11039
- fix salesforce integration refresh token by @alfredoct96 in #10993
- Fix network issues when running composer in ddev by @shaal in #11084
- Force dev mode in DDEV instances by @RCheesley in #11134
- ensure css and js assets are present and can be generated on composer based installs by @mollux in #11164
New Contributors
- @alinmbb made their first contribution in #11011
- @stevedrobinson made their first contribution in #10722
- @Dylan-86 made their first contribution in #10498
Full Changelog: 4.2.2...4.3.0
SHA1(4.3.0.zip)= deeb69551f1bbd499492859eb99df933e8aecd37
SHA1(4.3.0-update.zip)= 51b20c9e01906c1c6e87c7a9b65aec3ad42a910b
Please report issues if you face some on GitHub or in #t-product channel on Slack.
What's Changed
✨ Features and enhancements
- Dynamic content events by @escopecz in #10886
- Allow composer scripts to use php-cs-fixer configuration to allow multiple files at once by @ts-navghane in #10624
- Added provision to check if edited segment is new by @ts-navghane in #10003
- Added support for MySQL full-text search queries by @fedys in #9335
- Feature new click filters by @alanhartless in #9852
- Remove doc blocks TPROD-131 by @escopecz in #10970
- Segment query optimizatioin by @escopecz in #10904
- Import validation by @escopecz in #10884
- Segment delegate decorator event by @escopecz in #10890
- TPROD-289 : Replace Client with KernelBrowser by @ts-navghane in #11049
- TPROD-280 - The scale option was removed from the IntegerType by @fedys in #11034
- Improve docs on builder events by @dennisameling in #11047
- Add company_id search command by @kuzmany in #10702
- Updating the email validation mode to work in Symfony 5.0 by @escopecz in #11054
- Removing options for TimeType that would cause an exception in Symfony 5.0 by @escopecz in #11040
- rework the seek / fgets combo to be compatible with both PHP 7 and 8 by @mollux in #11060
- split up of lead column structure and field data fixtures by @mollux in #11059
- Segment optimization IN to EXISTS by @escopecz in #10903
- Dont show empty fields in the contact and company detail view by @volha-pivavarchyk in #11016
- Remove transChoice() as it is deprecated in Symfony 4.2 by @ts-navghane in #11046
- Deprecate AbstractIntegration by @dennisameling in #11050
- TPROD-281 - Test kernel boot fix for Symfony 5 by @fedys in #11045
- Recommended configuration added to System Info + Zend assertions check by @escopecz in #11019
- Phpstan, Rector and JMS Serializer update by @escopecz in #11131
- Bump minimist from 1.2.5 to 1.2.6 by @dependabot in #11026
- Bump minimist from 1.2.5 to 1.2.6 in /plugins/GrapesJsBuilderBundle by @dependabot in #11027
- TPROD-274: Replace uses of Symfony\Component\Debug\Debug by Symfony\Component\ErrorHandler\Debug by @kuzmany in #11143
- Asynchronously loaded segment contact list by @escopecz in #11005
- Added Curaçao and Isle of Man by @Dylan-86 in #10498
- Add log processor by @ts-navghane in #11121
- Custom Objects plugin support by @escopecz in #10883
- Change version regexp by @kuzmany in #10919
- TPROD-233 Enable hybrid Twig templates support in Mautic (
MauticCoreBundle:Default:content.html.twig
) by @dennisameling in #10129 - TPROD-278 - Do not add format option when html5 is set for DateType by @fedys in #11038
- TPROD-279 - The getExtendedType() method was removed from the FormTypeExtensionInterface by @escopecz in #11037
- Adding test for a translation initialisation issue by @ts-navghane in #11118
- Bump grunt from 0.4.5 to 1.5.2 by @dependabot in #11113
- Fast rendering segment list by @ts-navghane in #11071
🐛 Bugs
- fix scaffolding issue in tests (4.x) by @mollux in #10923
- fix segments list order by @alfredoct96 in #10938
- Fixing BC change after moving some segment filters to behaviors by @escopecz in #11003
- Fixed Import validation when uploading a CSV file in Mautic 4.x with PHP 8 by @alinmbb in #11011
- Corrected zip key for IPStack by @stevedrobinson in #10722
- Instances with DB prefix set failed after #11059 by @escopecz in #11128
- Fix progressive forms by @kuzmany in #11125
- Clearing risky tests by @escopecz in #11132
- Tprod 293 - Replacing deprecated Intl methods by @escopecz in #11036
- Fix: Tags filter Tag IDs are displayed as dropdown options instead of… by @ts-navghane in #11088
- Fix 500 error on contact API batch endpoint by @escopecz in #10724
- Segment mysql8 fix by @escopecz in #11126
- Fix audit log old value for company by @ts-navghane in #11110
- Fix crash when getting a field that is missing column if more missing by @kuzmany in #10458
- Fix writeMessage type int error by @kuzmany in #10343
- Reports not equal expression include nullable values by @kuzmany in #10043
- Blank theme if no theme exists by @lukassykora in #10154
- Fix JS translations by @kuzmany in #9749
- Fix 191 characters for created lead fields by @kuzmany in #9460
- Move removal of duplicate indexes from fixture to Doctrine event listener by @mollux in #11058
- Campaign forms source - add contact just to active campaign by @kuzmany in #11130
- Adding missing table prefix by @escopecz in #11159
- Fix tag name cannot be empty and throw validation error by @ts-navghane in #11120
- Fix: API - GET tag replace Apostrophe with its HTML Entity Number by @ts-navghane in #11116
- Allow console to leverage the generic autoloader regardless of the location (part 2) by @mollux in #11039
- fix salesforce integration refresh token by @alfredoct96 in #10993
- Fix network issues when running composer in ddev by @shaal in #11084
- Force dev mode in DDEV instances by @RCheesley in #11134
- ensure css and js assets are present and can be generated on composer based installs by @mollux in #11164
New Contributors
- @alinmbb made their first contribution in #11011
- @stevedrobinson made their first contribution in #10722
- @Dylan-86 made their first contribution in #10498
Full Changelog: 4.2.2...4.3.0-rc
SHA1(4.3.0-rc.zip)= ceddbbdf302d3730ec3c7a977cdbc8a966495fe8
SHA1(4.3.0-rc-update.zip)= 5f53586621a0a6f745d1b28a67cd9cb31c729d89
What's Changed
✨ Features and enhancements
- Add a way to directly modify the html code in Advanced mode by @volha-pivavarchyk in #11102
🐛 Bugs
- Fix flip array for groups in select in segments filter by @kuzmany in #9339
- Add tag creation behavior for leads in edit page by @julienWebmecanik in #10969
- use a more strict constraint for doctrine-bundle by @mollux in #11053
- Fix headers (including list-unsubscribe header) when using sendgrid-api by @renatocron in #10831
- Remove multiselect field default value template by @kuzmany in #11069
- Fix elFinder localization by @kuzmany in #10987
- Bump async from 3.2.0 to 3.2.3 in /plugins/GrapesJsBuilderBundle by @dependabot in #11076
- change link from edit to view once company modification saved by @npracht in #11098
- Fix and redesign sms characters count by @kuzmany in #10838
- Empty select option fix by @escopecz in #11101
- Fix dependency issue by @ts-navghane in #11085
- Fix network issues when running composer in ddev by @shaal in #11089
New Contributors
- @renatocron made their first contribution in #10831
Full Changelog: 4.2.1...4.2.2
SHA1(4.2.2.zip)= c7f15eb2edf0ad60b1cfc16ff9291eb424cac1c4
SHA1(4.2.2-update.zip)= 7e219146a63356793e020582a7e863010ca50ae9
What's Changed
Full Changelog: 4.2.0...4.2.1
🐛 Bugs
- Fix segment membership filter build query by @kuzmany in #10809
- Fix report date filter by @kuzmany in #10800
- Fix email translations lost and overwritten by parent by @kuzmany in #10620
- Fix for Amazon API transport return-path when sending emails immediately by @patrykgruszka in #10474
- Fix timezone on timeline by @kuzmany in #10375
- Fix API Permission Issue by @rahuld-dev in #10679
- Fix integration special fields order by @kuzmany in #10649
- Fix set import template to send custom email If use legacy builder by @kuzmany in #10897
- Fix primary email company tokens by @kuzmany in #10733
- Public preview email disabled by default by @kuzmany in #10845
- Validate admin password length during CLI install by @mollux in #10758
- Display just published fields in form field mapping by @kuzmany in #10734
- fix segments list order by @alfredoct96 in #10968
- Migration fixes by @escopecz in #10931
- Fix prevent save alias of contact field already used in segments by @Damzoneuh in #10224
- Fix public preview email for expired emails by @kuzmany in #10971
- Small grammar fix by @RCheesley in #10977
- Tags on edit should display same message as other entities, for e.g. xyz has been updated! by @ts-navghane in #10984
- Export to CSV and Excel creates contact duplicates by @volha-pivavarchyk in #10849
- Missing include/exclude operator for text field in segment filters by @escopecz in #10985
- Fixes updating the contact's primary company when all companies are removed or one of many companies are removed by @escopecz in #11000
- Special characters of the text getting corrupted while posting results to another form by @rahuld-dev in #10872
- Segment filter 'Asset Downloads' not showing all assets by @escopecz in #11002
💖 New Contributors
- @Damzoneuh made their first contribution in #10224
SHA1(4.2.1.zip)= 112cbe8bcf9eadab123234047e9455d8050fbc2e
SHA1(4.2.1-update.zip)= b179c135822f90621a8528f5ca810572eeec6f25
📋 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
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
🔒 Security release
This issue impacts all versions of Mautic prior to 3.3.5. Please update at your earliest convenience.
CVE-2022-25769 - Improper regex in htaccess file
This will be the last update for Mautic 3.x, for which security support has now ended.
SHA1(3.3.5.zip)= 46e784d5ff220b1fa394f1d011f9d140f7184a2d
SHA1(3.3.5-update.zip)= 876ab6c935e00be3ab1e8bc646968636e59a860e
Full Changelog: 3.3.4...3.3.5
Enhancements
- Upgrade to Redis 5 for DDEV #10856
- Support for emoji in emails2 #10844
- Change btn-primary class of email buttons in campaign send email action to btn-default #10837
- Add description on Tag form #10799
- Add dynamic content to the Email Builder in MJML mode #10782
- Segment fail notifications #10772
- Improve and fix the execution of (local) PHPUnit tests #10759
- update list of default themes to be in line with the current ones #10731
- Confirmation unpublishing campaign workflow #10705
- Inject a caching solution into the DeviceDetector #10665
- Add Redis to DDEV #10538
- Segment view optimization #10523
- Add additional checks to installation + update process #10459
- Fix elfinder folder perms #10410
- Command for remove webhook log #10405
- Functional tests improvements #10212
- Single landing page scripts #9695
- Page tracking submissions in landing page #9693
- Landing pages table new columns #9691
- Segments table new columns #9690
- Assets table new columns #9688
- Re: FullCalendar localization #9432
- Segment filter refactoring #8649
Bugs
- 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 #10833
- Small text update to reflect change from apply to save on button #10826
- REST API for forms allows to send certain fields with HTML tags #10820
- fix static config file in tests #10810
- Fix email_queued search query #10803
- add pagehit index in entity metadata instead of fixture #10787
- Reuse existing editor keep history #10781
- Fix issue #10675 - respect 'Reply to Contact' #10773
- Repeatable campaign loop fix #10766
- process booleans correctly in the install command to prevent unwanted actions and incorrect data #10757
- Fix SQL issue when creating a backup during install #10747
- Anton vlasenko: imports not completing #10744
- Campaign event api fix #10708
- Sugar Integration works better when the endpoint is using HTTP GET method #10667
- Remove points from properties for contacts import #10635
- Switch to skip empty decrypted keys instead of returning empty array and dropping other keys #10574
- Fix SendGird Attachments on Queue Mode #10566
- DDEV fix windows style line breaks for pre-commit and post-checkout git hooks #10551
- Updated the stat count for week and added tests #10543
- Fix PHP Notice - Undefined index: ct #10418
- Fix accessibility of HTML Emails #10402
- Contact email validation #10273
- Add 191 length validation on lookup type contact field #10225
- Quote regular expression characters - added test #10218
- Migration may run in wrong order #10213
- Empty and Not Empty report date filters are not compatible with MySQL8 #10194
- Fix unsubscribe form usage #9752
❤️ 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
- @shaal
- @dadarya0
- @dependabot[bot]
- @kathrin-schmid
- @patrykgruszka
- @escopecz
- @RCheesley
- @dennisameling
- @julienWebmecanik
- @ts-navghane
- @J-Light
- @fedys
- @volha-pivavarchyk
- @nick-vanpraet
SHA1(4.2.0-rc1.zip)= 593a22481740e46c11b346aa6d2f249d78c38f21
SHA1(4.2.0-rc1-update.zip)= c3ebf445092e6fc9a7177c47b501a6d23900b3b0
🐛 Bugs
- Fix lock wait deleting unused ips by @ts-navghane in #10710
- Fix contact batch api for single id value by @rahuld-dev in #10700
- fix(LeadTimelineEvent): keys do not match the func args, strips keys by @abailey-dev in #10663
- User update role api by @ts-navghane in #10668
- Fix send unpublished SMS by @kuzmany in #10577
- Fix group by If you use count columns for assets download by @kuzmany in #10693
- Fixing background color contrast for buttons in the builder by @eloimarquessilva in #10728
- Ensure default frequency rules are taken into account correclty by @mollux in #10753
- Change field definition for column_value to longtext instead of varchar by @escopecz in #10778
- Correct bug no forms in the select contact source campaign when the forms have identical names by @tomekkowalczyk in #10717
- Restore X value in contact boolean fields by @patrykgruszka in #10716
- Fix for pushing to integrations in campaign actions by @TonyBogdanov in #10674
💖 Contributors
We'd like to thank all the contributors whose Pull Requests are included in this release!
- @mollux
- @patrykgruszka
- @escopecz
- @rahuld-dev
- @RCheesley
- @TonyBogdanov
- @mzagmajster
- @tomekkowalczyk
- @ts-navghane
- @eloimarquessilva
- @kuzmany
- @abailey-dev
🚀 New Contributors
- @rahuld-dev made their first contribution in #10700
- @abailey-dev made their first contribution in #10663
- @eloimarquessilva made their first contribution in #10728
Full Changelog: 4.1.1...4.1.2
SHA1(4.1.2.zip)= b6eb3cffb9ec559e7ec4caeb335a56d50d85d5cf
SHA1(4.1.2-update.zip)= e5a9f9324fa020f30cc7b40ee9e234f706e358e9