Что нового

OpenBPM Engine

Улучшения

В этом релизе мы сосредоточились на обратной связи пользователей и модернизации кодовой базы.

SBOM и License Book для отдельных дистрибутивов

В этом релизе мы предоставляем отдельные SBOM (Software Bill of Materials) и документ License Book для дистрибутивов (Tomcat и Spring Boot).

В версии 2025.0 OpenBPM Engine предоставлял единый SBOM и License Book для всех дистрибутивов, что было неидеально, так как дистрибутивы имеют разные зависимости.

Теперь это улучшено благодаря отдельным SBOM и License Book для каждого дистрибутива, которые дают более точную информацию о зависимостях, используемых в каждом дистрибутиве.

OpenBPM Engine теперь использует Trivy для генерации SBOM в формате CycloneDX — широко используемый и надёжный инструмент.

Устранение проблем статического анализа

Когда OpenBPM Engine был форкнут из Camunda 7 и мы настроили SonarQube для статического анализа кода, мы начинали с 16 тысяч проблем.

С тех пор мы активно работали над их устранением. Это был непрерывный процесс с использованием OpenRewrite, рефакторинга с помощью ИИ и масштабных ручных изменений.

С этим релизом мы достигли цели по максимальному устранению проблем. Количество проблем было сокращено более чем на 99.5%.

Совместимость с JUnit 6

В этом релизе все тесты были переведены на JUnit 6.

Существующие расширения протестированы и совместимы с JUnit 6, поэтому изменений для пользователей не требуется.

Версии

Java

OpenBPM Engine требует Java 17 как минимальную версию.

Поддерживаются и протестированы:

  • Java 17

  • Java 21

  • Java 25

Совместимость с Camunda 7

Этот релиз функционально завершён и API-совместим с Camunda 7.24.

Spring

OpenBPM Engine основан на:

  • Spring Boot 3.5.11

  • Spring Framework 6.2.16

Расширение Quarkus

Расширение OpenBPM Engine для Quarkus основано на Quarkus 3.30.8.

Дистрибутивы

  • Tomcat 11.0.18

Соответствие стандартам

OpenBPM Engine соответствует:

  • Jakarta EE 10

  • BPMN 2.0

  • DMN 1.3

  • CMMN 1.1

Языки скриптов

Язык Движок Версия

JavaScript

GraalVM JavaScript

25.0.2

Groovy

Groovy

5.0.4

Python

Jython

2.7.4

Ruby

GraalVM Ruby

9.1.17.0

Критическое замечание по JavaScript

Движок Nashorn удалён (с Java 15) и больше не поддерживается.

OpenBPM Engine использует GraalVM JavaScript.

Если вы используете ECMAScript 5 или старее — код может потребовать обновления.

Замечание по миграции с Camunda

ECMAScript 5 может не работать с GraalVM JavaScript.

Рекомендуется обновить скрипты до современной версии JavaScript.

Breaking changes

В этом релизе переименованы Maven artifactId, имена WildFly/JBoss-модулей и имена собираемых артефактов. Из названий удалён лишний сегмент engine, например openbpm-engine-engine переименован в openbpm-engine.

Это изменение требует обновления зависимостей, BOM, deployment descriptors, assembly-конфигураций, CI/CD-скриптов и downstream-проектов, которые ссылаются на старые координаты или имена модулей.

Область Было Стало Описание

Core engine artifact

io.openbpm.bpm:openbpm-engine-engine

io.openbpm.bpm:openbpm-engine

Основная Maven-координата процессного движка переименована. Все прямые зависимости на старый артефакт нужно заменить.

CDI

openbpm-engine-engine-cdi

openbpm-engine-cdi

Переименован артефакт CDI-интеграции.

Spring

openbpm-engine-engine-spring

openbpm-engine-spring

Переименован артефакт Spring-интеграции. Также нужно обновить exclusions и комментарии в пользовательских POM-файлах.

REST WAR

openbpm-engine-engine-rest

openbpm-engine-rest

Переименован REST WAR-артефакт для Tomcat.

REST core

openbpm-engine-engine-rest-core

openbpm-engine-rest-core

Переименован REST core JAR, используемый webapps, starters, тестами и сборкой REST-дистрибутивов.

REST OpenAPI

openbpm-engine-engine-rest-openapi*

openbpm-engine-rest-openapi*

Переименованы OpenAPI-артефакты и генератор OpenAPI-документации.

DMN root/BOM

openbpm-engine-engine-dmn-root, openbpm-engine-engine-dmn-bom

openbpm-engine-dmn-root, openbpm-engine-dmn-bom

Переименованы parent/BOM-артефакты DMN-модулей.

DMN engine

openbpm-engine-engine-dmn

openbpm-engine-dmn

Переименован основной DMN engine artifact.

FEEL modules

openbpm-engine-engine-feel-api, openbpm-engine-engine-feel-juel, openbpm-engine-engine-feel-scala

openbpm-engine-feel-api, openbpm-engine-feel-juel, openbpm-engine-feel-scala

Переименованы FEEL API, JUEL и Scala-модули.

Engine plugins root

openbpm-engine-engine-plugins

openbpm-engine-plugins

Переименован parent artifact для engine plugins.

Spin plugin

openbpm-engine-engine-plugin-spin

openbpm-engine-plugin-spin

Переименован Spin plugin artifact.

Connect plugin

openbpm-engine-engine-plugin-connect

openbpm-engine-plugin-connect

Переименован Connect plugin artifact.

WildFly/JBoss module names

io.openbpm.bpm.openbpm-engine-engine, io.openbpm.bpm.dmn.openbpm-engine-engine-dmn, io.openbpm.bpm.openbpm-engine-engine-plugin-*

