dex-python-sdk 0.0.2__cp311-abi3-win_amd64.whl

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 (121) hide show
  1. dex/__init__.py +146 -0
  2. dex/_grpc_errors.py +73 -0
  3. dex/_invocation_context.py +269 -0
  4. dex/_native.pyd +0 -0
  5. dex/_native.pyi +20 -0
  6. dex/_utils.py +18 -0
  7. dex/_value_hydrator.py +223 -0
  8. dex/_value_mapper.py +174 -0
  9. dex/_worker_dispatcher.py +451 -0
  10. dex/_worker_service.py +60 -0
  11. dex/attribute.py +87 -0
  12. dex/blob_cache.py +73 -0
  13. dex/channel.py +165 -0
  14. dex/client.py +715 -0
  15. dex/client_options.py +19 -0
  16. dex/codec.py +286 -0
  17. dex/command_request.py +120 -0
  18. dex/command_results.py +107 -0
  19. dex/communication.py +136 -0
  20. dex/communication_schema.py +54 -0
  21. dex/condition.py +74 -0
  22. dex/context.py +86 -0
  23. dex/data_attributes.py +70 -0
  24. dex/dexpb/__init__.py +1 -0
  25. dex/dexpb/dex_pb2.py +381 -0
  26. dex/dexpb/dex_pb2.pyi +1734 -0
  27. dex/dexpb/dex_pb2_grpc.py +1298 -0
  28. dex/errors.py +109 -0
  29. dex/flow.py +456 -0
  30. dex/flow_config.py +29 -0
  31. dex/flow_info.py +51 -0
  32. dex/flow_options.py +122 -0
  33. dex/object_encoder.py +799 -0
  34. dex/persistence.py +89 -0
  35. dex/persistence_options.py +12 -0
  36. dex/persistence_schema.py +51 -0
  37. dex/py.typed +1 -0
  38. dex/registry.py +204 -0
  39. dex/reset_workflow_type_and_options.py +67 -0
  40. dex/rpc.py +93 -0
  41. dex/runtime_errors.py +81 -0
  42. dex/search_attributes.py +184 -0
  43. dex/state_decision.py +153 -0
  44. dex/state_execution_locals.py +66 -0
  45. dex/state_movement.py +115 -0
  46. dex/state_schema.py +48 -0
  47. dex/step.py +194 -0
  48. dex/step_execution.py +42 -0
  49. dex/stop_workflow_options.py +18 -0
  50. dex/tests/__init__.py +80 -0
  51. dex/tests/dex-service-env/.env +7 -0
  52. dex/tests/dex-service-env/docker-compose-init.sh +44 -0
  53. dex/tests/dex-service-env/docker-compose.yml +97 -0
  54. dex/tests/dex-service-env/dynamicconfig/README.md +39 -0
  55. dex/tests/dex-service-env/dynamicconfig/development-sql.yaml +9 -0
  56. dex/tests/dex-service-env/dynamicconfig/docker.yaml +2 -0
  57. dex/tests/test_abnormal_exit_workflow.py +43 -0
  58. dex/tests/test_basic_workflow.py +70 -0
  59. dex/tests/test_conditional_complete.py +50 -0
  60. dex/tests/test_describe_workflow.py +40 -0
  61. dex/tests/test_empty_data_decodes_properly.py +74 -0
  62. dex/tests/test_internal_channel.py +28 -0
  63. dex/tests/test_internal_channel_with_no_prefix_channel.py +41 -0
  64. dex/tests/test_persistence_data_attributes.py +62 -0
  65. dex/tests/test_persistence_search_attributes.py +127 -0
  66. dex/tests/test_persistence_state_execution_locals.py +38 -0
  67. dex/tests/test_rpc.py +64 -0
  68. dex/tests/test_rpc_with_memo.py +195 -0
  69. dex/tests/test_rpc_with_memo_duplicate_java_tests.py +117 -0
  70. dex/tests/test_signal.py +51 -0
  71. dex/tests/test_skip_wait_until.py +76 -0
  72. dex/tests/test_state_failure_recovery.py +28 -0
  73. dex/tests/test_timer.py +35 -0
  74. dex/tests/test_wait_for_state_execution_completion.py +53 -0
  75. dex/tests/test_workflow_errors.py +87 -0
  76. dex/tests/test_workflow_state_options.py +118 -0
  77. dex/tests/test_workflow_state_options_override.py +44 -0
  78. dex/tests/worker_server.py +64 -0
  79. dex/tests/workflows/abnormal_exit_workflow.py +42 -0
  80. dex/tests/workflows/basic_workflow.py +62 -0
  81. dex/tests/workflows/conditional_complete_workflow.py +95 -0
  82. dex/tests/workflows/describe_workflow.py +46 -0
  83. dex/tests/workflows/empty_data_workflow.py +45 -0
  84. dex/tests/workflows/internal_channel_workflow.py +129 -0
  85. dex/tests/workflows/internal_channel_workflow_with_no_prefix_channel.py +100 -0
  86. dex/tests/workflows/java_duplicate_rpc_memo_workflow.py +276 -0
  87. dex/tests/workflows/persistence_data_attributes_workflow.py +98 -0
  88. dex/tests/workflows/persistence_search_attributes_workflow.py +159 -0
  89. dex/tests/workflows/persistence_state_execution_local_workflow.py +63 -0
  90. dex/tests/workflows/recovery_workflow.py +82 -0
  91. dex/tests/workflows/rpc_memo_workflow.py +231 -0
  92. dex/tests/workflows/rpc_workflow.py +117 -0
  93. dex/tests/workflows/state_options_override_workflow.py +93 -0
  94. dex/tests/workflows/state_options_workflow.py +84 -0
  95. dex/tests/workflows/timer_workflow.py +46 -0
  96. dex/tests/workflows/wait_for_state_with_state_execution_id_workflow.py +70 -0
  97. dex/tests/workflows/wait_for_state_with_wait_for_key_workflow.py +71 -0
  98. dex/tests/workflows/wait_internal_channel_workflow.py +47 -0
  99. dex/tests/workflows/wait_signal_workflow.py +147 -0
  100. dex/timer.py +21 -0
  101. dex/type_store.py +99 -0
  102. dex/unregistered_client.py +585 -0
  103. dex/utils/__init__.py +3 -0
  104. dex/utils/dex_typing.py +25 -0
  105. dex/utils/persistence_utils.py +32 -0
  106. dex/wait.py +49 -0
  107. dex/worker.py +121 -0
  108. dex/worker_options.py +22 -0
  109. dex/worker_service.py +432 -0
  110. dex/workflow.py +79 -0
  111. dex/workflow_context.py +44 -0
  112. dex/workflow_info.py +16 -0
  113. dex/workflow_options.py +74 -0
  114. dex/workflow_state.py +123 -0
  115. dex/workflow_state_options.py +154 -0
  116. dex_python_sdk-0.0.2.dist-info/METADATA +202 -0
  117. dex_python_sdk-0.0.2.dist-info/RECORD +121 -0
  118. dex_python_sdk-0.0.2.dist-info/WHEEL +4 -0
  119. dex_python_sdk-0.0.2.dist-info/licenses/LEGACY_NOTICES.md +61 -0
  120. dex_python_sdk-0.0.2.dist-info/licenses/LICENSE +192 -0
  121. dex_python_sdk-0.0.2.dist-info/sboms/dex-blob-cache-python.cyclonedx.json +2406 -0
