Neptune DXP - Open Edition 24.10.0

This topic consolidates all changes introduced with the Neptune DXP - Open Edition 23 patch releases and the initial release of Neptune DXP - Open Edition 24.

Adaptive Designer

  • Feature: The Excel Import wizard has been replaced with an Import wizard for easier import of JSON, CSV, and planet9 files

  • Feature: A 'guided mode' has been added to the New Application and Event dialogs

  • Feature: It is now possible to display the script response after running an event script

  • Feature: Users can import and export files from the Adaptive Designer

  • Feature: You can customize the number of decimals and the decimal separator using the "Custom Decimals" formatting option

  • Feature: Implemented pagination functionality for API Connectors

  • Enhancement: Additional text elements can now be translated

  • Enhancement: It is now possible to import CSV files with or without an ID field in an adaptive list

  • Enhancement: The Adaptive Designer has been updated with new icons

  • Enhancement: The list and tile table templates allow using % as a wildcard character in the incremental search

  • Enhancement: Conditional Visibility in the edit template now has an option to check, if field a is empty or not

  • Enhancement: The Conditional Visibility block in the edit template is only visible, if the field is set to be visible

  • Enhancement: Copying an adaptive app is now done in a separate, simpler dialog

  • Enhancement: A filter for adaptive templates has been added to the Open App dialog

  • Enhancement: The list template now allows deciding how to open a link and whether or not it is a relative URL

  • Enhancement: The Variant dialog in the list template will now show more details about active filters and variants

  • Enhancement: The Data Flow button has been moved to the left-hand side navigation to open as a separate page

  • Enhancement: The Variant dialog in the list template has been redesigned

  • Enhancement: When an app is deleted, the designer will now reset and go back to the initial page with the open dialog

  • Enhancement: Revamped the flow diagram with new graphics library for a more modern and visually appealing design

  • Fix: When exporting from an adaptive list, any spaces will be removed from formatted numbers

  • Fix: An error when parsing values for multiselect has been fixed

  • Fix: Server Script is no longer a destination option for Tab events in the edit template or App Source events in the splitter template

  • Fix: User can add package when creating a Connector from Adaptive Designer

  • Fix: Setting the preview language in the user settings now sets the correct app translation

  • Fix: Using a server script to open a value help for a filter in the list template now opens a simple value help dialog

  • Fix: Using a deep link to access an app directly in the Adaptive Designer now loads Naia

  • Fix: Selecting a new Connector without refreshing master data now shows the Connector’s name in the settings

API Client

  • Feature: The selected operation now shows in the header of the app

  • Fix: Disable running APIs when user only has display ACL

API Designer

  • Feature: Re-introduce path setting when using Swagger 2.0

  • Enhancement: Validate forward proxy URL on save

  • Fix: Increase the number of items visible in the Proxy Authentication selection dialog

  • Enhancement: Add ability to navigate directly to operation from main list

  • Fix: The operation property "Restrict Access" select is now updated when adding new Roles to the API

  • Fix: The count in the select table dialog now correctly updates on filtering

  • Fix: The OData API dynamic path builder now constructs paths correctly and no longer crashes the server when encountering improperly formatted URLs

  • Fix: We increased the number of items visible in the Proxy Authentication selection dialog

API Trace

  • Fix: null operation entries in the API Trace table no longer stop the API Trace application from loading

  • Fix: null operation entries in the API Trace table no longer stop the API Trace application from loading

