OCTOBER 2, 2018

Where to get it:

The source code can be found on Github: https://github.com/flowable/flowable-engine/tree/flowable-6.4.0


  • A first version of process instance migration has been added to the Flowable BPMN Engine. In the RuntimeService you can now use the createProcessInstanceMigrationBuilder to define and execute the process instance migration. This first version supports migrating process instances with wait states, embedded (event) sub processes and boundary events. In the next version more support will be added for more complex cases like parallel and inclusive gateways, multi-instance activities and call activities.

  • Expression support have been added for the BPMN and CMMN engines to make it easier to work with variables and in specific variables that may not have been initialized yet. When you reference a variable in an expression like ${customerNumber > 40} and there is no customerNumber variable yet, an exception would be thrown. With the variable expression support this can be handled without an exception with ${variables:getOrDefault(customerNumber, 0) > 0}. A similar expression is possible for strings with ${variables:get(customerName) == "test"}. The user guide describes the full set of available variable expressions.

  • A first version with support for MongoDB persistence has been added. The MongoDB module is available from a separate Git repository at https://github.com/flowable/flowable-mongodb. The MongoDB module is made available in a separate repository, so that it can be released in a different pace than the full Flowable Engine releases. The support of MongoDB already includes most BPMN constructs, but in the coming releases it will be extended to be on par with the relational database support.

  • Upgrade to Spring 5.x for all the integration modules using Spring.

  • Added plan item lifecycle listener to the CMMN engine, to allow for listening to plan item instance state changes.

  • In the Task app support for activating manual plan items and triggering user event listeners has been added.

  • Added support for JUnit 5.

  • Support for using java.time.Duration variables and expressions for Timer durations.

  • Chinese translation has been added for the UI apps.

  • Various small bugfixes and improvements all around.

Upgrade notes

Idm Engine SpringEncoder

The deprecated constructor from SpringEncoder that accepted org.springframework.security.authentication.encoding.PasswordEncoder has been removed

Custom IdGenerator using a Bean in Spring Boot

It is now possible to define the custom IdGenerator for the Flowable Process engine, by creating a bean of type IdGenerator. If no bean is provided the StrongUuidGenerator will be used. If there is a bean qualified with @Process then this one would be used, otherwise a unique global one would be used. If there are more global beans then the default StrongUuidGenerator will be used.

FlowableFunctionDelegate changes

The method functionClass has been removed from the org.flowable.common.engine.api.delegate.FlowableFunctionDelegate interface. This doesn’t change anything with regards to adding custom functions to expressions: returning the right Method in functionMethod() is enough.

Tijs_Rademakers_MG 8595

Tijs Rademakers

VP Engineering

BPM enthusiast and Flowable project lead.

Share this Blog post
Engineering | SEPTEMBER 21, 2023

Flowable Open Source 7.0.0 release

Today, we are happy to share that we have released Flowable 7.0.0. As a Flowable community user this means, you can start working with Spring Boot 3 and requires Java 17 as a baseline. Read more

Engineering | JUNE 21, 2023

Specifying data structure with a new model type: Data Dictionary

Data is a crucial part of modeling and executing cases and processes. Our new module, Data Dictionary, empowers modelers to define which data structures and constraints are needed in the case or process model and all its child models.Read more

Adobe Stock 121826479
Engineering | JUNE 20, 2023

Unveiling the new Flowable Design: A closer Look

The new Flowable Design shines with a completely new user interface whilst maintaining backward compatibility to the previous version. In this article, we highlight some of the new features and technical details.Read more