io.openbpm.bpm.openbpm-engine, io.openbpm.bpm.dmn.openbpm-engine-dmn, io.openbpm.bpm.openbpm-engine-plugin-*

Переименованы runtime module identifiers. Пользовательские jboss-deployment-structure.xml, MANIFEST.MF Dependencies и WildFly-модули нужно обновить.

WAR/JAR filenames

openbpm-engine-engine-.jar, openbpm-engine-engine-.war

openbpm-engine-.jar, openbpm-engine-.war

Изменились имена собираемых файлов. Скрипты деплоя и ручные пути к артефактам должны использовать новые имена.

SQL script assembly

target/openbpm-engine-engine-${version}

target/openbpm-engine-${version}

Изменён каталог распаковки engine JAR при сборке SQL create/drop/upgrade scripts.

Jenkins artifacts

openbpm-engine-engine-rest*.war

openbpm-engine-rest*.war

Обновлены patterns для архивирования REST WAR в Jenkins.

Test skip property

skipTests.openbpm-engine-engine

skipTests.openbpm-engine

Переименовано свойство Maven для пропуска тестов engine-модуля.

Устаревшие элементы

Модуль io.openbpm.bpm:openbpm-bpm-junit5

Модуль устарел и будет удалён в будущем.

Замените:

<!-- устарело -->
<dependency>
  <groupId>io.openbpm.bpm</groupId>
  <artifactId>openbpm-bpm-junit5</artifactId>
  <version>${version.openbpm}</version>
  <scope>test</scope>
</dependency>

на:

<dependency>
  <groupId>io.openbpm.bpm</groupId>
  <artifactId>openbpm-engine</artifactId>
  <classifier>junit5</classifier>
  <version>${version.openbpm}</version>
  <scope>test</scope>
</dependency>

OpenBPM Control

Улучшения

В OpenBPM Control переработаны ключевые экраны для анализа процессов, задач, решений и инцидентов. Основной фокус релиза — улучшение навигации, читаемости данных и удобства ежедневной работы с BPM Engine.

Решения и DMN

Улучшена работа с решениями и таблицами решений. В интерфейсе появились более удобные представления для исторических экземпляров решений, обновлены экраны детальной информации и переработана навигация к таблицам решений. Это упрощает анализ DMN-выполнений и делает просмотр связанных данных более последовательным.

Процессы и диаграммы BPMN

Работа с процессами и BPMN-диаграммами стала удобнее. Добавлены дополнительные параметры для операций с экземплярами процессов, улучшено масштабирование диаграмм и обновлена визуализация технических состояний на схеме процесса. Экран детальной информации о процессе также стал удобнее для регулярного мониторинга.

Задачи, задания и инциденты

Улучшены сценарии работы с задачами, jobs и инцидентами. Навигация между связанными объектами стала прямее, а часто используемые действия с задачами теперь доступны быстрее из интерфейса.

Интерфейс и навигация

Интерфейс стал чище и предсказуемее. Таблицы получили более компактные действия и ссылки в ячейках, фильтры теперь можно сохранять и передавать через URL, а длительные операции сопровождаются блокировкой интерфейса. Также обновлены dashboard, сортировка переменных, типы окружений BPM Engine и информация на странице About.

Технические обновления

Обновлена платформа Jmix до версии 2.7.

Исправления ошибок

В релизе исправлены ошибки, влияющие на стабильность и корректность отображения данных. Улучшена обработка сообщений для элементов без имени, восстановлено отображение деталей ошибок external tasks, исправлена работа Task List с manual tasks и скорректирован подсчёт deployments в списках.

OpenBPM Studio

В OpenBPM Studio улучшена работа с BPMN-моделями, инспектором свойств, внешними задачами и шаблонами проектов. Релиз также включает исправления, повышающие стабильность плагина в IntelliJ IDEA и корректность генерации проектов.

Улучшения

В инспекторе добавлен режим сворачивания и разворачивания групп свойств, что делает работу с большими BPMN-моделями удобнее. Улучшена навигация между моделью, Java-кодом, external tasks и связанными элементами процесса.

Добавлена поддержка external tasks: Studio умеет генерировать обработчики external task, переходить к ним из модели и создавать Spring Boot-проекты для сценариев с внешним engine. Также добавлена поддержка проектов, построенных вокруг external tasks.

Расширены возможности работы с BPMN-проектами: добавлен сценарий деплоя бизнес-процесса, улучшены шаблоны проектов, обновлены версии OpenBPM Engine и Operaton. Добавлена поддержка IntelliJ IDEA 2026.1.

Описание плагина оптимизировано для лучшей видимости в JetBrains Marketplace.

Исправления ошибок

Исправлены ошибки в инспекторе свойств BPMN-элементов. Восстановлено редактирование свойств форм, отображение списков Task Listeners, Execution Listeners и пользовательских форм, а также изменение типа Task Listener. Исправлены проблемы с созданием Task Listeners и настройкой Call Activity, включая выбор типа вызываемого элемента и переход к связанному элементу.

Исправлены проблемы генерации и настройки проектов. Run configuration теперь корректно создаётся для новых проектов и на Linux, мастер выбора проекта корректно выбирает версию Java, а при создании Maven-проекта больше не дублируются web и security dependencies в pom.xml.

Устранены ошибки при изменении параметров подключения и конфигурации engine. Studio больше не добавляет лишние зависимости через wizard и не меняет порядок зависимостей без необходимости.

Повышена стабильность и аккуратность интерфейса. Исправлены конфликт с Jmix Studio, предупреждение о замедлении IDE, лишнее открытие документов, отображение длинного текста в полях ввода, отсутствие иконки плагина в заголовках окон и сохранение authentication data в файле приложений.