July 2025 - Dashboard Release Notes

July 2025 - Dashboard Release Notes


ADDED

Schedule - Ability to Manually Send A Schedule

pi#2832

26622, 31131

Schedules / API

Schedule - Ability to Manually Send A Schedule

pi#2832

26622, 31131

Schedules / API

Previously, there was no way to send out a full Schedule (i.e. one that goes to all recipients like a normal run) in an ad-hoc manner. This functionality has now been added and can be used both through the UI and a new API endpoint /schedules/{id}/send.

The main things to know about these ‘Manual’ runs are that they:

  • Only run once: they will not automatically recur based upon a Schedule’s settings

  • Do not necessarily run immediately: an overdue job will be added to the Scheduler queue that is available to be picked up as soon as possible by the Scheduler

  • Do not cancel or update any of the Recurring runs for this Schedule

  • Are limited to one in-progress ('Active' or ‘Waiting’) job of this type per Schedule. Attempts to queue another Manual job for the same Schedule will fail until the previous one has completed

  • Can not be run on a Schedule that is Suspended and will have any WAITING or ACTIVE jobs cancelled when a Schedule is suspended as is the case with Recurring runs

  • Are audited both in terms of a successful call that creates a new Manual job, an attempt to create a ‘duplicate’ job (i.e. another Manual job is already in-progress for this Schedule), and an attempt to run one on a Suspended Schedule

Screenshot from 2025-07-02 11-59-56.png
Image showing the new Manual Schedule icon and the confirmation pop-up it opens

Other related changes:

  • When the Scheduler starts up, it will now fail any ‘Active’ jobs (Recurring or Manual) to prevent the possibility of a hanging job preventing any other jobs from being picked up

 

 

Themes - Custom Icons

pi#2900

34092

Themes / Icons

Themes - Custom Icons

pi#2900

34092

Themes / Icons

A new Editor tab has been added for Themes (labelled 'Icons'), that allows you to view all Icons that which can be customised, and replace them with your own custom icons - within specified areas of the dashboard. You can configure a customer Icon pack by following these steps;

  1. Add your Icon pack to the Custom Font URLs section, under the 'Configuration' tab.

  2. Head to the new 'Icons' tab, you can select a sub-tab - which represents an isolated area of the dashboard - and enter your icons.

  3. Icons must be entered in the form of a valid HTML tag, must contain an opening and closing tag, can only be an 'i' or 'span' tag, and can only contain the attributes 'style' and 'class'. Additionally, the 'class' attribute is restricted to a specific sub-set of values: font-size, color, background-color, margin & padding.

N.B - we currently have Sub Tabs for Chart Cell and the Navigation Bar only.

Future sub tabs and icon overriding is planned for the following areas:

  • Inner Chart Panel (including things like the Editable Table check-mark)

  • Category Panel

  • Category Filters Panel

  • Temporary Filters Panel

  • User Info & About Screens

  • Login Screen

  • Admin Screens (including things like Data Connections, User Access & Category Configuration)

  • Scheduling/Reporting Screens

  • Chart Editor.

Screenshot from 2025-07-07 12-41-33.png

 

 

Themes - Linked Chart Colours

pi#2895

34095

Themes / Colours

Themes - Linked Chart Colours

pi#2895

34095

Themes / Colours

When selecting chart colours using the colours tab on the chart edit screen, it is now possible to use the ones defined in your theme and have them always follow the value in the theme. If the theme for a user differs they will be shown the equivalent colour as long as the name matches in both themes.

In addition theme colours are now exposed as Magic Variables, for example THEME_COLOR_{COLOUR_NAME}}. Note the use of the American English version of colour which is commonly used in software development.

If you prefer to use the exact static version of the colour as before you can use the '#' button to convert from dynamic to static and it will not be updated as theme colours change.

image-20250703-124910.png

 

N.B - only two of the Colour Pickers support the linked colours at this time - Chart Colours and Chart Targets (see above). Other Colour Pickers in areas such as the Report Editor, Card Chart Editor do not yet support this new functionality.

 

Themes - Linked Target Colours

pi#3124

34095

Themes / Colours

Themes - Linked Target Colours

pi#3124

34095

Themes / Colours

The new colour picker options for theme colours have also been applied to Chart Targets via the Chart Editor screen. The functionality works in the same way, allowing you to pick any colour or a theme colour.

 

image-20250707-162954.png

 

 


 

CHANGES