App Designer

  • Feature: Deprecated attributes are hidden by default unless they have a value set, but there is now an option to always show deprecated attributes

  • Feature: You can now add favourite items to the top of the library tree

  • Feature: Added sorting for sap.m.Table like in Neptune DXP - SAP Edition

  • Feature: Shortcut key F6 can be used to show/hide the search box

  • Feature: Added option to convert event/formatter scripts between JavaScript and TypeScript

  • Feature: Added a new object type neptune.Aggregation that allows you to explicitly define the parent/child aggregation relationship and bind the path directly

  • Feature: Panel sizes are now remembered and restored when loading the App Designer

  • Feature: You can now toggle the display of disabled objects when selecting the target for API response data

  • Feature: Ability to show and create Events/Formatters in the app tree

  • Feature: We now ship the OpenUI5 1.120 library

  • Feature: You can now select any two versions to compare in Version Management

  • Feature: Available event parameters are now listed as a comment on new event scripts

  • Feature: It is now possible to roll back to previous version from Version Management

  • Feature: Add menu option to expand/collapse children of the selected node

  • Feature: You can now add YAML and Markdown files to the files folder

  • Feature: You can now format XML, HTML, YAML, and Markdown files

  • Feature: Added filter in Multi Model Where-Used dialog

  • Feature: Added a case-sensitive toggle for the global search

  • Feature: JavaScript objects in Custom Components now have the same isUnique attribute as TypeScript objects

  • Enhancement: Attributes that are different to the default will now be highlighted

  • Enhancement: Default values are now highlighted when you open the attribute value help

  • Enhancement: The code snippets have been refactored and updated with more informative comments

  • Enhancement: The Data Flow dialog has now been moved to its own page in the main navigation bar

  • Enhancement: There is now a menu item when right-clicking a library item to open the documentation of that object

  • Enhancement: Add warning when replacing a string with empty string or only spaces

  • Enhancement: There is now a search tab to find and navigate to specific objects in the component tree

  • Enhancement: The Custom Component Where-Used table now shows the app type

  • Enhancement: The app type select in the open app dialog is now a multicombobox allowing more than one type of app to be displayed - the selected values are remembered between sessions

  • Enhancement: \_convertNestedToFlat/\_convertFlatToNested and the p9library.js files have been removed - there are equivalent functions available as part of the neptune.Utils object available in /public/neptune/external/bundle.js

  • Enhancement: The Version Management page has been redesigned, which includes rearranging the versions so the older version is now to the left of the newer version

  • Enhancement: All standard OpenUI5 object properties are now available based on the selected OpenUI5 version metadata

  • Enhancement: The object search now navigates directly to the component if there is only one search result

  • Enhancement: Additional keyboard shortcuts have been added

  • Enhancement: When an app is deleted, the designer will now reset and go back to the initial page with the open dialog

  • Enhancement: It is now possible to press enter to submit forms in certain dialogs, like Create, Binding, Copy App

  • Enhancement: Search now considers the content of the header/stylesheet/manifest

  • Enhancement: Rename the "Search" tab in search panel to "Scripts"

  • Enhancement: Remove "Use App Handler v2" checkbox from app settings

  • Enhancement: Throw an error when trying to create a custom component that causes a cyclic relationship

  • Enhancement: The user interface now displays a 'busy' status during file imports and confirms upon successful completion

  • Enhancement: Only query API data once during app compilation, if same API is used in multiple API objects

  • Enhancement: When creating a new app by importing a file a check ensures that the selected .planet9 file is indeed an application file

  • Deprecated: Collaboration mode has been deprecated

  • Fix: Pasting objects should now correctly check whether the object can be placed in a given location

  • Fix: Icons are now correctly shown in the data flow view

  • Fix: Added missing require statement when using 'sap.ui.layout.cssgrid.ResponsiveColumnItemLayoutData'

  • Fix: Added missing require statements when using 'sap.f.dnd.GridDropInfo', 'sap.m.SinglePlanningCalendarMonthView', and 'sap.ui.layout.cssgrid.ResponsiveColumnItemLayoutData' in App Handler V2

  • Fix: Remove close button on search/todo/attribute search panel

  • Fix: Model paths are now only renamed inside Custom Components if they are linked to an existing MultiModel object

  • Fix: Throw an error when trying to create a Custom Component that causes a cyclic relationship

  • Fix: Selecting a package when creating a new application from file now works

  • Fix: Binding a property on an object with a data source or model path binding no longer clears those values

  • Fix: The parsing of APIs to code snippets has been improved

  • Fix: Event scripts and formatter scripts are now imported when doing "Paste from file"

  • Fix: TODO search now works for scripts that use modern JS/TS and supports TODO|FIXME|XXX|OPTIMIZE|REVIEW comments by default

  • Fix: Custom Components with renamed properties now apply formatters bound to those properties correctly

  • Fix: neptune.event.\* objects are created as JavaScript rather than plaintext

  • Fix: Changing an API now marks the app as changed

  • Fix: Allow the use of double quotes for text in text attribute

  • Fix: Updating the list of APIs now correctly sets the count of APIs, if a filter is active

  • Fix: Parsing of oDataV4Source endpoints improved

  • Fix: Copying a code snippet and immediately saving now correctly saves the changed script

  • Fix: Opening the header and stylesheet before toggling to edit mode could result in header contents being copied to the stylesheet

  • Fix: Focusing and un-focusing the editor for a Stylesheet no longer marks the app as changed when in display mode

  • Fix: Allow the use of double quotes for text in text attribute

  • Fix: Binding a property of an object with a data source or model path binding no longer clears those values

  • Fix: Custom components with renamed properties now correctly apply formatters bound to those properties

  • Fix: Changed objects are now correctly marked as changed

  • Fix: Fetch correct icons in data flow dialog

  • Fix: Added missing require statement when using 'sap.ui.layout.cssgrid.ResponsiveColumnItemLayoutData'

  • Fix: Added missing require statements when using 'sap.f.dnd.GridDropInfo', 'sap.m.SinglePlanningCalendarMonthView', 'sap.ui.layout.cssgrid.ResponsiveColumnItemLayoutData' in App Handler V2

  • Fix: Improved the data flow dialog for API objects without assigned APIs

  • Fix: Enhanced whole word search stability for unescaped special characters

  • Fix: Fixed icons in Multi Model Where-Used dialog

  • Fix: Navigate to line for script usages from Multi Model Where-Used dialog

  • Fix: Improved display when attempting to navigate from a script to an object/function that does not exist in the tree

  • Fix: Improved APIs inside custom components that directly assign the response to a model

  • Fix: You can now place JavaScript and TypeScript objects in folders underneath the files section when Aggregation-based drag drop is enabled

  • Fix: sap.m.Input now accepts child elements assuming they have a valid type/aggregation relationship i.e. sap.ui.layout.GridData

  • Fix: sap.ui.layout.GridData is now set as layout data to its parent components

  • Fix: Going directly to edit mode no longer incorrectly shows the app as locked

  • Fix: Apps imported from a Development Package should now show an active "Run" button without having to activate the app

  • Fix: Typing the model path directly for a table/list caused the wizard not to work for that object

  • Fix: Opening Model Source binding would sometimes show an unrelated binding

  • Fix: Importing an app with APIs no longer fails

