temporalio 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +175 -4
  3. data/bridge/Cargo.lock +44 -21
  4. data/bridge/Cargo.toml +1 -0
  5. data/bridge/sdk-core/Cargo.toml +1 -1
  6. data/bridge/sdk-core/README.md +1 -4
  7. data/bridge/sdk-core/client/Cargo.toml +1 -1
  8. data/bridge/sdk-core/client/src/lib.rs +12 -20
  9. data/bridge/sdk-core/client/src/raw.rs +9 -8
  10. data/bridge/sdk-core/client/src/retry.rs +100 -23
  11. data/bridge/sdk-core/core/Cargo.toml +7 -7
  12. data/bridge/sdk-core/core/benches/workflow_replay.rs +13 -10
  13. data/bridge/sdk-core/core/src/abstractions.rs +22 -22
  14. data/bridge/sdk-core/core/src/core_tests/activity_tasks.rs +146 -43
  15. data/bridge/sdk-core/core/src/core_tests/local_activities.rs +419 -9
  16. data/bridge/sdk-core/core/src/core_tests/queries.rs +247 -89
  17. data/bridge/sdk-core/core/src/core_tests/workers.rs +2 -2
  18. data/bridge/sdk-core/core/src/core_tests/workflow_cancels.rs +1 -1
  19. data/bridge/sdk-core/core/src/core_tests/workflow_tasks.rs +47 -27
  20. data/bridge/sdk-core/core/src/lib.rs +139 -32
  21. data/bridge/sdk-core/core/src/protosext/mod.rs +1 -1
  22. data/bridge/sdk-core/core/src/replay/mod.rs +185 -41
  23. data/bridge/sdk-core/core/src/telemetry/log_export.rs +190 -0
  24. data/bridge/sdk-core/core/src/telemetry/metrics.rs +184 -139
  25. data/bridge/sdk-core/core/src/telemetry/mod.rs +310 -315
  26. data/bridge/sdk-core/core/src/telemetry/prometheus_server.rs +4 -3
  27. data/bridge/sdk-core/core/src/test_help/mod.rs +23 -9
  28. data/bridge/sdk-core/core/src/worker/activities/local_activities.rs +12 -6
  29. data/bridge/sdk-core/core/src/worker/activities.rs +40 -23
  30. data/bridge/sdk-core/core/src/worker/client/mocks.rs +1 -1
  31. data/bridge/sdk-core/core/src/worker/client.rs +30 -4
  32. data/bridge/sdk-core/core/src/worker/mod.rs +23 -19
  33. data/bridge/sdk-core/core/src/worker/workflow/driven_workflow.rs +10 -19
  34. data/bridge/sdk-core/core/src/worker/workflow/history_update.rs +99 -25
  35. data/bridge/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +1 -5
  36. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +1 -5
  37. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +1 -5
  38. data/bridge/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +3 -5
  39. data/bridge/sdk-core/core/src/worker/workflow/machines/complete_workflow_state_machine.rs +1 -5
  40. data/bridge/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +2 -6
  41. data/bridge/sdk-core/core/src/worker/workflow/machines/fail_workflow_state_machine.rs +1 -5
  42. data/bridge/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +24 -22
  43. data/bridge/sdk-core/core/src/worker/workflow/machines/mod.rs +12 -38
  44. data/bridge/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs +178 -0
  45. data/bridge/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +1 -5
  46. data/bridge/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +1 -5
  47. data/bridge/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +1 -5
  48. data/bridge/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +8 -2
  49. data/bridge/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +1 -5
  50. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines/local_acts.rs +1 -1
  51. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +233 -217
  52. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_task_state_machine.rs +1 -6
  53. data/bridge/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +4 -4
  54. data/bridge/sdk-core/core/src/worker/workflow/managed_run.rs +13 -5
  55. data/bridge/sdk-core/core/src/worker/workflow/mod.rs +86 -29
  56. data/bridge/sdk-core/core/src/worker/workflow/wft_poller.rs +2 -2
  57. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream.rs +56 -11
  58. data/bridge/sdk-core/core-api/Cargo.toml +4 -3
  59. data/bridge/sdk-core/core-api/src/lib.rs +1 -43
  60. data/bridge/sdk-core/core-api/src/telemetry.rs +147 -0
  61. data/bridge/sdk-core/core-api/src/worker.rs +13 -0
  62. data/bridge/sdk-core/etc/deps.svg +115 -140
  63. data/bridge/sdk-core/etc/regen-depgraph.sh +5 -0
  64. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.stderr +1 -1
  65. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-23_history.bin +0 -0
  66. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-85_history.bin +0 -0
  67. data/bridge/sdk-core/protos/api_upstream/buf.yaml +0 -3
  68. data/bridge/sdk-core/protos/api_upstream/build/go.mod +7 -0
  69. data/bridge/sdk-core/protos/api_upstream/build/go.sum +5 -0
  70. data/bridge/sdk-core/protos/api_upstream/{temporal/api/update/v1/message.proto → build/tools.go} +6 -23
  71. data/bridge/sdk-core/protos/api_upstream/go.mod +6 -0
  72. data/bridge/sdk-core/protos/api_upstream/temporal/api/batch/v1/message.proto +12 -9
  73. data/bridge/sdk-core/protos/api_upstream/temporal/api/command/v1/message.proto +20 -19
  74. data/bridge/sdk-core/protos/api_upstream/temporal/api/common/v1/message.proto +2 -2
  75. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/batch_operation.proto +3 -2
  76. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/command_type.proto +4 -4
  77. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/common.proto +3 -2
  78. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/event_type.proto +5 -3
  79. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/failed_cause.proto +23 -2
  80. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/{cluster.proto → interaction_type.proto} +10 -11
  81. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/namespace.proto +2 -2
  82. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/query.proto +2 -2
  83. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/reset.proto +2 -2
  84. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/schedule.proto +2 -2
  85. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/task_queue.proto +2 -2
  86. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/update.proto +2 -13
  87. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/workflow.proto +2 -2
  88. data/bridge/sdk-core/protos/api_upstream/temporal/api/errordetails/v1/message.proto +2 -2
  89. data/bridge/sdk-core/protos/api_upstream/temporal/api/failure/v1/message.proto +2 -2
  90. data/bridge/sdk-core/protos/api_upstream/temporal/api/filter/v1/message.proto +2 -2
  91. data/bridge/sdk-core/protos/api_upstream/temporal/api/history/v1/message.proto +26 -19
  92. data/bridge/sdk-core/protos/api_upstream/temporal/api/interaction/v1/message.proto +87 -0
  93. data/bridge/sdk-core/protos/api_upstream/temporal/api/namespace/v1/message.proto +2 -2
  94. data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto +21 -61
  95. data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/service.proto +2 -21
  96. data/bridge/sdk-core/protos/api_upstream/temporal/api/query/v1/message.proto +2 -2
  97. data/bridge/sdk-core/protos/api_upstream/temporal/api/replication/v1/message.proto +2 -2
  98. data/bridge/sdk-core/protos/api_upstream/temporal/api/schedule/v1/message.proto +110 -31
  99. data/bridge/sdk-core/protos/api_upstream/temporal/api/taskqueue/v1/message.proto +4 -4
  100. data/bridge/sdk-core/protos/api_upstream/temporal/api/version/v1/message.proto +2 -2
  101. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflow/v1/message.proto +3 -2
  102. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto +60 -16
  103. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/service.proto +17 -3
  104. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +2 -0
  105. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +8 -1
  106. data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/request_response.proto +2 -2
  107. data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/service.proto +2 -2
  108. data/bridge/sdk-core/sdk/Cargo.toml +2 -2
  109. data/bridge/sdk-core/sdk/src/interceptors.rs +36 -3
  110. data/bridge/sdk-core/sdk/src/lib.rs +7 -5
  111. data/bridge/sdk-core/sdk/src/workflow_context.rs +13 -2
  112. data/bridge/sdk-core/sdk/src/workflow_future.rs +3 -7
  113. data/bridge/sdk-core/sdk-core-protos/Cargo.toml +1 -1
  114. data/bridge/sdk-core/sdk-core-protos/build.rs +0 -1
  115. data/bridge/sdk-core/sdk-core-protos/src/history_builder.rs +65 -18
  116. data/bridge/sdk-core/sdk-core-protos/src/history_info.rs +22 -22
  117. data/bridge/sdk-core/sdk-core-protos/src/lib.rs +104 -44
  118. data/bridge/sdk-core/test-utils/Cargo.toml +2 -1
  119. data/bridge/sdk-core/test-utils/src/lib.rs +81 -29
  120. data/bridge/sdk-core/tests/integ_tests/heartbeat_tests.rs +5 -2
  121. data/bridge/sdk-core/tests/integ_tests/metrics_tests.rs +37 -0
  122. data/bridge/sdk-core/tests/integ_tests/polling_tests.rs +0 -13
  123. data/bridge/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs +167 -13
  124. data/bridge/sdk-core/tests/integ_tests/workflow_tests/modify_wf_properties.rs +53 -0
  125. data/bridge/sdk-core/tests/integ_tests/workflow_tests/replay.rs +106 -20
  126. data/bridge/sdk-core/tests/integ_tests/workflow_tests.rs +18 -8
  127. data/bridge/sdk-core/tests/main.rs +6 -4
  128. data/bridge/src/connection.rs +81 -62
  129. data/bridge/src/lib.rs +92 -33
  130. data/bridge/src/runtime.rs +9 -2
  131. data/bridge/src/worker.rs +53 -2
  132. data/lib/bridge.so +0 -0
  133. data/lib/gen/temporal/api/batch/v1/message_pb.rb +8 -6
  134. data/lib/gen/temporal/api/command/v1/message_pb.rb +17 -9
  135. data/lib/gen/temporal/api/common/v1/message_pb.rb +1 -1
  136. data/lib/gen/temporal/api/enums/v1/batch_operation_pb.rb +2 -1
  137. data/lib/gen/temporal/api/enums/v1/command_type_pb.rb +3 -1
  138. data/lib/gen/temporal/api/enums/v1/common_pb.rb +2 -1
  139. data/lib/gen/temporal/api/enums/v1/event_type_pb.rb +3 -2
  140. data/lib/gen/temporal/api/enums/v1/failed_cause_pb.rb +7 -1
  141. data/lib/gen/temporal/api/enums/v1/interaction_type_pb.rb +25 -0
  142. data/lib/gen/temporal/api/enums/v1/namespace_pb.rb +1 -1
  143. data/lib/gen/temporal/api/enums/v1/query_pb.rb +1 -1
  144. data/lib/gen/temporal/api/enums/v1/reset_pb.rb +1 -1
  145. data/lib/gen/temporal/api/enums/v1/schedule_pb.rb +1 -1
  146. data/lib/gen/temporal/api/enums/v1/task_queue_pb.rb +1 -1
  147. data/lib/gen/temporal/api/enums/v1/update_pb.rb +1 -6
  148. data/lib/gen/temporal/api/enums/v1/workflow_pb.rb +1 -1
  149. data/lib/gen/temporal/api/errordetails/v1/message_pb.rb +1 -1
  150. data/lib/gen/temporal/api/failure/v1/message_pb.rb +1 -1
  151. data/lib/gen/temporal/api/filter/v1/message_pb.rb +1 -1
  152. data/lib/gen/temporal/api/history/v1/message_pb.rb +19 -18
  153. data/lib/gen/temporal/api/interaction/v1/message_pb.rb +49 -0
  154. data/lib/gen/temporal/api/namespace/v1/message_pb.rb +1 -1
  155. data/lib/gen/temporal/api/operatorservice/v1/request_response_pb.rb +11 -51
  156. data/lib/gen/temporal/api/operatorservice/v1/service_pb.rb +1 -1
  157. data/lib/gen/temporal/api/query/v1/message_pb.rb +1 -1
  158. data/lib/gen/temporal/api/replication/v1/message_pb.rb +1 -1
  159. data/lib/gen/temporal/api/schedule/v1/message_pb.rb +22 -1
  160. data/lib/gen/temporal/api/taskqueue/v1/message_pb.rb +2 -2
  161. data/lib/gen/temporal/api/version/v1/message_pb.rb +1 -1
  162. data/lib/gen/temporal/api/workflow/v1/message_pb.rb +2 -1
  163. data/lib/gen/temporal/api/workflowservice/v1/request_response_pb.rb +27 -10
  164. data/lib/gen/temporal/api/workflowservice/v1/service_pb.rb +1 -1
  165. data/lib/gen/temporal/sdk/core/workflow_activation/workflow_activation_pb.rb +1 -0
  166. data/lib/gen/temporal/sdk/core/workflow_commands/workflow_commands_pb.rb +5 -1
  167. data/lib/temporalio/activity/context.rb +97 -0
  168. data/lib/temporalio/activity/info.rb +67 -0
  169. data/lib/temporalio/activity.rb +85 -0
  170. data/lib/temporalio/bridge/error.rb +8 -0
  171. data/lib/temporalio/bridge.rb +14 -0
  172. data/lib/{temporal → temporalio}/client/implementation.rb +49 -48
  173. data/lib/{temporal → temporalio}/client/workflow_handle.rb +35 -35
  174. data/lib/{temporal → temporalio}/client.rb +19 -32
  175. data/lib/{temporal → temporalio}/connection.rb +238 -223
  176. data/lib/{temporal → temporalio}/data_converter.rb +76 -35
  177. data/lib/{temporal → temporalio}/error/failure.rb +6 -6
  178. data/lib/{temporal → temporalio}/error/workflow_failure.rb +4 -2
  179. data/lib/{temporal → temporalio}/errors.rb +19 -1
  180. data/lib/{temporal → temporalio}/failure_converter/base.rb +5 -5
  181. data/lib/{temporal → temporalio}/failure_converter/basic.rb +58 -52
  182. data/lib/temporalio/failure_converter.rb +7 -0
  183. data/lib/{temporal → temporalio}/interceptor/chain.rb +2 -1
  184. data/lib/{temporal → temporalio}/interceptor/client.rb +22 -1
  185. data/lib/{temporal → temporalio}/payload_codec/base.rb +5 -5
  186. data/lib/{temporal → temporalio}/payload_converter/base.rb +3 -3
  187. data/lib/{temporal → temporalio}/payload_converter/bytes.rb +4 -3
  188. data/lib/{temporal → temporalio}/payload_converter/composite.rb +7 -5
  189. data/lib/{temporal → temporalio}/payload_converter/encoding_base.rb +4 -4
  190. data/lib/{temporal → temporalio}/payload_converter/json.rb +4 -3
  191. data/lib/{temporal → temporalio}/payload_converter/nil.rb +4 -3
  192. data/lib/temporalio/payload_converter.rb +14 -0
  193. data/lib/{temporal → temporalio}/retry_policy.rb +4 -4
  194. data/lib/{temporal → temporalio}/retry_state.rb +1 -1
  195. data/lib/temporalio/runtime.rb +25 -0
  196. data/lib/{temporal → temporalio}/timeout_type.rb +2 -2
  197. data/lib/temporalio/version.rb +3 -0
  198. data/lib/temporalio/worker/activity_runner.rb +92 -0
  199. data/lib/temporalio/worker/activity_worker.rb +138 -0
  200. data/lib/temporalio/worker/reactor.rb +46 -0
  201. data/lib/temporalio/worker/runner.rb +63 -0
  202. data/lib/temporalio/worker/sync_worker.rb +88 -0
  203. data/lib/temporalio/worker/thread_pool_executor.rb +51 -0
  204. data/lib/temporalio/worker.rb +198 -0
  205. data/lib/{temporal → temporalio}/workflow/execution_info.rb +4 -4
  206. data/lib/{temporal → temporalio}/workflow/execution_status.rb +1 -1
  207. data/lib/{temporal → temporalio}/workflow/id_reuse_policy.rb +6 -6
  208. data/lib/{temporal → temporalio}/workflow/query_reject_condition.rb +5 -5
  209. data/lib/temporalio.rb +12 -3
  210. data/temporalio.gemspec +7 -3
  211. metadata +79 -56
  212. data/bridge/sdk-core/bridge-ffi/Cargo.toml +0 -24
  213. data/bridge/sdk-core/bridge-ffi/LICENSE.txt +0 -23
  214. data/bridge/sdk-core/bridge-ffi/build.rs +0 -25
  215. data/bridge/sdk-core/bridge-ffi/include/sdk-core-bridge.h +0 -249
  216. data/bridge/sdk-core/bridge-ffi/src/lib.rs +0 -825
  217. data/bridge/sdk-core/bridge-ffi/src/wrappers.rs +0 -211
  218. data/bridge/sdk-core/core/src/log_export.rs +0 -62
  219. data/bridge/sdk-core/core/src/worker/workflow/machines/mutable_side_effect_state_machine.rs +0 -127
  220. data/bridge/sdk-core/core/src/worker/workflow/machines/side_effect_state_machine.rs +0 -71
  221. data/bridge/sdk-core/protos/api_upstream/temporal/api/cluster/v1/message.proto +0 -83
  222. data/bridge/sdk-core/protos/local/temporal/sdk/core/bridge/bridge.proto +0 -210
  223. data/bridge/sdk-core/sdk/src/conversions.rs +0 -8
  224. data/lib/gen/temporal/api/cluster/v1/message_pb.rb +0 -67
  225. data/lib/gen/temporal/api/enums/v1/cluster_pb.rb +0 -26
  226. data/lib/gen/temporal/api/update/v1/message_pb.rb +0 -26
  227. data/lib/temporal/bridge.rb +0 -14
  228. data/lib/temporal/failure_converter.rb +0 -8
  229. data/lib/temporal/payload_converter.rb +0 -14
  230. data/lib/temporal/runtime.rb +0 -22
  231. data/lib/temporal/version.rb +0 -3
  232. data/lib/temporal.rb +0 -8
