Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 5 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,6 @@ jobs:
version: "23.x"
repo-token: ${{ secrets.GITHUB_TOKEN }}

- name: Build
# We intentionally just build debug mode in this CI. We build before
# regen to confirm no interop header changes.
run: dotnet build

- name: Regen confirm unchanged
if: ${{ matrix.checkTarget }}
run: |
Expand All @@ -85,6 +80,9 @@ jobs:
if: ${{ matrix.checkTarget }}
run: dotnet format --verify-no-changes

- name: Build
run: dotnet build

- name: Test
run: dotnet test --logger "console;verbosity=detailed" --blame-crash -v n

Expand Down Expand Up @@ -120,8 +118,8 @@ jobs:
- name: Build docs
if: ${{ matrix.docsTarget }}
run: |
dotnet tool update -g docfx
docfx src/Temporalio.ApiDoc/docfx.json --warningsAsErrors
dotnet tool update -g docfx
docfx src/Temporalio.ApiDoc/docfx.json --warningsAsErrors

- name: Deploy docs
# Only deploy on main merge, not in PRs
Expand Down
512 changes: 512 additions & 0 deletions src/Temporalio/Api/Activity/V1/Message.cs

Large diffs are not rendered by default.

1,435 changes: 1,386 additions & 49 deletions src/Temporalio/Api/Common/V1/Message.cs

Large diffs are not rendered by default.

