Appanvil karma designer | ||||
---|---|---|---|---|
|
Table of Contents | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
IMPORTANT NOTIFICATIONS
Scheme Changes - this 2025_01 release contains x3 schema changes - seeHEREfor more details
Feature Deprecation - the old version of the Excel Export feature is no longer available to revert to, having been able to set this through the
OLD_EXCEL
BETA flag previously. By default, only the New Excel Export feature is now available from this version onwards. See HERE for more information.
NEW FEATURES
Multilingual - Ability To Define The Languages Available & Named Display In The Language Selectors | pi#2653 | 32809 | Multilingual |
---|---|---|---|
You can now add a ‘languages.properties’ file into your locale directory to dictate what languages appear in the Language Selectors and under what name they are displayed. The presence of this file disables the auto-generation of languages from the ‘messages*.properties’ filenames and will not provide 'English' as a default. Languages in this file are defined by simple key/value pairs of the ‘language code’ and the display name separated by an equals sign e.g. to define the language associated with files with the ‘en_GB’ language code in their filename and have it appear as “British” in the Language Selectors I would have the following on its own line within the file: |
Multilingual - Ability To Use Languages Without A Locale | pi#2653 | 32809 | Multilingual |
---|---|---|---|
Previously, translation files uploaded through the UI had to include both a language and locale as part of their ‘language code’ e.g. ‘messagesStatic_en_GB.properties' was accepted but the language only version of ‘messagesStatic_en.properties’ would have failed validation. If not using the 'languages.properties’ file detailed in the release note above, languages defined without the locale will appear in the Language Selectors without the parenthetical locale i.e. “English” rather than “English (United Kingdom)” |
Magic Variables - New Date/Period Based Variables Added | pi#2651 | 31388 & 32934 | Magic Variables |
---|---|---|---|
The following magic variables relating to Date have been added to the system:
The full description of these magic variables can be found HERE |
Exporting To PDF - Added Footer For Browser PDF Exports | #2535 | - | Exporting To PDF |
---|---|---|---|
A footer detailing the ‘generation date’ and ‘pages’ has been added to Browser PDF exports, to maintain consistency with the previous Renderer export. The formatting of the date can be adjusted with the Global Variable
Below is an example of the generated footer with some applied styling as mentioned above: |
Embedding - Wildcard Support Added For Embed Actions - Trusted Hosts Settings | pi#2865 | - | Embedding |
---|---|---|---|
Embed actions (used to handle post message front-end actions when embedding) now supports a wildcard '*' in the trusted hosts setting, and will allow a post message from any subdomain if the wildcard is provided. |
FEATURE CHANGES
Chart Editor - Ability To Edit In Full Screen Mode | pi#2533 | 28243 | Chart Editor |
---|---|---|---|
Previously, you would be unable to edit a chart in full screen view. Now, you can freely edit the chart, and it will return you to full screen view once you have made your changes. |
Exporting To Excel - Switch All Users To New Excel Export Functionality | pi#2697 | 33680 | Exporting To Excel |
---|---|---|---|
All users will now be moved across to the new version of the Excel export functionality, this version is significantly improved over the older version. As part of this work vulnerability CVE-2024-47554 in commons-io library has been removed from the dashboard. |
Exporting To Excel - Tables - Excluded Column Snackbar Now Times Out | pi#2635 | 28990 | Exporting To Excel |
---|---|---|---|
Previously, you would have to close the snackbar that appears when exporting a table to Excel, when one or more columns was marked as being excluded from export. It now disappears automatically after a few seconds. |
Exporting To Excel - Exporting Three Columns & Three Rows On A Rotated Table Made Exports Fail | pi#1541 | 28835 & 24828 | Exporting To Excel |
---|---|---|---|
When a Rotatable Table included three columns and three rows of data, when attempting to export this to excel, this would lead to the export failing. |
Exporting To PDF - Certain Chart Types Unable To Export | pi#2789 | - | Exporting To PDF |
---|---|---|---|
Fixed an issue that prevented certain chart types (gauge, flow, treemap) from being successfully exported to PDF format. The issue has been resolved, ensuring all chart types are now exported accurately, matching the visualisations in the UI. |
ToolTips - Improved Positioning Of Custom Map Tooltips (Full Screen Mode) | pi#2610 | 32455 | ToolTips |
---|---|---|---|
When entering full-screen mode, the custom map will now be completely redrawn to adjust its dimensions, ensuring that tooltips are positioned correctly near the data labels. |
ToolTips & Data Labels - Stacked Bar Charts - Totals & Percentages Were Omitting Negative Values | pi#2716 | 29704 | Tooltips & Data Labels |
---|---|---|---|
Previously, data labels and tooltips on stacked bar charts would omit negative values from the total value for each bar, which would also affect the percentages displayed for each bar segment. Now, the positive values minus the negative values is used for the total, and percentages for each segment are taken as a percentage of this new total. A handful of additional fixes have been made off the back of a series of smaller bugs revealed due to this implementation;
|
Data Labels - Improved Alignment Of Multi-Line X-Axis Labels - Centred Against The Data Point | pi#2814 | 33153 | Data Labels / X Axis |
---|---|---|---|
Previously, certain chart sizes would result in multi-line x-axis labels that no longer properly matched the position of their data point. They would appear left-aligned with respect to the axis space reserved for that data point rather than central to it. This positional discrepancy looked particularly bad after zooming. The labels are now properly centrally aligned. Before: After: |
Configuration Tool - New Configuration Tool Directory | configurationt-tool#134 | 29815 | Configuration Tool |
---|---|---|---|
To ensure the app launches successfully across all Windows environments, we have modified the build configuration to output the configuration-tool-GUI as an unpackaged directory containing all its files. A new directory named |
Configuration Tool - Minimum Spare Threads Changes Not Being Upheld Through The GUI | configuration-tool#136 | - | Configuration Tool |
---|---|---|---|
Previously, changes made to the Advanced Setting ‘Minimum Spare Threads’ through the configuration tool were not being upheld. |
Scheduler - Allow The Scheduler To Use New Browser Export Functionality (Single Chart Exports) | pi#2534, pi#2573 & pi#2574 | - | Scheduler |
---|---|---|---|
The Scheduler service will now utilise the new browser export functionality to generate charts were supported. This relates to PDF, Word and PowerPoint single chart exports. |
Scheduler - Encrypted Schedules Failing To Send (Docker) | pi#2810 | 32130 | Scheduler |
---|---|---|---|
7-Zip is used to encrypt Schedules that included a password, but was missing from the Scheduler Docker image - which led to the inability to use this feature. Whilst manual workaround were available for this, these are no longer needed. |
Scheduler - Modified Schedules With Role Links Failing To Import Due To Unique Constraint | migrations#62 | - | Scheduler |
---|---|---|---|
It was possible for an import that updates an existing Schedule, that has Roles associated, to fail with a message related to a unique constraint. |
Zooming - Y Axis Zooming - On Merged Charts | pi#2803 | 30898 | Zooming / Merged Charts |
---|---|---|---|
Previously, when you tried to zoom in on a Merged Chart, with the Y axis zoom feature enabled and then reset the zoom state, the tick intervals on the Y axis would be different from what they were when the chart was in its initial state. The original tick intervals are now retained once you have reset the zoom state. |
Zooming - Reset Zoom Button Overlapping Data In Charts | pi#2805 | 33155 | Zooming / Chart Display |
---|---|---|---|
In certain scenarios, the ‘Reset Zoom’ button would overlap chart content when zooming in. Additional space has been added to the top of the chart container when zooming in, allowing the zoom button to appear outside the chart body. When zooming out, the space reverts to its original state. |
Tables - Decimal Places Attribute Not Working On Tables On 0 (Zero) Values | pi#2695 | 33190 | Tables |
---|---|---|---|
When setting the decimal places of a measure for a table which contains a 0 value (within the chart attributes), the decimal places would not apply and the 0 values would fall back to using the decimal places defined in the object definition. The decimal places defined in the chart attributes will now take precedence, and apply to 0 values correctly. |
Tables - CrossTab Headings - Prefix/Suffix Incorrectly Being Applied To Measure Headings | pi#2808 & pi#1369 | 31550, 33844, 32481, 31550 & 22008 | Tables |
---|---|---|---|
Measures in Crosstab tables (tables with a Header defined) would have their Data Object/Attribute formatting applied (e.g. a prefix) to not only their data values but also their respective headers. This formatting only applies to the Header defined in the Chart Configuration as those headers are now generated from the data values of that object. |
Observability - Docker Healthcheck - Default Dashboard Healthcheck Changed To A Single Ping | pi#2655 | - | Observability / Docker |
---|---|---|---|
The healthcheck script that runs on Docker would ping both ‘/version’ and ‘/pi’ to ascertain the health of the container. The '/pi' ping was causing a repeated WARN log message to be produced, which has been removed. The ‘/version’ ping has been changed to include a |
Observability - Collect Migration Errors & Log Them At The End | #60 | - | Observability / Logging |
---|---|---|---|
When performing migration processing, should SQL failures be encountered, these are now added to the end of logs to aid the triage process. |
Logging - Remove Catalina WARNING Logs On Startup | pi#2816 | 29963 | Logging / Tomcat |
---|---|---|---|
When starting up the Dashboard the catalina{date}.log file would show some warnings messages, related to attempting to set ‘maximumSpareThreads’ and ‘proxyName’. These messages will no longer appear. |
Logging - Enhanced Logging Feedback On Editable Table Feature | pi#2793 | Logging / Editable Tables | |
---|---|---|---|
Logging around the Editable Tables feature have been improved to assist with debugging of issue, with the full outbound request details along with success and failure details now being captured. |
Logging - Errors Appearing In Console When Zooming On A Map With Null Values | pi#2811 & pi#2846 | 32903 | Logging / Maps |
---|---|---|---|
Maps with null values would display errors in the console when zooming in and out. Furthermore, maps with legends with null values would not render at all, which has also been addressed. |
Multilingual - Subtotal Labels Not Being Translated | pi#2821 | 34224 | Multilingual |
---|---|---|---|
Subtotal labels were previously not being translated. |
Multilingual - Data Elements Staying With The Old Language After Changing The Language In The GUI | pi#2828 | 29637 | Multilingual |
---|---|---|---|
When selecting a new language in the GUI, not all translations were being performed, specifically around where [[VARIABLES]] were being used in queries. When the language is now changed through the GUI, the category/page will be refreshed to ensure all aspects of the charts are translated using the newly selected language. |
Multilingual - New Config Items Labels Not Respecting Translated Language Until Save Performed | pi#2762 | 34016 | Multilingual |
---|---|---|---|
During the process of creating a new Category, User, Role, Data Connection, Theme, API, Organisation, Report or Schedule, the new item would be described as 'No Title' (see the image below) until it was saved. The software now respects the language in use without the need to save it first. |
Category Objects - The Model Popup Category Object Was Unable To Be Resized | pi#2827 | 33571 & 34300 | Category Objects |
---|---|---|---|
When both the Category List Panel and Category Object Panel were pinned, it was possible for the Category Object Selection popup (model) to be partially obscured by the Category List panel. |
Category Objects - Drop Down Data Out Of Sync | pi#2807 | 34411 | Category Objects |
---|---|---|---|
Drop down data in Category Object filters could become out of sync if a user removes a preceding temporary category object filter value. |
Magic Variables - Financial Year - Start Calculation | pi#2649 | 34769 | Magic Variables |
---|---|---|---|
The start of the financial year was incorrectly calculated when the |
Linux - Issues With Tomcat Base Directory When Running Linux Dashboard Through Systemd | pi#2855 | 34380 | Linux / Tomcat |
---|---|---|---|
Due to changes introduced in the November 24, related to how we initialise JDBC drivers in a more isolated way, an incorrect Tomcat base directory was being used for jdbc_drivers when using systemd. Similar issues were discovered due to this issue, related to the dynamic drivers functionality and the location of the ‘out.{date}.log’ file (rotating Dashboard log file). Both issues have been addressed. |
Data Connections - Exporting - Missing Categories & Charts | deployment#116 & pi#2791 | 34273 & 34965 | Data Connections - Exporting |
---|---|---|---|
The API request for exporting a data connection now includes the associated Categories & ChartsWhen making an API call to the get_exportImportConnection endpoint, the includeAllRelatedChartsAndCategories value was not defaulting to true or being respected, which resulted in Categories and Charts not working. |
Data Connections (Linked) - Need For Parent Connection Access When Using A Child Connection | pi#2786 | 34137 | Data Connections - Linked | ||
---|---|---|---|---|---|
Previously, Users not only had to have User Access in Org2 to link to Category2, they also needed to subscribe to Org1, and have User Access in Org1 to link to Category1. Now Users only needs to have User Access in Org2 to link to Category2, and subscribes to Org1. They no longer need to be linked to Category1 via User Access.
This provides the ability to hide ParentOrgConn from this User. Because if User has access to Category1, they can use ParentOrgConn, or an admin can edit ParentOrgConn. We don’t want to give people access to ParentOrgConn any time we want to give them ChildOrgConn. |
Data Connections (Linked) - Parent Connection Details Variable Replacement Failing | pi#2888 | 35123 | Data Connections - Linked |
---|---|---|---|
When the parent connection had variables, they were not correctly being replaced. For example, where the connection is in Org1, and User has an Org1 subscription, the system now uses the Org1 subscription’s variables to replace the connection variables. |
Embedding - |
---|
deployment#116
34273
API
When making an API call to the get_exportImportConnection endpoint, the includeAllRelatedChartsAndCategories value was not defaulting to true or being respected, which resulted in Categories and Charts not working.
Unable To Use Post Message With New Category Objects (Category Embedding) | pi#2859 | 34816 | Embedding |
---|---|---|---|
The Category Panel would not open when attempting to use post messages under the following embedding scenario;
|
MAINTENANCE
Vulnerability - CVE-2024-47535 - Denial Of Service Attack On Windows App (Netty) | pi#2745 | 33940 | Vulnerability / Library Upgrade |
---|---|---|---|
Updated Netty framework from version 4.1.100 to 4.1.115 |
Vulnerability - CVE-2024-56337 & CVE-2024-50379 (Tomcat) | pi#2835, pi#2837 & pi#2838 | 34751, 34753, 34784 & 34785 | Vulnerability / Library Upgrade |
---|---|---|---|
Minor Tomcat upgraded from 9.0.97 to 9.0.98 and the |
Vulnerability - CVE-2024-29025 - Allocation of Resources Without Limits or Throttling (Lettuce) | pi#2389 | 30738 | Vulnerability / Library Upgrade |
---|---|---|---|
Updated the Lettuce library from version 6.1.10 to 6.5.1. |
Vulnerability - CVE-2024-45337 - ServerConfig.PublicKeyCallback Authorization Bypass (Crypto & Net) | scheduler#94 | 34466 | Vulnerability / Library Upgrade |
---|---|---|---|
Updated the Crypto and Net packages to the most recent versions. This addressed vulnerabilities around the Scheduler and Excel Reader modules. |
Vulnerability - CVE-2024-43382 - Incorrect Security Setting (Snowflake JDBC) | pi#2720 | 33846 | Vulnerability / JDBC Driver |
---|---|---|---|
Updated the Snowflake JDBC driver from version 3.14.1 to 3.20.0 (latest). |
Library Upgrade - 7 Zip | scheduler#93 | - | Library Upgrade |
---|---|---|---|
Updated the 7 zip library from version 23.01 to 24.09. This library is used for encryption within the Scheduler. |
SCHEMA CHANGES
Description | Columns / Items | GitLab | ZenDesk |
---|---|---|---|
Index Added | mis_audits.audit_date_time and mis_audits.user_code | migrations#62 | 31663 |
Foreign Key Added | between pi_schedule_user_links.schedule_id and pi_schedules.id | migrations#62 | 31663 |
Unique Constraint Added | on pi_schedule_user_link between user_id and schedule_id | migrations#62 | 31663 |