Release Notes
v5.26.4 on the GitHub
Improvements
Core:
- An ability to test custom error messages via test tables is added.
- Memory usage in SmartRules parsing is improved.
- Warnings are now displayed for matching arguments with the same name that is written in different cases (lower case and upper case).
Rule Services:
- In Rule Services, the 'locale' context variable value is now retrieved from the 'Accept-Language' HTTP header.
- It is now possible to customize system error responses by overriding the default JAXRSExceptionMapper.
- Return arrays of errors as is, without wrapping into the object with 'body' property
Depending on the browser language settings, OpenL Tablets Rule Services return a response according to localization defined in the OpenL rules.
DEMO:
- An ability to navigate to a browser after double clicking the start script is added.
- The 'Tutorial 8 - Introduction to Smart Rules and Smart Lookup Tables' project is opened and the 'Tutorial 4 - Introduction to Column Match Tables' project is closed.
- Migration to the new OpenL Tablets DEMO version without manually copying the openl-demo folder is now available.
Fixed Bugs
Core:
- The StackOverflow error is displayed if the return parameter is calculated from other return parameters.
- Slashes in condition syntax do not work properly in simple rules.
- 8 errors instead of 1 are displayed to a user if the external project or module is specified incorrectly or does not exist in smart rules.
- Extra errors are displayed when a non-existing enum property is added to a table.
- No validation is performed if incorrect parameters are passed to the constructor.
- No error is displayed if a non-existing method is called and there is an alias in the project with the name equal to the method name.
- The "'_res_' column is missing." warning message is displayed for the run table.
- The 'StringIndexOutOfBoundsException' or 'ArrayIndexOutOfBoundsException' exception is displayed if spreadsheet steps contain special symbols only.
- Incorrect casting of primitive is selected between an object and number.
- The StringRange condition is parsed as a string if the backslash or period symbols are used.
- The StringRange condition is parsed incorrectly if the border value contains a space and the part after space length exceeds 99 symbols.
- The classloader issues appear when OpenL Tablets WebStudio is run on the Jetty application server.
WebStudio:
- Infinite loading is displayed after adding a comma to an array.
- An internal server error appears if a user applies the Level = "None" filter in the filter project section.
- ClassCastException appears on opening a dependent project if for the main project, the module is opened in Excel.
- An error is displayed on loading the module if there are two parameters with the name "input".
- The 'Cannot load the module' error is displayed when a project has different dates set for the same datatypes in modules.
- The " Cannot convert from 'org.openl.rules.calc.AnySpreadsheetResult' to 'org.openl.rules.calc.SpreadsheetResult'. " error is displayed if custom.spreadsheet.type = false.
- OpenL Tablets WebStudio breaks Git repository with submodules.
- The datatype in C2 condition parameter is not underlined if the condition is merged with C1.
- Local history is lost after copying a project.
- If OpenL Tablets WebStudio uses the Postgres database, the project is displayed for two tag filters if it was deleted, erased, and then re-created with another tag in another repository.
- Tests fail when a null element exists in the string array.
- An inconsistent deploy configuration name is displayed on the Admin tab in the 'Deploy configuration repository' list.
- The "java.lang.StringIndexOutOfBoundsException" error is displayed when a table contains a method that cannot be found.
DEMO:
- Folder "-p" is created in a demo folder on Windows.
- Two icons are displayed for the running DEMO process in MacOS.
- The "RESTful Rule Services" link does not work for Rule Services demo client.
- The 'stop.cmd' script is removed as it does not work properly.
DEMO, WebStudio:
- The SetNonZeroValuesTest test in the 'Example 1- Bank Rating' project does not return the expected result.
DEMO, Docker:
- The force-recreate script does not work for a demo container.
Rule Services:
- The project deployment fails with NPE if custom.spreadsheet.type is set to false in properties.
- The 200 and 204 responses disappear from the OpenAPI scheme if the method has the ‘@Operation’ annotation.
- The OpenAPI schema contains a wrong default value for the 'array' type.
Repository:
- The local Git repository stops responding if a tag in the remote repository is repushed.
Maven Plugin:
- Maven plugin does not work with Maven 3.5.4.
Updated Libraries
Vulnerabilities fixed: CVE-2022-40151, CVE-2022-40152, CVE-2022-40153, CVE-2022-40154, CVE-2022-40155, CVE-2022-40156, CVE-2022-31684, CVE-2022-38752
- Spring 5.3.24
- Spring Boot 2.7.7
- Spring Security 5.8.1
- Swagger UI 4.15.5
- Log4j 2.19.0
- Cassandra driver JDBC 4.15.0
- Thrift 0.17.0
- Netty 4.1.86.Final
- Reactor Netty HTTP 1.1.1
- Kotlin stdlib 1.7.22
- Jackson 2.14.1
- Jetty 10.0.13
- AWS S3 SDK S3 1.12.376
- Azure Blob Storage 12.20.1
- MSSQL JDBC driver 11.2.2.jre11
- Hibernate ORM 5.6.14.Final
- Mokito 4.9.0
- Datasource Proxy 1.8.1
- Testcontainers 1.17.6
- GreenMail Core 1.6.12
- Commons compress 1.22
- Gson 2.10
- Apache Groovy 3.0.14
- Apache POI 5.2.3
- Bouncycastle 1.72
- Joda Time 2.12.2
- snakeYAML 1.33
- CXF 3.5.5
- Woodsox 6.4.0
- Dependency on XStream library was removed