|
| 1 | +# **💥 BREAKING CHANGES** |
| 2 | + |
| 3 | +## Workflow Metadata **(Public Preview)** |
| 4 | + |
| 5 | +The built in `__temporal_workflow_metadata` query now uses `io.temporal.common.converter.RawValue` for the return type. This should help address issues where users data converters could not properly convert the `WorkflowMetadata` protobuf type. If you are using a custom data converter that does not support `RawValue` you will need to update it to support this type. |
| 6 | + |
| 7 | +Note: The built in Temporal `DefaultDataConverter` already supports `RawValue` and does not require any changes. |
| 8 | + |
| 9 | +## Nexus |
| 10 | + |
| 11 | +When an `ApplicationFailure` is returned from a Nexus operation handler the SDK will now translate it into an `INTERNAL` non-retryable error. Previously it was translated to a `BAD_REQUEST` error. This is to align with the behavior of Nexus operations in other SDKs. |
| 12 | + |
| 13 | +# **Highlights** |
| 14 | + |
| 15 | +### Nexus Operation Cancellation Types (Pre-release) |
| 16 | + |
| 17 | +Users can now specify the cancellation type when cancelling a Nexus operations from a workflow. This allows for more granular control over how Nexus operations are cancelled, and how the caller is notified of the cancellation. |
| 18 | + |
| 19 | +### Springboot (Pre-release) |
| 20 | + |
| 21 | +Temporal Java SDK Springboot integration now automatically registers Temporal interceptors. Interceptors will be registered in the order specified by the `@Order` annotation. |
| 22 | + |
| 23 | +### Automatic Poller Scaling (Pre-release) |
| 24 | + |
| 25 | +Users can now configure Workers to automatically scale the number of concurrent polls they make. To enable use `setWorkflowTaskPollersBehavior`, `setNexusTaskPollersBehavior`, and `setActivityTaskPollersBehavior` arguments of the `WorkerOptions.Builder` constructor to `PollerBehaviorAutoscaling`. You can expect fewer unnecessary polls during low load, and increased polls during high load when they can be used to increase task throughput. |
| 26 | + |
| 27 | +# What's Changed |
| 28 | + |
| 29 | +2025-04-21 - afb01831 - ARM64 build for Test Server (#2448) |
| 30 | +2025-04-23 - 08d60898 - Remove old workflow run operation token format (#2486) |
| 31 | +2025-04-23 - 0f9813c1 - Handle async completion in TestActivityEnvironment (#2487) |
| 32 | +2025-04-24 - 28077712 - Warn if root thread yields (#2483) |
| 33 | +2025-04-24 - 620eeaf1 - Update contrib (#2489) |
| 34 | +2025-04-25 - 74601564 - Add application err category (#2485) |
| 35 | +2025-04-29 - 3c9e819a - Add RawValue support (#2492) |
| 36 | +2025-04-30 - 04fe25ac - Fix NPE getting a non existent memo from a schedule. (#2497) |
| 37 | +2025-04-30 - f6d4d466 - Make sure user metadata is set on WorkflowExecutionStartedEvent (#2496) |
| 38 | +2025-05-01 - 537d99d2 - Add ApplicationFailure.Builder (#2495) |
| 39 | +2025-05-02 - 1feb16fa - Remove license in file (#2505) |
| 40 | +2025-05-02 - 2e1c89e1 - Add support for dynamics workflows to Springboot (#2506) |
| 41 | +2025-05-05 - 0d539ffc - Support WorkflowImplementationOptionsCustomizer (#2503) |
| 42 | +2025-05-05 - 0e8ac356 - Make @Profile annotation work (#2501) |
| 43 | +2025-05-05 - 8fbb0683 - Add interceptor support to springboot integration (#2500) |
| 44 | +2025-05-06 - 7a093846 - Update proto v1.49.0 (#2510) |
| 45 | +2025-05-07 - 4da87cc3 - Spring boot: fail creation if duplicate definitions detected (#2511) |
| 46 | +2025-05-07 - e5bb3a54 - Bump edge Java SDK test version (#2507) |
| 47 | +2025-05-08 - e7a7f0c3 - Set links in Nexus callback (#2513) |
| 48 | +2025-05-09 - 6c961a0a - Make CancellationScopeImpl more deterministic (#2512) |
| 49 | +2025-05-13 - b7c72a28 - Add num_pollers metric (#2514) |
| 50 | +2025-05-14 - 076f9819 - Add test coverage for starting a child workflow from a cancelled work… (#2516) |
| 51 | +2025-05-14 - 3f294e17 - Remove license check from contrib (#2522) |
| 52 | +2025-05-14 - 58a42000 - RequestIdInfo and links changes in test server (#2515) |
| 53 | +2025-05-14 - 70465938 - Add test coverage for cancellation of external workflow (#2517) |
| 54 | +2025-05-14 - b9458fc3 - Wire reason parameter in workflow cancellation request (#2519) |
| 55 | +2025-05-14 - e8d9fdaa - Add API to count workflows (#2518) |
| 56 | +2025-05-15 - d01c85b1 - Add AGENTS.md (#2527) |
| 57 | +2025-05-16 - 437c6126 - Fix Workflow.getWorkflowExecution for ExternalWorkflowStub (#2529) |
| 58 | +2025-05-16 - 95314a23 - Versioning Override support (#2530) |
| 59 | +2025-05-16 - e793db83 - Make asyncThrottlerExecutor use a daemon thread (#2528) |
| 60 | +2025-05-26 - 2d9b9063 - Fix newExternalWorkflowStub on a interfaces without a WorkflowMethod (#2531) |
| 61 | +2025-05-26 - f45c9470 - Cancel pending heartbeat when activity completes (#2526) |
| 62 | +2025-05-27 - 0b885071 - Bump some proto dep. (#2536) |
| 63 | +2025-05-27 - 5d64818a - Fix javadoc for ActivityExecutionContext.getHeartbeatDetails (#2525) |
| 64 | +2025-05-28 - 44d9abe9 - Set TemporalChangeVersion when workflow version is updated (#2464) |
| 65 | +2025-05-28 - 8613b18b - Fix nexus error translation (#2539) |
| 66 | +2025-06-02 - cea73d3f - Add support for calling `Workflow.getInfo` from query handler (#2541) |
| 67 | +2025-06-03 - ed2b8cc0 - Add an interceptor for listExecutions (#2524) |
| 68 | +2025-06-04 - 35386dae - Clear MDC context after each task (#2545) |
| 69 | +2025-06-04 - dc1e26db - Update cloud ops apis to the latest (#2544) |
| 70 | +2025-06-09 - 402392ce - Use link from start workflow request for Nexus operations (#2547) |
| 71 | +2025-06-10 - 02683902 - __temporal_workflow_metadata query responses should use "RawValue" (#2551) |
| 72 | +2025-06-10 - 746d3c31 - Issue #2057: parsing workflow id from WorkflowExecutionStartedEventAttributes (#2542) |
| 73 | +2025-06-11 - 4f313bb5 - Add poller autoscaling (#2535) |
| 74 | +2025-06-11 - bdc94f79 - Add native build to CI and MUSL build (#2490) |
| 75 | +2025-06-12 - 5978835f - Set deploymentOptions on other types of poll requests (#2555) |
| 76 | +2025-06-12 - a25f6ba5 - Fix ignoreDuplicateDefinitions to log only if we are ignoring (#2553) |
| 77 | +2025-06-12 - b581ede5 - Add poller autoscaling options for Springboot (#2554) |
| 78 | +2025-06-12 - e7e3fa6e - Implement Nexus operation cancellation types (#2520) |
| 79 | +2025-06-13 - 231c7242 - Don't fail Springboot if a bean is specified twice (#2558) |
| 80 | +2025-06-17 - 46866913 - Fix some dependency issues with NonRootBeanPostProcessor (#2556) |
| 81 | +2025-06-17 - a1208870 - Deprecate VersioningIntent (#2561) |
0 commit comments