App Editor

  • Deprecated: The App Editor is deprecated for LTS 24 and is removed from the Cockpit

Audit Log

  • Enhancement: When creating a new role the audit log object id is set to role id and action is set to 'Create'

  • Enhancement: Create audit log record if group or role assignment is updated on user login

  • Fix: Users with only display rights to the Audit Log can now open the diff view

  • Fix: Some save operations would save secrets to the audit log

  • Fix: Housekeeping - Table Audit Log no longer gets fully deleted if the time kept is not changed

  • Fix: Certificate private key is no longer saved to the audit log when saving a certificate

  • Fix: When creating a new artifact the audit log would create an entry with ID set to 'New' and Activity as 'Save'. Which made the saved audit log contents not possible to compare with the next save action. The audit log is now saved with the generated artifact ID and action is 'Create'.

  • Fix: When deleting lock entries from the cockpit each entry deleted creates a record in the audit log

  • Fix: Script name was not displayed in the audit log when saving a script

  • Fix: Username was not displayed in the audit log when deleting a user

  • Fix: Audit log entries are created for development package operations, import/clone/resetting

Certificates

  • Enhancement: Certificates' private keys are now stored encrypted

  • Enhancement: The private key is only visible once after creating the certificate

  • Fix: Creating a certificate signed by another certificate would show error 'Cannot find signing key'

Cockpit

  • Feature: The app icon in any Cockpit app now works like the 'close' button, navigating back or to the Cockpit, depending on the page

  • Feature: A new user setting to display Cockpit tools as grouped in widgets

  • Feature: When changing the branding color in the custom settings we now use the selected color wherever the previous Neptune brand color was used

  • Feature: Added an option to display the navigation menu in the side panel

  • Feature: Cockpit apps can now be toggled as favorites from inside the app

  • Feature: Recently used artifacts are now shown in a widget

  • Feature: New Neptune Cockpit UI5 Themes based on the UI5 Horizon theme have been created and applied to all Cockpit tools

  • Feature: You can sign out from an external identity provider (IdP) when signing out from a launchpad and/or signing out from the Cockpit

  • Feature: You can now toggle between open apps using cmd/alt + up/down

  • Enhancement: More information has been added to the system information tile including a dropdown option to copy the system information to the clipboard

  • Enhancement: The user settings menus have been redesigned and simplified

  • Enhancement: There is now an option in the user settings menu to change how editors are opened, i.e. tab or window

  • Deprecated: The documentation search has been replaced by a search powered by Naia

  • Fix: Context-aware documentation now correctly shows targets

  • Fix: Favorites now share the same data as normal navigation items, so updates to counters are properly reflected

  • Fix: Don’t assume customising.cockpit exists

  • Fix: Logout from Cockpit will now logout from the login source with which the user has logged in, for example, SAML, Azure, OIDC

  • Fix: The entire navigation bar now scrolls when vertical space is restricted

  • Fix: Use correct endpoint when fetching versions

  • Fix: The cockpit tools now reflect the corresponding ACL in their application view, allowing/disallowing creating and editing artifacts accordingly in Development Package, Theme Import, API Designer, and Remote Systems.

  • Fix: The Documentation tile in the Help group has been removed

Connector

  • Fix: Improved compatibility for field catalogs and mapping when using OpenAPI 3.0

  • Fix: Toggling 'Enable preview' for API Connectors before setting any API operations will no longer cause an error

Custom Settings

  • Feature: Added a global setting were users can choose to minify application source code, that can also be managed with a new environment variable: ALWAYS_MINIFY_SOURCE.

  • Enhancement: Add previews to inputs in Custom Settings Layout

  • Fix: The name of the selected email is now shown for activation and password reset email instead of the ID

Deployment Create

  • Feature: Users can sort deployment package contents by version on the final dialog

  • Feature: You can sort deployment package contents by version on the final dialog

  • Feature: You can now select/deselect all of an artifact group in the create dialog

  • Enhancement: Web apps and adaptive apps are now included when deploying with relations

  • Enhancement: Deploying a tile set to "Tile Group" will now include the Tile Group

  • Enhancement: When 'Include Relations' is deselected 'Only Changed' is not editable as 'Only Changed' only applies when 'Include Relations' is selected

  • Enhancement: The filename for an exported deployment package now includes the system roles and the date and time the deployment package was created

