Release notes
These release notes present the current version 4.0.5 of IBM Industry Solutions Workbench, which became generally available on 2023 May 12th (GA).
New features
Feature | Description | Available since version |
---|---|---|
Event Support 2.0 | With that version the product offers the possibility to connect to a central Schema Registry and manage schemas via the Solution Designer. The current functionality Event Support 1.0 is still supported with a compatability mode. | 4.0.5 |
Fully customizable Helm Charts | The helm charts that are used for the build and deployment of service project can now be modified or completely overridden for specific projects if needed, see customized helm charts. | 4.0.5 |
Custom secrets for application composition projects | It’s now possible in the Designer to add kubernetes secrets for Application Composition Projects such that it can be used by the external component. | 4.0.5 |
Enhancement for Low-code Service Projects | Inline and referenced responses in context of an API operation can now be edited via the Designer. | 4.0.5 |
Multiple Component Repositories support | The product now offers the possibility to configure a default repository where built components are published automatically via the release pipeline. Besides that, additional component repositories can be registered in the design environment to re-use already existing components (bought or built by 3rd parties) in Application Composition Projects. | 4.0 |
Multiple Asset Catalogs support | With that version, the Local Marketplace (which covered the functionality to export, store and import project templates) will be replaced by the so called Asset Catalogs which now are stored in a external Git repository. It allows a much easier management and comes with the possibility to have more than one Asset Catalog configured to share templates. | 4.0 |
IBM® API Connect® support | You now have the option to add annotations to every modelled API Namepsace API Namespace in order to use the generated API specifications with IBM API Connect | 4.0 |
Persistence support for relational databases | The new version also includes a new persistence mechanism to create, read, update, and delete root entities, entities and external entities from and to a relational database relational database. This is only available for low-code projects based on Java Spring Boot. | 4.0 |
Additional Environment Configuration for Service Projects | The product allows now to place an additional configuration (yaml.file) needed for the runtime and places an pre-generated one in the Git project of his service project. Within an Application Composition Project these additional configurations (of the values.yaml) can be seen and even be managed by the 'Configure Component' functionality. | 4.0 |
Streamlined installation & upgrade experience via Operator | The IBM Industry Solution Workbench can be now installed via Operator Hub. | 4.0 |
Enhancement for Low-code Service Projects | From this version on, you can use up to 20 characters to specify a project's acronym giving you more flexibility in naming your projects. | 4.0 |
Enhancement for Low-code Service Projects | Within Low-Code service projects there are now extended options for importing Open API specifications. The product now supports for imported APIs the full spectrum of an Open API (including e.g., Inline-Schemas, OneOf, AllOf, Patch-Operations and additional data formats). | 4.0 |
Enhancement for Low-code Service Projects | Easily create an API dependency in an Integration Namespace by selecting an API from another Service built with IBM Industry Solutions Workbench. | 4.0 |
Enhancement for Low-code Service Projects | We optimized the way to integrate with external REST APIs. Now, each integration namespace has exactly one API dependency to integrate with one external API. Access to the operations and the service stub is provided from all namespaces of the project. | 4.0 |
Enhancement for Low-code Service Projects | Within this version the migration of Entities to Root Entities or External Entities and vice versa is supported. | 4.0 |
Enhancement for Low-code Service Projects | After creation of a property the type of the property can be changed afterwards. | 4.0 |
Enhancement for Low-code Service Projects | Deletion of a namespace is now only possible after confirming it by re-entering the namespace acronym. | 4.0 |
Enhancement for Low-code Service Projects | Modeling a property of type Selection Element without Enumeration Elements will result in a warning, which is displayed in the Problems View. | 4.0 |
Enhancement for Low-code Service Projects | A User of the Solution Designer is now able to directly delete a property including all its usages. | 4.0 |
Resolved Issues
Topic | Description | Resolved since version |
---|---|---|
Designer | Left menu navigation is available in case of an error | 4.0.5 |
Designer & Solution Hub | In case of an invalid entered URL a 404 page is shown | 4.0.5 |
Designer Application Composition | Adjusted error message in case of missing permissions | 4.0.5 |
Designer Asset Catalogs | Assets can now be filtered by tag | 4.0.5 |
Designer Asset Catalogs | When sharing an asset the version (SemVer) is now checked properly | 4.0.5 |
Designer Asset Catalogs | New Service Projects created from Assets have no invalid references | 4.0.5 |
Designer Asset Catalogs | Correct error message is now shown in case of missing permissions | 4.0.5 |
Designer Low-code projects | While changing an API using the Expert View adjusted meta information and documentation on API Namespace level is now kept | 4.0.5 |
Designer Low-code Projects | API Dependency in Integration Namespacesnow uses the full height for the code view | 4.0.5 |
Designer Low-code Projects | Description of business errors in Domain Namespaces migrated to a simple text field | 4.0.5 |
Designer Low-code Projects | Problem navigation not working properly in case of missing k5_propagate_security_token | 4.0.5 |
Designer Low-code Projects | Sidebar action now closes after creation of a namespace | 4.0.5 |
Designer Low-code Projects | Prefix of namespace allows now camelCase | 4.0.5 |
Designer Low-Code Projects | Added validation for invalid path parameters | 4.0.5 |
Designer Low-Code Projects | “required” is now shown on the instance page of a schema | 4.0.5 |
Designer Low-Code Projects | Validation fails in a nested oneOf hierarchy due to discriminator validation | 4.0.5 |
Designer Low-Code Projects | OneOf Discriminator property error message is not clear | 4.0.5 |
Designer Low-code Projects | After changing an API using the Expert View default parameters are shown as modelled Header Parameters | 4.0.5 |
Designer Low-code Java | Documentation Setup Java for local profile is not correct | 4.0.5 |
Designer Low-code TypeScript | API Schemas with AllOf-schemas ignore the directly associated properties in the code | 4.0.5 |
Designer Workspaces | Filter options are now in relation to each other | 4.0.5 |
Designer Workspaces | Adding a project now supports filtering by tag | 4.0.5 |
Designer Asset Catalogs | Bitbucket is now supported for Asset Catalog | 4.0.3 |
Designer Low-code Java | When creating or editing enums, spaces that are entered at the beginning or end are automatically deleted | 4.0.3 |
Designer Low-code Java | External entity constructor input properties cause Java code to fail | 4.0.3 |
Designer Low-code Java | It is now possible to call an integration service from within an agent execution and the required JWT token will be provided | 4.0.3 |
Designer Low-code Java | API parameters do not support uppercase for enum values | 4.0.3 |
Designer Low-code Java | Using same service name in different namespaces may cause server errors | 4.0.3 |
Designer Low-code Java | Incorrect alignment of the configuration in the generated local configuration template | 4.0.3 |
Designer Low-code Java | oneOf schema discriminator enum value is generated incorrectly | 4.0.3 |
Designer Low-code Java | Setting table names for Java RDBMS on abstract root entities is now possible. Also, the limitation for table names to 30 chars has been removed. | 4.0.3 |
Designer Low-code TypeScript | Error cloning TypeScript low code projects when using a custom schema type as query parameter in an API operation | 4.0.3 |
Designer Low-code TypeScript | Schemas with allOf schema ignore the directly assigned properties | 4.0.3 |
Designer Low-code TypeScript | isInstanceOf is missing for external entities | 4.0.3 |
Designer Low-code Projects | The service instances page displays the inputs and outputs of the deleted services | 4.0.3 |
Product Installation | Error regarding k5-project resource when Istio support is enabled | 4.0.3 |
BAW Toolkit generation for API Namespaces | Error when using the BAW toolkit if the x tracing header object is not set | 4.0.2 |
BAW Toolkit generation for API Namespaces | BAW toolkit now also works in container environments | 4.0.2 |
Designer Application Composition Projects | yaml editor for component configuration does not display more than 8 lines | 4.0.2 |
Designer Application Composition Projects | Error message is not displayed correctly if a selected component is not in the Helm repository | 4.0.2 |
Designer Service Projects | Deploy pipeline cannot check deployment status | 4.0.2 |
Designer Low-code Java | Repo variable is not assigned to associated field in services constructor | 4.0.1 |
Designer Low-code Java | Changing property type does not delete additional information of associations | 4.0.1 |
Designer Low-code Java | Indentations in example application-local.template.yaml are incorrect | 4.0.1 |
Designer Low-code TypeScript | Projects can't be compiled if an API schema contains enum values | 4.0.1 |
Designer Low-code TypeScript | SchemaFactory always returns the same instance | 4.0.1 |
Designer Low-code TypeScript | References of linked schemas are not created and linked incorrectly. | 4.0.1 |
Product Installation | ConfigMap k5-solution-global-values is not created automatically in k5-projects | 4.0.1 |
Known issues
Topic | Description | Known since version |
---|---|---|
Designer Low Code Java | The root level "pom.xml" file is not automatically updated when the Java SDK version has changed. Remediation: Update the pom.xml file manually if the Java SDK version has changed. | 4.0 |
Designer Git Providers | When getting new permissions or when permissions are changed in the repository membership or role assignment, it may take up to a maximum of 3 minutes to activate them if the repository membership is changed. This time period is currently not configurable. Remediation: If the role assignment is changed, you have to log out and log back in to activate the permissions. To reduce the time required to activate the new permissions, you can clear the cache manually by calling the appropriate API, for example, via the Swagger UI interface. | 4.0 |
Designer Low Code Projects | When creating a "OneOf Schema" and specifying a discriminator, a required property is created with the name of the discriminator, which is automatically attached to each schema belonging to the "OneOf Schema". Remediation: If one of these schemas is used independently, the discriminator property must be set to #/components/schemas/<schema_localIdentifier> accordingly. | 4.0 |
Designer Low Code Projects | If one of the schemas of a oneOf-schema contains a property with the same name as the name of the discriminator, then this property will be replaced by the discriminator. The discriminator is an Enum value of type String . Remediation: Make sure that there are no properties in any of the schemas of a "oneOf-schema" that have the same name as the discriminator. | 4.0 |
Designer Low Code Projects | Work with multiple developers on a project can lead to conflicts. Remediation: In case of conflicts, delete the package-lock.json of the project and execute k5 pull . | 4.0 |
Designer Git Providers | The first commit to GitHub Enterprise shows incorrect user data in the Git repository. | 4.0 |
Runtime Configuration | Existing default or custom bindings in runtime namespaces are working, but are not displayed through the Configuration Management REST API. | 4.0 |
Environment Configuration | It is not possible to configure more than one Message Hub Service Binding (Kafka binding) at the environment level in Solution Hub. Remediation: You can still configure and use multiple Message Hub service bindings at the project level. | 4.0 |
Implementing Low-Code Typescript | Local debugging of TypeScript low-code projects that contain events requires additional manual configuration to connect to the Kafka cluster. Remediation: Manually configure the local debugging to connect to the Kafka cluster. | 4.0 |
Implementing Low-Code Typescript | Event using entity as payload fails if property "id" is used. Remediation: Use schema for event payload or rename the property to a different naming | 4.0.5 |
Implementing Low-Code | Sending 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), it is successfully reconstructed, the event is consumed, and the agent is fired. | 4.0 |
Application Composition Project Configuration | When the version of a component in use is changed, the associated binding information (API binding(s) and theme binding(s)) is not automatically updated. Remediation: When you have changed the configuration of the component, please save a copy of the content and then remove the component. Then click the "cog wheel" icon and click the "API Bindings/Theme Bindings" button. Finally, add the component back in the desired version and paste the configuration again. | 4.0 |
Running Pro-code Java services | In the generated Swagger UI/Docs of Java pro-code API's, the baseURL is incorrect, therefore calling a Java pro-code service API does not work via the Swagger UI. Remediation: As a workaround, manually adjust the SwaggerConfiguration of your project.
| 4.0 |
Swagger-UI - Execute button does not response | The Swagger UI API has two known issues that can cause the "Execute" button to not work: #6295 Execute button is not working with 'malformed' JSON body, and #7784 OAS2: Execute button doesn't work if the request body fails schema validation | 4.0 |
Designer Low-code projects | Adding an entity name with a suffix "Entity" (e.g. petEntity) in the domain namespace results in a compilation error because the SDK currently uses the "Entity" suffix as the reserved name for the entity interface. In the future, the generated interfaces will be removed. | 4.0 |
Designer Low-code projects | If you add any primitive type as operation response body this will lead to 502 statusCode. | 4.0 |
Designer Service Projects | The default branch name of a project cannot be changed later. | 4.0 |
Designer Low-code Java | Enum values in API parameters that are not written in uppercase only lead to the exception MethodArgumentTypeMismatchException Workaround: The missing converters have to be created manually for each enum class, which is affected:
| 4.0 |
Designer Low-code TypeScript | Any designed query parameter with type boolean or number will be represented as string. This will lead to validation errors while using them as service input Workaround:
| 4.0 |
Designer Low-code Java | Using the date type for sending events is blocked by the sender due to wrong validation. Remediation:
| 4.0 |
Designer Low-code projects | Apicurio cannot handle event evolution with compatibility rules enabled. This is due to a bug in apicurio and leads to the situation that the Solution Designer cannot register a new schema or update it. Remediation: do not enable the compatibility rules for apicurio schema registry | 4.0 |