Skip to content

Releases: camunda/feel-scala

1.12.0

16 Sep 05:01
Compare
Choose a tag to compare

Changelog

  • new temporal functions: now() + today() (#175)
  • new temporal builtin functions from DMN 1.3 (#182)
  • extend decimal() function by optional parameter for rounding mode (#165) (thanks to @bigpuritz)
  • fix comparing null with not existing variable (#176)
  • fix that variable names can contain a key-word (#179)

1.11.2

16 Jun 14:19
Compare
Choose a tag to compare

Changelog

  • compare context and list values (#142)
  • transform big numbers into Double (#133)
  • transform short as FEEL number (#132)
  • morph project into a single module project (#135)

1.11.0

13 Mar 09:31
Compare
Choose a tag to compare

Changelog

  • access an item of a list by providing a variable as index (#80)

  • disable external functions by default (#116)

  • Maven group-id changed from org.camunda.bpm.extension.feel.scala to org.camunda.feel (#79). The FEEL engine is now available under:

    <dependency>
      <groupId>org.camunda.feel</groupId>
      <artifactId>feel-engine</artifactId>
    </dependency>
  • Camunda integration modules (feel-engine-factory, feel-engine-plugin, feel-engine-spin) moved to the camunda-bpm-platform repository (#78)

  • change package structure to reflect public/private API (#91)

1.10.1

28 Jan 08:29
Compare
Choose a tag to compare

Fixes

  • access an item of a list by providing a variable as the index (#80)

1.10.0

13 Jan 06:25
Compare
Choose a tag to compare

Features

  • support multiple ValueMappers
    • value mappers do not have to extend each other anymore
    • precedence can be configured by providing a priority
    • optional Camunda Spin dependency by extracting the value mapper into its own module

Migration

⚠️ This release includes some public API changes - mainly for the extension points. If necessary, please follow the migration steps:

  • if Camunda Spin types are used
    • add a dependency to feel-camunda-spin in your POM or include the new JAR
  • if a context is used to evaluate an expression via engine API
    • use CustomContext instead of RootContext
  • if CustomFunctionProvider is implemented
    • add functionNames method and return all available function names
  • if ValueProvider is implemented
    • add keys method and return all available variable names
    • (optional) return variables as raw objects instead of FEEL types
  • if CustomValueMapper is implemented
    • adjust transform methods to pass a function to transform the inner values of a collection type
    • use Context.StaticContext instead of DefaultContext for collection types
    • (optional) override priority field/method to change the precedence

1.9.0

01 Oct 06:19
Compare
Choose a tag to compare

Features:

  • equals check for unary-tests expression

Fixes:

  • Joda Date-Time with timezone is not transformed
  • java.util.Date is transformed into a Date-Time object with Timezone/Offset

1.8.1

10 Sep 06:16
Compare
Choose a tag to compare

Fixes:

  • unary-test for negative numbers

1.8.0

28 Jun 08:01
Compare
Choose a tag to compare

Features:

  • min() / max() built-in function for all comparable types
  • divide a duration by another duration
  • escape name by ` instead of '

Fixes:

  • index of() return the index if the first element matches
  • propagate error in list / context expression

1.7.0

15 May 11:06
Compare
Choose a tag to compare

Features:

  • change engine API
  • improve Java usage of the API and SPI
  • load function providers via service loader SPI when using the FEEL engine factory

Fixes:

  • fix exponentiation with a decimal exponent

1.6.2

23 Jan 10:45
Compare
Choose a tag to compare

Features:

  • add logging statements to see the loaded value mapper and function provider

Fixes:

  • unary-tests can handle null values in comparison (e.g. return false for (0..10) if the input value is null )