Deployment Log

  • Fix: Importing a .planet9 file that contained Script Groups that do not exist in the target system no longer causes an error

Development Package

  • Feature: Extend ACL to artifacts by assigning role to development package

  • Enhancement: Optionally exclude template files from development package when pushing to Git

  • Enhancement: Commit to a remote repository from a development package without toggling to edit mode

  • Enhancement: You can now navigate directly to Workflow Definitions, Proxy Authentications, and Remote Systems from the Development Package Artifact list

  • Enhancement: Transpiled code is no longer committed to git when committing a TypeScript server script

  • Enhancement: Machine ID is no longer committed to git when committing a job

  • Enhancement: Authentication passwords/tokens are now encrypted when stored in the database

  • Enhancement: Add ability to update development package from a specific release tag in git

  • Enhancement: ACL data included in role definition when pushing development packages to Git repository

  • Enhancement: Updates from a repository are permitted only when the server and the remote repository have the same package ID

  • Fix: Ensure an audit log record is created whenever a new development package is created to improve traceability and compliance

  • Fix: Ensure correct formatting of artifact names containing special characters like "/", it will be converted to "\_".

  • Fix: Users without display permission to development package would not see which development package an artifact was assigned to

  • Fix: Media now included in development package when using Azure Blob and MSSQL

  • Fix: Opening an artifact that was opened in a new tab/window no longer leaves hash navigation parameters in the URL

Documentation

  • Enhancement: Implemented a warning when saving documentation for an application that already has existing documentation

Email Template

  • Fix: Creating a new template no longer throws an error, if another app that uses a text editor is open

  • Fix: The entry count is now correct

  • Fix: Email contents not shown on Firefox

Global Style

  • Feature: Theme Designer tool renamed to Global Style.

  • Feature: Remove Global Style UI5 theme dependency

Job Log

  • Fix: Job log running time was calculated incorrectly if the system timezone was set to anything other than UTC. For example, a system with a +04:00 timezone offset would display an invalid negative running time of nearly 4 hours (in seconds)

Launchpad

  • Feature: On change language, update translations without refresh and re-open any active app in the new language

  • Feature: Add options under configuration. If signing out from the Cockpit or launchpad will cause sign out from external systems

  • Feature: Disable redirecting to home, if navigation does not find a page

  • Feature: Opening a tile set for the first time with option set for 'Open URL in new tab or window' will ask the user if they want to open the tile in a new tab or window. Right-click on the open button to reset user tile opening preference

  • Feature: Make autolock timeout function even if pwa is disabled

  • Feature: New launchpad look and feel: CSS grid, dedicated launchpad layouts, tile layouts, and tile group layouts

  • Feature: Resize sidepanel & mobile handling

  • Feature: Adjustable sidepanel

  • Feature: Align launchpad UI5 controls

  • Feature: Align launchpad CSS

  • Feature: Apply DXP24 layouts

  • Feature: Favorites widget

  • Feature: Read enhancement from config

  • Feature: Most Used widget

  • Feature: Splitview

  • Feature: Global search

  • Feature: Get layouts, tile layouts, tile group layouts on update

  • Feature: Server Enhancement Spots

  • Feature: Launchpad UI5 Theme

  • Feature: The Neptune DXP - Open Edition launchpad application is now part of Neptune binary download

  • Feature: Launchpad configuration fields have been aligned with Neptune DXP - SAP Edition

  • Feature: Launchpad layout configuration in the Launchpad tool for light and dark appearances

  • Feature: Improved sorting for the 'Is External' column in the list

  • Enhancement: Show tile errors in a Dialog, instead of a MessageBox. It helps users pick up serious tile errors, without having to check the console

  • Enhancement: If tiles have identical navigation details, the warning will mention which tiles

  • Enhancement: Saving a launchpad will now warn if two or more tiles in the launchpad have an identical combination of semantic object and action

  • Fix: Add sap-language header to support loading SAP apps with the language set in the launchpad

  • Fix: Pwa without an icon, was not showing the default icon in system’s install dialog

  • Fix: Background images for tiles did not load when running in pwa mode

  • Fix: Multiple tiles loading an app in view fail to load. Only one of them will successfully show their app inside the tile, the rest will show the loading indicator

  • Fix: Tile which renders as an app. If we set its content height to be empty. The app loads but does not fill the tile height, thus showing an empty tile

  • Fix: Hide pwa install dialog when running in standalone mode

  • Fix: Changing a language to a non-English language reverted the launchpad to English language

  • Fix: Validate language received in URL search parameters. Inform invalid language to user with a MessageBox

  • Fix: Lazy load tile images after tile have been built

  • Fix: Hide pwa installation dialog on load, if pwa installation is possible and user has clicked on 'Install Application' button

  • Fix: Show the autolock dialog, when user logged in session is locked due to inactivity

  • Fix: Re-check if logged in has been timed out due to inactivity, while computer is locked and then user logs back in

  • Fix: Check if autolock timer has elapsed, when user connection goes from offline to online state

  • Fix: Opening SAP/P8 application in a new window shows application not found error

  • Fix: Include SAML in logout process

  • Fix: Startup application did not appear in offline mode

  • Fix: If a parent tile group was added as a child to another parent. Parent tile group did not appear as a child within that parent tile group

  • Fix: Prevent white screen caused by delay during load by building menu and tiles from cache, before we make a call to get updated data

  • Fix: On logout, if multiple users are logged in, go to pincode screen if there is one user, otherwise show the user list screen

  • Fix: UI5 theme can no longer be maintained in the launchpad configuration. Set UI5 themes in the launchpad layout tool instead

  • Fix: Launchpad global style assignment has been moved to its own tab in the Launchpad tool

  • Fix: Navigating between tabs after updating a layout name now updates the name in the layout list

  • Fix: Improved display when changing the client timeout setting

  • Fix: Opening an app tile may cause an error, causing the page to blank out. In such cases we will now recreate the page

  • Fix: The back button did not navigate back to the home page if the loaded tile contained a JavaScript error

  • Fix: Background images with URLs containing an absolute path with domain name were not loading as tile backgrounds

  • Fix: Login page would only show local login when using a launchpad url(/launchpad/launchpadName)

  • Fix: Log global ajax errors with code 0, 400, 404 and 500. If AppCache.enableLogging is set to true

  • Fix: Login via Microsoft Entra ID with pincode enabled, did not start autolock timer

  • Fix: Launchpad name will now trim unintended leading or trailing space characters before save

