Release announcements, helpful tips, and community discussion


Cerb (7.2.3) is a maintenance update released on October 28, 2016; it contains 18 features, fixes, and usability enhancements from community feedback covering the 7.2 update. You can follow these instructions to upgrade.

  • [Platform/OAuth] Added an OAuth service to the Devblocks platform to remove the ‘oauth’ PHP extension requirement in many plugins. Additionally, PHP’s oauth extension doesn’t support proxies for outgoing connections, and our library does.

  • [Search/Elasticsearch/Performance] When using Elasticsearch for search, the ‘filter_path’ optional parameter is now used to reduce the size of the JSON response. This uses fewer resources (including bandwidth) and provides a minor performance improvement.

  • [Records/Owners] Fixed an issue where some task and ticket records could be left owned by a previously deleted worker.

  • [Mail/Reply] Fixed an issue when replying to a ticket with an invalid owner. This caused the ‘waiting’ spinner to display indefinitely.

  • [Platform/Seats] When an idle worker session is logged out to free up a seat for a new login, its idle time is now recorded along with the activity log entry for later analysis. This is helpful for tuning the seat count on large environments with many more workers than seats.

  • [Code Cleanup] Fixed a PHP7 error in widgets. The ‘continue’ keyword was being used rather than ‘return’.

  • [Mail/Usability] The compose popup now uses 75% screen width when opened from an address, contact, or organization card.

  • [CHD-4482] [Dashboards/Widgets/Charts] Fixed an issue on chart widgets where worklist-derived results could be truncated when using the ‘count’ function on the y-axis. This happened on record types where the first numeric column was a custom field. The custom field was improperly being added as a filter to the results (which would be proper for sum/average/min/max/etc), so only records with a value for that field were returned.

  • [CHD-4474] [API/Tickets] In the REST API, using /tickets/compose, the ‘to’ parameter is now optional. It’s acceptable in Cerb to create an internal ticket with no recipients.

  • [CHD-4481] [Mail/Parser] Added more error checking to the email parser to verify that each MIME part is properly formed. This may address some segfaults in PHP7 w/ Mailparse 3.0.1.

  • [Virtual Attendants] Fixed an issue with the ‘dict_set’ function in Virtual Attendant scripts. This was always converting arrays into objects. Arrays are properly handled now.

  • [Maintenance/Attachments] Fixed a very rare issue in the maintenance scheduler for attachments. If the database rejected DELETE queries but allowed CREATE TEMPORARY TABLE and SELECT, it was possible for maintenance to delete way more attachments from storage than it should have.

  • [Developers/Platform] The DevblocksPlatform::strToRegExp() helper now accepts arguments for $escape and $wrap. Escape specifies whether the given argument should be auto-escaped. Wrap specifies whether the returned regexp should have pattern delimiters automatically added. These options both default to true (the previous behavior).

  • [CHD-4484] [Support Center/History] Fixed an issue in the Support Center portal. The filters on the ticket history worklist weren’t displaying properly.

  • [Scheduler/Import] Fixed an issue with imports in XML format. If there was extra whitespace in the element then Cerb returned an error about not being able to find the sender address.

  • [CHD-4456] [Cards/Custom Fields] When displaying a worker-based custom field on a card (e.g. “Account Rep” on org records), the worker’s name is now properly displayed and clicking it opens their card. Previously, this was unhelpfully only displaying the worker’s ID.

  • [CHD-4466] [Setup/Snippets] Added back the Setup->Configure->Snippets page for administrators. This allows the management of all snippets regardless of owner (including private worker-owned snippets).

  • [Snippets] When deleting a record, their snippets are now properly removed as well.