diff --git a/docs/cli/worker.mdx b/docs/cli/worker.mdx index 764cc953f5..bbd6f76a90 100644 --- a/docs/cli/worker.mdx +++ b/docs/cli/worker.mdx @@ -602,7 +602,7 @@ metadata, or its creation/modification time. temporal worker deployment describe-version [options] ``` -For example, to describe a deployment version in a deployment +For example, to describe a Deployment Version in a deployment `YourDeploymentName`, with Build ID `YourBuildID`, and in the default namespace: diff --git a/docs/cli/workflow.mdx b/docs/cli/workflow.mdx index 225e3cd128..c1e372eaea 100644 --- a/docs/cli/workflow.mdx +++ b/docs/cli/workflow.mdx @@ -4888,7 +4888,7 @@ temporal workflow update-options \ ``` or to pin the workflow execution to a Worker Deployment, set behavior -to `pinned`: +to Pinned: ``` temporal workflow update-options \ diff --git a/docs/develop/dotnet/debugging.mdx b/docs/develop/dotnet/debugging.mdx index 50f9f9c5c9..952a0df93f 100644 --- a/docs/develop/dotnet/debugging.mdx +++ b/docs/develop/dotnet/debugging.mdx @@ -38,7 +38,7 @@ You can debug production Workflows using: - [Web UI](/web-ui) - [Temporal CLI](/cli) -- [Replay](/develop/dotnet/testing-suite#replay-test) +- [Replay](/develop/dotnet/testing-suite#replay) - [Tracing](/develop/dotnet/observability#tracing) - [Logging](/develop/dotnet/observability#logging) diff --git a/docs/develop/dotnet/index.mdx b/docs/develop/dotnet/index.mdx index 8731245af7..afd9916653 100644 --- a/docs/develop/dotnet/index.mdx +++ b/docs/develop/dotnet/index.mdx @@ -61,7 +61,7 @@ Set up the testing suite and test Workflows and Activities. - [Test frameworks](/develop/dotnet/testing-suite#test-frameworks): Testing provides a framework to facilitate Workflow and integration testing. - [Testing Workflows](/develop/dotnet/testing-suite#testing-workflows): Ensure the functionality and reliability of your Workflows. - [Testing Activities](/develop/dotnet/testing-suite#test-activities): Validate the execution and outcomes of your Activities. -- [Replay test](/develop/dotnet/testing-suite#replay-test): Replay recreates the exact state of a Workflow Execution. +- [Replay test](/develop/dotnet/testing-suite#replay): Replay recreates the exact state of a Workflow Execution. ## [Failure detection](/develop/dotnet/failure-detection) @@ -115,7 +115,7 @@ Complete Activities asynchronously. Change Workflow Definitions without causing non-deterministic behavior in running Workflows. -- [Use the .NET SDK Patching API](/develop/dotnet/versioning#dotnet-sdk-patching-api): Patching Workflows using the .NET SDK. +- [Use the .NET SDK Patching API](/develop/dotnet/versioning#patching): Patching Workflows using the .NET SDK. ## [Observability](/develop/dotnet/observability) diff --git a/docs/develop/dotnet/testing-suite.mdx b/docs/develop/dotnet/testing-suite.mdx index 861220ee2d..2ebdfda644 100644 --- a/docs/develop/dotnet/testing-suite.mdx +++ b/docs/develop/dotnet/testing-suite.mdx @@ -263,7 +263,7 @@ The following important members are available on the environment to affect the a - `WorkerShutdownTokenSource` - Token source for issuing Worker shutdown. - `PayloadConverter` - Defaulted to default payload converter. -## Replay test {#replay-test} +## Replay test {#replay} **How to do a Replay test using the Temporal .NET SDK** diff --git a/docs/develop/dotnet/versioning.mdx b/docs/develop/dotnet/versioning.mdx index 19e84e098d..e91c27945e 100644 --- a/docs/develop/dotnet/versioning.mdx +++ b/docs/develop/dotnet/versioning.mdx @@ -27,40 +27,63 @@ tags: - Patching --- -This page shows how to do the following: +import { CaptionedImage } from '@site/src/components'; -- [Use the .NET SDK Patching API](#dotnet-sdk-patching-api) -- [Patching in new code](#using-patched-for-workflow-history-markers) -- [Understanding deprecated Patches in the .NET SDK](#deprecated-patches) -- [Safe Deployment of PostPatchActivity](#deploy-postpatchactivity) +Since Workflow Executions in Temporal can run for long periods — sometimes months or even years — it's common to need to make changes to a Workflow Definition, even while a particular Workflow Execution is in progress. -## Introduction to Versioning +The Temporal Platform requires that Workflow code is [deterministic](/workflow-definition#deterministic-constraints). +If you make a change to your Workflow code that would cause non-deterministic behavior on Replay, you'll need to use one of our Versioning methods to gracefully update your running Workflows. +With Versioning, you can modify your Workflow Definition so that new executions use the updated code, while existing ones continue running the original version. +There are two primary Versioning methods that you can use: -Because we design for potentially long running Workflows at scale, versioning with Temporal works differently. We explain more in this optional 30 minute introduction: +- [Versioning with Patching](#patching). This method works by adding branches to your code tied to specific revisions. It can be used to revise in-progress Workflows. +- [Worker Versioning](/production-deployment/worker-deployments/worker-versioning). The Worker Versioning feature allows you to tag your Workers and programmatically roll them out in versioned deployments, so that old Workers can run old code paths and new Workers can run new code paths. -