Launchpad Layout

  • Feature: New Launchpad Layout tool. Create layouts and apply in launchpad configuration.

Load test

  • Deprecated: The Load Test tool is deprecated for LTS 24 and is removed from the Cockpit.

Media Library

  • Feature: A new filter has been added to the tree in the Media Library

  • Feature: Added a message box informing users that folders can only be assigned to development packages after media upload

  • Fix: Increase the size limit for the model in order to show all folders

Mobile Client

  • Feature: If user is logged in, include user_id parameter to pwa.json start_url

  • Feature: You can change the value Scheme/Hostname in Mobile App Settings

  • Fix: We ensured that active version returns a string, instead of an array

  • Fix: Do not send params, header, or data if they are empty. It causes API calls to SAP to fail

  • Fix: AfterLogout enhancement runs upon logout

  • Fix: Icon and splashscreen preview images are now automatically removed when their image sources are cleared

  • Fix: Improved message display for missing media images when they cannot be found in the media library

  • Fix: Checking "Auto-update" in a mobile-client now actually works

  • Fix: Auto-hide splash screen. It caused the splash screen to persist on iPhone

Mobile Debug

  • Fix: Adding a mobile debugger to an app will now log any errors

Naia

  • Feature: A new Naia Cockpit tile has been added showing available missions

  • Feature: Naia is now available as a side panel

  • Feature: When there are no results in the global search and Naia is enabled, pressing enter will direct the prompt to Naia

  • Enhancement: All cockpit apps now feature a list of applicable missions in the header

  • Fix: Being unable to connect to portal.neptune-software.com no longer stops apps from loading if Naia is enabled

NPM Modules

  • Enhancement: Added input field to provide install parameters when installing an npm module

PDF Designer

  • Feature: Image can now be a barcode

  • Feature: We added the TextWrapper object that allows text with different styles to be on the same line

  • Feature: We added the "fit" property to QR codes

  • Enhancement: When saving a PDF linked to a package that doesn’t exist, the link will be removed and the PDF will be saved anyway.

  • Enhancement: PDF compilation error messages now contain the name of the PDF

  • Enhancement: Watermarks now support the "visible" property

  • Enhancement: Tables now support the 'dontBreakRows' property to force cell grouping

  • Enhancement: The resizeEmpty property on image elements now defaults to true

  • Enhancement: Added button to export PDF interface to JSON

  • Fix: Unresolved bindings no longer cause the compilation to crash

  • Fix: Function bindings now work as intended

  • Fix: Show correct placeholder for page margin

  • Fix: Image in Table in Table can be shown

  • Fix: Table in Table in Table is working now

  • Fix: The search filter is properly cleared when opening the Open App dialog

  • Fix: Safeguard against creating PDFs with duplicate or overly long names

  • Fix: Fixed a problem where binding data to the image source (src) attribute in footers and headers did not correctly update the src with the bound data

  • Fix: Addressed the issue where setting an object’s 'visible' property to 'false' in the header/footer section did not actually hide the object

  • Fix: Hidden images will no longer take up any space

  • Fix: The text elements' x and y property can be bound to data

  • Fix: Binding data will now honour boolean values instead of converting them to strings

  • Fix: PDF preview no longer disappears when activating the PDF

