Release Notes

New Features

FeatureDescription
Java Low-Code ProjectsIBM Financial Services Workbench 2.9 introduces a new low-code project stack based on Java Spring Boot with full design and code support following Domain Driven Design principles.
Creation of Pro-Code TypeScript projectsIt is now possible to create Pro-Code Projects based on TypeScript in case you don't want to use the modelling capabilities of Solution Designer, e.g. for custom backend or frontend projects.
Creation of Pro-Code JavaScript projectsIt is now possible to create Pro-Code Projects based on JavaScript in case you don't want to use the modelling capabilities of Solution Designer, e.g. for custom backend or frontend projects.
Extended Event SupportThe Solution Hub includes a new user interface that allows users to create, edit, and delete Event Topic Bindings. Topic bindings will be used to connect to a certain Kafka topic on a given Kafka cluster. This gives you access to all of the Kafka's topics and no longer only to topics created with IBM Financial Services Workbench.
Extended Certificate ManagementBy default all Solution Designer and Hub services (pods) and with FSW created services trust the default certificates that are provided by the Red Hat Universal Base Image (UBI) image and it is no longer needed to include them manually into the Truststore.
Customizable Pipeline StepsModify the pipeline templates to include own pipeline tasks. Also, you will be able to adjust the predefined pipeline tasks and add your own pipeline steps.
Show Pipeline Runs of ProjectsA list of all pipeline runs is now available in the CI/CD view of a project in Solution Designer and also in Solution Hub.
Network Policy SupportIBM Financial Services Workbench as well as the deployed projects designed and implemented with IBM Financial Services Workbench now support Network Policy to limit traffic between the pods.
UI for configuration of deploymentsThe Project Configuration (default for new projects in a k5-project) and the Solution Configuration (configuration for a specific project) can now be made with the UI inside Solution Hub.
Git Token can now be editedYou now have the option to edit the Access Token information of your Git Tokens. This means you no longer need to delete it and create a new one. All pipeline configurations related to this Git Token will also be updated automatically.
Audit Logging for Solution Designer and Solution HubAll important changes made in Solution Designer or Solution Hub will now be logged and provided for consumption with IBM Audit Common Service or Fluentd.

Resolved Issues

IssueDescription
Trace LoggingIf log level is configured to trace, logs no longer might contain sensitive user information such as ID Token.

Known Issues

TopicDescription
Update of pom.xml fileCurrently the root level pom.xml file will not be updated automatically in case the Java SDK version has changed. This has to be done manually in the Git repository as described here.
API Namespace CreationCurrently it is only supported to create an API namespace from scratch or by uploading an API specification. The other possibility (clone) will be introduced in a later release and is disabled in the current version.
API Integration - IBM API ConnectThe current version will not support an integration to IBM API Connect. The feature will be introduced in a later release and is disabled in the current version.
Fetching PermissionsWhen getting new permissions or when permissions are changed in repository membership or in role mapping, it may take up to 3 minutes (max.) for them to get activated in the case of repository membership being changed. If the role mappings are changed then you should log out and log in again to activate the permissions. At the moment this time period is not configurable. In order to shorten the time needed to activate the new permissions, you can clear the cache manually by calling the corresponding API, e.g. through the Swagger UI interface.
Discriminator Property for "one of"-SchemasWhen creating a "oneOf-schema" and setting a discriminator, a required property is created with the discriminator name and it is automatically attached to each schema that belongs in the "oneOf-schema". Therefore, if any of these schemas is used independently, then the discriminator property must be set accordingly to '#/components/schemas/<schema_localIdentifier>'.
Defining the Discriminator PropertyIf any of the schemas of a "oneOf-schema" contains a property with the same name as the discriminator name, then this property will be replaced with the discriminator. The discriminator is an Enum value of type String. Therefore, make sure there are no properties in any of the schemas of a "oneOf-schema" having the same name as the discriminator.
Working with two developers on one projectIn case of conflicts, delete the package-lock.json of the project and execute fss pull.
Unmasked Password using GitBashBy using GitBash with Windows, the password during fss setup is not masked. See also recommendation for tools to be used.
Invalid JWT Token using Dashboard Swagger-UIProjects that are deployed within a previous version (before 2.3) will get an invalid JWT token using the Swagger-UI from the dashboard. After a re-deployment of the project it is fixed.
GitHub Enterprise IntegrationThe initial commit shows wrong user data in the Git repository.
Local MarketplaceLocal Marketplace feature is not available on fresh installation without additional manual steps.
Existing BindingsExisting default or custom bindings in runtime namespaces still work but are not shown via the Configuration Management REST API.
Environment Level supports only one Message Hub BindingCurrently it is not possible to configure more than one Message Hub Service Binding (Kafka binding) on the Environment level in Solution Hub. But you can still configure and use multiple Message Hub Service Bindings on the Project level.
Local Debugging of TypeScript Low-Code Projects with EventsLocal debugging of low-code projects based on TypeScript that include events requires some additional manual configuration in order to connect to the Kafka cluster.
Usage of Arrays/Complex Entities as Event PayloadSending an array / a complex payload entity (i.e has properties that are entities) is not supported due to the way an entity is represented (nested value dictionaries) that are not able to be constructed back when consuming events and firing agents. If the event payload is a simple structure (an entity with simple properties), this gets constructed back successfully, the event will be consumed and the agent is fired.
CPD Import/Export functionality not currently supportedCurrently the Cloud Pak For Data Import/Export framework is not supported. There are some product specific APIs as well as using native tooling for the products data which is primarily stored in the customers own git repositories
Domain AgentsDomain Agents that are bound to an Event can only be executed if the Testing Support is enabled in the Project Configuration (please see section 'Testing - Enable Testing Support').
IntegrationAPI dependency Local Lookup, using a Open API 3.0 specification generated by a Java Low-Code project will not work as a Local Lookup API dependency in a Typescript Low-Code project. This is due to differences in the Java generated specification (operation paths) and expected API Binding URL.