Release notes for Genus 10.20
Introduction
This document lists all user-visible changes to Genus since the previous release.
This release note will be updated prior to the release and may also be updated as long as the release is available, e.g. with information of new patches or known issues. Please take note of the installation and upgrading comments, and the release notes change log.
Installation and upgrading
Prior to upgrading to this release, you must:
- Upgrade to the previous release. See the Release notes for the previous release for more information.
- Review the Expiry date of your Genus License File and install a new one if necessary.
- Review the rest of the release notes for this release.
- Please note that there does not exist any Genus Upgrade Assistant for this upgrade.
See also the following notes.
#23591 Genus 10.20 requires Genus Operator >= 6.2
End-of-life functionality
End-of-life functionality is functionality that was available in the previous release, but is no longer available in this release.
There are no end-of-life functionality identified in this release.
Deprecated functionality
Deprecated functionality is available in this release, but will (most probably) no longer be available in the next release.
#23587 Helm value global.deployed renamed to global.published
The helm value global.deployed
is renamed to global.published
. This value now accurately reflects what it represents - wether or not the namespace runs on a published version of the meta model.
This value should be 'true' for green and blue namespaces, and 'false' for origin namespaces.
The old value is deprecated in 10.20, and will be removed in 10.21.
Breaking changes
This section lists important changes introduced in this release. You will need to use this list in order to understand the changes you might need to make to your application to support the new release.
#23589 Dashboard: Introducing Grid Layout
We're introducing a new editing experience called grid layout in dashboard.
With grid layout, you'll have more flexibility and options for tile placement and resizing, opening up new possibilities for creative layouts. And most importantly, it will be easier to embed dashboards in pages and make the content size according to available space (stretch). Combined with viewports, each dashboard can now be tailor made to any surface.
Tile heigh and width can be specified as "auto", "number of pixels" or "number of fractions".
This is considered a breaking change as it converts old layout (based on static columns and rows) to the new grid layout.
We recommend users to open existing dashboards to inspect them after upgrading to this version.
Grid Layout fundementals: https://css-tricks.com/snippets/css/complete-guide-grid/
Major new functionality
#23592 Org chart: Sibling levels, styling, navigation and more
Several features have been added to the organizational chart.
Sibling levels
The configurability of levels have improved. Each level must now define its parent level, thereby defining the order of levels. Two levels can have the same parent level and thus be combined at the same depth in the chart.
Styling
Border styling has been added to both control and distinct levels. The styling cascades, meaning that styling properties configured on the control can be overridden on levels independently.
Navigation by pan, zoom, and keyboard
The scroll bars have been replaced by panning, yielding a more natural way to navigate the chart. Zooming has been added.
Panning and zooming are both available through keyboard navigation:
- Panning is done with arrow keys or "h", "j", "k", and "l".
- Zooming is done with +/-.
- Return to default zoom and position (upper left corner) is done with "Esc".
- Return to default position is done with "c".
The "c" shortcut is prone to change, i.e. being reassigned to centering on the focused node. The reset to default will then get a different shortcut.
A description of the ways it is possible to navigate the org chart could be necessary, but this is left to be modeled if desirable.
Expression in title and description
Naming and description can now be configured using exprssions.
#23607 New Pan and Zoom Effect
A pan and zoom effect has been added to On Activate on buttons and on event handlers. The effect is not available On Navigate To Page, due to the map not being available when this event is run. Initial view of Layer Maps can be defined with configurations in the control.
The effect supports three strategies for interracting with the map:
- Auto: Fits all the markers in the map into view. It is based on data and not the markers themselves, so the effect will work on new data even though the markers have not been rendered yet.
- Coordinate and zoom: Displays the provided coordinates and zoom. If zoom is not provided, a default of 14 is used.
- Bounds: Displays the view defined by four coordinates. The fields are provided as north, west, south and east, but if i.e. north and south are switched, their coordinates will still define a bounding box in latitude.
Minor new functionality
#23588 Added new GX language features
#23590 Added new GX language features
Features introduced in order to support starting an app with custom query parameters which can be parsed and included in logic at startup.
Access to the browser URL
WebRuntime.browserURL(): URL
Returns a value of type URL.
Extract the value for a given query parameter in an URL
Returns a string or null. Note that the name of the parameter is case sensitive.
So, to extract the value for a query parameter for the current browser URL you can write
WebRuntime.browserURL().queryParameterByName(
If the url of your page is "https://example.com/?searchTerm=abc", queryParameterByName("searchTerm") would return the string "abc".
#23594 Sorting Apps
It's now possible to the Apps on the start page by selection the Sort option on the Apps node in studio
#23595 General Files can now be downloaded using the Download File effect
An example usage may be a call to a Server Action to create a mail merge document in a General File, which is transfered out to the Client Action and then to be downloaded on the client.
Tech note: The filedata is stored in blob storage, and is fetched directly to avoid/reduce use of the database.
#23596 Time Zone can now be assigned for a Data Mart Load Plan availability window
#23597 Client Action Effect grouping and ungrouping
When selecting one or more effect nodes in a client action designer tree, if the selected nodes are adjacent sibling nodes (same parent and with no non-selected nodes in between the selected ones), you can right click and in the context menu find the option to group the node(s) into a decision or a scope block. This shortcut will place the selected nodes within a new parent node: either a scope or a then-node connected to a decision node.
By right clicking a decision or a scope node with at least 1 child node, you can also chose the ungroup option in the context menu which performs the opposite effect.
Note that the selection of nodes to be grouped or ungrouped has to be of only valid nodes (not else-if, case, else, etc.)
The functionality is similar to the equivalent one in the page designer.
#23598 Client action designer multi select
By holding ctrl while selecting a new effect node in a client action designer tree, you can now select more than one node. Ctrl-pressing an previously selected node will unselect it.
Multi select is relevant for highlighting several nodes at once, grouping nodes together and for deleting more than one node at once.
#23599 Improved "esc" key shortcut in client action designer
Previously when pressing the "esc" key in the client action designer tree, it would just unselect the selected node. Pressing "esc" now will select the nearest parent node to the selected node, similarly to pressing "esc" in the page designer.
If multiple nodes are selected, the selection will be cleared
#23600 Added while nodes to client action
In the list of block nodes in the client action designer, you can now choose a while node. A while node acts like a while loop and expects child nodes within it. In the while node edit panel, one enters a boolean expression. The while node will evaluate the expression, and if it evaluates to "true" the child nodes will be sequentially executed. After all child nodes are executed, it will evaluate the expression once more and repeat untill the expression evaluates to false.
Break and continue nodes are supported. If a break node is executed within a while node, the execution will break out of the loop. If a continue node is executed, the remaining child nodes will not be executed, and a new loop cycle will start.
#23602 More varied cursor modes on Layer Map
The cursor on Layer Map is now a pointer when On Location Click is defined, move symbol when panning map by dragging with the mouse and grab when On Location Click is not defined (as previous default)
#23604 Callout on Layer Map markers
Callout has been added to On Activate on markers in Layer Maps
#23608 More options to initialize map
New configurations for initializing map has been added. These are the same strategies as for the pan and zoom effect also introduced in this released. See that release note entry for more information.
The initialization will, in contrast to the effect, try to use as much as possible of the data to initialize correctly. I.e. if only two values in the bound is available, this will be interpreted as a coordinate. If all initialization values fail, the map still defaults to Blindern with zoom 14.
#23610 Internal pan and zoom in Organizational Chart
The Org Chart is now zoomable and pannable, both with mouse and keys.
Keys:
- +/- for zooming
- arrows or h, j ,k ,l for panning
- panning is reset to origin with c
- pan and zoom is reset to origin with esc
Resolved issues
#23593 Live Update Subscription is required in the module.
The live update subscription must now be turned on in the module to receive live update messages. Due to a previous error, we received Live Update messages on data sources even though this was not switched on in the Module.
Some solutions that listen to Live Update messages may no longer receive them cause of this fix.
#23601 Fixed end scope effect node behaviour
The end scope effect node in the client action designer tree will now only end a sequence of node executions of it is within a scope node.
#23603 Correct wrong in positioning of Org Chart
Fixes an issue where async arrival of initial data resulted in the latest data not being rendered before a new change was made to the organizational chart.
The initial animation will now be interrupted and change direction if new data arrives during the initial animation.
To avoid artificats like this during initial loading, hide the org chart until all data is ready to be displayed.
#23605 Corrected wrong marker colors
Fixes an error where colors on markers only resulted in default regardless of configurations.
#23606 Correct position of map markers
Previously, map markers rendered so that the lower left corner of the bounding box of the markers were placed on the defined coordinates. This resulted in weird behaviours when zooming and placing markers.
The coordinates now match the point of the marker.
#23609 Improved clustering in Layer Map
Markers in expanded clusters are now possible to click without collapsing.
The distance between markers in expanded clusters have been increased to avoid overlapping markers.
Known issues
Known issues are errors or lack of functionality. Known issues may be solved in a future release based on customer demand.
There are no known issues in this release.
Tips and hints
Tips and hints are design decisions or answers to support questions that may be of general interest.
There are no tips and hints specifically targeting this release.