Skip to content

Commit

Permalink
fix assume
Browse files Browse the repository at this point in the history
  • Loading branch information
Quinn-With-Two-Ns committed Dec 6, 2024
1 parent 639cc8f commit 8d7b91d
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 2 deletions.
44 changes: 44 additions & 0 deletions releases/v1.27.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# **💥 BREAKING CHANGES**

## Update With Start **(Pre-release)**

### WorkflowClient

- `WorkflowClient.updateWithStart` has been renamed to `WorkflowClient.startUpdateWithStart`.
- Instead of taking the workflow method, workflow arguments and a `UpdateWithStartWorkflowOperation` , `WorkflowClient.startUpdateWithStart` now takes the update method, update arguments and a `WithStartWorkflowOperation` . `WithStartWorkflowOperation` holds to the workflow method and workflow arguments to be executed together with the update request.

### WorkflowStub

- `WorkflowStub.updateWithStart` has been renamed to `WorkflowStub.startUpdateWithStart`
- `WorkflowStub.startUpdateWithStart` now just takes the `UpdateOptions`, update arguments and workflow arguments

## Update **(Public Preview)**

- The SDK now preforms more rigorous type validation when registering a Workflow with an `@UpdateValidatorMethod` to make sure the type parameters match the linked `@UpdateMethod`
- The SDK will no longer sometimes throw `WorkflowUpdateException` when calling `WorkflowStub.startUpdate` if the update is rejected. `WorkflowUpdateException` is now consistently throw when getting the result of the update
- `UpdateOptionsBuilder` no longer generates a update ID when built. Now a unique UUID is generated when the options are used. This is similar to how `WorkflowOptions` and workflow ID work.

## Nexus **(Public Preview)**

- Workflow started by a Nexus operation now require the Workflow ID to be specified
- The SDK now preforms more rigorous type validation when registering a Nexus Service to make sure it implements the service properly
- All header maps for Nexus operations are now properly case-insensitive.

# **Highlights**

## Virtual Threads **(Public Preview)**

The Java SDK now has experimental support for virtual threads when using a JVM with a version of 21 or higher. Virtual threads can be used inside workflows by enabling `WorkerFactoryOptions.setUsingVirtualWorkflowThreads` . Users can also use virtual threads for task processing in a worker by enabling `WorkerOptions.setUsingVirtualThreads` .

## Nexus **(Public Preview)**

`WorkerInterceptor` now has support for intercepting Nexus workers.

## Update **(Public Preview)**

`WorkflowClient` now has a set of static methods called `startUpdate` that can be used to start an update, but not immediately wait on the result. This is a type safe analog to `WorkflowStub.startUpdate`.

## Workflow Metadata **(Public Preview)**

- The Java SDK now exposes a fixed summary option for local and normal activities.
- The Java SDK now support `__temporal_workflow_metadata` query, this query allows users to get details about a workflow like its’ current description and what signal, update, and query handlers are registered
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

package io.temporal.workflow.nexus;

import static org.junit.Assume.assumeTrue;
import static org.junit.Assume.assumeFalse;

import io.nexusrpc.handler.OperationHandler;
import io.nexusrpc.handler.OperationImpl;
Expand Down Expand Up @@ -51,7 +51,7 @@ public class CancelAsyncOperationTest {

@Before
public void checkRealServer() {
assumeTrue(
assumeFalse(
"Test flakes on real server because of delays in the Nexus Registry",
SDKTestWorkflowRule.useExternalService);
}
Expand Down

0 comments on commit 8d7b91d

Please sign in to comment.