@@ -95,6 +95,16 @@ pub struct WorkerConfig {
95
95
  /// todo: link to feature docs
96
96
  #[builder(default = "false")]
97
97
  pub use_worker_versioning: bool,
98
+
99
+ /// If set false (default), shutdown will not finish until all pending evictions have been
100
+ /// issued and replied to. If set true shutdown will be considered complete when the only
101
+ /// remaining work is pending evictions.
102
+ ///
103
+ /// This flag is useful during tests to avoid needing to deal with lots of uninteresting
104
+ /// evictions during shutdown. Alternatively, if a lang implementation finds it easy to clean
105
+ /// up during shutdown, setting this true saves some back-and-forth.
106
+ #[builder(default = "false")]
107
+ pub ignore_evicts_on_shutdown: bool,
98
108
  }
99
109
 
100
110
  impl WorkerConfig {
@@ -114,6 +124,9 @@ impl WorkerConfigBuilder {
114
124
  if self.max_concurrent_wft_polls == Some(0) {
115
125
  return Err("`max_concurrent_wft_polls` must be at least 1".to_owned());
116
126
  }
127
+ if self.max_concurrent_at_polls == Some(0) {
128
+ return Err("`max_concurrent_at_polls` must be at least 1".to_owned());
129
+ }
117
130
  if self.max_cached_workflows > Some(0)
118
131
  && self.max_outstanding_workflow_tasks > self.max_cached_workflows
119
132
  {
@@ -1,187 +1,162 @@
1
1
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
2
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
3
  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
- <!-- Generated by graphviz version 2.43.0 (0)
4
+ <!-- Generated by graphviz version 7.0.4 (0)
5
5
  -->
6
- <!-- Title: %3 Pages: 1 -->
7
- <svg width="525pt" height="476pt"
8
- viewBox="0.00 0.00 524.50 476.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
- <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 472)">
10
- <title>%3</title>
11
- <polygon fill="white" stroke="transparent" points="-4,4 -4,-472 520.5,-472 520.5,4 -4,4"/>
6
+ <!-- Pages: 1 -->
7
+ <svg width="436pt" height="404pt"
8
+ viewBox="0.00 0.00 436.26 404.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
+ <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 400)">
10
+ <polygon fill="white" stroke="none" points="-4,4 -4,-400 432.26,-400 432.26,4 -4,4"/>
12
11
  <!-- 0 -->
13
12
  <g id="node1" class="node">
14
13
  <title>0</title>
15
- <polygon fill="none" stroke="black" points="173,-468 0,-468 0,-432 173,-432 173,-468"/>
16
- <text text-anchor="middle" x="86.5" y="-446.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core&#45;bridge&#45;ffi</text>
14
+ <polygon fill="none" stroke="black" points="255,-396 139,-396 139,-360 255,-360 255,-396"/>
15
+ <text text-anchor="middle" x="197" y="-374.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core</text>
17
16
  </g>
18
17
  <!-- 1 -->
19
18
  <g id="node2" class="node">
20
19
  <title>1</title>
21
- <polygon fill="none" stroke="black" points="369.5,-396 253.5,-396 253.5,-360 369.5,-360 369.5,-396"/>
22
- <text text-anchor="middle" x="311.5" y="-374.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core</text>
20
+ <polygon fill="none" stroke="black" points="58,-324 0,-324 0,-288 58,-288 58,-324"/>
21
+ <text text-anchor="middle" x="29" y="-302.3" font-family="Times,serif" font-size="14.00">rustfsm</text>
23
22
  </g>
24
23
  <!-- 0&#45;&gt;1 -->
25
24
  <g id="edge1" class="edge">
26
25
  <title>0&#45;&gt;1</title>
27
- <path fill="none" stroke="black" d="M141.25,-431.97C173.1,-422.06 213.42,-409.51 246.83,-399.12"/>
28
- <polygon fill="black" stroke="black" points="247.99,-402.42 256.5,-396.11 245.91,-395.74 247.99,-402.42"/>
26
+ <path fill="none" stroke="black" d="M155.04,-359.52C128.68,-348.53 94.87,-334.45 68.91,-323.63"/>
27
+ <polygon fill="black" stroke="black" points="70.28,-320.41 59.7,-319.79 67.59,-326.87 70.28,-320.41"/>
29
28
  </g>
30
- <!-- 6 -->
31
- <g id="node5" class="node">
32
- <title>6</title>
33
- <polygon fill="none" stroke="black" points="401,-36 246,-36 246,0 401,0 401,-36"/>
34
- <text text-anchor="middle" x="323.5" y="-14.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core&#45;protos</text>
35
- </g>
36
- <!-- 0&#45;&gt;6 -->
37
- <g id="edge3" class="edge">
38
- <title>0&#45;&gt;6</title>
39
- <path fill="none" stroke="black" d="M78.81,-431.91C67.71,-405.62 48.5,-353.45 48.5,-307 48.5,-307 48.5,-307 48.5,-161 48.5,-75.33 155.16,-41.29 235.63,-27.8"/>
40
- <polygon fill="black" stroke="black" points="236.47,-31.21 245.8,-26.18 235.37,-24.3 236.47,-31.21"/>
41
- </g>
42
- <!-- 7 -->
43
- <g id="node6" class="node">
44
- <title>7</title>
45
- <polygon fill="none" stroke="black" points="266,-180 129,-180 129,-144 266,-144 266,-180"/>
46
- <text text-anchor="middle" x="197.5" y="-158.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core&#45;api</text>
29
+ <!-- 3 -->
30
+ <g id="node3" class="node">
31
+ <title>3</title>
32
+ <polygon fill="none" stroke="black" points="368,-108 268,-108 268,-72 368,-72 368,-108"/>
33
+ <text text-anchor="middle" x="318" y="-86.3" font-family="Times,serif" font-size="14.00">temporal&#45;client</text>
47
34
  </g>
48
- <!-- 0&#45;&gt;7 -->
35
+ <!-- 0&#45;&gt;3 -->
49
36
  <g id="edge2" class="edge">
50
- <title>0&#45;&gt;7</title>
51
- <path fill="none" stroke="black" d="M85.71,-431.86C84.92,-401.65 85.97,-337.48 105.5,-288 120.88,-249.04 151.5,-211.31 173.18,-187.68"/>
52
- <polygon fill="black" stroke="black" points="175.88,-189.92 180.16,-180.23 170.77,-185.14 175.88,-189.92"/>
37
+ <title>0&#45;&gt;3</title>
38
+ <path fill="none" stroke="black" d="M255.43,-370.58C312.02,-363.02 391.98,-348.3 411,-324 461.94,-258.91 386.25,-162.28 343.68,-116.65"/>
39
+ <polygon fill="black" stroke="black" points="346.38,-114.4 336.95,-109.58 341.31,-119.23 346.38,-114.4"/>
53
40
  </g>
54
- <!-- 2 -->
55
- <g id="node3" class="node">
56
- <title>2</title>
57
- <polygon fill="none" stroke="black" points="172.5,-324 114.5,-324 114.5,-288 172.5,-288 172.5,-324"/>
58
- <text text-anchor="middle" x="143.5" y="-302.3" font-family="Times,serif" font-size="14.00">rustfsm</text>
41
+ <!-- 4 -->
42
+ <g id="node4" class="node">
43
+ <title>4</title>
44
+ <polygon fill="none" stroke="black" points="298.5,-36 143.5,-36 143.5,0 298.5,0 298.5,-36"/>
45
+ <text text-anchor="middle" x="221" y="-14.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core&#45;protos</text>
59
46
  </g>
60
- <!-- 1&#45;&gt;2 -->
61
- <g id="edge4" class="edge">
62
- <title>1&#45;&gt;2</title>
63
- <path fill="none" stroke="black" d="M270.4,-359.88C243.41,-348.63 208.34,-334.02 181.91,-323"/>
64
- <polygon fill="black" stroke="black" points="183.17,-319.74 172.59,-319.12 180.47,-326.2 183.17,-319.74"/>
47
+ <!-- 0&#45;&gt;4 -->
48
+ <g id="edge5" class="edge">
49
+ <title>0&#45;&gt;4</title>
50
+ <path fill="none" stroke="black" d="M170.41,-359.59C137.57,-335.74 86,-289.6 86,-235 86,-235 86,-235 86,-161 86,-107.38 137.19,-65.95 176.53,-42.03"/>
51
+ <polygon fill="black" stroke="black" points="178.08,-45.18 184.93,-37.1 174.53,-39.14 178.08,-45.18"/>
65
52
  </g>
66
53
  <!-- 5 -->
67
- <g id="node4" class="node">
54
+ <g id="node5" class="node">
68
55
  <title>5</title>
69
- <polygon fill="none" stroke="black" points="412.5,-108 312.5,-108 312.5,-72 412.5,-72 412.5,-108"/>
70
- <text text-anchor="middle" x="362.5" y="-86.3" font-family="Times,serif" font-size="14.00">temporal&#45;client</text>
56
+ <polygon fill="none" stroke="black" points="289.5,-180 152.5,-180 152.5,-144 289.5,-144 289.5,-180"/>
57
+ <text text-anchor="middle" x="221" y="-158.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core&#45;api</text>
71
58
  </g>
72
- <!-- 1&#45;&gt;5 -->
73
- <g id="edge5" class="edge">
74
- <title>1&#45;&gt;5</title>
75
- <path fill="none" stroke="black" d="M369.63,-361.71C391.38,-353.54 414.82,-341.45 431.5,-324 455.23,-299.18 453.17,-285.75 459.5,-252 462.45,-236.27 464.68,-231.14 459.5,-216 445.69,-175.67 412.97,-138.29 389.35,-115.12"/>
76
- <polygon fill="black" stroke="black" points="391.67,-112.5 382.03,-108.11 386.83,-117.55 391.67,-112.5"/>
59
+ <!-- 0&#45;&gt;5 -->
60
+ <g id="edge4" class="edge">
61
+ <title>0&#45;&gt;5</title>
62
+ <path fill="none" stroke="black" d="M188.08,-359.89C173.64,-329.74 148.72,-265.64 169,-216 173.27,-205.55 180.7,-196.05 188.64,-188.07"/>
63
+ <polygon fill="black" stroke="black" points="190.92,-190.72 195.87,-181.35 186.16,-185.59 190.92,-190.72"/>
77
64
  </g>
78
- <!-- 1&#45;&gt;6 -->
79
- <g id="edge8" class="edge">
80
- <title>1&#45;&gt;6</title>
81
- <path fill="none" stroke="black" d="M369.7,-363.34C430.3,-345.24 516.5,-306.87 516.5,-235 516.5,-235 516.5,-235 516.5,-161 516.5,-98.28 449.55,-60.18 394.51,-39.46"/>
82
- <polygon fill="black" stroke="black" points="395.69,-36.16 385.1,-36.04 393.3,-42.74 395.69,-36.16"/>
65
+ <!-- 6 -->
66
+ <g id="node6" class="node">
67
+ <title>6</title>
68
+ <polygon fill="none" stroke="black" points="266.5,-252 177.5,-252 177.5,-216 266.5,-216 266.5,-252"/>
69
+ <text text-anchor="middle" x="222" y="-230.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk</text>
83
70
  </g>
84
- <!-- 1&#45;&gt;7 -->
85
- <g id="edge7" class="edge">
86
- <title>1&#45;&gt;7</title>
87
- <path fill="none" stroke="black" d="M264.03,-359.96C247.39,-351.64 230.2,-339.91 219.5,-324 192.37,-283.65 191.8,-224.66 194.32,-190.41"/>
88
- <polygon fill="black" stroke="black" points="197.83,-190.49 195.22,-180.22 190.86,-189.87 197.83,-190.49"/>
71
+ <!-- 0&#45;&gt;6 -->
72
+ <g id="edge3" class="edge">
73
+ <title>0&#45;&gt;6</title>
74
+ <path fill="none" stroke="blue" d="M195.45,-359.59C197.18,-335.5 204.59,-291.75 211.56,-263.03"/>
75
+ <polygon fill="blue" stroke="blue" points="214.89,-264.13 214.02,-253.58 208.12,-262.37 214.89,-264.13"/>
89
76
  </g>
90
- <!-- 8 -->
77
+ <!-- 7 -->
91
78
  <g id="node7" class="node">
92
- <title>8</title>
93
- <polygon fill="none" stroke="black" points="450,-252 361,-252 361,-216 450,-216 450,-252"/>
94
- <text text-anchor="middle" x="405.5" y="-230.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk</text>
79
+ <title>7</title>
80
+ <polygon fill="none" stroke="black" points="401.5,-324 234.5,-324 234.5,-288 401.5,-288 401.5,-324"/>
81
+ <text text-anchor="middle" x="318" y="-302.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core&#45;test&#45;utils</text>
95
82
  </g>
96
- <!-- 1&#45;&gt;8 -->
83
+ <!-- 0&#45;&gt;7 -->
97
84
  <g id="edge6" class="edge">
98
- <title>1&#45;&gt;8</title>
99
- <path fill="none" stroke="blue" d="M354.05,-359.78C369.82,-351.61 386.07,-340.02 395.5,-324 406.38,-305.52 405.76,-280.93 404.34,-262.27"/>
100
- <polygon fill="blue" stroke="blue" points="407.81,-261.75 403.49,-252.07 400.83,-262.32 407.81,-261.75"/>
85
+ <title>0&#45;&gt;7</title>
86
+ <path fill="none" stroke="blue" d="M221.29,-359.52C235.94,-350.51 254.96,-339.42 272.29,-329.76"/>
87
+ <polygon fill="blue" stroke="blue" points="273.86,-332.89 280.93,-324.99 270.48,-326.76 273.86,-332.89"/>
101
88
  </g>
102
- <!-- 9 -->
103
- <g id="node8" class="node">
104
- <title>9</title>
105
- <polygon fill="none" stroke="black" points="395,-324 228,-324 228,-288 395,-288 395,-324"/>
106
- <text text-anchor="middle" x="311.5" y="-302.3" font-family="Times,serif" font-size="14.00">temporal&#45;sdk&#45;core&#45;test&#45;utils</text>
89
+ <!-- 3&#45;&gt;4 -->
90
+ <g id="edge7" class="edge">
91
+ <title>3&#45;&gt;4</title>
92
+ <path fill="none" stroke="black" d="M294.02,-71.7C282.01,-63.03 267.28,-52.4 254.21,-42.96"/>
93
+ <polygon fill="black" stroke="black" points="256.42,-40.25 246.27,-37.23 252.33,-45.92 256.42,-40.25"/>
107
94
  </g>
108
- <!-- 1&#45;&gt;9 -->
109
- <g id="edge9" class="edge">
110
- <title>1&#45;&gt;9</title>
111
- <path fill="none" stroke="blue" d="M305.58,-359.7C304.79,-351.98 304.56,-342.71 304.9,-334.11"/>
112
- <polygon fill="blue" stroke="blue" points="308.4,-334.32 305.6,-324.1 301.42,-333.84 308.4,-334.32"/>
95
+ <!-- 5&#45;&gt;3 -->
96
+ <g id="edge8" class="edge">
97
+ <title>5&#45;&gt;3</title>
98
+ <path fill="none" stroke="black" d="M244.98,-143.7C256.99,-135.03 271.72,-124.4 284.79,-114.96"/>
99
+ <polygon fill="black" stroke="black" points="286.67,-117.92 292.73,-109.23 282.58,-112.25 286.67,-117.92"/>
113
100
  </g>
114
- <!-- 5&#45;&gt;6 -->
115
- <g id="edge10" class="edge">
116
- <title>5&#45;&gt;6</title>
117
- <path fill="none" stroke="black" d="M352.86,-71.7C348.37,-63.64 342.94,-53.89 337.98,-44.98"/>
118
- <polygon fill="black" stroke="black" points="340.95,-43.14 333.03,-36.1 334.84,-46.54 340.95,-43.14"/>
101
+ <!-- 5&#45;&gt;4 -->
102
+ <g id="edge9" class="edge">
103
+ <title>5&#45;&gt;4</title>
104
+ <path fill="none" stroke="black" d="M221,-143.59C221,-119.61 221,-76.14 221,-47.42"/>
105
+ <polygon fill="black" stroke="black" points="224.5,-47.62 221,-37.62 217.5,-47.62 224.5,-47.62"/>
119
106
  </g>
120
- <!-- 7&#45;&gt;5 -->
107
+ <!-- 6&#45;&gt;0 -->
121
108
  <g id="edge11" class="edge">
122
- <title>7&#45;&gt;5</title>
123
- <path fill="none" stroke="black" d="M237.86,-143.88C260.52,-134.26 288.97,-122.19 312.97,-112.01"/>
124
- <polygon fill="black" stroke="black" points="314.43,-115.2 322.27,-108.07 311.69,-108.75 314.43,-115.2"/>
125
- </g>
126
- <!-- 7&#45;&gt;6 -->
127
- <g id="edge12" class="edge">
128
- <title>7&#45;&gt;6</title>
129
- <path fill="none" stroke="black" d="M210.74,-143.85C225.01,-125.62 248.63,-96.14 270.5,-72 279.24,-62.36 289.24,-52.16 298.18,-43.31"/>
130
- <polygon fill="black" stroke="black" points="300.7,-45.74 305.39,-36.24 295.8,-40.75 300.7,-45.74"/>
109
+ <title>6&#45;&gt;0</title>
110
+ <path fill="none" stroke="black" d="M223.57,-252.11C221.89,-276.03 214.51,-319.76 207.53,-348.6"/>
111
+ <polygon fill="black" stroke="black" points="204.18,-347.56 205.06,-358.12 210.96,-349.32 204.18,-347.56"/>
131
112
  </g>
132
- <!-- 8&#45;&gt;1 -->
133
- <g id="edge14" class="edge">
134
- <title>8&#45;&gt;1</title>
135
- <path fill="none" stroke="black" d="M416.59,-252.07C423.07,-271.04 426.51,-301.89 413.5,-324 405.57,-337.47 392.82,-347.8 378.95,-355.62"/>
136
- <polygon fill="black" stroke="black" points="376.99,-352.69 369.71,-360.39 380.2,-358.91 376.99,-352.69"/>
113
+ <!-- 6&#45;&gt;3 -->
114
+ <g id="edge10" class="edge">
115
+ <title>6&#45;&gt;3</title>
116
+ <path fill="none" stroke="black" d="M258.49,-215.67C273.19,-206.93 288.99,-194.98 299,-180 310.95,-162.11 315.57,-138.07 317.27,-119.49"/>
117
+ <polygon fill="black" stroke="black" points="320.75,-119.9 317.91,-109.69 313.76,-119.44 320.75,-119.9"/>
137
118
  </g>
138
- <!-- 8&#45;&gt;5 -->
119
+ <!-- 6&#45;&gt;4 -->
139
120
  <g id="edge13" class="edge">
140
- <title>8&#45;&gt;5</title>
141
- <path fill="none" stroke="black" d="M400.31,-215.87C392.95,-191.56 379.4,-146.82 370.68,-118.01"/>
142
- <polygon fill="black" stroke="black" points="373.95,-116.75 367.71,-108.19 367.25,-118.77 373.95,-116.75"/>
121
+ <title>6&#45;&gt;4</title>
122
+ <path fill="none" stroke="black" d="M181.41,-215.53C166.89,-207.06 152.12,-195.34 144,-180 136.51,-165.86 139.64,-159.39 144,-144 154.67,-106.33 180.26,-68.86 199.02,-44.92"/>
123
+ <polygon fill="black" stroke="black" points="201.6,-47.29 205.13,-37.31 196.14,-42.91 201.6,-47.29"/>
124
+ </g>
125
+ <!-- 6&#45;&gt;5 -->
126
+ <g id="edge12" class="edge">
127
+ <title>6&#45;&gt;5</title>
128
+ <path fill="none" stroke="black" d="M221.75,-215.7C221.65,-208.41 221.52,-199.73 221.41,-191.54"/>
129
+ <polygon fill="black" stroke="black" points="224.91,-191.57 221.27,-181.62 217.91,-191.67 224.91,-191.57"/>
143
130
  </g>
144
- <!-- 8&#45;&gt;6 -->
131
+ <!-- 7&#45;&gt;0 -->
145
132
  <g id="edge16" class="edge">
146
- <title>8&#45;&gt;6</title>
147
- <path fill="none" stroke="black" d="M413.59,-215.56C426.78,-184.32 448.83,-117.84 421.5,-72 413.54,-58.64 400.91,-48.45 387.34,-40.75"/>
148
- <polygon fill="black" stroke="black" points="388.8,-37.56 378.32,-36.04 385.56,-43.77 388.8,-37.56"/>
133
+ <title>7&#45;&gt;0</title>
134
+ <path fill="none" stroke="black" d="M294.08,-324.26C279.5,-333.23 260.5,-344.31 243.14,-354"/>
135
+ <polygon fill="black" stroke="black" points="241.54,-350.89 234.48,-358.78 244.93,-357.01 241.54,-350.89"/>
149
136
  </g>
150
- <!-- 8&#45;&gt;7 -->
151
- <g id="edge15" class="edge">
152
- <title>8&#45;&gt;7</title>
153
- <path fill="none" stroke="black" d="M360.88,-217.98C330.78,-207.86 290.71,-194.37 257.79,-183.29"/>
154
- <polygon fill="black" stroke="black" points="258.86,-179.96 248.26,-180.08 256.62,-186.59 258.86,-179.96"/>
137
+ <!-- 7&#45;&gt;3 -->
138
+ <g id="edge14" class="edge">
139
+ <title>7&#45;&gt;3</title>
140
+ <path fill="none" stroke="black" d="M318.57,-287.61C319.46,-258.08 320.99,-196.26 320,-144 319.85,-136.05 319.57,-127.44 319.27,-119.51"/>
141
+ <polygon fill="black" stroke="black" points="322.78,-119.54 318.87,-109.69 315.78,-119.83 322.78,-119.54"/>
155
142
  </g>
156
- <!-- 9&#45;&gt;1 -->
157
- <g id="edge19" class="edge">
158
- <title>9&#45;&gt;1</title>
159
- <path fill="none" stroke="black" d="M317.4,-324.1C318.2,-331.79 318.44,-341.05 318.1,-349.67"/>
160
- <polygon fill="black" stroke="black" points="314.61,-349.48 317.42,-359.7 321.59,-349.96 314.61,-349.48"/>
143
+ <!-- 7&#45;&gt;4 -->
144
+ <g id="edge18" class="edge">
145
+ <title>7&#45;&gt;4</title>
146
+ <path fill="none" stroke="black" d="M331.1,-287.73C360.65,-246.5 426.21,-140.69 377,-72 361.19,-49.92 335.65,-36.93 309.77,-29.32"/>
147
+ <polygon fill="black" stroke="black" points="310.71,-25.95 300.15,-26.77 308.92,-32.72 310.71,-25.95"/>
161
148
  </g>
162
- <!-- 9&#45;&gt;5 -->
149
+ <!-- 7&#45;&gt;5 -->
163
150
  <g id="edge17" class="edge">
164
- <title>9&#45;&gt;5</title>
165
- <path fill="none" stroke="black" d="M315.59,-287.85C324.43,-250.75 345.39,-162.81 356.04,-118.1"/>
166
- <polygon fill="black" stroke="black" points="359.48,-118.77 358.39,-108.23 352.67,-117.15 359.48,-118.77"/>
167
- </g>
168
- <!-- 9&#45;&gt;6 -->
169
- <g id="edge21" class="edge">
170
- <title>9&#45;&gt;6</title>
171
- <path fill="none" stroke="black" d="M308.43,-287.86C302.03,-249.05 288.97,-151.64 303.5,-72 305.11,-63.2 308.1,-53.95 311.29,-45.7"/>
172
- <polygon fill="black" stroke="black" points="314.62,-46.79 315.19,-36.21 308.15,-44.12 314.62,-46.79"/>
173
- </g>
174
- <!-- 9&#45;&gt;7 -->
175
- <g id="edge20" class="edge">
176
- <title>9&#45;&gt;7</title>
177
- <path fill="none" stroke="black" d="M297.75,-287.87C277.81,-263.03 240.73,-216.85 217.68,-188.14"/>
178
- <polygon fill="black" stroke="black" points="220.29,-185.8 211.3,-180.19 214.83,-190.18 220.29,-185.8"/>
179
- </g>
180
- <!-- 9&#45;&gt;8 -->
181
- <g id="edge18" class="edge">
182
- <title>9&#45;&gt;8</title>
183
- <path fill="none" stroke="black" d="M334.74,-287.7C346.69,-278.8 361.42,-267.82 374.35,-258.2"/>
184
- <polygon fill="black" stroke="black" points="376.6,-260.88 382.53,-252.1 372.42,-255.27 376.6,-260.88"/>
151
+ <title>7&#45;&gt;5</title>
152
+ <path fill="none" stroke="black" d="M311.96,-287.6C304.98,-268.89 292.34,-238.77 276,-216 268.79,-205.96 259.54,-196.2 250.69,-187.86"/>
153
+ <polygon fill="black" stroke="black" points="253.28,-185.48 243.53,-181.34 248.57,-190.66 253.28,-185.48"/>
154
+ </g>
155
+ <!-- 7&#45;&gt;6 -->
156
+ <g id="edge15" class="edge">
157
+ <title>7&#45;&gt;6</title>
158
+ <path fill="none" stroke="black" d="M294.27,-287.7C282.38,-279.03 267.81,-268.4 254.86,-258.96"/>
159
+ <polygon fill="black" stroke="black" points="257.16,-256.3 247.01,-253.24 253.03,-261.96 257.16,-256.3"/>
185
160
  </g>
186
161
  </g>
187
162
  </svg>
@@ -0,0 +1,5 @@
1
+ # Run this from the repo root
2
+ cargo depgraph \
3
+ --focus temporal-sdk,temporal-sdk-core-protos,temporal-client,temporal-sdk-core-api,temporal-sdk-core,rustfsm \
4
+ --dev-deps \
5
+ | dot -Tsvg > etc/deps.svg
@@ -4,7 +4,7 @@ error[E0277]: the trait bound `One: From<Two>` is not satisfied
4
4
  11 | Two --(B)--> One;
5
5
  | ^^^ the trait `From<Two>` is not implemented for `One`
6
6
  |
7
- = note: required because of the requirements on the impl of `Into<One>` for `Two`
7
+ = note: required for `Two` to implement `Into<One>`
8
8
  note: required by a bound in `TransitionResult::<Sm, Ds>::from`
9
9
  --> $WORKSPACE/fsm/rustfsm_trait/src/lib.rs
10
10
  |
@@ -1,8 +1,5 @@
1
1
  version: v1
2
2
  breaking:
3
- ignore:
4
- - temporal/api/schedule/v1
5
- - temporal/api/update/v1
6
3
  use:
7
4
  - PACKAGE
8
5
  lint:
@@ -0,0 +1,7 @@
1
+ module build
2
+
3
+ go 1.18
4
+
5
+ require (
6
+ github.com/temporalio/gogo-protobuf v1.22.1
7
+ )
@@ -0,0 +1,5 @@
1
+ github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00=
2
+ github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
3
+ github.com/temporalio/gogo-protobuf v1.22.1 h1:K5ja5MqmCQKo4tlX7u3g+ZJqbvRr0589ss2cZQx2dSM=
4
+ github.com/temporalio/gogo-protobuf v1.22.1/go.mod h1:tCaEv+fB8tsyLgoaqKr78K/JOhdRe684yyo0z30SHyA=
5
+ golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
@@ -2,6 +2,8 @@
2
2
  //
3
3
  // Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
4
4
  //
5
+ // Copyright (c) 2020 Uber Technologies, Inc.
6
+ //
5
7
  // Permission is hereby granted, free of charge, to any person obtaining a copy
6
8
  // of this software and associated documentation files (the "Software"), to deal
7
9
  // in the Software without restriction, including without limitation the rights
@@ -20,27 +22,8 @@
20
22
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
23
  // THE SOFTWARE.
22
24
 
23
- syntax = "proto3";
24
-
25
- package temporal.api.update.v1;
26
-
27
- option go_package = "go.temporal.io/api/update/v1;update";
28
- option java_package = "io.temporal.api.update.v1";
29
- option java_multiple_files = true;
30
- option java_outer_classname = "MessageProto";
31
- option ruby_package = "Temporal::Api::Update::V1";
32
- option csharp_namespace = "Temporal.Api.Update.V1";
33
-
34
- import "temporal/api/common/v1/message.proto";
35
-
36
- message WorkflowUpdate {
37
- // Headers that are passed with the update to the processing workflow.
38
- // These can include things like auth or tracing tokens.
39
- temporal.api.common.v1.Header header = 1;
40
-
41
- // The name of the update function to invoke on the target workflow.
42
- string name = 2;
25
+ package build
43
26
 
44
- // The arguments to pass to the named update function.
45
- temporal.api.common.v1.Payloads args = 3;
46
- }
27
+ import (
28
+ _ "github.com/temporalio/gogo-protobuf/gogoproto" // gogoproto is just a random package name for module.
29
+ )
@@ -0,0 +1,6 @@
1
+ // There is special go module in `build` directory that is used to control tools versions.
2
+ // This file exists because go 1.18 doesn't allow go sub modules if root dirrectory is not a go module.
3
+
4
+ module api
5
+
6
+ go 1.18
@@ -28,8 +28,8 @@ option go_package = "go.temporal.io/api/batch/v1;batch";
28
28
  option java_package = "io.temporal.api.batch.v1";
29
29
  option java_multiple_files = true;
30
30
  option java_outer_classname = "MessageProto";
31
- option ruby_package = "Temporal::Api::Batch::V1";
32
- option csharp_namespace = "Temporal.Api.Batch.V1";
31
+ option ruby_package = "Temporalio::Api::Batch::V1";
32
+ option csharp_namespace = "Temporalio.Api.Batch.V1";
33
33
 
34
34
  import "dependencies/gogoproto/gogo.proto";
35
35
  import "google/protobuf/timestamp.proto";
@@ -53,12 +53,10 @@ message BatchOperationInfo {
53
53
  // Keep the parameter in sync with temporal.api.workflowservice.v1.TerminateWorkflowExecutionRequest.
54
54
  // Ignore first_execution_run_id because this is used for single workflow operation.
55
55
  message BatchOperationTermination {
56
- // Reason of terminate workflows
57
- string reason = 1;
58
56
  // Serialized value(s) to provide to the termination event
59
- temporal.api.common.v1.Payloads details = 2;
57
+ temporal.api.common.v1.Payloads details = 1;
60
58
  // The identity of the worker/client
61
- string identity = 3;
59
+ string identity = 2;
62
60
  }
63
61
 
64
62
  // BatchOperationSignal sends signals to batch workflows.
@@ -79,8 +77,13 @@ message BatchOperationSignal {
79
77
  // Keep the parameter in sync with temporal.api.workflowservice.v1.RequestCancelWorkflowExecutionRequest.
80
78
  // Ignore first_execution_run_id because this is used for single workflow operation.
81
79
  message BatchOperationCancellation {
82
- // Reason of cancel workflows
83
- string reason = 1;
84
80
  // The identity of the worker/client
85
- string identity = 2;
81
+ string identity = 1;
82
+ }
83
+
84
+ // BatchOperationDeletion sends deletion requests to batch workflows.
85
+ // Keep the parameter in sync with temporal.api.workflowservice.v1.DeleteWorkflowExecutionRequest.
86
+ message BatchOperationDeletion {
87
+ // The identity of the worker/client
88
+ string identity = 1;
86
89
  }
@@ -28,8 +28,8 @@ option go_package = "go.temporal.io/api/command/v1;command";
28
28
  option java_package = "io.temporal.api.command.v1";
29
29
  option java_multiple_files = true;
30
30
  option java_outer_classname = "MessageProto";
31
- option ruby_package = "Temporal::Api::Command::V1";
32
- option csharp_namespace = "Temporal.Api.Command.V1";
31
+ option ruby_package = "Temporalio::Api::Command::V1";
32
+ option csharp_namespace = "Temporalio.Api.Command.V1";
33
33
 
34
34
  import "google/protobuf/duration.proto";
35
35
 
@@ -37,9 +37,9 @@ import "dependencies/gogoproto/gogo.proto";
37
37
 
38
38
  import "temporal/api/enums/v1/workflow.proto";
39
39
  import "temporal/api/enums/v1/command_type.proto";
40
- import "temporal/api/enums/v1/update.proto";
41
40
  import "temporal/api/common/v1/message.proto";
42
41
  import "temporal/api/failure/v1/message.proto";
42
+ import "temporal/api/interaction/v1/message.proto";
43
43
  import "temporal/api/taskqueue/v1/message.proto";
44
44
 
45
45
  message ScheduleActivityTaskCommandAttributes {
@@ -155,6 +155,13 @@ message UpsertWorkflowSearchAttributesCommandAttributes {
155
155
  temporal.api.common.v1.SearchAttributes search_attributes = 1;
156
156
  }
157
157
 
158
+ message ModifyWorkflowPropertiesCommandAttributes {
159
+ // If set, update the workflow memo with the provided values. The values will be merged with
160
+ // the existing memo. If the user wants to delete values, a default/empty Payload should be
161
+ // used as the value for the key being deleted.
162
+ temporal.api.common.v1.Memo upserted_memo = 1;
163
+ }
164
+
158
165
  message RecordMarkerCommandAttributes {
159
166
  string marker_name = 1;
160
167
  map<string, temporal.api.common.v1.Payloads> details = 2;
@@ -215,26 +222,18 @@ message StartChildWorkflowExecutionCommandAttributes {
215
222
  }
216
223
 
217
224
  message AcceptWorkflowUpdateCommandAttributes {
218
- // A unique identifier for an update within a given workflow context
219
- string update_id = 1;
225
+ temporal.api.interaction.v1.Meta meta = 1;
226
+ temporal.api.interaction.v1.Input input = 2;
220
227
  }
221
228
 
222
229
  message CompleteWorkflowUpdateCommandAttributes {
223
- // A unique identifier for an update within a given workflow context
224
- string update_id = 1;
225
-
226
- // Whether the server should attempt to bypass making this update rejection
227
- // durable in history. This field is only consulted when the result field
228
- // indicates failure. Leaving this field in its default state (i.e.
229
- // UPDATE_WORKFLOW_REJECTION_DURABILITY_PREFERENCE_UNSPECIFIED) will result
230
- // in making the rejection durable.
231
- temporal.api.enums.v1.WorkflowUpdateDurabilityPreference durability_preference = 2;
230
+ temporal.api.interaction.v1.Meta meta = 1;
231
+ temporal.api.interaction.v1.Output output = 2;
232
+ }
232
233
 
233
- // The success or failure output of the update
234
- oneof result {
235
- temporal.api.common.v1.Payloads success = 3;
236
- temporal.api.failure.v1.Failure failure = 4;
237
- }
234
+ message RejectWorkflowUpdateCommandAttributes {
235
+ temporal.api.interaction.v1.Meta meta = 1;
236
+ temporal.api.failure.v1.Failure failure = 2;
238
237
  }
239
238
 
240
239
  message Command {
@@ -255,5 +254,7 @@ message Command {
255
254
  UpsertWorkflowSearchAttributesCommandAttributes upsert_workflow_search_attributes_command_attributes = 14;
256
255
  AcceptWorkflowUpdateCommandAttributes accept_workflow_update_command_attributes = 15;
257
256
  CompleteWorkflowUpdateCommandAttributes complete_workflow_update_command_attributes = 16;
257
+ ModifyWorkflowPropertiesCommandAttributes modify_workflow_properties_command_attributes = 17;
258
+ RejectWorkflowUpdateCommandAttributes reject_workflow_update_command_attributes = 18;
258
259
  }
259
260
  }
@@ -28,8 +28,8 @@ option go_package = "go.temporal.io/api/common/v1;common";
28
28
  option java_package = "io.temporal.api.common.v1";
29
29
  option java_multiple_files = true;
30
30
  option java_outer_classname = "MessageProto";
31
- option ruby_package = "Temporal::Api::Common::V1";
32
- option csharp_namespace = "Temporal.Api.Common.V1";
31
+ option ruby_package = "Temporalio::Api::Common::V1";
32
+ option csharp_namespace = "Temporalio.Api.Common.V1";
33
33
 
34
34
  import "google/protobuf/duration.proto";
35
35
 
@@ -28,14 +28,15 @@ option go_package = "go.temporal.io/api/enums/v1;enums";
28
28
  option java_package = "io.temporal.api.enums.v1";
29
29
  option java_multiple_files = true;
30
30
  option java_outer_classname = "BatchOperationProto";
31
- option ruby_package = "Temporal::Api::Enums::V1";
32
- option csharp_namespace = "Temporal.Api.Enums.V1";
31
+ option ruby_package = "Temporalio::Api::Enums::V1";
32
+ option csharp_namespace = "Temporalio.Api.Enums.V1";
33
33
 
34
34
  enum BatchOperationType {
35
35
  BATCH_OPERATION_TYPE_UNSPECIFIED = 0;
36
36
  BATCH_OPERATION_TYPE_TERMINATE = 1;
37
37
  BATCH_OPERATION_TYPE_CANCEL = 2;
38
38
  BATCH_OPERATION_TYPE_SIGNAL = 3;
39
+ BATCH_OPERATION_TYPE_DELETE = 4;
39
40
  }
40
41
 
41
42
  enum BatchOperationState {