Export To CSV - CSV Exports Failing / Corrupt When Quote CSV Values Is Unchecked

pi#3108

 

CSV Exports / Schedules

Export To CSV - CSV Exports Failing / Corrupt When Quote CSV Values Is Unchecked

pi#3108

 

CSV Exports / Schedules

Attempts to export a CSV with the “Quote CSV Values” System/Organisation setting unchecked would fail or be corrupted.

Legend - Label Display Improved When There Is Restricted Space

pi#3073

30563

Legends

Legend - Label Display Improved When There Is Restricted Space

pi#3073

30563

Legends

The Legends aspect of charts auto-hides when there is not enough space to render it alongside the chart. This logic did not take the “Legend label length” Chart Attribute setting into account resulting in instances where the Legends would be hidden even though there was enough space to render them in their truncated form. A similar issue related to Funnel and Pyramid charts being notably off-centre when using Legend truncation has also been resolved

Authentication - Users Unable To LogIn With User Sync (JWT Token Hitting Database Size Limit)

pi#3144

 

JWT / User Sync / LogIn

Authentication - Users Unable To LogIn With User Sync (JWT Token Hitting Database Size Limit)

pi#3144

 

JWT / User Sync / LogIn

The entire JWT token was being stored in the user_gateway_sessions table (in the database), meaning a new session was being created when a new JWT was supplied. The limit on this column of 2000 characters however meant that even modest User Sync payloads (within the JWT), would fail to validate and result in users being unable to login - only the signature or the JWT is now being stored.

Schedule - Improve Schedule History (Cancel Status)

pi#3081

 

Schedule Monitoring / History

Schedule - Improve Schedule History (Cancel Status)

pi#3081

 

Schedule Monitoring / History

Cancelled Schedule Jobs were being retained within the Schedule history, which could be forward dated and occupy a history slot in the Monitoring screen at the expense of an Jobs that had recently completed.

The Schedule history now only include Jobs whose statuses of either ‘Completed’ or ‘Failed’. The ‘Cancel’ status, which can still show as the active Schedule job for suspended Schedules, has been updated to ‘Cancelled’ to match the name formatting of the other options.

Column Ordering - For Charts With More Than 10 Y Axis

pi#3048

34499

Sorting

Column Ordering - For Charts With More Than 10 Y Axis

pi#3048

34499

Sorting

The ordering of columns once the number of Y-Axis exceeded 10 was incorrect with later columns appearing earlier than they should.

Themes - Colour Names Inconsistency (pi-day & pi-night themes)

pi#3121

 

Themes

Themes - Colour Names Inconsistency (pi-day & pi-night themes)

pi#3121

 

Themes

Theme colour names in pi-day and pi-night themes have been updated to follow the standard naming pattern used elsewhere, eg colour1, colour 2

Magic Variables - [[Language]] Magic Variable Not Being Resolved

pi#3146

38054

Magic Variables

Magic Variables - [[Language]] Magic Variable Not Being Resolved

pi#3146

38054

Magic Variables

Since the May 25 release, specifically around changes made to remove information from the sessions, in certain scenarios the [[Language]] Magic Variable was failing to resolve itself. This was due to it previously being part of the removed session data, and not being provided via alternate means in all scenarios.

Library Upgrade - Tomcat (9.0.106 > 9.0.107)

pi#3140, pi#3141

 37956, 37857

Library / Tomcat / Vulnerabilities

Library Upgrade - Tomcat (9.0.106 > 9.0.107)

pi#3140, pi#3141

 37956, 37857

Library / Tomcat / Vulnerabilities

Upgraded Tomcat from 9.0.106 to 9.0.107 to resolve vulnerabilities CVE-2025-52520 and CVE-2025-53506.

Library Upgrade - Lang3 (3.14.0 > 3.18.0)

pi#3139

 37955

Library / Lan3 / Vulnerabilities

Library Upgrade - Lang3 (3.14.0 > 3.18.0)

pi#3139

 37955

Library / Lan3 / Vulnerabilities

Upgraded lang3 from 3.14.0 to 3.18.0 to resolve vulnerability CVE-2025-48924.

 


 

SCHEMA CHANGES

Description

GitLab Reference(s)

ZenDesk Ticket ID(s)

Description

GitLab Reference(s)

ZenDesk Ticket ID(s)

Removed - mis_colours table

pi#2895

 

Added - created_manually to pi_schedule_jobs

pi#2832

26622, 31131