Blog

Release announcements, helpful tips, and community discussion

10.4.6

Cerb (10.4.6) is a maintenance update released on December 19, 2023. It includes 9 minor features and fixes from community feedback covering the 10.4 update. You can follow these instructions to upgrade.

Changelog

Added

  • [Sheets/Links] When building sheets, link: columns may now include a params:icon:. This supports icon placement in params:icon:at: with a value of start or end. Thanks to @mryanb for the feature request!

  • [Sheets/Links] When building sheets, link: columns may now include a params:href_new_tab@bool: key. This will open the link in a new tab/window rather than in the current tab. Thanks to @mryanb for the feature request!

Changed

  • [Maintenance/Performance] Massively optimized nightly maintenance. Ticket records are now permanently deleted after the undo period in smaller batches from the cron.maint scheduler. The previous approach was horribly inefficient – it deleted ticket and message records directly from the database and then used full table scans to remove linked records (e.g. context links, activity logs, attachments, comments, custom fields). In large environments this could run for several minutes, and it occasionally blocked writes (e.g. incoming/outgoing tickets). These records now also properly trigger the record.changed automation event.

  • [Maintenance/Performance] Removed the context.maint event. This ran abstract nightly maintenance for every record type. It pruned orphaned comments, activity logs, bidirectional context links, custom field values, notifications, and bot owners. This was very computationally intensive, and ultimately redundant because record deletion properly removes the related records in recent versions.

  • [Dependencies] Updated the ezyang/htmlpurifier dependency to improve PHP 8.x compatibility.

  • [Profiles/Widgets/UX] When editing profile widgets, added an autocomplete icon to the ‘Advanced options’ editor toolbar. This should make it more obvious that profile widgets can be conditionally hidden from here.

Fixed

  • [Encryption/PGP] Fixed an issue with generating new PGP key-pairs. Added implementations for both phpseclib and openssl. Thanks to Beat Stieger for the report.

  • [Updater/Records] When upserting certain records during an install or upgrade (automations, packages, context avatars), the record ID is no longer incremented if the record already exists.

Security

  • [Security/Dependencies] Updated the phpseclib/phpseclib dependency to 3.0.34 in response to a security advisory (CVE-2023-49316).