diff --git a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfig.java b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfig.java index f50aced725..30dfa9b436 100644 --- a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfig.java +++ b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfig.java @@ -3,7 +3,6 @@ import com.fasterxml.jackson.databind.ObjectReader; import com.fasterxml.jackson.databind.ObjectWriter; import com.fasterxml.jackson.dataformat.toml.TomlMapper; -import io.temporal.common.Experimental; import java.io.*; import java.nio.file.Paths; import java.util.HashMap; @@ -21,7 +20,6 @@ *
  • Linux/other: $HOME/.config/temporalio/temporal.toml * */ -@Experimental public class ClientConfig { /** Creates a new builder to build a {@link ClientConfig}. */ public static Builder newBuilder() { diff --git a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigProfile.java b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigProfile.java index b051602791..3257fbfc00 100644 --- a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigProfile.java +++ b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigProfile.java @@ -5,7 +5,6 @@ import io.grpc.netty.shaded.io.netty.handler.ssl.SslContextBuilder; import io.grpc.netty.shaded.io.netty.handler.ssl.util.InsecureTrustManagerFactory; import io.temporal.client.WorkflowClientOptions; -import io.temporal.common.Experimental; import io.temporal.serviceclient.WorkflowServiceStubsOptions; import java.io.ByteArrayInputStream; import java.io.IOException; @@ -16,7 +15,6 @@ import java.util.Objects; /** ClientConfigProfile is profile-level configuration for a client. */ -@Experimental public class ClientConfigProfile { /** Creates a new builder to build a {@link ClientConfigProfile}. */ public static Builder newBuilder() { diff --git a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigTLS.java b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigTLS.java index 5f7f1954f7..d2fd0ba657 100644 --- a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigTLS.java +++ b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigTLS.java @@ -1,11 +1,9 @@ package io.temporal.envconfig; -import io.temporal.common.Experimental; import java.util.Arrays; import java.util.Objects; /** TLS configuration for a client. */ -@Experimental public class ClientConfigTLS { /** Create a builder for {@link ClientConfigTLS}. */ public static Builder newBuilder() { diff --git a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigToml.java b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigToml.java index d4ead9baed..5bb8782572 100644 --- a/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigToml.java +++ b/temporal-envconfig/src/main/java/io/temporal/envconfig/ClientConfigToml.java @@ -3,7 +3,6 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import io.grpc.Metadata; -import io.temporal.common.Experimental; import java.nio.charset.StandardCharsets; import java.util.HashMap; import java.util.Map; @@ -15,7 +14,6 @@ *

    These are package private, use {@link ClientConfig} and {@link ClientConfigProfile} to load * and work with client configs. */ -@Experimental class ClientConfigToml { @JsonInclude(JsonInclude.Include.NON_EMPTY) static class TomlClientConfig { diff --git a/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigOptions.java b/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigOptions.java index 44eb90e137..c1ad724efb 100644 --- a/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigOptions.java +++ b/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigOptions.java @@ -1,10 +1,8 @@ package io.temporal.envconfig; -import io.temporal.common.Experimental; import java.util.Map; /** Options for loading a client config via {@link ClientConfig#load(LoadClientConfigOptions)} */ -@Experimental public class LoadClientConfigOptions { /** Create a builder for {@link LoadClientConfigOptions}. */ public static Builder newBuilder() { diff --git a/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigProfileOptions.java b/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigProfileOptions.java index 64316abedd..a11059f95f 100644 --- a/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigProfileOptions.java +++ b/temporal-envconfig/src/main/java/io/temporal/envconfig/LoadClientConfigProfileOptions.java @@ -1,13 +1,11 @@ package io.temporal.envconfig; -import io.temporal.common.Experimental; import java.util.Map; /** * Options for loading a client config profile via {@link * ClientConfigProfile#load(LoadClientConfigProfileOptions)} */ -@Experimental public class LoadClientConfigProfileOptions { /** Create a builder for {@link LoadClientConfigProfileOptions}. */ public static Builder newBuilder() { diff --git a/temporal-sdk/src/main/java/io/temporal/client/BuildIdOperation.java b/temporal-sdk/src/main/java/io/temporal/client/BuildIdOperation.java index 3e3dc9782f..14a983d26e 100644 --- a/temporal-sdk/src/main/java/io/temporal/client/BuildIdOperation.java +++ b/temporal-sdk/src/main/java/io/temporal/client/BuildIdOperation.java @@ -11,6 +11,7 @@ *

    See each public static method to learn about and construct the available operations. */ @Experimental +@Deprecated public abstract class BuildIdOperation { private BuildIdOperation() {} diff --git a/temporal-sdk/src/main/java/io/temporal/client/WorkerBuildIdVersionSets.java b/temporal-sdk/src/main/java/io/temporal/client/WorkerBuildIdVersionSets.java index 8888e2da75..02af9ca2c4 100644 --- a/temporal-sdk/src/main/java/io/temporal/client/WorkerBuildIdVersionSets.java +++ b/temporal-sdk/src/main/java/io/temporal/client/WorkerBuildIdVersionSets.java @@ -7,8 +7,14 @@ import java.util.Optional; import java.util.stream.Collectors; -/** Represents the sets of compatible Build Ids associated with a particular task queue. */ +/** + * Represents the sets of compatible Build Ids associated with a particular task queue. + * + * @deprecated Worker Versioning is now deprecated please migrate to the Worker Deployment API. + */ @Experimental +@Deprecated public class WorkerBuildIdVersionSets { /** Represents a set of Build Ids which are compatible with one another. */ diff --git a/temporal-sdk/src/main/java/io/temporal/client/WorkflowClient.java b/temporal-sdk/src/main/java/io/temporal/client/WorkflowClient.java index cb38fccdf1..f73ffc92f2 100644 --- a/temporal-sdk/src/main/java/io/temporal/client/WorkflowClient.java +++ b/temporal-sdk/src/main/java/io/temporal/client/WorkflowClient.java @@ -345,8 +345,11 @@ WorkflowStub newUntypedWorkflowStub( * @param operation The operation to perform. See {@link BuildIdOperation} for more. * @throws WorkflowServiceException for any failures including networking and service availability * issues. + * @deprecated Worker Versioning is now deprecated please migrate to the Worker Deployment API. */ @Experimental + @Deprecated void updateWorkerBuildIdCompatability( @Nonnull String taskQueue, @Nonnull BuildIdOperation operation); @@ -357,8 +360,11 @@ void updateWorkerBuildIdCompatability( * @return The version set(s) for the task queue. * @throws WorkflowServiceException for any failures including networking and service availability * issues. + * @deprecated Worker Versioning is now deprecated please migrate to the Worker Deployment API. */ @Experimental + @Deprecated WorkerBuildIdVersionSets getWorkerBuildIdCompatability(@Nonnull String taskQueue); /** @@ -373,8 +379,11 @@ void updateWorkerBuildIdCompatability( * @return The reachability information. * @throws WorkflowServiceException for any failures including networking and service availability * issues. + * @deprecated Worker Versioning is now deprecated please migrate to the Worker Deployment API. */ @Experimental + @Deprecated WorkerTaskReachability getWorkerTaskReachability( @Nonnull Iterable buildIds, @Nonnull Iterable taskQueues, diff --git a/temporal-sdk/src/main/java/io/temporal/client/WorkflowClientInternalImpl.java b/temporal-sdk/src/main/java/io/temporal/client/WorkflowClientInternalImpl.java index 9a4b7a114c..76c55d3c5b 100644 --- a/temporal-sdk/src/main/java/io/temporal/client/WorkflowClientInternalImpl.java +++ b/temporal-sdk/src/main/java/io/temporal/client/WorkflowClientInternalImpl.java @@ -383,6 +383,7 @@ public WorkflowExecutionHistory fetchHistory(@Nonnull String workflowId, @Nullab workflowId); } + @SuppressWarnings("deprecation") @Override public void updateWorkerBuildIdCompatability( @Nonnull String taskQueue, @Nonnull BuildIdOperation operation) { @@ -394,6 +395,7 @@ public void updateWorkerBuildIdCompatability( genericClient.updateWorkerBuildIdCompatability(reqBuilder.build()); } + @SuppressWarnings("deprecation") @Override public WorkerBuildIdVersionSets getWorkerBuildIdCompatability(@Nonnull String taskQueue) { GetWorkerBuildIdCompatibilityRequest req = @@ -405,6 +407,7 @@ public WorkerBuildIdVersionSets getWorkerBuildIdCompatability(@Nonnull String ta return new WorkerBuildIdVersionSets(resp); } + @SuppressWarnings("deprecation") @Override public WorkerTaskReachability getWorkerTaskReachability( @Nonnull Iterable buildIds, diff --git a/temporal-sdk/src/main/java/io/temporal/client/WorkflowOptions.java b/temporal-sdk/src/main/java/io/temporal/client/WorkflowOptions.java index 7bbcd7543e..1747e888f7 100644 --- a/temporal-sdk/src/main/java/io/temporal/client/WorkflowOptions.java +++ b/temporal-sdk/src/main/java/io/temporal/client/WorkflowOptions.java @@ -477,7 +477,6 @@ public Builder setPriority(Priority priority) { } /** Sets the versioning override to use when starting this workflow. */ - @Experimental public Builder setVersioningOverride(VersioningOverride versioningOverride) { this.versioningOverride = versioningOverride; return this; @@ -737,7 +736,6 @@ public Priority getPriority() { return priority; } - @Experimental public VersioningOverride getVersioningOverride() { return versioningOverride; } diff --git a/temporal-sdk/src/main/java/io/temporal/common/VersioningBehavior.java b/temporal-sdk/src/main/java/io/temporal/common/VersioningBehavior.java index 79cfcc3e7a..19186da802 100644 --- a/temporal-sdk/src/main/java/io/temporal/common/VersioningBehavior.java +++ b/temporal-sdk/src/main/java/io/temporal/common/VersioningBehavior.java @@ -3,7 +3,6 @@ import io.temporal.worker.WorkerDeploymentOptions; /** Specifies when a workflow might move from a worker of one Build Id to another. */ -@Experimental public enum VersioningBehavior { /** * An unspecified versioning behavior. By default, workers opting into worker versioning will be diff --git a/temporal-sdk/src/main/java/io/temporal/common/VersioningOverride.java b/temporal-sdk/src/main/java/io/temporal/common/VersioningOverride.java index f20f3da4d9..4e0b37ada6 100644 --- a/temporal-sdk/src/main/java/io/temporal/common/VersioningOverride.java +++ b/temporal-sdk/src/main/java/io/temporal/common/VersioningOverride.java @@ -3,7 +3,6 @@ import javax.annotation.Nonnull; /** Represents the override of a worker's versioning behavior for a workflow execution. */ -@Experimental public abstract class VersioningOverride { private VersioningOverride() {} diff --git a/temporal-sdk/src/main/java/io/temporal/common/WorkerDeploymentVersion.java b/temporal-sdk/src/main/java/io/temporal/common/WorkerDeploymentVersion.java index be2a8657cc..a5ac60fc12 100644 --- a/temporal-sdk/src/main/java/io/temporal/common/WorkerDeploymentVersion.java +++ b/temporal-sdk/src/main/java/io/temporal/common/WorkerDeploymentVersion.java @@ -5,7 +5,6 @@ import javax.annotation.Nullable; /** Represents the version of a specific worker deployment. */ -@Experimental public class WorkerDeploymentVersion { private final String deploymentName; private final String buildId; diff --git a/temporal-sdk/src/main/java/io/temporal/common/metadata/POJOWorkflowImplMetadata.java b/temporal-sdk/src/main/java/io/temporal/common/metadata/POJOWorkflowImplMetadata.java index 67ecd40062..8a7e232c16 100644 --- a/temporal-sdk/src/main/java/io/temporal/common/metadata/POJOWorkflowImplMetadata.java +++ b/temporal-sdk/src/main/java/io/temporal/common/metadata/POJOWorkflowImplMetadata.java @@ -230,7 +230,6 @@ public List getUpdateValidatorMethods() { * @throws RuntimeException if the method is not found on the implementation class or is not a * workflow method. */ - @Experimental @Nullable public static VersioningBehavior getVersioningBehaviorForMethod( Class implementationClass, POJOWorkflowMethodMetadata workflowMethod) { diff --git a/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClient.java b/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClient.java index 96d1db3b20..1b7bf57c94 100644 --- a/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClient.java +++ b/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClient.java @@ -62,6 +62,7 @@ DescribeWorkflowExecutionResponse describeWorkflowExecution( DescribeWorkflowExecutionRequest request); @Experimental + @Deprecated UpdateWorkerBuildIdCompatibilityResponse updateWorkerBuildIdCompatability( UpdateWorkerBuildIdCompatibilityRequest request); @@ -70,9 +71,11 @@ ExecuteMultiOperationResponse executeMultiOperation( ExecuteMultiOperationRequest request, @Nonnull Deadline deadline); @Experimental + @Deprecated GetWorkerBuildIdCompatibilityResponse getWorkerBuildIdCompatability( GetWorkerBuildIdCompatibilityRequest req); @Experimental + @Deprecated GetWorkerTaskReachabilityResponse GetWorkerTaskReachability(GetWorkerTaskReachabilityRequest req); } diff --git a/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClientImpl.java b/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClientImpl.java index 044894d74b..cd33a532a3 100644 --- a/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClientImpl.java +++ b/temporal-sdk/src/main/java/io/temporal/internal/client/external/GenericWorkflowClientImpl.java @@ -364,6 +364,7 @@ public CompletableFuture pollUpdateAsync( new GrpcRetryer.GrpcRetryerOptions(DefaultStubLongPollRpcRetryOptions.INSTANCE, deadline)); } + @SuppressWarnings("deprecation") @Override public UpdateWorkerBuildIdCompatibilityResponse updateWorkerBuildIdCompatability( UpdateWorkerBuildIdCompatibilityRequest request) { @@ -376,6 +377,7 @@ public UpdateWorkerBuildIdCompatibilityResponse updateWorkerBuildIdCompatability grpcRetryerOptions); } + @SuppressWarnings("deprecation") @Override public GetWorkerBuildIdCompatibilityResponse getWorkerBuildIdCompatability( GetWorkerBuildIdCompatibilityRequest req) { @@ -388,6 +390,7 @@ public GetWorkerBuildIdCompatibilityResponse getWorkerBuildIdCompatability( grpcRetryerOptions); } + @SuppressWarnings("deprecation") @Override public GetWorkerTaskReachabilityResponse GetWorkerTaskReachability( GetWorkerTaskReachabilityRequest req) { diff --git a/temporal-sdk/src/main/java/io/temporal/worker/WorkerDeploymentOptions.java b/temporal-sdk/src/main/java/io/temporal/worker/WorkerDeploymentOptions.java index 829cf4ce33..791e01438a 100644 --- a/temporal-sdk/src/main/java/io/temporal/worker/WorkerDeploymentOptions.java +++ b/temporal-sdk/src/main/java/io/temporal/worker/WorkerDeploymentOptions.java @@ -1,13 +1,11 @@ package io.temporal.worker; import com.google.common.base.Preconditions; -import io.temporal.common.Experimental; import io.temporal.common.VersioningBehavior; import io.temporal.common.WorkerDeploymentVersion; import java.util.Objects; /** Options for configuring the Worker Versioning feature. */ -@Experimental public class WorkerDeploymentOptions { public static Builder newBuilder() { return new Builder(); diff --git a/temporal-sdk/src/main/java/io/temporal/worker/WorkerOptions.java b/temporal-sdk/src/main/java/io/temporal/worker/WorkerOptions.java index 966760a3e2..d71ed9af03 100644 --- a/temporal-sdk/src/main/java/io/temporal/worker/WorkerOptions.java +++ b/temporal-sdk/src/main/java/io/temporal/worker/WorkerOptions.java @@ -376,6 +376,9 @@ public Builder setDisableEagerExecution(boolean disableEagerExecution) { * will only receive tasks which it is compatible with. * *

    Defaults to false + * + * @deprecated Worker Versioning is now deprecated please migrate to the Worker Deployment API. */ @Experimental @Deprecated @@ -389,6 +392,9 @@ public Builder setUseBuildIdForVersioning(boolean useBuildIdForVersioning) { * code the worker uses for workflows, activities, and interceptors. * *

    A Build Id must be set if {@link #setUseBuildIdForVersioning(boolean)} is set true. + * + * @deprecated Worker Versioning is now deprecated please migrate to the Worker Deployment API. */ @Experimental @Deprecated @@ -486,7 +492,6 @@ public Builder setIdentity(String identity) { * Set deployment options for the worker. Exclusive with {@link #setUseBuildIdForVersioning} and * {@link #setBuildId(String)}. */ - @Experimental public Builder setDeploymentOptions(WorkerDeploymentOptions deploymentOptions) { this.deploymentOptions = deploymentOptions; return this; diff --git a/temporal-sdk/src/main/java/io/temporal/workflow/WorkflowVersioningBehavior.java b/temporal-sdk/src/main/java/io/temporal/workflow/WorkflowVersioningBehavior.java index ce16f80461..1e14d1c4df 100644 --- a/temporal-sdk/src/main/java/io/temporal/workflow/WorkflowVersioningBehavior.java +++ b/temporal-sdk/src/main/java/io/temporal/workflow/WorkflowVersioningBehavior.java @@ -1,6 +1,5 @@ package io.temporal.workflow; -import io.temporal.common.Experimental; import io.temporal.common.VersioningBehavior; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; @@ -13,7 +12,6 @@ */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) -@Experimental public @interface WorkflowVersioningBehavior { /** * The behavior to apply to this workflow. See {@link VersioningBehavior} for more information. diff --git a/temporal-sdk/src/test/java/io/temporal/worker/BuildIdVersioningTest.java b/temporal-sdk/src/test/java/io/temporal/worker/BuildIdVersioningTest.java index e0ac3f4156..01131994be 100644 --- a/temporal-sdk/src/test/java/io/temporal/worker/BuildIdVersioningTest.java +++ b/temporal-sdk/src/test/java/io/temporal/worker/BuildIdVersioningTest.java @@ -5,7 +5,6 @@ import io.temporal.activity.Activity; import io.temporal.activity.ActivityOptions; import io.temporal.api.common.v1.WorkflowExecution; -import io.temporal.client.BuildIdOperation; import io.temporal.client.WorkflowClient; import io.temporal.client.WorkflowOptions; import io.temporal.internal.Signal; @@ -45,7 +44,7 @@ public void testBuildIdVersioningDataSetProperly() { // Add 1.0 to the queue workflowClient.updateWorkerBuildIdCompatability( - taskQueue, BuildIdOperation.newIdInNewDefaultSet("1.0")); + taskQueue, io.temporal.client.BuildIdOperation.newIdInNewDefaultSet("1.0")); // Now start the worker (to avoid poll timeout while queue is unversioned) testWorkflowRule.getTestEnvironment().start(); @@ -65,7 +64,7 @@ public void testBuildIdVersioningDataSetProperly() { // Add 2.0 to the queue workflowClient.updateWorkerBuildIdCompatability( - taskQueue, BuildIdOperation.newIdInNewDefaultSet("2.0")); + taskQueue, io.temporal.client.BuildIdOperation.newIdInNewDefaultSet("2.0")); // Continue driving original workflow wf1.mySignal("activity"); @@ -121,7 +120,7 @@ public void testCurrentBuildIDSetProperly() throws InterruptedException { // Add 1.0 to the queue workflowClient.updateWorkerBuildIdCompatability( - taskQueue, BuildIdOperation.newIdInNewDefaultSet("1.0")); + taskQueue, io.temporal.client.BuildIdOperation.newIdInNewDefaultSet("1.0")); // Now start the worker (to avoid poll timeout while queue is unversioned) testWorkflowRule.getTestEnvironment().start(); @@ -154,7 +153,7 @@ public void testCurrentBuildIDSetProperly() throws InterruptedException { // Add 1.1 to the queue workflowClient.updateWorkerBuildIdCompatability( - taskQueue, BuildIdOperation.newCompatibleVersion("1.1", "1.0")); + taskQueue, io.temporal.client.BuildIdOperation.newCompatibleVersion("1.1", "1.0")); WorkerFactory w11F = WorkerFactory.newInstance(workflowClient, testWorkflowRule.getWorkerFactoryOptions());