Proxy Authentication

  • Feature: Allow encryption of OAuth 2.0 headers, as well as general headers

  • Fix: Properly handle encrypted OAuth 2.0/generic headers during system-to-system transfers

Remote Systems

  • Feature: Remote Systems are excluded from global package filter

Role

  • Feature: New flag "Global Admin" on roles. Users with this role bypass any access control

  • Fix: Role name is now a unique column

Script Editor

  • Feature: Added possibility for debugging server scripts

  • Feature: Added code snippets for using scripts in the Adaptive Designer

  • Feature: Added a case-sensitive toggle for the global search

  • Feature: The Script Editor now uses the same icon set that is used in the App Designer

  • Feature: Introduced virtual folders for better organization and overview of scripts within a project

  • Feature: Show properties context menu for global scripts

  • Enhancement: Calling API from server script now configurable via 'axiosConfig' property in options object

  • Enhancement: Ability to select two scripts and compare them

  • Enhancement: Naia is now available as a side panel

  • Enhancement: The table browser now supports Boolean/date selection

  • Enhancement: The Version Management now supports selecting any two versions to compare

  • Enhancement: The Version Management dropdown now selects the x most recent versions instead of versions from x days ago

  • Enhancement: Added example code snippet for setting up a server script connector for the Adaptive Designer

  • Fix: Version list grows beyond 100 entries

  • Fix: Global Script icon now shows under Resources

  • Fix: Don’t get all scripts on server when selecting NO PROJECT as project

  • Fix: Prevent adding scripts to a folder in the global section

  • Fix: All global parent scripts get updated references when a child global script is reloaded

  • Fix: Refreshing the project list will now show the count of projects if the list is currently being filtered

  • Fix: The code snippets for writing to System Log have been updated

  • Fix: API Code Snippets are now generated correctly

  • Fix: Code Snippets are now generated for each module included in the script

  • Fix: When accessing your own tables (entities), column types text, mediumtext, smalltext will automatically convert number types to string - Sending a number to a text column generated errors in 23.10.0 when using mssql

  • Fix: When accessing your own tables (entities), column type decimal will automatically convert an empty string to null - Sending an empty string would generate an error in 23.10.0 when using mssql

Security Group

  • Enhancement: User and Role tables no longer load all entries at once for improved performance

  • Fix: Users with only display rights can now open a Security Group

System Logs

  • Feature: Added an option to filter by Script Project

  • Feature: Monitor tools for request performance.

  • Feature: There is now a button to export the currently open system log file

  • Fix: The Server Script Project column now sorts correctly

  • Fix: Corrected the filterByMessage function to handle cases where json.message might be an array or a string.

System Reports

  • Deprecated: The System Reports tool is deprecated for LTS 24 and is removed from the Cockpit.

System Settings

  • Feature: A new wizard-based licensing activation has been introduced

  • Feature: Users can set up expiry alerts for Microsoft Entra ID, OAuth2 and OpenID certificates

  • Feature: Users can set up expiry alerts for OpenID Connect SMTP tokens

  • Feature: New global setting to disable the "Update database from repository" feature, that can also be managed with a new environment variable: RESTRICT_DATABASE_UPDATE_FROM_REPO

  • Feature: Added a setting under 'General > Login' that allows administrators to prevent users from changing their passwords within the launchpad interface

  • Feature: Fiori remote system integration - Added the ability to select an SAP system from Remote Systems. All relative paths beginning with /sap or /neptune will be automatically proxied to the chosen remote system when enabled

  • Enhancement: Users can explicitly allow untrusted LDAP server certificates

  • Enhancement: Implemented a warning when changing the storage types to migrate any important data first

  • Enhancement: The authentication configuration dialog now shows the authentication type and name in the dialog header

  • Fix: Authentication configurations will now show the correct assigned roles/departments

  • Fix: Disabling the Naia integration will now hide the Naia chat tile

Table Audit

  • Fix: When closing and re-opening the Table Audit application, the Monaco diff editor is now properly recreated

Table Browser

  • Feature: Button to navigate directly to the selected table in the Table Definition tool

  • Feature: The import functionality has been replaced with a Data Import wizard for easier import of JSON and CSV files

  • Feature: Add table settings with option to show/hide columns

  • Feature: It is now possible to search on Boolean field values

  • Enhancement: Column descriptions are now visible in a tooltip on the column header

  • Enhancement: New empty rows are no longer removed on save

  • Fix: The list of tables now remembers the sort property and doesn’t automatically sort by name

