camunda-bpm-platform
camunda-bpm-platform copied to clipboard
Update Groovy to version 4.0
Acceptance Criteria (Required on creation)
- Groovy in Camunda Platform is updated to latest patch of version 4.0
Hints
Links
- https://github.com/camunda/camunda-bpm-platform/issues/2770
Breakdown
- Bump to latest patch of Groovy 4.0
- Switch to the new maven coordinates from
org.codehaus.groovy
toorg.apache.groovy
(~100 hits in CE and EE, acrosspom.xml
,module.xml
,assembly.xml
, and two tests)- Tests:
- https://github.com/camunda/camunda-bpm-platform/blob/ca3589429c160a9d7c1445f267fb809988b9ad84/qa/integration-tests-engine/src/test/java/org/camunda/bpm/integrationtest/deployment/war/TestWarDeploymentWithProcessEnginePlugin.java#L54
- https://github.com/camunda/camunda-bpm-platform/blob/ca3589429c160a9d7c1445f267fb809988b9ad84/qa/integration-tests-engine/src/test/java/org/camunda/bpm/integrationtest/functional/scriptengine/GroovyPaClassImportTest.java#L50
- Note: occurrences of
org.codehaus.groovy
in qa test fixtures can be pinned to the previously used groovy version (same goes for test old engine:- https://github.com/camunda/camunda-bpm-platform/blob/ca3589429c160a9d7c1445f267fb809988b9ad84/qa/test-db-instance-migration/test-fixture-710/pom.xml#L53-L56
- Tests:
- Add a
groovy-dateutil
library to all distributions for backwards compatibility with the extension methods for thejava.util.Date
class. (As we expect the users are using the methods heavily.)- [Optional] Consider adding also
groovy-datetime
dependency for the new date classes. (An alternative will be to not add it and a user can choose whether to add it in case they need it.)
- [Optional] Consider adding also
-
Docs: Add a paragraph in the migration guide to
- describe the groovy update, the user must follow Groovy 2.5, 3.0, and 4.0 release notes to migrate their scripts
- explain how to downgrade if the user don’t manage to migrate their scripts.
- Support: Inform the Support team about made changes and discuss with them how to support customers who have issues migration their scripts.
### Optional follow ups
- [ ] https://github.com/camunda/camunda-bpm-platform/issues/3680
- [ ] https://github.com/camunda/camunda-bpm-platform/issues/3681
### Pull Requests
- [ ] https://github.com/camunda/camunda-bpm-platform/pull/4458
- [ ] https://github.com/camunda/camunda-bpm-platform-ee/pull/956
- [ ] https://github.com/camunda/camunda-docs-manual/pull/1667
Dev2QA handover
- [ ] Does this ticket need a QA test and the testing goals are not clear from the description? Add a Dev2QA handover comment
Assigning to decider (@ThorbenLindhauer) for scheduling.
We'll consider this in future product planning rounds, not scheduling immediately.
@yanavasileva should we add a point about informing and educating the support team? That could include discussing with them how to support customers that are struggling to migrate their scripts.
@ThorbenLindhauer, we should do that. I added Support
point to the breakdown to cover that aspect as part of the ticket.
Devtest
Tested locally with Tomcat build.
Run task that called a script that only works if `groovy-datetime` & `groovy-dateutils` are present in distro:
import java.text.SimpleDateFormat
import java.util.Calendar
import java.util.TimeZone
// Only works if DateUtils is present
def sdf = new SimpleDateFormat("yyyyMMdd HHmmss SSS")
def calendar = Calendar.getInstance(TimeZone.getTimeZone("UTC"))
calendar.time = sdf.parse("20180115 153256 001")
// Works if DateTime is present
import java.time.Duration
def duration = Duration.ofSeconds(10)
def longer = duration + 5
def shorter = duration - 5
assert longer.seconds == 15
assert shorter.seconds == 5
assert (++longer).seconds == 16
assert (--shorter).seconds == 4
Verified that all distro build contains groovy-datetime
& groovy-dateutils
locally
CE
jar tf ./distro/wildfly/modules/target/modules/org/apache/groovy/groovy-datetime/main/groovy-datetime-4.0.21.jar
META-INF/
META-INF/MANIFEST.MF
META-INF/groovy-release-info.properties
META-INF/groovy/
META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule
org/
org/apache/
org/apache/groovy/
org/apache/groovy/datetime/
org/apache/groovy/datetime/extensions/
org/apache/groovy/datetime/extensions/DateTimeExtensions$1.class
org/apache/groovy/datetime/extensions/DateTimeExtensions.class
org/apache/groovy/datetime/extensions/DateTimeStaticExtensions.class
META-INF/INDEX.LIST
jar tf distro/run/distro/target/camunda-bpm-run-7.22.0-SNAPSHOT.zip | grep groovy
configuration/userlib/groovy-jsr223-4.0.21.jar
configuration/userlib/groovy-4.0.21.jar
configuration/userlib/groovy-json-4.0.21.jar
configuration/userlib/groovy-xml-4.0.21.jar
configuration/userlib/groovy-templates-4.0.21.jar
configuration/userlib/groovy-dateutil-4.0.21.jar
configuration/userlib/groovy-datetime-4.0.21.jar
camunda-bpm-platform % jar tf distro/wildfly/distro/target/camunda-bpm-wildfly-7.22.0-SNAPSHOT.zip | grep groovy
modules/org/apache/groovy/
modules/org/apache/groovy/groovy-datetime/
modules/org/apache/groovy/groovy-datetime/main/
modules/org/apache/groovy/groovy-templates/
modules/org/apache/groovy/groovy-templates/main/
modules/org/apache/groovy/groovy-dateutil/
modules/org/apache/groovy/groovy-dateutil/main/
modules/org/apache/groovy/groovy/
modules/org/apache/groovy/groovy/main/
modules/org/apache/groovy/groovy-jsr223/
modules/org/apache/groovy/groovy-jsr223/main/
modules/org/apache/groovy/groovy-xml/
modules/org/apache/groovy/groovy-xml/main/
modules/org/apache/groovy/groovy-all/
modules/org/apache/groovy/groovy-all/main/
modules/org/apache/groovy/groovy-json/
modules/org/apache/groovy/groovy-json/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-datetime/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-datetime/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-templates/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-templates/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-dateutil/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-dateutil/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-jsr223/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-jsr223/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-xml/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-xml/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-json/
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-json/main/
modules/org/apache/groovy/groovy-datetime/main/groovy-datetime-4.0.21.jar
modules/org/apache/groovy/groovy-templates/main/groovy-templates-4.0.21.jar
modules/org/apache/groovy/groovy-dateutil/main/groovy-dateutil-4.0.21.jar
modules/org/apache/groovy/groovy/main/groovy-4.0.21.jar
modules/org/apache/groovy/groovy-jsr223/main/groovy-jsr223-4.0.21.jar
modules/org/apache/groovy/groovy-xml/main/groovy-xml-4.0.21.jar
modules/org/apache/groovy/groovy-all/main/groovy-4.0.21.jar
modules/org/apache/groovy/groovy-all/main/groovy-xml-4.0.21.jar
modules/org/apache/groovy/groovy-all/main/groovy-datetime-4.0.21.jar
modules/org/apache/groovy/groovy-all/main/groovy-dateutil-4.0.21.jar
modules/org/apache/groovy/groovy-all/main/groovy-templates-4.0.21.jar
modules/org/apache/groovy/groovy-all/main/groovy-json-4.0.21.jar
modules/org/apache/groovy/groovy-all/main/module.xml
modules/org/apache/groovy/groovy-all/main/groovy-jsr223-4.0.21.jar
modules/org/apache/groovy/groovy-json/main/groovy-json-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-datetime/main/groovy-datetime-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-templates/main/groovy-templates-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-dateutil/main/groovy-dateutil-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy/main/groovy-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-jsr223/main/groovy-jsr223-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-xml/main/groovy-xml-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-xml-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-datetime-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-dateutil-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-templates-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-json-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/module.xml
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-jsr223-4.0.21.jar
server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-json/main/groovy-json-4.0.21.jar
lib/groovy-4.0.21.jar
lib/groovy-jsr223-4.0.21.jar
lib/groovy-json-4.0.21.jar
lib/groovy-xml-4.0.21.jar
lib/groovy-templates-4.0.21.jar
lib/groovy-dateutil-4.0.21.jar
lib/groovy-datetime-4.0.21.jar
jar tf distro/wildfly26/modules/target/camunda-wildfly26-modules.jar | grep groovy
org/apache/groovy/
org/apache/groovy/groovy-datetime/
org/apache/groovy/groovy-datetime/main/
org/apache/groovy/groovy-templates/
org/apache/groovy/groovy-templates/main/
org/apache/groovy/groovy-dateutil/
org/apache/groovy/groovy-dateutil/main/
org/apache/groovy/groovy/
org/apache/groovy/groovy/main/
org/apache/groovy/groovy-jsr223/
org/apache/groovy/groovy-jsr223/main/
org/apache/groovy/groovy-xml/
org/apache/groovy/groovy-xml/main/
org/apache/groovy/groovy-all/
org/apache/groovy/groovy-all/main/
org/apache/groovy/groovy-json/
org/apache/groovy/groovy-json/main/
org/apache/groovy/groovy-datetime/main/groovy-datetime-4.0.21.jar
org/apache/groovy/groovy-templates/main/groovy-templates-4.0.21.jar
org/apache/groovy/groovy-dateutil/main/groovy-dateutil-4.0.21.jar
org/apache/groovy/groovy/main/groovy-4.0.21.jar
org/apache/groovy/groovy-jsr223/main/groovy-jsr223-4.0.21.jar
org/apache/groovy/groovy-xml/main/groovy-xml-4.0.21.jar
org/apache/groovy/groovy-all/main/groovy-4.0.21.jar
org/apache/groovy/groovy-all/main/groovy-xml-4.0.21.jar
org/apache/groovy/groovy-all/main/groovy-datetime-4.0.21.jar
org/apache/groovy/groovy-all/main/groovy-dateutil-4.0.21.jar
org/apache/groovy/groovy-all/main/groovy-templates-4.0.21.jar
org/apache/groovy/groovy-all/main/groovy-json-4.0.21.jar
org/apache/groovy/groovy-all/main/module.xml
org/apache/groovy/groovy-all/main/groovy-jsr223-4.0.21.jar
org/apache/groovy/groovy-json/main/groovy-json-4.0.21.jar
jar tf distro/tomcat/distro/target/camunda-bpm-tomcat-7.22.0-SNAPSHOT.zip | grep groovy
server/apache-tomcat-9.0.89/lib/groovy-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-jsr223-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-json-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-xml-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-templates-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-dateutil-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-datetime-4.0.21.jar
lib/groovy-4.0.21.jar
lib/groovy-jsr223-4.0.21.jar
lib/groovy-json-4.0.21.jar
lib/groovy-xml-4.0.21.jar
lib/groovy-templates-4.0.21.jar
lib/groovy-dateutil-4.0.21.jar
lib/groovy-datetime-4.0.21.jar
EE
unzip -l distro/websphere/distro/target/camunda-ee-ibm-was-7.22.0-SNAPSHOT.zip | grep groovy
7601299 04-06-2024 06:37 server/lib/groovy-4.0.21.jar
16922 06-24-2024 14:49 server/lib/groovy-jsr223-4.0.21.jar
130012 04-06-2024 06:50 server/lib/groovy-json-4.0.21.jar
212574 04-06-2024 06:59 server/lib/groovy-xml-4.0.21.jar
92239 06-24-2024 14:49 server/lib/groovy-templates-4.0.21.jar
7886 04-06-2024 06:46 server/lib/groovy-dateutil-4.0.21.jar
15580 06-24-2024 14:51 server/lib/groovy-datetime-4.0.21.jar
jar tf distro/tomcat/distro/target/camunda-bpm-ee-tomcat-7.22.0-SNAPSHOT.zip | grep groovy
server/apache-tomcat-9.0.89/lib/groovy-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-jsr223-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-json-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-xml-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-templates-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-dateutil-4.0.21.jar
server/apache-tomcat-9.0.89/lib/groovy-datetime-4.0.21.jar
lib/groovy-4.0.21.jar
lib/groovy-jsr223-4.0.21.jar
lib/groovy-json-4.0.21.jar
lib/groovy-xml-4.0.21.jar
lib/groovy-templates-4.0.21.jar
lib/groovy-dateutil-4.0.21.jar
lib/groovy-datetime-4.0.21.jar
unzip -l distro/wildfly/distro/target/camunda-bpm-ee-wildfly-7.22.0-SNAPSHOT.zip | grep groovy
0 06-27-2024 08:40 modules/org/apache/groovy/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-datetime/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-datetime/main/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-templates/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-templates/main/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-dateutil/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-dateutil/main/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy/main/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-jsr223/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-jsr223/main/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-xml/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-xml/main/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-json/
0 06-27-2024 08:40 modules/org/apache/groovy/groovy-json/main/
15580 06-27-2024 08:40 modules/org/apache/groovy/groovy-datetime/main/groovy-datetime-4.0.21.jar
92239 06-27-2024 08:40 modules/org/apache/groovy/groovy-templates/main/groovy-templates-4.0.21.jar
7886 06-27-2024 08:40 modules/org/apache/groovy/groovy-dateutil/main/groovy-dateutil-4.0.21.jar
7601299 06-27-2024 08:40 modules/org/apache/groovy/groovy/main/groovy-4.0.21.jar
16922 06-27-2024 08:40 modules/org/apache/groovy/groovy-jsr223/main/groovy-jsr223-4.0.21.jar
212574 06-27-2024 08:40 modules/org/apache/groovy/groovy-xml/main/groovy-xml-4.0.21.jar
7601299 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/groovy-4.0.21.jar
212574 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/groovy-xml-4.0.21.jar
15580 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/groovy-datetime-4.0.21.jar
7886 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/groovy-dateutil-4.0.21.jar
92239 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/groovy-templates-4.0.21.jar
130012 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/groovy-json-4.0.21.jar
644 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/module.xml
16922 06-27-2024 08:40 modules/org/apache/groovy/groovy-all/main/groovy-jsr223-4.0.21.jar
130012 06-27-2024 08:40 modules/org/apache/groovy/groovy-json/main/groovy-json-4.0.21.jar
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-datetime/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-datetime/main/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-templates/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-templates/main/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-dateutil/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-dateutil/main/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy/main/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-jsr223/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-jsr223/main/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-xml/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-xml/main/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-json/
0 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-json/main/
15580 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-datetime/main/groovy-datetime-4.0.21.jar
92239 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-templates/main/groovy-templates-4.0.21.jar
7886 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-dateutil/main/groovy-dateutil-4.0.21.jar
7601299 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy/main/groovy-4.0.21.jar
16922 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-jsr223/main/groovy-jsr223-4.0.21.jar
212574 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-xml/main/groovy-xml-4.0.21.jar
7601299 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-4.0.21.jar
212574 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-xml-4.0.21.jar
15580 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-datetime-4.0.21.jar
7886 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-dateutil-4.0.21.jar
92239 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-templates-4.0.21.jar
130012 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-json-4.0.21.jar
644 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/module.xml
16922 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-all/main/groovy-jsr223-4.0.21.jar
130012 06-27-2024 08:40 server/wildfly-31.0.0.Final/modules/org/apache/groovy/groovy-json/main/groovy-json-4.0.21.jar
7601299 04-06-2024 06:37 lib/groovy-4.0.21.jar
16922 06-24-2024 14:49 lib/groovy-jsr223-4.0.21.jar
130012 04-06-2024 06:50 lib/groovy-json-4.0.21.jar
212574 04-06-2024 06:59 lib/groovy-xml-4.0.21.jar
92239 06-24-2024 14:49 lib/groovy-templates-4.0.21.jar
7886 04-06-2024 06:46 lib/groovy-dateutil-4.0.21.jar
15580 06-24-2024 14:51 lib/groovy-datetime-4.0.21.jar
unzip -l distro/wls/distro/target/camunda-ee-oracle-wls-7.22.0-SNAPSHOT.zip | grep groovy
7601299 04-06-2024 06:37 modules/lib/groovy-4.0.21.jar
16922 06-24-2024 14:49 modules/lib/groovy-jsr223-4.0.21.jar
130012 04-06-2024 06:50 modules/lib/groovy-json-4.0.21.jar
212574 04-06-2024 06:59 modules/lib/groovy-xml-4.0.21.jar
92239 06-24-2024 14:49 modules/lib/groovy-templates-4.0.21.jar
7886 04-06-2024 06:46 modules/lib/groovy-dateutil-4.0.21.jar
15580 06-24-2024 14:51 modules/lib/groovy-datetime-4.0.21.jar
Will run smoke test on all distro after PR is merged.
Hi @gbetances089 QA Note: This task changes the version of Groovy libraries that we ship with Camunda.
2 scenarios that needs extra attention during testing:
Test backwards compatibility with the extension methods for the java.util.Date class. groovy-dateutil
library is added for this purpose.
Can use this groovyTest.bpmn.txt diagram for testing. (Github does not let me upload *.pbmn so I added a .txt suffix)
Are users able to downgrade to Groovy 2.4.4 by replacing the Groovy libraries?
To run legacy scripts users should be able to replace Groovy 4.0.x jar-s with Groovy 2.4.4 as it is explained in the migration guide You can use this bpmn shouldFailGroovy4.bpmn.txt for testing, it fails with groovy4 but works with Groovy 2.4.4.