Release Notes

v5.22.0.1 on the GitHub

New Features

Use streaming read for xls and xlsx files

OpenL switches to use an Event API to process xls and xlxs files while in read-only mode. Consequently, WebStudio and WebServices consume much less memory when only reading xls/xlsx files. During Editing DOM read approach is still used

Functionality to use object binding in logging interceptors

Functionality supports converting of SpreadsheetResult before saving into storage

Ability to store description of Conditions, Returns and Actions in a separate table

Conditions, Actions and Returns now can be managed in separate tables and then used in SmartRules tables

 

Improvements

Core, Demo:

  • Java 11 Support

Core:

  • Support StringRange in Rules
  • Support DateRange in Rules
  • Ability to use $RuleId/$Rule in Rules and SmartRules
  • Refactoring of OpenL Message to eliminate ThreadLocal usage
  • Keyword "RETURN" is optional for Spreadsheet tables that returns a particular type
  • Created a new property "calculateAllCells" for Spreadsheet type table that returns a particular type
  • Ability to use SPI for loading implementation of ResolvingStrategy instead of Spring Framework
  • Added a new function that receives Startdate, Enddate and returns fractional interval between it. The behavior is similar to native excel function DATEDIFF and has the same arguments. Example: dateDif(startDate, endDate, "D"), where "D" means difference in days

Webstudio:

  • Added a hint for the types of SpreadsheetResult fields
  • Added a the ability to save input data of executed test cases in Excel
  • Reworked metainfo handling to reduce memory consumption. It is not stored for all cells like cell types, such info is loaded on demand

OpenL Tablets Repository:

  • Split Design Repository to Projects Repository and Deploy Config Repository

Maven Plugin:

  • Deprecated generateUnitTests parameter was removed from openl-maven-plugin

Fixed Bugs

Core:

  • Out of memory error in WebStudio on open huge rating rules
  • Incorrect return type for custom spreadsheet type in index operations
  • Incorrect initialization of multidimensional arrays
  • Date values formatted incorrectly in data table with foreign key
  • Array access using user defined index isn't supported in conditions
  • Impossible to cast multidimensional arrays of Alias types
  • Insulation for a project between 2 users does not work
  • Impossible to cast variable arrays
  • Error "java.lang.IllegalArgumentException: array element type mismatch" is presented on runtime for flatten() function
  • Array of double cannot cast to array of objects
  • Error "Datatype validation is failed" is displayed on update datatype is project with dependency
  • Error "Method is not found" appears on module update if rule calls another rules from another module, and input datatype is from jar file
  • SimpleRules table incorrectly understands if Range or Array in in condition for Range datatypes
  • Decision table parsing fails If two parameters is used in Decision Table expression where one parameter declaration is empty.

Core:

  • Slow performance of Trace functionality for Tbasic tables
  • Link to empty in errors cell doesn't work

WebServices:

  • Scheme for non-standard url is returned incorrectly
  • Huge memory consumption if project has a Lookup table which uses ranges

Maven Plugin:

  • Maven plugin generates JavaBeans with invalid arguments in the constructor

Updated libraries

  • POI v4.0.1
  • ASM v7.1
  • CGLIB v3.2.10

Migration Notes

OpenL Maven Plugin

Delete deprecated: generateUnitTests, unitTestTemplatePath, overwriteUnitTests in OpenL Maven Plugin

OpenL Rules

  • Delete deprecated: org.openl.rules.calculation.result.convertor.* org.openl.rules.calc.result.convertor.*
  • Cells calculation order in Spreadsheet type table with non-spreadsheetresult return value is changed. Calculation of such spreadsheets may need to be updated or property "calculateAllCells = false" can be added for backward compatibility.
  • Month numbers are from 1 to 12 (January number is 1). Previously it was from 0.

© Copyright OpenL Tablets, 2004-2024