32 changes: 16 additions & 16 deletions src/Temporalio/Api/Enums/V1/EventType.cs
Original file line number Diff line number Diff line change
Expand Up @@ -68,14 +68,14 @@ static EventTypeReflection() {
"L0VWRU5UX1RZUEVfRVhURVJOQUxfV09SS0ZMT1dfRVhFQ1VUSU9OX1NJR05B",
"TEVEECcSMAosRVZFTlRfVFlQRV9VUFNFUlRfV09SS0ZMT1dfU0VBUkNIX0FU",
"VFJJQlVURVMQKBIxCi1FVkVOVF9UWVBFX1dPUktGTE9XX0VYRUNVVElPTl9V",
"UERBVEVfQUNDRVBURUQQKRIxCi1FVkVOVF9UWVBFX1dPUktGTE9XX0VYRUNV",
"VElPTl9VUERBVEVfUkVKRUNURUQQKhIyCi5FVkVOVF9UWVBFX1dPUktGTE9X",
"X0VYRUNVVElPTl9VUERBVEVfQ09NUExFVEVEECsSNgoyRVZFTlRfVFlQRV9X",
"T1JLRkxPV19QUk9QRVJUSUVTX01PRElGSUVEX0VYVEVSTkFMTFkQLBI2CjJF",
"VkVOVF9UWVBFX0FDVElWSVRZX1BST1BFUlRJRVNfTU9ESUZJRURfRVhURVJO",
"QUxMWRAtEisKJ0VWRU5UX1RZUEVfV09SS0ZMT1dfUFJPUEVSVElFU19NT0RJ",
"RklFRBAuEjEKLUVWRU5UX1RZUEVfV09SS0ZMT1dfRVhFQ1VUSU9OX1VQREFU",
"RV9BRE1JVFRFRBAvEigKJEVWRU5UX1RZUEVfTkVYVVNfT1BFUkFUSU9OX1ND",
"UERBVEVfQURNSVRURUQQLxIxCi1FVkVOVF9UWVBFX1dPUktGTE9XX0VYRUNV",
"VElPTl9VUERBVEVfQUNDRVBURUQQKRIxCi1FVkVOVF9UWVBFX1dPUktGTE9X",
"X0VYRUNVVElPTl9VUERBVEVfUkVKRUNURUQQKhIyCi5FVkVOVF9UWVBFX1dP",
"UktGTE9XX0VYRUNVVElPTl9VUERBVEVfQ09NUExFVEVEECsSNgoyRVZFTlRf",
"VFlQRV9XT1JLRkxPV19QUk9QRVJUSUVTX01PRElGSUVEX0VYVEVSTkFMTFkQ",
"LBI2CjJFVkVOVF9UWVBFX0FDVElWSVRZX1BST1BFUlRJRVNfTU9ESUZJRURf",
"RVhURVJOQUxMWRAtEisKJ0VWRU5UX1RZUEVfV09SS0ZMT1dfUFJPUEVSVElF",
"U19NT0RJRklFRBAuEigKJEVWRU5UX1RZUEVfTkVYVVNfT1BFUkFUSU9OX1ND",
"SEVEVUxFRBAwEiYKIkVWRU5UX1RZUEVfTkVYVVNfT1BFUkFUSU9OX1NUQVJU",
"RUQQMRIoCiRFVkVOVF9UWVBFX05FWFVTX09QRVJBVElPTl9DT01QTEVURUQQ",
"MhIlCiFFVkVOVF9UWVBFX05FWFVTX09QRVJBVElPTl9GQUlMRUQQMxInCiNF",
Expand Down Expand Up @@ -299,11 +299,17 @@ public enum EventType {
/// </summary>
[pbr::OriginalName("EVENT_TYPE_UPSERT_WORKFLOW_SEARCH_ATTRIBUTES")] UpsertWorkflowSearchAttributes = 40,
/// <summary>
/// An update was accepted (i.e. validated)
/// An update was admitted. Note that not all admitted updates result in this
/// event. See UpdateAdmittedEventOrigin for situations in which this event
/// is created.
/// </summary>
[pbr::OriginalName("EVENT_TYPE_WORKFLOW_EXECUTION_UPDATE_ADMITTED")] WorkflowExecutionUpdateAdmitted = 47,
/// <summary>
/// An update was accepted (i.e. passed validation, perhaps because no validator was defined)
/// </summary>
[pbr::OriginalName("EVENT_TYPE_WORKFLOW_EXECUTION_UPDATE_ACCEPTED")] WorkflowExecutionUpdateAccepted = 41,
/// <summary>
/// An update was rejected (i.e. failed validation)
/// This event is never written to history.
/// </summary>
[pbr::OriginalName("EVENT_TYPE_WORKFLOW_EXECUTION_UPDATE_REJECTED")] WorkflowExecutionUpdateRejected = 42,
/// <summary>
Expand All @@ -327,12 +333,6 @@ public enum EventType {
/// </summary>
[pbr::OriginalName("EVENT_TYPE_WORKFLOW_PROPERTIES_MODIFIED")] WorkflowPropertiesModified = 46,
/// <summary>
/// An update was admitted. Note that not all admitted updates result in this
/// event. See UpdateAdmittedEventOrigin for situations in which this event
/// is created.
/// </summary>
[pbr::OriginalName("EVENT_TYPE_WORKFLOW_EXECUTION_UPDATE_ADMITTED")] WorkflowExecutionUpdateAdmitted = 47,
/// <summary>
/// A Nexus operation was scheduled using a ScheduleNexusOperation command.
/// </summary>
[pbr::OriginalName("EVENT_TYPE_NEXUS_OPERATION_SCHEDULED")] NexusOperationScheduled = 48,
Expand Down
23 changes: 14 additions & 9 deletions src/Temporalio/Api/Enums/V1/FailedCause.cs
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ static FailedCauseReflection() {
"RUNVVElPTl9OT1RfRk9VTkQQARJHCkNTSUdOQUxfRVhURVJOQUxfV09SS0ZM",
"T1dfRVhFQ1VUSU9OX0ZBSUxFRF9DQVVTRV9OQU1FU1BBQ0VfTk9UX0ZPVU5E",
"EAISTwpLU0lHTkFMX0VYVEVSTkFMX1dPUktGTE9XX0VYRUNVVElPTl9GQUlM",
"RURfQ0FVU0VfU0lHTkFMX0NPVU5UX0xJTUlUX0VYQ0VFREVEEAMqhQMKFlJl",
"RURfQ0FVU0VfU0lHTkFMX0NPVU5UX0xJTUlUX0VYQ0VFREVEEAMquAMKFlJl",
"c291cmNlRXhoYXVzdGVkQ2F1c2USKAokUkVTT1VSQ0VfRVhIQVVTVEVEX0NB",
"VVNFX1VOU1BFQ0lGSUVEEAASJgoiUkVTT1VSQ0VfRVhIQVVTVEVEX0NBVVNF",
"X1JQU19MSU1JVBABEi0KKVJFU09VUkNFX0VYSEFVU1RFRF9DQVVTRV9DT05D",
Expand All @@ -104,14 +104,15 @@ static FailedCauseReflection() {
"X1BFUlNJU1RFTkNFX0xJTUlUEAQSKgomUkVTT1VSQ0VfRVhIQVVTVEVEX0NB",
"VVNFX0JVU1lfV09SS0ZMT1cQBRImCiJSRVNPVVJDRV9FWEhBVVNURURfQ0FV",
"U0VfQVBTX0xJTUlUEAYSNgoyUkVTT1VSQ0VfRVhIQVVTVEVEX0NBVVNFX1BF",
"UlNJU1RFTkNFX1NUT1JBR0VfTElNSVQQByqPAQoWUmVzb3VyY2VFeGhhdXN0",
"ZWRTY29wZRIoCiRSRVNPVVJDRV9FWEhBVVNURURfU0NPUEVfVU5TUEVDSUZJ",
"RUQQABImCiJSRVNPVVJDRV9FWEhBVVNURURfU0NPUEVfTkFNRVNQQUNFEAES",
"IwofUkVTT1VSQ0VfRVhIQVVTVEVEX1NDT1BFX1NZU1RFTRACQogBChhpby50",
"ZW1wb3JhbC5hcGkuZW51bXMudjFCEEZhaWxlZENhdXNlUHJvdG9QAVohZ28u",
"dGVtcG9yYWwuaW8vYXBpL2VudW1zL3YxO2VudW1zqgIXVGVtcG9yYWxpby5B",
"cGkuRW51bXMuVjHqAhpUZW1wb3JhbGlvOjpBcGk6OkVudW1zOjpWMWIGcHJv",
"dG8z"));
"UlNJU1RFTkNFX1NUT1JBR0VfTElNSVQQBxIxCi1SRVNPVVJDRV9FWEhBVVNU",
"RURfQ0FVU0VfQ0lSQ1VJVF9CUkVBS0VSX09QRU4QCCqPAQoWUmVzb3VyY2VF",
"eGhhdXN0ZWRTY29wZRIoCiRSRVNPVVJDRV9FWEhBVVNURURfU0NPUEVfVU5T",
"UEVDSUZJRUQQABImCiJSRVNPVVJDRV9FWEhBVVNURURfU0NPUEVfTkFNRVNQ",
"QUNFEAESIwofUkVTT1VSQ0VfRVhIQVVTVEVEX1NDT1BFX1NZU1RFTRACQogB",
"Chhpby50ZW1wb3JhbC5hcGkuZW51bXMudjFCEEZhaWxlZENhdXNlUHJvdG9Q",
"AVohZ28udGVtcG9yYWwuaW8vYXBpL2VudW1zL3YxO2VudW1zqgIXVGVtcG9y",
"YWxpby5BcGkuRW51bXMuVjHqAhpUZW1wb3JhbGlvOjpBcGk6OkVudW1zOjpW",
"MWIGcHJvdG8z"));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Temporalio.Api.Enums.V1.WorkflowTaskFailedCause), typeof(global::Temporalio.Api.Enums.V1.StartChildWorkflowExecutionFailedCause), typeof(global::Temporalio.Api.Enums.V1.CancelExternalWorkflowExecutionFailedCause), typeof(global::Temporalio.Api.Enums.V1.SignalExternalWorkflowExecutionFailedCause), typeof(global::Temporalio.Api.Enums.V1.ResourceExhaustedCause), typeof(global::Temporalio.Api.Enums.V1.ResourceExhaustedScope), }, null, null));
Expand Down Expand Up @@ -270,6 +271,10 @@ public enum ResourceExhaustedCause {
/// Persistence storage limit exceeded.
/// </summary>
[pbr::OriginalName("RESOURCE_EXHAUSTED_CAUSE_PERSISTENCE_STORAGE_LIMIT")] PersistenceStorageLimit = 7,
/// <summary>
/// Circuit breaker is open/half-open.
/// </summary>
[pbr::OriginalName("RESOURCE_EXHAUSTED_CAUSE_CIRCUIT_BREAKER_OPEN")] CircuitBreakerOpen = 8,
}

