Appanvil karma designer | ||||
---|---|---|---|---|
|
Table of Contents | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Table of Content Key
Customer Requested tickets are highlighted with this icon 🗣️
Notifications
Below are key notifications to be aware of before upgrading your dashboard.;
Note |
---|
There is x1 Schema Change in this release - see HERE |
Note |
---|
There are x2 Feature Deprecation Notifications to make you aware of (for upcoming releases) - see HERE |
FUTURE DEPRICATION NOTICE
The following items are to be deprecated, and scheduled for removal in upcoming releases:
Java 8 Deprecation (Impact on Linux Installations)
Linux Installations
The next release, the June 24 (2024_06) release will run on Java 11 and Java 8 will not be supported. This change only impacts native Linux platforms, where you will need to supply an updated JDK for the dashboard to operate.
Windows and Docker environments include Java, and so no changes are required.
OpenID Connect - Variables Based Configuration | Open ID Connect | This release (May 24, 2024_05) introduces an improved way to OpenID Connect - Variables Based Configuration | Open ID Connect | |
---|---|---|---|---|
In this release (May 24, 2024_05) we have introduced improvements to the way you can configure OpenID Connect via a dedicated screen - with support for multiple providers. We recommend migrating to the newer style this new method of configuration as soon as possible, as the older configuration method (via the Global Variables screen) will be removed in an upcoming release. |
NEW FEATURES
Make Drill Restrictions work with Category Embedding not just Single Chart Embedding 🗣️
pi#2358
30361
Drill Restrictions, Category Embedding
As part of the October 2023 release, we added the ability to restrict what drill levels can be accessed via the use of two new URL parameters (drillStart and drillEnd) and the ability to use placeholder filters (!$!). These placeholder filters allow you to have the initial view of a chart start at a drill level other than the first one without applying any filtering to it. This feature was designed to be used only for single-chart embedding.
This functionality has now been extended to work with embedded Categories as well with the drillStart/drillEnd restrictions applying to all drillable charts within the Category. The setup is roughly the same as for a single chart but the URL of a Category is slightly more complicated and there are a few things worth knowing about how this features interacts with other aspects of an embedded Category - it is documented in full HERE (INSERT LINK ONCE YOU HAVE IT).
Note |
---|
Link to pending documentation update can be found HERE |
Multiple Identity Providers 🗣️
pi#2228, #2230 and #2363
30649
External Login
Functionality has been added to allow to configure multiple Identity Providers (IDPs) in the dashboard either through the UI or external API.
Each IDP will have its own unique Identifier which can be used as a query parameter in the URL to resolve the correct IDP to be used. IDP Identifier field only accepts alphanumeric values. All IDP entries will be saved to the new table in the database - MIS_IDENTITY_PROVIDERS.
If there is only one IDP entry in the database, the users don’t need to specify the correct identifier in the URL; the dashboard will automatically resolve to using the defined IDP as long as it’s enabled.
If there are multiple IDP entries saved in the database, the users will be expected to specify the IdentifierJava 8 Deprecation (Impact on Linux Installations) - Moving to Java 11 | Linux Installations | |
---|---|---|
In our next release (June 24, 2024_06) release, the dashboard will run on Java 11 meaning that Java 8 will no longer be supported. This change only impacts native Linux installations, where you will need to supply an updated JDK for the dashboard to operate. Windows and Docker environments include Java, and therefore no changes are required for those deployment types. |
NEW FEATURES
Multiple Identity Providers (IDPs) 🗣️ | pi#2228, #2230 and #2363 | 30649 | External Login | ||
---|---|---|---|---|---|
Functionality has been introduced to allow multiple Identity Providers (IDPs) to be configured in the dashboard - either through the UI or by the external API. Each IDP has its own unique identifier which can be used as a query parameter in the URL, to resolve the correct IDP to be used. The IDP Identifier field only accepts alphanumeric values. All IDP entries will be saved to the new table in the database - MIS_IDENTITY_PROVIDERS (see Schema Changes section). If there is only one IDP entry in the database, the users do not need to specify the correct identifier in the URL; the dashboard will automatically resolve to using the defined IDP providing it has been enabled. If there are multiple IDP entries saved in the database, the users will be expected to specify the Identifier of the Identity Provider they wish to use. The expected dashboard URL structure is as follows;
UI: A new tab has been added to the Settings screen, allowing users to create OAuth configuration for multiple providers.
API: Eight new API endpoints have been added to help manage the new Identity Provider configurations. These endpoints are documented on in our SwaggerHub page and are listed below:
Things to note:
|
Mobile Layout 🗣️ |
---|
pi#2396 |
---|
29765 |
---|
Logging
JSON format logging is coming to pi! This will allow easier management of large volumes of log data making it easier to search, filter, read etc. Right now you can turn it on for the following components: server(pi), renderer. It can be turned on via the appropriate environment variable or through the config gui. You also now have the option to disable the server(pi) access logger if you don’t wish to have that level of detail, when JSON logging is enabled the access logs will also be in JSON format.
Configurable timeout value for renderer 🗣️
pi#2053
-
Renderer
You can now supply a configurable timeout value in seconds to the renderer, causing the request to fail upon exceeding this timeout. The value is set in the config tool, under the ‘renderer’ tab, as shown below:
It is also set via a docker environment variable called ‘RENDERER_TIMEOUT_IN_SECONDS
' - under the 'renderer’ service.
The default value will be 900 seconds (15 minutes). You can configure this to be however long you’d like and you can include decimal values.
This will affect:
Single chart downloads
Single report downloads
Scheduled charts
Scheduled reports
And an appropriate error message will be displayed to the user upon hitting this timeout.
The timeout specifically affects how long it takes for the chromium browser within the renderer to reach the desired chart/report URL.
Exclude column from excel export 🗣️
pi#2346
28990
Data Tables & Exports
We have now introduced an option which allows you to exclude specified columns from excel exports of data tables:
The column will continue to show in the chart visualisation despite being excluded from the excel export. This works for all table types.
There are a couple of known issues with this at the moment:
If you have totals for a column which you are excluding - it will exclude the total values (both for grand totals and sub dimension breaks) - but not the actual total row itself, so you will end up with blank total rows. It is recommended that you do not have totals for columns which you wish to exclude form export.
If you have 2 or more columns under a cross tab value, and exclude the left most column, the cross tab value will be wiped out from the header. You can work around this by changing the order of the columns so that you never exclude the left most column.
Mobile Layout 🗣️
pi#2396
29765
Category Layout
An option has been added to the dashboard to save a mobile layout for the category.
Three new options have been added to the Layout Button Menu referring to the management of the mobile layout for the viewed category:
Save as Mobile Layout
requires ‘Can save layouts’ permission
button is enabled when no mobile layout exists OR the existing mobile layout is different to your personal/user layout
when clicked, mobile layout is saved as a copy of your personal/user layout for the category
Display Mobile Layout
requires ‘Can modify layouts’ permission
button is enabled when mobile layout exists AND the existing mobile layout is different to your personal/user layout
when clicked, mobile layout will be converted to your personal/user layout for the category to be viewed in the desktop mode
Delete Mobile Layout
requires ‘Can modify layouts’ permission
button is enabled when mobile layout exists
when clicked, mobile layout for the viewed category will be removed
With the introduction of the mobile layout, the priority of the layout display is as below:
When user has ‘Can modify layouts’ permission
Desktop View: 1. Personal/User Layout; 2. Default Layout; 3. Empty Layout
Mobile View: 1. Personal/User Layout; 2. Mobile Layout; 3. Default Layout; 4. Empty Layout
When user doesn’t have ‘Can modify layouts’ permission
Desktop View: Default Layout
Mobile View: 1. Mobile Layout; 2. Default Layout
‘Current Layout’ header has also been added to the layout dropdown menu that record the current viewed layout type for the category ('Default' or ‘Personal’).
Note |
---|
Link to pending documentation update can be found /wiki/spaces/DEV/pages/1771601921 |
Copy category URL 🗣️
pi#2353
29093
Chart Info Panel
You can now copy an iFrame link to embed a category for the chart info panel, just as you can to embed a chart.
Category Layout | |||||
---|---|---|---|---|---|
An option has been added to the dashboard to save a mobile layout for the category. Three new options have been added to the Layout Button Menu referring to the management of the mobile layout for the viewed category: Save as Mobile Layout
Display Mobile Layout
Delete Mobile Layout
With the introduction of the mobile layout, the priority of the layout display is as below: When user has ‘Can modify layouts’ permission Desktop View: 1. Personal/User Layout; 2. Default Layout; 3. Empty Layout Mobile View: 1. Personal/User Layout; 2. Mobile Layout; 3. Default Layout; 4. Empty Layout
When user doesn’t have ‘Can modify layouts’ permission Desktop View: Default Layout Mobile View: 1. Mobile Layout; 2. Default Layout
‘Current Layout’ header has also been added to the layout dropdown menu that record the current viewed layout type for the category ('Default' or ‘Personal’).
|
Make Drill Restrictions work with Category Embedding not just Single Chart Embedding 🗣️ | pi#2358 | 30361 | Drill Restrictions, Category Embedding | ||
---|---|---|---|---|---|
As part of the October 2023 release, we added the ability to restrict what drill levels can be accessed via the use of two new URL parameters (drillStart and drillEnd) and the ability to use placeholder filters (!$!). These placeholder filters allow you to have the initial view of a chart start at a drill level other than the first one without applying any filtering to it. This feature was designed to be used only for single-chart embedding. This functionality has now been extended to work with embedded Categories as well with the drillStart/drillEnd restrictions applying to all drillable charts within the Category. The setup is roughly the same as for a single chart but the URL of a Category is slightly more complicated and there are a few things worth knowing about how this features interacts with other aspects of an embedded Category - it is documented in full HERE (INSERT LINK ONCE YOU HAVE IT).
|
Copy category URL 🗣️ | pi#2353 | 29093 | Chart Info Panel |
---|---|---|---|
You can now copy an iFrame link to embed a category for the chart info panel, just as you can to embed a chart.
|
Configurable timeout value for renderer 🗣️ | pi#2053 | - | Renderer |
---|---|---|---|
You can now supply a configurable timeout value in seconds to the renderer, causing the request to fail upon exceeding this timeout. The value is set in the config tool, under the ‘renderer’ tab, as shown below: It is also set via a docker environment variable called ‘ The default value will be 900 seconds (15 minutes). You can configure this to be however long you’d like and you can include decimal values. This will affect:
And an appropriate error message will be displayed to the user upon hitting this timeout. The timeout specifically affects how long it takes for the chromium browser within the renderer to reach the desired chart/report URL. |
Exclude column from excel export 🗣️ | pi#2346 | 28990 | Data Tables & Exports |
---|---|---|---|
We have now introduced an option which allows you to exclude specified columns from excel exports of data tables: The column will continue to show in the chart visualisation despite being excluded from the excel export. This works for all table types. There are a couple of known issues with this at the moment:
|
JSON Logging (experimental) 🗣️ | pi#2151 & renderer#96 | - | Logging |
---|---|---|---|
JSON format logging is coming to pi! This will allow easier management of large volumes of log data making it easier to search, filter, read etc. Right now you can turn it on for the following components: server(pi), renderer. It can be turned on via the appropriate environment variable or through the config gui. You also now have the option to disable the server(pi) access logger if you don’t wish to have that level of detail, when JSON logging is enabled the access logs will also be in JSON format. |
CHANGES
Tomcat upgrade to 8.5.100 | pi#2366 | 30430 | Libraries |
---|---|---|---|
Tomcat has been upgraded from 8.5.97 to 8.5.100 to resolve a certificate bug. |
Compression of additional JS assets | dd#92 | 30747 | Performance |
---|---|---|---|
Gzip compression and caching has been added to additional javascript assets that were not compressed previously. This should be a significant performance boost for people on slower connections. |
Retain mobile view with horizontal orientation by default and respect the browser’s built in ‘show desktop site’ button | pi#2369 | 30394 | Mobile Device Layouts |
---|---|---|---|
Previously, switching from vertical to horizontal view on mobile would cause the dashboard to switch to desktop view. Now, it will retain mobile view regardless of orientation. This is unless if you click the browser’s built in ‘show desktop site’ button - in which case, the desktop version will be shown. The request to view desktop site will be fully respected in horizontal orientation. In vertical orientation, however, it will use the mobile view layout but the desktop view navigation bar settings. This is because in vertical orientation, the phone’s width will simply be too small to fit in the content. |
Removing data connection object start quote and object end quote is not saved | pi#2327 | 2922 | Data Connections |
---|---|---|---|
Previously, upon entering an object start quote or object end quote with a data connection which has a default value (such as Snowflake which has a default value of “) - if you were to set these to be blank, it would not save correctly and would reset back to the default value. Now, it will retain any value you have entered. The only exception to this is if you have a default value or a blank value of a data connection, then you change data connection, then it will switch to the default value of the new data connection |
Materialized Views not being shown when setting up a Data Connection | pi#2406 | 30927 | Data Vonnections |
---|---|---|---|
Materialized Views were not shown as an option when configuring a Data Connections tables, this has now been resolved. |
Upgrades to Spring Framework and AWS SDK to resolve reported vulnerabilities | pi#2402 | - | Libraries |
---|---|---|---|
As part of our standard security procedures we have upgraded Spring Framework and AWS SDK libraries to resolve reported vulnerabilities including CVE-2024-22259. |
SCHEMA CHANGES
Description | GitLab | ZenDesk | New Table |
---|---|---|---|
New table mis_identity_providers created | pi#2228 | 30649 | External Log In |