@@ -0,0 +1,121 @@
1
+ dex/__init__.py,sha256=9r-nQgyYNe725IMVpdKZOQlZoj3Pvq9NdyC70UMCxkA,3341
2
+ dex/_grpc_errors.py,sha256=7efT84i1tWcs7D1FGlLT7q-00mMBoPI8JIev0hVBL14,2581
3
+ dex/_invocation_context.py,sha256=mq3deer6j3BuMftx6AwHLz1uizSjykQEsznFamMJpSQ,9682
4
+ dex/_native.pyd,sha256=2425BLKIvxwAG40lI5Stk9ecsfN2WBXlNKGPocpiv18,876544
5
+ dex/_native.pyi,sha256=C89fFxBtPtH2KuXPwsEstVHS-8_U8uVJNxT5sTFI7Aw,679
6
+ dex/_utils.py,sha256=lUi1IbDiAe04Cfh7eTQ0MQqLby3kEVlyYjn1DGCryCQ,596
7
+ dex/_value_hydrator.py,sha256=gD95jcHquiHXmeh0OFLnS0eQ9RBCwYDColt0UM540yo,8436
8
+ dex/_value_mapper.py,sha256=rNWE-yRtXDsqi0jtiR8xhyQDQKEuzq87_RaKEsd_eiU,7050
9
+ dex/_worker_dispatcher.py,sha256=GFa0Iz-nrGdyuoeP_FFR2jq2PmMORxRuHY3G4iN73sk,18321
10
+ dex/_worker_service.py,sha256=fPPrHo2Z36GYJsqFy20OmJ9BOVb-kUGV1CEsXcfiWQs,2011
11
+ dex/attribute.py,sha256=4AVcURGwqDKeIlJhGfI5BidMGIszUxdVMSQb-e-s86c,2435
12
+ dex/blob_cache.py,sha256=kPWPPg-4LRaccJYQ2p1fez1waLZF_NW_9iVP8UTqQo8,2127
13
+ dex/channel.py,sha256=eErXQn7km-VmGjSDSPOeVksuXCy5zDl1rQTUhgMhe20,4533
14
+ dex/client.py,sha256=dYcGJxGTmq3PuG59Q7LdKry02gtM0mMDbBZvUEQcreo,25307
15
+ dex/client_options.py,sha256=5Gehmt6zzHh5nUbhdimp9BFlxQFGyBgG2yhZXNhOQ28,581
16
+ dex/codec.py,sha256=zjoCF-C8eQubPryjj29yckupxMCZsICzZdyUoCi8zug,9536
17
+ dex/command_request.py,sha256=jEZHb4S5sCa_9JVz5guPgwfRfvgI7RelK3l2jWTkTxU,4280
18
+ dex/command_results.py,sha256=v-IutjwQMV4QDv3RRClS-HRchxBnDu106pgniIxr7HA,3748
19
+ dex/communication.py,sha256=RZ5oGuZILGdtOaOHaNUfzSgpjVaMWMn4clchFT32B6c,5413
20
+ dex/communication_schema.py,sha256=OcA4lLbvA80HkiYSY-DMB4CraV_xqoFiBKSPucDlRyY,1649
21
+ dex/condition.py,sha256=7SOrOJnFrUMJbb-bX7q176zs-cEEAx9gnOrM5QC2bBo,2367
22
+ dex/context.py,sha256=EA81YBbHE2rKUqvmTibuE2pzgYn4_bwSQ8FJuiaoisg,2306
23
+ dex/data_attributes.py,sha256=8-0fPscUMSjYxPkSofcLOErsQrIr1UqNGA8FiN5haMY,2650
24
+ dex/dexpb/__init__.py,sha256=QGJzsigE_PSLvDHtBPPWgzJCMZw7cNI1Z3BLWNVLRag,45
25
+ dex/dexpb/dex_pb2.py,sha256=ZK_okh8ql-N-fQV9SRmvvZAOtfC0Spy89eBwpY1X8xA,63705
26
+ dex/dexpb/dex_pb2.pyi,sha256=FzaCnV62s_5SbRVuLGO4ZnAk5LYV2hgjJ7eXw0V482s,101751
27
+ dex/dexpb/dex_pb2_grpc.py,sha256=1WcsPlfKxcy7s4bhm-mKvPYejXWyl9p5rFJcJ0udSPs,53833
28
+ dex/errors.py,sha256=JzUU5P_AS-N_Xn0EkwOAInjcQRLQfDplsJAvmwKMi-M,3457
29
+ dex/flow.py,sha256=QZnXwXsU7vssi0Y4qs6QQYZP1ZIzqVP8jY7JGqIZFNU,16881
30
+ dex/flow_config.py,sha256=6O67XRIN99Rg6eBhOfHc-o2iPX06W3OZ1NcxR5CsMdk,883
31
+ dex/flow_info.py,sha256=LrFzIaAAnwM5Jm_BZ0O_5-2yGBO6imZ0KBpP9n62TNU,1148
32
+ dex/flow_options.py,sha256=Zw3SJDtWyO5qc8t_75BV-lSKTBJdO7Jfg-j9EJqKl7s,3697
33
+ dex/object_encoder.py,sha256=bIh_wX-UyEAF5JEu4sO2K9JQB1Up_WIK3V_TH67xL1Y,27949
34
+ dex/persistence.py,sha256=wFBlrQDfYstgsBGNByWz6BbGpoeTt1-VpyNG2t7UEC4,3906
35
+ dex/persistence_options.py,sha256=bvNThK2US1EE5qPK342K4c-bHC7e2TxwX23xWw2JTjs,290
36
+ dex/persistence_schema.py,sha256=RMQR6kkstl5BxGjr1kLo6MFs9EToO42Cgvlr3D3boIk,1663
37
+ dex/py.typed,sha256=TBDV9m9vjfnp9vsgTeJmpoNseoJEfHwvZaBLvLMfzz8,27
38
+ dex/registry.py,sha256=zlO_1uQvpcsYcYX5luesQ3n_O3XKm45pZFeCyMSmWNY,8770
39
+ dex/reset_workflow_type_and_options.py,sha256=rNJqkgEjUuhcn8i-uU_nZqlxG7cvFvQ471PrfTS6rF4,2095
40
+ dex/rpc.py,sha256=BSkeDCDfco_U_g70MObjzAQLEwDFNZJdqiVcW_qxrl8,3397
41
+ dex/runtime_errors.py,sha256=C_aoqDr94lyZemqq2ThJ0dE75OS2mZYhnKqj_W8A1nc,2451
42
+ dex/search_attributes.py,sha256=sABOb5xVoRe_qIAPhjpQcjCjfhWnfAefsgAr915tSiE,8487
43
+ dex/state_decision.py,sha256=VES54MVEGE9BelVOE8aa3fkwsVlmAGaIMsk6CxnYxvc,6404
44
+ dex/state_execution_locals.py,sha256=6meX6yumZsmM7-kS5DJ2_8L38as2fl6zqg6BYE1VyX0,2708
45
+ dex/state_movement.py,sha256=qyo1ylnuQKwa-zWiNkuBZEPSKkNIrZnJnnliswWm7C0,3915
46
+ dex/state_schema.py,sha256=W7rbInAUG_9OSx4Azq4AU1kLqUqYpWdnYSvPyhfnJMQ,1534
47
+ dex/step.py,sha256=P5HtBfrqG4XsAuDKSgja5vQZnpIwzT_6OQ0sjYf1JFA,5621
48
+ dex/step_execution.py,sha256=1ZLlGuO7sRPvQdAFf-G76Wo0r9Dhpq8r29SlHnhEpI4,1326
49
+ dex/stop_workflow_options.py,sha256=8PRNRNi5Inn-5_crG2BeRpIrLjRQwegGgu1ySDEAgiE,544
50
+ dex/tests/__init__.py,sha256=78NdDtS6HakqWjbKQ7fpI-pn9atikzWAT2kYrWWiivA,3521
51
+ dex/tests/dex-service-env/.env,sha256=JqX3VHp325pYAz7XLYzBcVLUAOi_pvRURCWOrGj3hzY,207
52
+ dex/tests/dex-service-env/docker-compose-init.sh,sha256=LsIZlD1riUW7pGmIx0AE9hg7DnXH_uxakoov0x-FjvU,1781
53
+ dex/tests/dex-service-env/docker-compose.yml,sha256=Kt7LPjOJV-czelr-65snokHcIzkbm7UQLUUFiL4SuHE,2963
54
+ dex/tests/dex-service-env/dynamicconfig/README.md,sha256=Rza37LAAF7TzIXWNUHcsAN82qTt4CXvYHY2La8k2iVM,1171
55
+ dex/tests/dex-service-env/dynamicconfig/development-sql.yaml,sha256=9C1smutwGGcvmwXN6pMoygxKOcetuJkVW8Y4xFzSNF4,294
56
+ dex/tests/dex-service-env/dynamicconfig/docker.yaml,sha256=cnwChi5F_M07YUMFBr5z0MUhrWjJj1qxj44aFxEYwtY,97
57
+ dex/tests/test_abnormal_exit_workflow.py,sha256=ZKnEJH6JNCtv3axDTSKlqsGrtbucH1nzxrZn68ik7Uc,1693
58
+ dex/tests/test_basic_workflow.py,sha256=4gx7WU4VQJe4fC5vz-_AIC9Mt1COYGOY30VAyoFoPqs,2420
59
+ dex/tests/test_conditional_complete.py,sha256=kGGBMr8ltnLmWnBbS6rdTwA370d_ANksaPfABoolbok,1767
60
+ dex/tests/test_describe_workflow.py,sha256=2cbPkAFjOYmiL-DA_a8FiyiNHjh7rkpWZHUQPiGIhDc,1422
61
+ dex/tests/test_empty_data_decodes_properly.py,sha256=lGg8NdUSOONQQZvlsyfMZInnJRfEnNAe20O25r_ffm8,2640
62
+ dex/tests/test_internal_channel.py,sha256=wlOa4j4m0npKV_-ipHF7LC1Yben1AVudgNaZL9NPPnM,971
63
+ dex/tests/test_internal_channel_with_no_prefix_channel.py,sha256=aP4H8fB5AU2tBGKgPr41gAFeihHAMPTae8ojX2xZHSk,1481
64
+ dex/tests/test_persistence_data_attributes.py,sha256=4sIrqR1YGAINHkCtMN4o0FPciNr9_ju1bARMaIPKL9k,2037
65
+ dex/tests/test_persistence_search_attributes.py,sha256=ybanoZnrRFQse8mOTYDW1adR0H43bINxC1MhEyD5cP4,5092
66
+ dex/tests/test_persistence_state_execution_locals.py,sha256=Gh43KgcDudj0Pl698g7q2JL8ILjVTa-0G766L-wf8yU,1388
67
+ dex/tests/test_rpc.py,sha256=cHllhmpPwazKWoDN2Age9Ct9omh6Xx8HqVc2GQ22-ms,2393
68
+ dex/tests/test_rpc_with_memo.py,sha256=Vung10V7X3Og9ag3Z02bA7qXo0JzO3QndSchsXQsR-c,7829
69
+ dex/tests/test_rpc_with_memo_duplicate_java_tests.py,sha256=IwOonxTxDTuIASLzS7cog1EvP6P-hGf3jRtk1Hx7GDM,4241
70
+ dex/tests/test_signal.py,sha256=ojgfQ3B2GoRC_N2JtzNJ8YAiYA0uQrkVkkawvWDYrDU,1872
71
+ dex/tests/test_skip_wait_until.py,sha256=lOeetMd8tZH5Y6qy7VswuArb_UcjIZkf9pV4NXgtAks,2409
72
+ dex/tests/test_state_failure_recovery.py,sha256=1nkPbgTdqlfNVGTz-v85dtj1kfiyqLpKw5n0S1M-OjE,954
73
+ dex/tests/test_timer.py,sha256=88boAsWOeJkTXygdu6T9eGmZ0dJinlIZTuTLZIoh3Tw,1227
74
+ dex/tests/test_wait_for_state_execution_completion.py,sha256=cqGPYtS_eAvr64ls5QcSlxlmpmCzFJumC17RFK1rD-s,1945
75
+ dex/tests/test_workflow_errors.py,sha256=W4R7wRmSnXiHAGfKM5AeRplQAx9SddvTy1MYrK1SBR8,3524
76
+ dex/tests/test_workflow_state_options.py,sha256=82feqDCE6YRKH_aGQp-r2kl57E-AVspF226EIZPOiyA,4648
77
+ dex/tests/test_workflow_state_options_override.py,sha256=oM1oz02xrn4oZQENXDPb1zlpeckF-gN0WiEPxmCUgZo,1406
78
+ dex/tests/worker_server.py,sha256=nRkhSXwanR3xrwFZegQ3TYZJT5Y_CUuCiA1EhQ-6zD0,2194
79
+ dex/tests/workflows/abnormal_exit_workflow.py,sha256=376zW5egT6JS47nGck6A63ooMPbDUT1Bw0uRb5n4Z2k,1535
80
+ dex/tests/workflows/basic_workflow.py,sha256=G1k0yDtSlgntrRG73p0nWljHtxZ90rjSs9D5TRrWMiA,2090
81
+ dex/tests/workflows/conditional_complete_workflow.py,sha256=Qa_6sFhz6QUxUulWydNkRP2pBUisqrOSEidx4HmJPeg,3421
82
+ dex/tests/workflows/describe_workflow.py,sha256=JODjIw1z3qEbBaIyzctjMUyo6Zcuuuq_qfQ-1fbmtKw,1561
83
+ dex/tests/workflows/empty_data_workflow.py,sha256=Tnrx8f5JLHn9p97MZ8yZqobiFMydoixCJdeH_h1L7A8,1619
84
+ dex/tests/workflows/internal_channel_workflow.py,sha256=-18eLOqYotmrgLma1P5eLIuNzi9-FoR7-86bgrBdLUM,4912
85
+ dex/tests/workflows/internal_channel_workflow_with_no_prefix_channel.py,sha256=q3oiHcRDmp0YhpD_SPIQ6h3XavFFGz2pizP41b4x588,3799
86
+ dex/tests/workflows/java_duplicate_rpc_memo_workflow.py,sha256=lPhe99VVJmiP25WhWZEKAVpSiIgrDAzUveAEC17fBkM,10018
87
+ dex/tests/workflows/persistence_data_attributes_workflow.py,sha256=MXVCcBn3-hcKf6kAZ_GDLnJXdRhr9ZHdrgDSthlKN-4,3764
88
+ dex/tests/workflows/persistence_search_attributes_workflow.py,sha256=MglWVK5SbEhcrg0gEvCsGtO_EtYgO1fPc5aGDiExIx8,5982
89
+ dex/tests/workflows/persistence_state_execution_local_workflow.py,sha256=TcWccO59gN2peyabCyUXDGtN0N_2YBrtrd9yyVSTyIw,2416
90
+ dex/tests/workflows/recovery_workflow.py,sha256=ChUm9BimNC3SIrF0lDUaG5JutgxumfkB_oX2mF398XI,2967
91
+ dex/tests/workflows/rpc_memo_workflow.py,sha256=3kmksi2NCuhQCK5tY24FhNr1uUg-0uUqpSzk0NEzT0A,8482
92
+ dex/tests/workflows/rpc_workflow.py,sha256=CZA_AfMrFlSzCM-aCHI0q4G9nNucbstMEHh49iNzd2w,3948
93
+ dex/tests/workflows/state_options_override_workflow.py,sha256=5b5cMJGCHRFtV8jYUFd6BVh2SkC7IOfmNgyGwW_y0L4,3356
94
+ dex/tests/workflows/state_options_workflow.py,sha256=CLutjWgxO6d-mlY2Odpgax7jSm7-lCfIEWh_DZI65Dg,3029
95
+ dex/tests/workflows/timer_workflow.py,sha256=0PSxyNzaTQAnvFCwvEd1Ltu0mgfh2ZCev-9HfvUAmLI,1612
96
+ dex/tests/workflows/wait_for_state_with_state_execution_id_workflow.py,sha256=6I4ji_f72FbfvwNlJdWUAIeuRdbd7R3M795ILJTfDZo,2400
97
+ dex/tests/workflows/wait_for_state_with_wait_for_key_workflow.py,sha256=hj1XIz28CJGLeh48qmrRHXGUTnVEW7NQSKHy3mGjStw,2397
98
+ dex/tests/workflows/wait_internal_channel_workflow.py,sha256=8rPAmG7qwnQF_-Pugyl0S20vICpnnJqdLSInf5y1P2Y,1636
99
+ dex/tests/workflows/wait_signal_workflow.py,sha256=Bt5jC5U0KyFw3VpgslK55kLy3mjinHA2uTXy-jWTBqw,5413
100
+ dex/timer.py,sha256=T3xKCvw3xVakNsPscqMDlmH8hwc-dKMZQurmZWiqa8o,607
101
+ dex/type_store.py,sha256=tKnWb5Vw8FyzrjYho36NoBS72rdjyx5uA2EHubHetqg,3357
102
+ dex/unregistered_client.py,sha256=_FpAWtK0rZmkEU9ls1qN6d1-1J8aN20URMBONASFz-M,22543
103
+ dex/utils/__init__.py,sha256=zPQ7PT2__fY5fwhER1C7hkARrJQb-lQxeLQmHrLFIec,99
104
+ dex/utils/dex_typing.py,sha256=WbyHhwVGgDkAiIPQAAK0m87xIRBYVuNVPPO2L3ByBBY,761
105
+ dex/utils/persistence_utils.py,sha256=G1KzmjdvMpL9Nbak5Ks7f5r9krKyFJWv_Wy3q4_BgFU,1353
106
+ dex/wait.py,sha256=MT8YbRp6LUUz-wH5jgayWMzpSgt7mvIsQlH8fqBTGas,1396
107
+ dex/worker.py,sha256=zp-RcVfNePd84LDO8Gei_UieYovCO0gih-dUxL3xZNY,4184
108
+ dex/worker_options.py,sha256=dSYvXOWeNjfNYobmuRsgH_qP7vHOS1cfj2R_Dkp6e_A,585
109
+ dex/worker_service.py,sha256=oUM0OFhsu4J3nhJDqMjzeN-3P7yD0KxvA6CmeM2XzUw,16670
110
+ dex/workflow.py,sha256=MWaoiuzrU_aZI0Bs7K1_L81FzeyooUDJxwk5OKTGKbI,3599
111
+ dex/workflow_context.py,sha256=5_ivEXLd90X7KaaaudKH_Lyb8kLJmZ6NtMfalzMH7fk,1606
112
+ dex/workflow_info.py,sha256=M0g21vCAA3IGpG3_T_zzlng8F9Xflsnmnl7AS3C8viI,527
113
+ dex/workflow_options.py,sha256=80ewB5IlD8iBCfnH98zcl1CdeNMsx320xKRxxtZ2PfE,2923
114
+ dex/workflow_state.py,sha256=_KH2zr8ADBuOURUMs8JSRTIstzfgDaM_GJfjWIQ5ZS8,5585
115
+ dex/workflow_state_options.py,sha256=FYPKGwNdOYoIdOaSbdrh5bb9LzdSR-iDJIlEUKg-og0,7512
116
+ dex_python_sdk-0.0.2.dist-info/METADATA,sha256=TRNAZLI9uCir-4so7-BAKwfimVaiyhHqcVu0f5MoE2E,6974
117
+ dex_python_sdk-0.0.2.dist-info/WHEEL,sha256=nv5WBZ27cxxDjIIqxBMqK2cOF025DwkFmqJGqL3SpXU,96
118
+ dex_python_sdk-0.0.2.dist-info/licenses/LEGACY_NOTICES.md,sha256=1MFxVtVOIqIJerloKkdk_ZbRsoUnok1uu5Mpl9m0-Zc,2422
119
+ dex_python_sdk-0.0.2.dist-info/licenses/LICENSE,sha256=d8c2WIeKBJueTKJCXFecni7vuIYYxT4fYsCh3PLoUEY,8933
120
+ dex_python_sdk-0.0.2.dist-info/sboms/dex-blob-cache-python.cyclonedx.json,sha256=GIPFQTqgVdZBLF9tqPR2ZcUoQ0roDMXaJ86kBsLGF60,98687
121
+ dex_python_sdk-0.0.2.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: maturin (1.14.1)
3
+ Root-Is-Purelib: false
4
+ Tag: cp311-abi3-win_amd64
@@ -0,0 +1,61 @@
1
+ # Legacy and third-party notices
2
+
3
+ The Super Durable Source License 1.0 applies only to material owned or
4
+ licensable by Super Durable, Inc. It does not replace the licenses below.
5
+
6
+ ## Legacy cutoff
7
+
8
+ The complete repository snapshot at commit
9
+ `1a61670238cbdc8f2a0a6dd78cc5668fb014f283`, including both parents of that
10
+ merge commit, is Legacy Materials. Later copies and adaptations retain the
11
+ applicable legacy license for their legacy portions.
12
+
13
+ At the cutoff, the principal directory licenses were:
14
+
15
+ | Cutoff path | Legacy license |
16
+ | --- | --- |
17
+ | `server/` | MIT |
18
+ | `sdk-go/` | Apache License 2.0 |
19
+ | `sdk-java/` | Apache License 2.0 |
20
+ | `sdk-python/` | Apache License 2.0 |
21
+ | `protos/` | MIT or Apache License 2.0, at the recipient's option |
22
+ | `samples-go/` | MIT |
23
+ | `samples-java/` | Apache License 2.0 |
24
+ | `samples-python/` | Apache License 2.0 |
25
+
26
+ The MIT and Apache License 2.0 texts are in `LICENSES/`. Historical copyright
27
+ and attribution notices remain authoritative and must be preserved. Git history
28
+ identifies the exact material present at the cutoff.
29
+
30
+ ## Excluded directories
31
+
32
+ This relicensing does not cover `docs/` or `examples/`.
33
+
34
+ - `examples/go/` remains under its existing MIT License.
35
+ - `examples/java/` and `examples/python/` remain under their existing Apache
36
+ License 2.0 terms.
37
+ - `docs/` retains its legacy copyright and licensing status. This repository
38
+ makes no new license grant for that directory.
39
+
40
+ ## Existing third-party notices
41
+
42
+ Some source files retain notices naming Cadence workflow OSS organization,
43
+ Uber Technologies, Inc., Indeed, Inc., individual contributors, or other
44
+ holders. Those notices and their accompanying licenses remain in force.
45
+
46
+ Dependencies not copied into this repository remain governed by the license
47
+ distributed with each dependency.
48
+
49
+ ## IWF Java SDK integration fixtures
50
+
51
+ The workflow and integration-test fixtures under these paths are adaptations
52
+ or translations of the `indeedeng/iwf-java-sdk` integration suite at commit
53
+ `8fa04457c0abcc4473300f17ea0a033d8f93ed88`:
54
+
55
+ - `sdk-java/src/test/java/io/superdurable/dex/integ/`
56
+ - `sdk-python/tests/integ/`
57
+ - `sdk-typescript/test/integ/`
58
+
59
+ The upstream portions remain licensed under the Apache License 2.0. Super
60
+ Durable modifications are licensed under the Super Durable Source License 1.0.
61
+ The Apache License 2.0 text is in `LICENSES/Apache-2.0.txt`.
@@ -0,0 +1,192 @@
1
+ Super Durable Source License 1.0
2
+
3
+ Copyright (c) 2026 Super Durable, Inc.
4
+
5
+ Acceptance
6
+
7
+ This agreement governs the Software made available by Super Durable, Inc.
8
+ ("Licensor"). By copying, modifying, distributing, or using the Software, You
9
+ accept this agreement. If You act for an entity, You represent that You have
10
+ authority to bind that entity, and "You" means that entity.
11
+
12
+ License Grant
13
+
14
+ Subject to this agreement, Licensor grants You a non-exclusive, worldwide,
15
+ non-transferable, non-sublicensable license to copy and modify the Software and
16
+ to use it for Non-Production Use.
17
+
18
+ Licensor also grants You a license to make Production Use when either:
19
+
20
+ 1. You are a Qualified User; or
21
+ 2. You have a current Subscription authorizing that Production Use.
22
+
23
+ If You cease to be a Qualified User, You may continue the same Production Use
24
+ for ninety (90) days after the end of the first fiscal year for which Your
25
+ Consolidated Annual Revenue exceeds the Revenue Threshold. After that grace
26
+ period, continued Production Use requires a Subscription.
27
+
28
+ The licenses in this section include the right to make, have made, use, sell,
29
+ offer for sale, and import the Software only under patent claims Licensor can
30
+ license that are necessarily infringed by the Software as provided by
31
+ Licensor. If You bring a written patent infringement claim concerning the
32
+ Software, this patent license terminates immediately.
33
+
34
+ Applications and Client Components
35
+
36
+ While otherwise complying with this agreement, You may distribute Client
37
+ Components, in source or object form, solely as an embedded or bundled part of
38
+ an Application. The Application must have a primary purpose other than
39
+ providing the Software, a Competitive Product, or a hosted Dex-compatible
40
+ service.
41
+
42
+ A recipient may run an Application containing Client Components without a
43
+ separate Subscription. This exception does not permit the recipient to extract,
44
+ modify, redistribute, or use Client Components independently, or to deploy or
45
+ operate other Software. A person that develops or operates an Application is
46
+ still subject to the Production Use and Revenue Threshold requirements.
47
+
48
+ Competitive Use
49
+
50
+ You may not make Competitive Use without a separate written commercial license
51
+ from Licensor. The Revenue Threshold, Qualified User status, grace period, and
52
+ Application exception do not authorize Competitive Use.
53
+
54
+ Source Collaboration
55
+
56
+ You may publicly host a source fork or distribute patches solely for
57
+ evaluation, internal development, or contribution to Licensor, provided You:
58
+
59
+ 1. do not make Production Use or Competitive Use through that distribution;
60
+ 2. preserve this agreement and all copyright, attribution, and license notices;
61
+ 3. identify files You modified; and
62
+ 4. apply this agreement to Your modifications to the Software.
63
+
64
+ No other redistribution of the Software or a Modified Version is permitted
65
+ except under the Application exception or a Subscription.
66
+
67
+ Legacy and Third-Party Materials
68
+
69
+ This agreement applies only to the Software and modifications owned or
70
+ licensable by Licensor. It does not replace or restrict any license applying to
71
+ Legacy Materials or Third-Party Materials. Those materials remain governed by
72
+ their respective licenses. Their notices and license texts must be preserved.
73
+ See LEGACY_NOTICES.md and accompanying third-party notices.
74
+
75
+ Commercial Licenses
76
+
77
+ A Subscription or other written commercial agreement may grant additional
78
+ rights. If its terms conflict with this agreement, the commercial agreement
79
+ controls only for the Software, use, and period it expressly covers. Contact
80
+ licensing@superdurable.io for a Subscription or Competitive Use license.
81
+
82
+ Restrictions and Obligations
83
+
84
+ You must not:
85
+
86
+ 1. remove or obscure copyright, license, attribution, or trademark notices;
87
+ 2. represent that Licensor endorses You or Your products;
88
+ 3. use Licensor's names, marks, or logos except to accurately identify the
89
+ origin of the Software; or
90
+ 4. enable another person to exercise rights that this agreement does not grant.
91
+
92
+ You are responsible for Your affiliates, contractors, and agents that use the
93
+ Software on Your behalf. You must comply with applicable export, import, and
94
+ sanctions laws.
95
+
96
+ Termination
97
+
98
+ Your rights terminate automatically if You breach this agreement. If the breach
99
+ is capable of cure and is neither intentional nor repeated, Your rights are
100
+ reinstated retroactively when You cure it within fifteen (15) days after the
101
+ breach. Intentional or repeated breaches permanently terminate Your rights
102
+ unless Licensor agrees otherwise in writing.
103
+
104
+ No Other Rights
105
+
106
+ Except for rights expressly granted here, Licensor reserves all rights. This
107
+ agreement grants no trademark rights and does not require Licensor to provide
108
+ support, maintenance, updates, or a Subscription.
109
+
110
+ Disclaimer
111
+
112
+ TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS" AND
113
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
114
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT,
115
+ ACCURACY, OR UNINTERRUPTED OR ERROR-FREE OPERATION.
116
+
117
+ Limitation of Liability
118
+
119
+ TO THE MAXIMUM EXTENT PERMITTED BY LAW, LICENSOR WILL NOT BE LIABLE FOR ANY
120
+ INDIRECT, SPECIAL, INCIDENTAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES,
121
+ OR FOR LOST PROFITS, REVENUE, DATA, OR BUSINESS INTERRUPTION. LICENSOR'S TOTAL
122
+ LIABILITY ARISING FROM THIS AGREEMENT OR THE SOFTWARE WILL NOT EXCEED ONE
123
+ HUNDRED U.S. DOLLARS (US$100), REGARDLESS OF THE LEGAL THEORY AND EVEN IF
124
+ LICENSOR WAS ADVISED THAT SUCH DAMAGES WERE POSSIBLE.
125
+
126
+ Governing Law
127
+
128
+ Delaware law and applicable United States federal law govern this agreement,
129
+ without regard to conflict-of-law rules. The state and federal courts located
130
+ in Delaware have exclusive jurisdiction. The United Nations Convention on
131
+ Contracts for the International Sale of Goods does not apply.
132
+
133
+ Definitions
134
+
135
+ "Affiliate" means an entity that directly or indirectly controls, is controlled
136
+ by, or is under common control with You. "Control" means ownership of more than
137
+ fifty percent (50%) of voting interests or the power to direct management.
138
+
139
+ "Application" means software developed for a business or end-user purpose whose
140
+ primary purpose is not to provide the Software or a Competitive Product.
141
+
142
+ "Client Components" means the SDK and protocol-definition portions of the
143
+ Software intended to be integrated into Applications.
144
+
145
+ "Competitive Product" means software or a service whose primary purpose is to
146
+ replace or provide substantially similar functionality to a Dex server, Dex
147
+ SDK, Dex command-line product, Dex web product, or a hosted Dex-compatible
148
+ service. An Application, connector, plug-in, or adapter that merely interoperates
149
+ with Dex is not a Competitive Product.
150
+
151
+ "Competitive Use" means developing, distributing, offering, or operating a
152
+ Competitive Product for any third party.
153
+
154
+ "Consolidated Annual Revenue" means the gross revenue of You and all Affiliates,
155
+ without double counting intercompany transactions, for the most recently
156
+ completed fiscal year, as determined under consistently applied GAAP or IFRS.
157
+ Non-U.S.-dollar revenue is converted to U.S. dollars using the exchange rate
158
+ used in the applicable consolidated financial statements. If You have no
159
+ completed fiscal year, use a good-faith annualization of revenue since formation.
160
+
161
+ "Legacy Cutoff" means Git commit
162
+ 1a61670238cbdc8f2a0a6dd78cc5668fb014f283 in the Software's repository.
163
+
164
+ "Legacy Materials" means material contained in the complete repository snapshot
165
+ at the Legacy Cutoff, including material reachable through either parent of that
166
+ merge commit, and later copies or adaptations of that material, to the extent
167
+ governed by a license other than this agreement.
168
+
169
+ "Modified Version" means any modification or derivative work of the Software.
170
+
171
+ "Non-Production Use" means design, prototyping, evaluation, testing, or
172
+ development that does not serve live end users, process live business workloads,
173
+ or support production operations.
174
+
175
+ "Production Use" means any use other than Non-Production Use.
176
+
177
+ "Qualified User" means You when Your Consolidated Annual Revenue does not exceed
178
+ the Revenue Threshold and You are not making Competitive Use.
179
+
180
+ "Revenue Threshold" means ten million U.S. dollars (US$10,000,000).
181
+
182
+ "Software" means files in this repository that include or refer to this
183
+ agreement, in source or object form, excluding the docs/ and examples/
184
+ directories, Legacy Materials, and Third-Party Materials.
185
+
186
+ "Subscription" means a current written commercial subscription or license from
187
+ Licensor that authorizes the applicable Production Use.
188
+
189
+ "Third-Party Materials" means material owned by a third party and provided under
190
+ separate license terms.
191
+
192
+ "You" means the individual or legal entity accepting this agreement.