Skip to content

Commit e1fa316

Browse files
committed
Update 8.0.0 release notes in readme.html
1 parent 97849be commit e1fa316

1 file changed

Lines changed: 58 additions & 2 deletions

File tree

distro/src/readme.html

Lines changed: 58 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,17 @@ <h1>Flowable Release Notes</h1>
3030

3131
<h3>Release Notes - Flowable - 8.0.0</h3>
3232

33+
<h4>Breaking Changes</h4>
34+
<ul>
35+
<li>Upgrade to Spring Framework 7 and Spring Boot 4. There is no support for Spring Boot 3 anymore.</li>
36+
<li>Upgrade to Jackson 3 (see details below). Jackson 2 is still supported via a compatibility layer</li>
37+
<li>Remove JUnit 3 and JUnit 4 testing support (deprecated in 7.2.0). Use JUnit 5 (Jupiter) exclusively</li>
38+
</ul>
39+
40+
<h4>New Features</h4>
3341
<ul>
3442
<li>
35-
The method `stream()` can be used to obtain a <code>java.util.stream.Stream</code> from a collection.
43+
The method <code>stream()</code> can be used to obtain a <code>java.util.stream.Stream</code> from a collection.
3644
</li>
3745
<li>
3846
Lambda expressions can be used in expressions. e.g. if you have a transient list of customers you can do something like:
@@ -51,6 +59,48 @@ <h3>Release Notes - Flowable - 8.0.0</h3>
5159
Date properties e.g., Process Instance start time will be returned as an ISO 8601 in the UTC timezone.
5260
E.g., if the start time was returned as <code>2025-09-24T09:58:12.609+02:00</code> now it is returned as <code>2025-09-24T07:58:12.609Z</code>.
5361
</li>
62+
<li>Expressions can now access some of the definition information in expressions resolved during deployment. e.g. in Start Timer expression <code>${variableContainer.definitionKey}</code> to access the definition key</li>
63+
<li>Support Java Records in Expressions</li>
64+
<li>Support for updating more task properties when doing case and process instance migration</li>
65+
<li>Case and process instance migration validation is now available in the REST API</li>
66+
<li>Option to automatically create plan item instances for new plan items during case instance migration</li>
67+
<li>Added <code>endUserId</code> for historic process/case instances and <code>state</code> for historic process instances</li>
68+
<li>Added case and process end interceptor support</li>
69+
<li>Dispatch events when updating the business status of a case or process</li>
70+
<li>Added hookpoints to event registry for event payload types</li>
71+
<li>Added option to disable history persistence when executing DMN decisions</li>
72+
</ul>
73+
74+
<h4>Performance Improvements</h4>
75+
<ul>
76+
<li>Improve Expression coercion performance</li>
77+
<li>Long String variables now store a cached value, avoiding repeated deserialization</li>
78+
<li>Reduce unnecessary <code>ObjectMapper</code> instance creation - reuse the one from engine configuration</li>
79+
</ul>
80+
81+
<h4>Bug Fixes</h4>
82+
<ul>
83+
<li>Fix issue with multiple case reactivations with a parent case instance</li>
84+
<li>Fix NPE when having two sentries, and one doesn't have an <code>ifPart</code></li>
85+
<li>Fix case / process instance ended invoked twice when undeploying deeply nested app</li>
86+
<li>Fix issue with moving parallel multi-instance activities to a single activity</li>
87+
<li>Ensure that multiple character events for the same element are handled correctly in XML parsing</li>
88+
<li>Make sure that <code>BeanELResolver</code> and DMN Expression resolution propagates the exception cause</li>
89+
<li>Avoid 'Invalid reference in diagram interchange definition' warning message in logs when plan items are part of a plan fragment</li>
90+
<li>Unlock exclusive jobs when unacquiring all jobs of a worker</li>
91+
<li>Unacquiring external worker job should unlock the exclusive scope if the external worker job is exclusive</li>
92+
<li>Address security concerns raised via GitHub issue</li>
93+
</ul>
94+
95+
<h4>Jackson 3</h4>
96+
<p>
97+
<strong>Important:</strong> If you have scripts or expressions that call methods on a <code>JsonNode</code>, you need to carefully check if these work with Jackson 3,
98+
as many method signatures have changed (see details below). If you are unsure, we recommend starting with Jackson 2 configured first
99+
(<code>flowable.variable-json-mapper=jackson2</code>), and then testing for an upgrade to Jackson 3 over time.
100+
We do recommend looking into upgrading to Jackson 3, since Jackson 2 will eventually stop receiving updates.
101+
See <a href="https://github.com/FasterXML/jackson/wiki/Jackson-Releases">Jackson Releases</a> for the latest support information.
102+
</p>
103+
<ul>
54104
<li>
55105
Jackson 3 is used for Flowable internal json manipulation.
56106
There is still support for Jackson 2 variables.
@@ -96,9 +146,15 @@ <h3>Release Notes - Flowable - 8.0.0</h3>
96146
<li>When using <code>stringValue</code> on a non <code>StringNode</code> or <code>NullNode</code> it would fail, in Jackson 2 it would return <code>null</code>.</li>
97147
<li>When using <code>asString</code> on a <code>ObjectNode</code> or <code>ArrayNode</code> it would fail, in Jackson 2 it would return an empty string.</li>
98148
</ul>
99-
100149
</li>
101150
</ul>
151+
152+
<h4>Dependency Upgrades</h4>
153+
<ul>
154+
<li>Upgrade to Spring Framework 7 / Spring Boot 4</li>
155+
<li>Upgrade to Jackson 3 (with Jackson 2 compatibility)</li>
156+
<li>Various other dependency updates</li>
157+
</ul>
102158
<h3>Release Notes - Flowable - 7.2.0</h3>
103159

104160
<ul>

0 commit comments

Comments
 (0)