Release announcements, helpful tips, and community discussion



Cerb (9.5.7) is a maintenance update released on June 17, 2020. It includes 17 minor features and fixes from community feedback covering the 9.5 update. You can follow these instructions to upgrade.

  • [Mail/Encryption] Fixed an issue with signing outgoing messages using PGP with a private key protected by a passphrase. This worked for decryption but not for signing.

  • [Support Center] In the Support Center, when recovering an account, it’s now possible to set a new password at the same time. Previously, the user was logged in after entering the confirmation code, but changing their password still required knowledge of the old one. Thanks to @mediafly for the report. [#1312]

  • [Connected Accounts/Search] In connected account worklists, service: is now a deep-search enabled filter. This can filter by any field on the parent connected service record. This is particularly useful in packages to filter by provider types, like service:(type:oauth2).

  • [Mail/Behaviors] Fixed a regression in ‘Before message sent by worker’ behaviors. These could unexpectedly re-open tickets on scheduled replies. Thanks to @iammattmartin for the report and debugging assistance. [#1291]

  • [Bots/Simulator/Custom Fields] Fixed an issue with bot behaviors that set a ‘list’ custom field. When simulating, the custom field value was actually being set on the record.

  • [Bots/Scripting] Fixed an issue with bot scripting when setting variables using blocks ({% set var %}...{% endset %}). Most filters on the variable would return a blank result, because internally the variable was a Twig\Markup class rather than a string. This is now properly handled by all filters.

  • [Records/Fieldsets/UX] On cards and profiles, file-based fields now display links that open cards. Previously, file-based fields displayed a bubble which didn’t wrap well for long filenames, and files-based fields directly downloaded files without showing cards.

  • [Mail/Reply/Custom Fields/UX] When replying to mail, existing multi-checkbox custom fields on the ticket now show their current values properly. [#1290]

  • [Mail/Compose] Fixed an issue when composing mail. If the subject was longer than 255 characters it prevented the draft from saving and message from sending. [#1320]

  • [Mail/Reply] Fixed an issue when replying to mail. If the subject was longer than 255 characters it prevented the draft from saving and message from sending.

  • [Cards/UI/Styles] On cards, the title now wraps properly even if there are long terms with no spaces (e.g. email addresses).

  • [Mail/HTML] In HTML messages, links using the tel: (telephone) scheme are now allowed. [#1309]

  • [Worklists/Export] On worklists, fixed an issue with exporting custom fields that contained special characters (including non-alphanumerics like :). These fields didn’t always show up properly in the fields menu.

  • [Bots/Behaviors/Variables] In bot behaviors, ‘Record Link’ variables can now be set properly from an action. This also enables lazy-loading on the variable’s dictionary when its name ends with ‘ID’. For instance, ‘Ticket ID’ has placeholders for var_ticket_id, var_ticket__label, etc. [#1042]

  • [Bots/Form Interactions] In form interaction bot behaviors, added an ‘Interaction End’ action. This ends the interaction so a reload of the widgets starts over, rather than repeating the last step of the interaction. [#1324]

  • [Mail/Compose] The compose popup is now reusable by other functionality. It returns a dictionary for the newly created ticket or draft. This change allows functionality (e.g. form interactions) to open the compose popup and then perform actions on the new record afterwards. Previously, the compose popup assumed it was opened from a ticket worklist.

  • [Form Interactions] In form interaction bot behaviors, added a ‘Prompt with compose email editor’ action. This opens the compose editor and optionally accepts a draft ID to resume. For instance, the form interaction could first create a draft with the desired defaults and then open the compose popup. The action sets a placeholder with the record dictionary of the newly created ticket. This can be used in subsequent steps of the form interaction (e.g. displaying a sheet, redirecting the page, taking actions based on custom field values).