Flowable 6.2.0 release
Highlights
- Introduction of a new CMMN 1.1 Engine. This provides an implementation of the CMMN 1.1 OMG standard (http://www.omg.org/spec/CMMN/1.1/). A lot of effort has been put in this new Engine, and it uses a new set of database tables optimized for CMMN execution. We've added a new CMMN user guide to help you getting started. Note that since this is a first release, the CMMN Engine is marked as an experimental feature and missing features like timers and HTTP and Decision tasks will be added in next releases.
- Added a CMMN editor to the Flowable Modeler app.
- Added support for CMMN cases in the Flowable Task app.
- The BPMN and CMMN engine share a number of common services like Tasks, Variables, Identity links and Jobs. Therefore these services are extracted from the core BPMN engine module and new modules have been created for each one of these services. The BPMN and CMMN engines make use of these services to provide for example Task and Variable support. With this approach Flowable is very flexible in the deployment model. You can run only the BPMN Engine, only the CMMN Engine or run them both together without any issues.
- Various small bugfixes all around.
Community contributors
David Malkovsky (dbmalkovsky)
Filip Hrisafov (filiphr)
Robert Hafner (roberthafner)
Marco van Zwetselaar (zwets)
Lori Small (lsmall)
Michael Lippens (mlippens)
Upgrade notes
Because of the extraction of the Task, Variable, Identity Link and Job services, we had to change the package names of the classes used in these modules. This means that for example TaskQuery and Job Query have been moved to a new package. This was done to adhere to OSGi standards and to be ready for the new Java 9 version. This however does mean that you run into some compilation issues while migrating to version 6.2.0. We always try to prevent this as much as we can, but due to the new modules this wasn't possible in this release. The common naming pattern of these new service is org.flowable.{servicename}.api for the API module and org.flowable.{servicename}.service for the service implementation module. So org.flowable.task.api and org.flowable.task.service for example.