Table Definition

  • Feature: Button to navigate directly to the selected table in the Table Browser

  • Feature: Users can choose from UUID or Incremental format in tables

  • Feature: View data from any table row in a user-friendly form within a dialog box

  • Feature: The import functionality has been replaced with an Import wizard for easier import of JSON, CSV, and planet9 files

  • Enhancement: Column names, for new and updated columns, are now case-insensitive

  • Enhancement: Added a checkbox to Boolean fields for setting their field value as default

  • Enhancement: Automatically batch save table records on MSSQL if the data saved exceeds 2100 parameters(records \* columns)

  • Enhancement: Implemented a warning if there are unsaved changes in the table entries

  • Enhancement: The table browser now locks the table when in edit mode

  • Fix: The popover setting column visibility now contains the correct columns

  • Fix: The list of tables now remembers the sort property and doesn’t automatically sort by name

  • Fix: Remove assigned package when importing table definition, if it does not exist in target system

  • Fix: Confirmation dialog for dropping indices now works as intended

  • Fix: Unable to save tables created with version Neptune DXP - Open Edition 22 that had a Boolean default constraint when using MSSQL

  • Fix: Unable to update table default constraints for tables created on v22 when using mssql

  • Fix: We improved the behavior for setting the default value of Boolean fields

Testing

  • Deprecated: The Testing tile group and its included tools Test Unit, Test Plan, and Test Run are deprecated for LTS 24 and are removed from the Cockpit

Tile

  • Feature: Navigate directly to a tile group from a tile’s "Where-Used" list

  • Feature: Tile configuration fields have been aligned with Neptune DXP - SAP Edition

  • Enhancement: Show name if no title exists for tile group in "Where-USed" list

  • Enhancement: Option to translate tile properties with Google or Naia

Tile Group

  • Feature: Go directly to a launchpad or tile group from a tile group’s "Where-Used" list

  • Feature: Configuration option for dark tile group header images has been added

  • Feature: Tile group configuration fields have been aligned with Neptune DXP - SAP Edition

  • Enhancement: If tiles have identical navigation details, the warning will mention which tiles

  • Enhancement: Option to translate tile group properties with Google or Naia

  • Enhancement: You can no longer add a tile group to itself as a child

  • Enhancement: Saving a tile group will now warn if two or more tiles in the group have an identical combination of semantic object and action

  • Enhancement: The Tile Group Action input now uses a select dialog instead of a combobox

Tile Group Layout

  • Feature: New Tile Group Layout tool. Create tile group layouts and apply in tile group and/or launchpad layout configuration.

Tile Layout

  • Feature: New Tile Layout tool. Create tile layouts and apply in tile, tile group, and/or launchpad layout configuration.

UI5 Theme Import

  • Feature: Theme Import tool renamed to UI5 Theme Import.

  • Feature: Improved interface with automatic recognition of UI5 theme values.

User

  • Feature: You can now directly add and remove Security groups from the user management page

  • Fix: Users with only display rights no longer see errors when opening a user

Workflow Definition

  • Fix: Add error message if workflow approver is deleted

  • Fix: Toggling edit/display in the Workflow Definition tool no longer throws an error

