Released 30 January 2025
⚠️ Important: These changes will only apply when upgrading from an installed 8.8+ version to the next version
Starting with SuiteCRM 8.8.0 onwards, the upgrade process will now show warning message with the non-core files that will be deleted on upgrade.
All language files within core directories are now re-added at the end of the upgrade process.
Changes to the upgrade process configuration. The following directories were added to the toKeep section:
public/legacy/upload
public/legacy/vendor
.git
.gitignore
SuiteCRM is now using angular 18. This brings some system requirement updates and breaking changes.
⚠️ Important: SuiteCRM is still using Webpack and Module Federation. We will not be using esbuild and Native Federation for the time being.
See the Frontend extension - Migrate to SuiteCRM 8.8+ section for more information.
Minimum node version - 20.11.1
The minimum node version is now 20.11.1.
Minimum yarn version - 4.5.0
The minimum yarn version is now 4.5.0.
Frontend common lib has been moved into core
The common lib has been moved from core/app/common
to core/app/core/src/lib/common/
See the Frontend extension - Migrate to SuiteCRM 8.8+ section for more information.
The angular.json file is now generated
The angular.json
file is now a generated file and is no longer under version control.
See the Frontend extension - Migrate to SuiteCRM 8.8+ section for more information.
The configuration for subpanel buttons widgets/stats is now under subpanelWidget
The configuration key for subpanel button widgets has changed from insightWidget
to subpanelWidget
.
We have added new documentation to set up Two-factor Authentication using TOTP on SuiteCRM 8 see the Two-factor Authentication section for more information.
This release brings a number of adjustments and updates in order to support PHP 8.3.
This includes:
Removal of deprecated functions/ features.
Fixed code to eliminate warnings/ errors from logs.
Update missing labels
You can now filter by Favorites
and My Items
.
We have added Two-factor authentication on SuiteCRM 8 using TOTP. See more information here.
⚠️ Important: For upgrades from 8.8-beta to 8.8.0 - Two Factor Totp Secret and Backup Codes are now encoded in the db. This can cause issues when using 2FA configured in the beta. 2FA might need disabled and re-enabled.
Record View
The fields within the record view now take up minimal space, allowing you to see the full record.
The required field indicator has been moved to the left of the field label.
Subpanels
Subpanels buttons are now more compact and show the number of records a subpanel has.
The number of subpanels that show when collapsed is configurable via the subpanel_buttons_panel_limits.yaml
.
Although it is recommended to do these changes within defaultExt
or alternatively your own extension.
Timeline
Following the other changes, the timeline is also more compact showing more information on the record without scrolling.
Top Widget
The Top Widget has been moved to the insights panel, along with some styling adjustments.
SuiteCRM Demo Data has been updated to generate more date and optimized to run faster.
The log_dir has now been updated to log to <root>/logs/legacy
instead of <root>/public/legacy
.
For upgrade instances:
The log_dir
on config.php will be updated to a new path, only if it was using the default path.
Old log files will not be moved
Disabled zone js, for faster front-end performance.
Added a delay to non-critical backend calls such as; recently viewed, metadata, and notifications.
Record Mappers have been added to allow for more flexibility when extending SuiteCRM. They allow to add code for mapping a record to internal or to external format.
See the Record Mappers section for more information.
Save handlers are classes that allow to run code before or after saving a record. They similar to the legacy before_save and after_save logic hooks on legacy.
See the Save Handlers section for more information.
There are now 3 different types of triggeringStatus
:
onDependencyChange
When the dependant field changes.
onAnyLogic
When anything happens (i.e. value update, rendering fields, saving etc…).
onFieldInitialize
When the Field is rendered (i.e. loading the recordview/ switching tabs on recordview).
Fixed: Subpanel not showing correctly on first load: #511
Fixed: Error field "amount" - SuiteCRM v. 8.5.1: #478
Fixed: Reorder modules from User profile does not change the order in navigation bar: #585
Fixed: Update scripts deletes files with no warning: #475
Fixed: Special character in database password creates issues: #533
Fixed: $addr creating unnecessary logs: #577
Fixed: Error on Email Detail View: #537
Fixed: Accented character (diacritic) displayed incorrectly: #542
Fixed: Accented letters displayed incorrectly: #583
Fixed: TextArea areas show data in html encoded: #589
Fixed: Views Incorrectly Encode UTF Characters as HTML Entities: #274
Fixed: Bug with the number field in case filters: #572
Fixed: Checkbox taking a while to respond with large data set: #597
Fixed: Update New Accounts per Month Chart: #75
We would love to have your feedback and input to help make SuiteCRM 8 great for everyone.
Special thanks to the following members for their contributions and participation in this release!
If you have found an issue you think we should know about, or have suggestion/feedback, please Submit An Issue.
If you want to get involved and submit a fix, fork the repo and when ready please Submit A PR - More detail for developers can be found here.
Please visit the official website to find the appropriate upgrade package.
To report any security issues please follow our Security Process and send them directly to us via email security@suitecrm.com
Content is available under GNU Free Documentation License 1.3 or later unless otherwise noted.