Skip to main content

About release 2.0

New and Noteworthy

This Operaton release brings major platform & dependency updates.

It is a breaking release for clients integrating Operaton in Spring based applications.

Clients that integrate Operaton via the REST API or database schema do not need to take any action.

Spring Boot 4 & Spring Framework 7

Operaton 2.0 is now based on Spring Boot 4 and Spring Framework 7.

This Spring Boot 4 upgrade is a major driver for the major release and is a breaking change. Clients integrating Operaton into their Spring-based applications need to upgrade their Spring dependencies accordingly.

The support for Spring Boot 3 and Spring Framework 6 has been dropped in this release.

The module structure is unchanged. For clients this means that if the a module from group org.operaton.bpm.springboot is used, using this module with Spring Boot 4 is now required.

Jakarta EE 11

Operaton 2.0 is now compliant with Jakarta EE 11.

JUnit 6 Support

Operaton 2.0 provides support for JUnit 6 for testing. In order to use JUnit 6 compliant extensions, use this dependency:

<dependency>
<groupId>org.operaton.bpm</groupId>
<artifactId>operaton-engine</artifactId>
<scope>test</scope>
<classifier>junit6</classifier>
</dependency>

The extension class names remain unchanged, e.g., org.operaton.bpm.engine.test.junit5.ProcessEngineExtension

Note that the package name still contains junit5 for backward compatibility reasons. This may change for the final Operaton 2.0 release.

Testcontainers 2.0

Operaton 2.0 uses now Testcontainers 2.0 for testing with databases and other containers.

OSGi Support Removed

OSGi bundle support has been removed from Operaton 2.0. The project no longer generates OSGi-compatible manifests for JAR files.

API

Database Schema

Operaton 2.0 does not introduce changes to the database schema since 1.1.

The database schema remains version 7.24.

REST API

Operaton 2.0 does not introduce changes to the REST API since 1.1.

Removed & Changed APIs

The following APIs have been removed or changed in a breaking way:

  • Module operaton-xml-model:
    • org.operaton.bpm.model.xml.ModelInstance:
      • Method added: public org.operaton.bpm.model.xml.ModelInstance copy()
  • Module operaton-bpmn-model:
    • org.operaton.bpm.model.bpmn.BpmnModelInstance:
      • Method added: public org.operaton.bpm.model.bpmn.BpmnModelInstance copy()
      • Method added: public org.operaton.bpm.model.xml.ModelInstance copy() added
    • org.operaton.bpm.model.bpmn.instance.dc.Font:
      • Method added: public void setUnderline(boolean)
  • Module operaton-cmmn-model:
    • org.operaton.bpm.model.cmmn.CmmnModelInstance:
      • Method added: public org.operaton.bpm.model.cmmn.CmmnModelInstance copy()
      • Method added: public org.operaton.bpm.model.xml.ModelInstance copy()
  • Module operaton-dmn-model:
    • org.operaton.bpm.model.dmn.DmnModelInstance:
      • Method added: public org.operaton.bpm.model.dmn.DmnModelInstance copy()
      • Method added: public org.operaton.bpm.model.xml.ModelInstance copy()
  • Module operaton-spin-core:
    • org.operaton.spin.scripting.SpinScriptEnv:
      • Removed field: extensions## Versions & Compatibility

Usage of deprecated APIs

It is strongly recommended to avoid using deprecated methods which are marked with the @Deprecated(forRemoval = true) annotation in the Java API.

Deprecated methods within packages containing the segment .impl. are considered internal and should not be used by clients. These methods are subject to removal without prior notice.

Versions

Java

Operaton requires Java 17 as the minimum version.

Operaton is tested and supported on Java 17, Java 21, and Java 25.

Camunda 7 Compatibility

This release is feature complete and API-compatible with Camunda 7 CE 7.24.

Spring

Operaton is based on:

  • Spring Boot 4.0
  • Spring Framework 7.0

Quarkus Extension

The Operaton Quarkus extension is based on Quarkus 3.30.

Note: The final Operaton Quarkus extension will be based on Quarkus 3.33 LTS.

Distributions

The Tomcat distribution is based on Tomcat 11.

The WildFly distribution is based on WildFly 38.

Standards Compliance

Operaton is compliant with the following standards:

  • Jakarta EE 11
  • BPMN 2.0
  • DMN 1.3
  • CMMN 1.1

Scripting Languages

Operaton supports the following scripting languages:

LanguageEngineVersion
JavaScriptGraalVM JavaScript25.0.0
GroovyGroovy5.0.3
PythonJython2.7.4
RubyGraalVM Ruby9.1.17.0

Critical Migration Note on JavaScript: The legacy Nashorn JavaScript engine has been removed (as of Java 15) and is no longer supported. Operaton now uses the high-performance GraalVM JavaScript engine. If you are migrating from Camunda 7 and are using ECMAScript 5 (or older), your scripts might require updates to comply with modern JavaScript standards. Please check your existing JavaScript code.

Camunda Migration Note: If you are migrating from Camunda 7 and are using ECMAScript 5, this might not work with the GraalVM JavaScript engine. Please check your JavaScript code and consider migrating them to a more recent version of JavaScript.