Back end / Miscellaneous

  • Feature: Users can add a grace period to a SIGTERM signal using environment variables

  • Feature: Setting to show a neutral error message when user tries to log in to a locked account (env USE_NEUTRAL_LOCKED_ACCOUNT_MESSAGE = true/false)

  • Feature: Setting to send a notification email to the user when their account is locked due to too many login attempts (env SEND_NOTIFICATION_ON_LOCKED_ACCOUNT = true/false)

  • Feature: Neptune icon font has been created. Missing icons not found in the UI5 icon font have been created and applied throughout the Neptune product portfolio

  • Feature: You can now configure payload limits from settings or by using the environment variables MAX_PLAIN_TEXT_PAYLOAD_SIZE, MAX_URL_ENCODED_PAYLOAD_SIZE and MAX_JSON_PAYLOAD_SIZE. The previous default was 100 MB.

  • Feature: Proxy all requests with relative paths starting with /sap/ or /neptune/ to an SAP Remote System

  • Feature: You can specify if an API request should be routed through a proxy

  • Feature: npm modules used in development package server scripts are added to the package.json file as dependencies

  • Enhancement: For SAML authentication, if the issuer is not set as the URL, determine the SAML protocol using the login URL

  • Enhancement: You can enable restricted proxy in settings. This ensures that the proxy only allows pre-approved URLs that have already been defined in an API, OData, or Remote System.

  • Enhancement: Include stack trace for error messages logged via the log.error API

  • Enhancement: The designer and Cockpit headers have been redesigned

  • Enhancement: The burger menu icon has been replaced with an "Expand/Collapse Menu" in the navigation bar

  • Enhancement: Update base operating system image to Debian 12, use python3 and node v18.20.0

  • Enhancement: Upgrade Font Awesome + Icon Explorer

  • Enhancement: Upgrade MSAL library from 2.0.0-beta.4 to 3.27.0

  • Enhancement: If SSL is not enabled but SameSite set to 'None' SameSite will revert to Strict as it won’t be possible to log in with SameSite:'None' enabled

  • Enhancement: The SSL key is no longer stored in the config.json file; it is now stored exclusively in the database

  • Enhancement: Firebase migration from legacy FCM APIs to HTTP v1 due to FCM API removal on June 21, 2024

  • Enhancement: /healthz will no longer make a query to the database. Instead, it will check the status of the connection to the database.

  • Enhancement: Customization of server responses for 403 (Forbidden), 404 (Not Found), and 500 (Internal Server Error) status codes - Previously, default HTML templates were returned. Now, it is possible to return an application instead. This can be configured in Custom Settings > Layout

  • Enhancement: Weak ETag response headers for /media requests enable clients to utilize cached file versions

  • Enhancement: Increased model size limit of API operations list

  • Enhancement: Request data is now automatically stringified for any API request specifying 'Content-Type: application/json' in the header, in addition to the default 'application/json' media type

  • Enhancement: Only query for required application data when fetching tile data

  • Enhancement: Processes will now attempt to connect to Redis up to 5 times before giving up, replacing the previous single-attempt approach.

  • Enhancement: Upgraded Axios library: 0.21.4 > 1.6.4

  • Enhancement: Use issuer URL(when issuer is a URL) to determine protocol for SAML authentication

  • Enhancement: Artifact version numbers will now be a consistent length for easier sorting

  • Enhancement: When using OAuth 2.0 in Proxy Authentication, the body is no longer an input string; instead, it is a list with keys and values, where the values can be encrypted

  • Enhancement: Update function parameters under Custom Script inside Authentication > Microsoft Entra ID

  • Fix: Limit the number of search results returned from LDAP server to a maximum of 100 entries. By default, all search results were returned.

  • Fix: Allow user admin to enter, even if it does not have a role assigned

  • Fix: With identity provider LDAP, user groups were synced correctly between LDAP server and the Neptune DXP - Open Edition server. Groups that were present on LDAP server were not getting created on server on user re-login

  • Fix: For SAML authentication, if issuer is not set as the url, determine protocol for SAML using the login URL

  • Fix: Prevent 500 internal server error after successful logging in via SAML

  • Fix: During LDAP login process finding groups for user login can fail, if user ID is not set and user object is set to undefined

  • Fix: On authentication from external IDP, roles and groups not present in system were not created and linked to user

  • Fix: OAuth 2.0 body values are now properly saved

  • Fix: Prevent 500 internal server error after successfully signing in via SAML

  • Fix: Connecting to an SMTP server that does not require authentication no longer results in an error

  • Fix: Old development package data no longer causes 23.10.6 migration script to fail

  • Fix: JWKS proxy property fixed for JWT type authentication

  • Fix: Don’t expose JWT token and hashed password when saving security group

  • Added Highcharts dashboards under /public/highsuite/dashboards/ i.e. /public/highsuite/dashboards/dashboards.js

  • Fix: username and password would display on the login page after disabling local authentication, despite the active login type not requiring a username or password

  • Fix: Passing uuid string to entities.tableName.findOne('uuid') to fetch record with id === 'uuid' would throw an error

  • Fix: Server would throw error when generating activation code for external users

  • Fix: Migration errors would not be logged to log file

  • Fix: Disable SPNEGO on SAP Edition Authentication logon URL

  • Fix: Cockpit and login backgrounds now respect the custom images set in Custom Settings

  • Fix: Where-used now uses id instead of name to avoid conflicts with internal modules

  • Fix: Improved transferring server scripts using a relative path for the npm installation directory so that modules can be located in the target system

  • Fix: Allow OIDC IDP logout from the login page

  • Fix: Nonexistent or invalid LDAP configuration for user or groups mapping can result in user not being able to log in

  • Fix: Continue server process startup if registering OpenID strategy fails

  • Fix: When a global script failed to load during startup, API server scripts that depend on the global script received an empty object as its reference. Now, we attempt to reload the global script on the fly if a specified amount of time has passed since the last reload attempt

  • Fix: The environment variable P9_MAX_LOG_FILE_SIZE was not respected. Occasionally, the log file size would significantly surpass the limit set by the environment variable before rotating

  • Fix: Improved handling of example data entries supporting APIs being saved

  • Fix: Tracing server script API with capture body caused server process to crash when using MSSQL

  • Fix: Using console.log({…​}) in a server script executed from the script editor resulted in system error logs displaying the message 'Error parsing json' when JSON logging was enabled

  • Fix: Loading the user app directly would throw a TypeError

  • Fix: Launchpad Layout CSS no longer gets applied to the Cockpit app when previewing the launchpad layout

  • Fix: Accessing logout when user is not logged in causes internal server error

  • Fix: When query string debug=true is present in the URL return debug version of the login page when not logged in

  • Fix: Logging in to Neptune DXP - Open Edition with OIDC token would look for user with Azure as IdP source

  • Fix: Prevent idpSourceId to be considered unique in a PostgreSQL unique index when it has no value(NULL) by assigning a default value of 'N/A'

  • Fix: Security Group data fetched from /api/functions/Department/Get will only contain a subset of user data. Instead of all user data it will only return 'id', 'locked', 'username', 'name', 'email', 'updatedAt', 'changedBy', 'admin', 'idpSource' and 'lastLogin'