public enum ResourceExhaustedScope {
Expand Down
33 changes: 19 additions & 14 deletions src/Temporalio/Api/Enums/V1/Reset.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,20 @@ static ResetReflection() {
byte[] descriptorData = global::System.Convert.FromBase64String(
string.Concat(
"CiF0ZW1wb3JhbC9hcGkvZW51bXMvdjEvcmVzZXQucHJvdG8SFXRlbXBvcmFs",
"LmFwaS5lbnVtcy52MSqTAQoXUmVzZXRSZWFwcGx5RXhjbHVkZVR5cGUSKgom",
"LmFwaS5lbnVtcy52MSq5AQoXUmVzZXRSZWFwcGx5RXhjbHVkZVR5cGUSKgom",
"UkVTRVRfUkVBUFBMWV9FWENMVURFX1RZUEVfVU5TUEVDSUZJRUQQABIlCiFS",
"RVNFVF9SRUFQUExZX0VYQ0xVREVfVFlQRV9TSUdOQUwQARIlCiFSRVNFVF9S",
"RUFQUExZX0VYQ0xVREVfVFlQRV9VUERBVEUQAiqXAQoQUmVzZXRSZWFwcGx5",
"VHlwZRIiCh5SRVNFVF9SRUFQUExZX1RZUEVfVU5TUEVDSUZJRUQQABIdChlS",
"RVNFVF9SRUFQUExZX1RZUEVfU0lHTkFMEAESGwoXUkVTRVRfUkVBUFBMWV9U",
"WVBFX05PTkUQAhIjCh9SRVNFVF9SRUFQUExZX1RZUEVfQUxMX0VMSUdJQkxF",
"EAMqbgoJUmVzZXRUeXBlEhoKFlJFU0VUX1RZUEVfVU5TUEVDSUZJRUQQABIi",
"Ch5SRVNFVF9UWVBFX0ZJUlNUX1dPUktGTE9XX1RBU0sQARIhCh1SRVNFVF9U",
"WVBFX0xBU1RfV09SS0ZMT1dfVEFTSxACQoIBChhpby50ZW1wb3JhbC5hcGku",
"ZW51bXMudjFCClJlc2V0UHJvdG9QAVohZ28udGVtcG9yYWwuaW8vYXBpL2Vu",
"dW1zL3YxO2VudW1zqgIXVGVtcG9yYWxpby5BcGkuRW51bXMuVjHqAhpUZW1w",
"b3JhbGlvOjpBcGk6OkVudW1zOjpWMWIGcHJvdG8z"));
"RUFQUExZX0VYQ0xVREVfVFlQRV9VUERBVEUQAhIkCiBSRVNFVF9SRUFQUExZ",
"X0VYQ0xVREVfVFlQRV9ORVhVUxADKpcBChBSZXNldFJlYXBwbHlUeXBlEiIK",
"HlJFU0VUX1JFQVBQTFlfVFlQRV9VTlNQRUNJRklFRBAAEh0KGVJFU0VUX1JF",
"QVBQTFlfVFlQRV9TSUdOQUwQARIbChdSRVNFVF9SRUFQUExZX1RZUEVfTk9O",
"RRACEiMKH1JFU0VUX1JFQVBQTFlfVFlQRV9BTExfRUxJR0lCTEUQAypuCglS",
"ZXNldFR5cGUSGgoWUkVTRVRfVFlQRV9VTlNQRUNJRklFRBAAEiIKHlJFU0VU",
"X1RZUEVfRklSU1RfV09SS0ZMT1dfVEFTSxABEiEKHVJFU0VUX1RZUEVfTEFT",
"VF9XT1JLRkxPV19UQVNLEAJCggEKGGlvLnRlbXBvcmFsLmFwaS5lbnVtcy52",
"MUIKUmVzZXRQcm90b1ABWiFnby50ZW1wb3JhbC5pby9hcGkvZW51bXMvdjE7",
"ZW51bXOqAhdUZW1wb3JhbGlvLkFwaS5FbnVtcy5WMeoCGlRlbXBvcmFsaW86",
"OkFwaTo6RW51bXM6OlYxYgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Temporalio.Api.Enums.V1.ResetReapplyExcludeType), typeof(global::Temporalio.Api.Enums.V1.ResetReapplyType), typeof(global::Temporalio.Api.Enums.V1.ResetType), }, null, null));
Expand All @@ -47,18 +48,22 @@ static ResetReflection() {
}
#region Enums
/// <summary>
/// Event types to exclude when reapplying events.
/// Event types to exclude when reapplying events beyond the reset point.
/// </summary>
public enum ResetReapplyExcludeType {
[pbr::OriginalName("RESET_REAPPLY_EXCLUDE_TYPE_UNSPECIFIED")] Unspecified = 0,
/// <summary>
/// Exclude signals when reapplying events.
/// Exclude signals when reapplying events beyond the reset point.
/// </summary>
[pbr::OriginalName("RESET_REAPPLY_EXCLUDE_TYPE_SIGNAL")] Signal = 1,
/// <summary>
/// Exclude updates when reapplying events.
/// Exclude updates when reapplying events beyond the reset point.
/// </summary>
[pbr::OriginalName("RESET_REAPPLY_EXCLUDE_TYPE_UPDATE")] Update = 2,
/// <summary>
/// Exclude nexus events when reapplying events beyond the reset point.
/// </summary>
[pbr::OriginalName("RESET_REAPPLY_EXCLUDE_TYPE_NEXUS")] Nexus = 3,
}

/// <summary>
Expand Down
6 changes: 3 additions & 3 deletions src/Temporalio/Api/Enums/V1/TaskQueue.cs
Original file line number Diff line number Diff line change
Expand Up @@ -125,9 +125,9 @@ public enum TaskReachability {
/// <summary>
/// Specifies which category of tasks may reach a versioned worker of a certain Build ID.
///
/// Task Reachability is eventually consistent; there may be a delay until it converges to the most
/// accurate value but it is designed in a way to take the more conservative side until it converges.
/// For example REACHABLE is more conservative than CLOSED_WORKFLOWS_ONLY.
/// Task Reachability is eventually consistent; there may be a delay (up to few minutes) until it
/// converges to the most accurate value but it is designed in a way to take the more conservative
/// side until it converges. For example REACHABLE is more conservative than CLOSED_WORKFLOWS_ONLY.
///
/// Note: future activities who inherit their workflow's Build ID but not its Task Queue will not be
/// accounted for reachability as server cannot know if they'll happen as they do not use
Expand Down
27 changes: 14 additions & 13 deletions src/Temporalio/Api/Enums/V1/Update.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,48 +48,49 @@ static UpdateReflection() {
#region Enums
/// <summary>
/// UpdateWorkflowExecutionLifecycleStage is specified by clients invoking
/// workflow execution updates and used to indicate to the server how long the
/// client wishes to wait for a return value from the RPC. If any value other
/// Workflow Updates and used to indicate to the server how long the
/// client wishes to wait for a return value from the API. If any value other
/// than UPDATE_WORKFLOW_EXECUTION_LIFECYCLE_STAGE_COMPLETED is sent by the
/// client then the RPC will complete before the update is finished and will
/// return a handle to the running update so that it can later be polled for
/// client then the API will complete before the Update is finished and will
/// return a handle to the running Update so that it can later be polled for
/// completion.
/// If specified stage wasn't reached before server timeout, server returns
/// actual stage reached.
/// </summary>
public enum UpdateWorkflowExecutionLifecycleStage {
/// <summary>
/// An unspecified vale for this enum.
/// An unspecified value for this enum.
/// </summary>
[pbr::OriginalName("UPDATE_WORKFLOW_EXECUTION_LIFECYCLE_STAGE_UNSPECIFIED")] Unspecified = 0,
/// <summary>
/// The gRPC call will not return until the update request has been admitted
/// The API call will not return until the Update request has been admitted
/// by the server - it may be the case that due to a considerations like load
/// or resource limits that an update is made to wait before the server will
/// or resource limits that an Update is made to wait before the server will
/// indicate that it has been received and will be processed. This value
/// does not wait for any sort of acknowledgement from a worker.
/// </summary>
[pbr::OriginalName("UPDATE_WORKFLOW_EXECUTION_LIFECYCLE_STAGE_ADMITTED")] Admitted = 1,
/// <summary>
/// The gRPC call will not return until the update has passed validation on
/// a worker.
/// The API call will not return until the Update has passed validation on a worker.
/// </summary>
[pbr::OriginalName("UPDATE_WORKFLOW_EXECUTION_LIFECYCLE_STAGE_ACCEPTED")] Accepted = 2,
/// <summary>
/// The gRPC call will not return until the update has executed to completion
/// The API call will not return until the Update has executed to completion
/// on a worker and has either been rejected or returned a value or an error.
/// </summary>
[pbr::OriginalName("UPDATE_WORKFLOW_EXECUTION_LIFECYCLE_STAGE_COMPLETED")] Completed = 3,
}

/// <summary>
/// Records why a WorkflowExecutionUpdateAdmittedEvent was written to history.
/// Note that not all admitted updates result in this event.
/// Note that not all admitted Updates result in this event.
/// </summary>
public enum UpdateAdmittedEventOrigin {
[pbr::OriginalName("UPDATE_ADMITTED_EVENT_ORIGIN_UNSPECIFIED")] Unspecified = 0,
/// <summary>
/// The UpdateAdmitted event was created when reapplying events during reset
/// or replication. I.e. an accepted update on one branch of workflow history
/// was converted into an admitted update on a different branch.
/// or replication. I.e. an accepted Update on one branch of Workflow history
/// was converted into an admitted Update on a different branch.
/// </summary>
[pbr::OriginalName("UPDATE_ADMITTED_EVENT_ORIGIN_REAPPLY")] Reapply = 1,
}
Expand Down
4 changes: 1 addition & 3 deletions src/Temporalio/Api/Failure/V1/Message.cs
Original file line number Diff line number Diff line change
Expand Up @@ -192,8 +192,6 @@ public bool NonRetryable {
/// retry interval calculated by the retry policy. Retry attempts will
/// still be subject to the maximum retries limit and total time limit
/// defined by the policy.
/// ATTENTION: this value will be ignored if set for failures produced by
/// the workflow.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Expand Down Expand Up @@ -2653,7 +2651,7 @@ public string StackTrace {
/// The `encoded_attributes` Payload could represent any serializable object, e.g. JSON object or a `Failure` proto
/// message.
///
/// SDK authors:
/// SDK authors:
/// - The SDK should provide a default `encodeFailureAttributes` and `decodeFailureAttributes` implementation that:
/// - Uses a JSON object to represent `{ message, stack_trace }`.
/// - Overwrites the original message with "Encoded failure" to indicate that more information could be extracted.
Expand Down
Loading
Loading