EspoCRM version 10.0 is out! It’s a major release, bringing a number of new features and improvements. Check out the details and release notes below.

Multiple pipelines
The new enhancement allows you to configure multiple pipelines for the same entity type.
While the status field can serve as a pipeline stage by default, with the Pipelines feature enabled, each record is assigned to a specific pipeline.
The assigned pipeline determines the stages available for the record.
The Pipelines feature can be enabled for:
- Leads
- Opportunities
- Custom entity types
Cascading links
The Cascading Links feature provides the ability to define dependency between 3 link fields.
Example. A quote record has Account and Contact field. When an Account is already selected, the system allows only Contacts related to the selected Account to be selected.
Cascade removal
The cascade cascade feature can be enabled for a link between entity types. If enabled, when a parent record is removed, associated related records will be removed as well.
When an admin user restores a removed record, the associated related records are restored as well.
Record locking
Record locking can be enabled per entity type. Locked records cannot be edited (except for designated fields) or removed.
Only users with the Lock permission can lock or unlock records.
Categories for custom entity types
Categories can be enabled for custom entity types of Base and Base Plus template type. Records then can be organized into tree-like categories.
Notification grouping
Notifications related to the same record and notifications about emails are grouped.
This update should reduce overwhelming and facilitate users returning back to the notification list to review updates, as the presentation is more structured now.
Collapsible popup notifications
Popup notifications, such as event reminders, can now be collapsed into the tray where they remain visible,
allowing users to continue their current work and revisit them later
Release notes
Enhancements:
- Multiple pipelines #3623
- Cascading links #3594
- Cascade removal and restore #3603
- Record locking #3592
- Categories for custom entity types #3587
Improvements:
- Notification grouping #3606
- Collapsible popup notifications #3643
- Notification sound #3661
- Viewing last viewed record in one click #3608
- Transactional save #3596
- Navbar: URL tab opening in new browser tab #3583
- OIDC: Support PKCE #3589
- URL field: Protocol Required parameter #3600
- Configurable order in record dashlets #3625
- Formula: More strict type checking in entity and record functions #3615
- Formula: record\find methods applying order through select framework #3617
- Formula: Validation exception function #3626
- Config get/set CLI commands #3666
- Email account reset #3667
- Image field: Capture parameter #3672
- Config parameters enabling upgrade and extension upload via admin UI #3676
Framework improvements:
Changes:
- Restrict access to disabled links #3585
- Move
allowInternalNotesparameter from clientDefs to streamDefs #3640
Compatiblity:
- SelectManager support removed #3628
- Backend deprecations removal #3630
- Frontend deprecations removal #3631
- Record service changes #3627
- ORM: Entity::get does not support deprecated link access anymore #3629
- Change in
AuthTokeninterface #3671 - Drop jobs with
serviceNamesupport #3673 - Drop support of service class implementations in popup notifications #3675
- Modal view deprecations removal #3659
- Removed deprecated
Espo.ui,Espo.utils#3652
Other:
- Collaborators enabled for Tasks and Cases by default #3584
All issues: https://github.com/espocrm/espocrm/milestone/233?closed=1