UncountablePythonSDK 0.0.72__py3-none-any.whl → 0.0.74__py3-none-any.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.

Potentially problematic release.


This version of UncountablePythonSDK might be problematic. Click here for more details.

Files changed (117) hide show
  1. {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/METADATA +1 -1
  2. {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/RECORD +117 -117
  3. {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/WHEEL +1 -1
  4. examples/integration-server/jobs/materials_auto/profile.yaml +1 -1
  5. pkgs/argument_parser/__init__.py +1 -0
  6. pkgs/argument_parser/argument_parser.py +13 -1
  7. pkgs/serialization/serial_class.py +18 -0
  8. pkgs/serialization/serial_union.py +3 -0
  9. pkgs/type_spec/builder.py +70 -22
  10. pkgs/type_spec/config.py +5 -0
  11. pkgs/type_spec/emit_python.py +35 -22
  12. pkgs/type_spec/emit_typescript.py +31 -22
  13. pkgs/type_spec/emit_typescript_util.py +0 -2
  14. pkgs/type_spec/load_types.py +3 -2
  15. pkgs/type_spec/type_info/emit_type_info.py +7 -7
  16. pkgs/type_spec/util.py +1 -1
  17. uncountable/core/client.py +2 -2
  18. uncountable/integration/entrypoint.py +1 -9
  19. uncountable/integration/queue_runner/worker.py +9 -5
  20. uncountable/integration/server.py +63 -66
  21. uncountable/types/api/batch/execute_batch.py +8 -0
  22. uncountable/types/api/batch/execute_batch_load_async.py +7 -0
  23. uncountable/types/api/chemical/convert_chemical_formats.py +7 -0
  24. uncountable/types/api/entity/create_entities.py +11 -1
  25. uncountable/types/api/entity/create_entity.py +8 -1
  26. uncountable/types/api/entity/get_entities_data.py +10 -0
  27. uncountable/types/api/entity/list_entities.py +8 -0
  28. uncountable/types/api/entity/lock_entity.py +7 -0
  29. uncountable/types/api/entity/resolve_entity_ids.py +10 -0
  30. uncountable/types/api/entity/set_values.py +7 -0
  31. uncountable/types/api/entity/transition_entity_phase.py +8 -0
  32. uncountable/types/api/entity/unlock_entity.py +7 -0
  33. uncountable/types/api/equipment/associate_equipment_input.py +7 -0
  34. uncountable/types/api/field_options/upsert_field_options.py +10 -0
  35. uncountable/types/api/id_source/list_id_source.py +10 -0
  36. uncountable/types/api/id_source/match_id_source.py +10 -0
  37. uncountable/types/api/input_groups/get_input_group_names.py +10 -0
  38. uncountable/types/api/inputs/create_inputs.py +13 -0
  39. uncountable/types/api/inputs/get_input_data.py +19 -0
  40. uncountable/types/api/inputs/get_input_names.py +10 -0
  41. uncountable/types/api/inputs/get_inputs_data.py +19 -0
  42. uncountable/types/api/inputs/set_input_attribute_values.py +7 -0
  43. uncountable/types/api/inputs/set_input_category.py +7 -0
  44. uncountable/types/api/inputs/set_input_subcategories.py +7 -0
  45. uncountable/types/api/inputs/set_intermediate_type.py +7 -0
  46. uncountable/types/api/material_families/update_entity_material_families.py +7 -0
  47. uncountable/types/api/outputs/get_output_data.py +16 -0
  48. uncountable/types/api/outputs/get_output_names.py +10 -0
  49. uncountable/types/api/outputs/resolve_output_conditions.py +13 -0
  50. uncountable/types/api/permissions/set_core_permissions.py +10 -0
  51. uncountable/types/api/project/get_projects.py +10 -0
  52. uncountable/types/api/project/get_projects_data.py +10 -0
  53. uncountable/types/api/recipe_links/create_recipe_link.py +7 -0
  54. uncountable/types/api/recipe_links/remove_recipe_link.py +7 -0
  55. uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +10 -0
  56. uncountable/types/api/recipes/add_recipe_to_project.py +7 -0
  57. uncountable/types/api/recipes/archive_recipes.py +7 -0
  58. uncountable/types/api/recipes/associate_recipe_as_input.py +7 -0
  59. uncountable/types/api/recipes/associate_recipe_as_lot.py +7 -0
  60. uncountable/types/api/recipes/clear_recipe_outputs.py +7 -0
  61. uncountable/types/api/recipes/create_recipe.py +7 -0
  62. uncountable/types/api/recipes/create_recipes.py +13 -0
  63. uncountable/types/api/recipes/disassociate_recipe_as_input.py +7 -0
  64. uncountable/types/api/recipes/edit_recipe_inputs.py +20 -0
  65. uncountable/types/api/recipes/get_curve.py +7 -0
  66. uncountable/types/api/recipes/get_recipe_calculations.py +7 -0
  67. uncountable/types/api/recipes/get_recipe_links.py +7 -0
  68. uncountable/types/api/recipes/get_recipe_names.py +10 -0
  69. uncountable/types/api/recipes/get_recipe_output_metadata.py +7 -0
  70. uncountable/types/api/recipes/get_recipes_data.py +25 -0
  71. uncountable/types/api/recipes/lock_recipes.py +10 -0
  72. uncountable/types/api/recipes/remove_recipe_from_project.py +7 -0
  73. uncountable/types/api/recipes/set_recipe_inputs.py +7 -0
  74. uncountable/types/api/recipes/set_recipe_metadata.py +7 -0
  75. uncountable/types/api/recipes/set_recipe_output_annotations.py +13 -0
  76. uncountable/types/api/recipes/set_recipe_output_file.py +10 -0
  77. uncountable/types/api/recipes/set_recipe_outputs.py +10 -0
  78. uncountable/types/api/recipes/set_recipe_tags.py +12 -0
  79. uncountable/types/api/recipes/unarchive_recipes.py +7 -0
  80. uncountable/types/api/recipes/unlock_recipes.py +7 -0
  81. uncountable/types/api/triggers/run_trigger.py +7 -0
  82. uncountable/types/api/uploader/invoke_uploader.py +9 -1
  83. uncountable/types/async_batch_processor.py +4 -1
  84. uncountable/types/async_batch_t.py +10 -0
  85. uncountable/types/calculations_t.py +4 -0
  86. uncountable/types/chemical_structure_t.py +1 -0
  87. uncountable/types/client_base.py +6 -3
  88. uncountable/types/client_config_t.py +4 -0
  89. uncountable/types/curves_t.py +4 -0
  90. uncountable/types/entity_t.py +8 -0
  91. uncountable/types/experiment_groups_t.py +4 -0
  92. uncountable/types/field_values_t.py +4 -0
  93. uncountable/types/fields_t.py +4 -0
  94. uncountable/types/generic_upload_t.py +13 -0
  95. uncountable/types/id_source_t.py +13 -0
  96. uncountable/types/identifier_t.py +3 -0
  97. uncountable/types/input_attributes_t.py +1 -0
  98. uncountable/types/inputs_t.py +4 -0
  99. uncountable/types/job_definition_t.py +33 -0
  100. uncountable/types/outputs_t.py +4 -0
  101. uncountable/types/overrides_t.py +7 -0
  102. uncountable/types/phases_t.py +4 -0
  103. uncountable/types/queued_job_t.py +16 -0
  104. uncountable/types/recipe_identifiers_t.py +3 -0
  105. uncountable/types/recipe_links_t.py +4 -0
  106. uncountable/types/recipe_metadata_t.py +5 -0
  107. uncountable/types/recipe_output_metadata_t.py +4 -0
  108. uncountable/types/recipe_tags_t.py +4 -0
  109. uncountable/types/recipe_workflow_steps_t.py +7 -0
  110. uncountable/types/recipes_t.py +4 -0
  111. uncountable/types/response_t.py +1 -0
  112. uncountable/types/secret_retrieval_t.py +6 -0
  113. uncountable/types/units_t.py +4 -0
  114. uncountable/types/users_t.py +4 -0
  115. uncountable/types/webhook_job_t.py +4 -0
  116. uncountable/types/workflows_t.py +7 -0
  117. {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: UncountablePythonSDK
3
- Version: 0.0.72
3
+ Version: 0.0.74
4
4
  Summary: Uncountable SDK
5
5
  Project-URL: Homepage, https://github.com/uncountableinc/uncountable-python-sdk
6
6
  Project-URL: Repository, https://github.com/uncountableinc/uncountable-python-sdk.git
@@ -23,13 +23,13 @@ examples/set_recipe_output_file_sdk.py,sha256=Lz1amqppnWTX83z-C090wCJ4hcKmCD3kb-
23
23
  examples/upload_files.py,sha256=tUfKFqiqwnw08OL5Y8_e4j5pSRhp94cFex8XTuVa_ig,487
24
24
  examples/integration-server/pyproject.toml,sha256=mB0uj-_Wo8WRmhdMwOwcdOB5lAhiW_8Kf-epMFrOq34,9133
25
25
  examples/integration-server/jobs/materials_auto/example_cron.py,sha256=7VVQ-UJsq3DbGpN3XPnorRVZYo-vCwbfSU3VVDluIzA,699
26
- examples/integration-server/jobs/materials_auto/profile.yaml,sha256=WZTNlgc8uH412oRmWHWWuenYo_6LnrIL11V0HMkGsB0,352
26
+ examples/integration-server/jobs/materials_auto/profile.yaml,sha256=MiqT9AHWoFz-rcpAHfiFTXuCP-18DaFipUaceati0-0,365
27
27
  pkgs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
28
  pkgs/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
- pkgs/argument_parser/__init__.py,sha256=CsQ6QoPKSLLRVl-z6URAmPkiUL9ZPZoV4rJHgy_-RjA,385
29
+ pkgs/argument_parser/__init__.py,sha256=JRfZkC0-q6axr8F5_TKrjSprJ7d7chfcPvf-iMQqFg0,447
30
30
  pkgs/argument_parser/_is_enum.py,sha256=Gw6jJa8nBwYGqXwwCZbSnWL8Rvr5alkg5lSVAqXtOZM,257
31
31
  pkgs/argument_parser/_is_namedtuple.py,sha256=Rjc1bKanIPPogl3qG5JPBxglG1TqWYOo1nxxhBASQWY,265
32
- pkgs/argument_parser/argument_parser.py,sha256=uI_fSs7XmiQf9kt4ztWqqF9v8w4dZmQRy3tssPYVRDE,17330
32
+ pkgs/argument_parser/argument_parser.py,sha256=Z8lR_2L_N0zuxdOsK91D_9mjlsCcR_FJwtCLIfJz5oI,17713
33
33
  pkgs/argument_parser/case_convert.py,sha256=NuJLJUJRbyVb6_Slen4uqaStEHbcOS1d-hBBfDrrw-c,605
34
34
  pkgs/filesystem_utils/__init__.py,sha256=NSsQrUCoGISBCqCCyq6_583sYHTVEQeDjDO8hvZn3ag,1261
35
35
  pkgs/filesystem_utils/_gdrive_session.py,sha256=GJuZYJq1W4QQ_7OLvZIMK99FgRq8FxJHg6cMUx9prtA,11077
@@ -41,8 +41,8 @@ pkgs/filesystem_utils/filesystem_session.py,sha256=BQ2Go8Mu9-GcnaWh2Pm4x7ugLVsre
41
41
  pkgs/serialization/__init__.py,sha256=LifasRW0a50A3qRFmo2bf3FQ6TXhZWOTz2-CVTgPjcQ,753
42
42
  pkgs/serialization/missing_sentry.py,sha256=aM_9KxbCk9dVvXvcOKgkIQBqFWvLhv8QlIUCiuFEXMo,806
43
43
  pkgs/serialization/opaque_key.py,sha256=FIfXEE0DA1U8R_taFbQ1RCoTSgehrPjP06-qvo-GeNQ,177
44
- pkgs/serialization/serial_class.py,sha256=2oH5XZ04R14knr7eTB3afPQwpuaW0qUvt3woS5Q0y5Y,5370
45
- pkgs/serialization/serial_union.py,sha256=z8Ptj4bVHyb1ROfg0UPTwZ6Ef6iXLr0YJfAH5o_PU9A,2601
44
+ pkgs/serialization/serial_class.py,sha256=D7vSnfJw4rWEDFbDd07pxgzyfTFZT5SKeQEv4C1c4H0,6057
45
+ pkgs/serialization/serial_union.py,sha256=xpdeqCrRd0sNCaUwBQRzje6V40ndCbJpZrLX2K0d5xo,2741
46
46
  pkgs/serialization/yaml.py,sha256=yoJtu7_ixnJV6uTxA_U1PpK5F_ixT08AKVh5ocyYwXM,1466
47
47
  pkgs/serialization_util/__init__.py,sha256=MVKqHTUl2YnWZAFG9xCxu1SgmkQ5xPofrAGlYg6h7rI,330
48
48
  pkgs/serialization_util/_get_type_for_serialization.py,sha256=dW5_W9MFd6wgWfW5qlWork-GBb-QFLtiOZkjk2Zqn2M,1177
@@ -52,25 +52,25 @@ pkgs/strenum_compat/__init__.py,sha256=wXRFeNvBm8RU6dy1PFJ5sRLgUIEeH_DVR95Sv5qpG
52
52
  pkgs/strenum_compat/strenum_compat.py,sha256=uOUAgpYTjHs1MX8dG81jRlyTkt3KNbkV_25zp7xTX2s,36
53
53
  pkgs/type_spec/__init__.py,sha256=h5DmJTca4QVV10sZR1x0-MlkZfuGYDfapR3zHvXfzto,19
54
54
  pkgs/type_spec/__main__.py,sha256=5bJaX9Y_-FavP0qwzhk-z-V97UY7uaezJTa1zhO_HHQ,1048
55
- pkgs/type_spec/builder.py,sha256=dC-TLQ6_nJfDUKYPNHkqwP_9e1RanZMeK8PX-jvXpe4,46825
56
- pkgs/type_spec/config.py,sha256=yq4pxv6huIXd-GAGEicSK07rPTJQtgutC7oECxliHZU,4660
55
+ pkgs/type_spec/builder.py,sha256=nuHdVNOmwbHbHV5_8nqtsrxOfzIII6jcQO7eLOljT4c,48856
56
+ pkgs/type_spec/config.py,sha256=ZUmPWCzTwjesAqlqeL1_E_yoIUZE_8g0kI2yXtbU0Zc,4811
57
57
  pkgs/type_spec/emit_io_ts.py,sha256=U03sQBpgRqYOaMKrPCRnYb70YboiCgaZfseCXSzW5NY,5707
58
58
  pkgs/type_spec/emit_open_api.py,sha256=5a0iAHBbgFD4wfKuyjPvxCYYHNTjKxEHA0aYjMGSqe4,24596
59
59
  pkgs/type_spec/emit_open_api_util.py,sha256=x4GCiZSGdypJ9Qtm6I5W_3UvwdJyMs8_OGhJ8_THznA,2401
60
- pkgs/type_spec/emit_python.py,sha256=SB0-KOuqo-PxZPFKvMfzZoSp71CGEBX3ZNE8f3HlkYA,46973
61
- pkgs/type_spec/emit_typescript.py,sha256=Tv8EbXBQewZN9q3zRKfTy9lWwElBmIV6fprIjA4RmJQ,18010
62
- pkgs/type_spec/emit_typescript_util.py,sha256=sR7ys3Ilnh6SQiXJbfYk4pxfOu0bDjbUFTEYEW-ud6c,863
63
- pkgs/type_spec/load_types.py,sha256=BOLyndtxPqqhUqZAh-lIbN5IZBaW_m-bdYpKGsbPyXM,3654
60
+ pkgs/type_spec/emit_python.py,sha256=eBct7PMYgcv35POo2JU089lLggPrgLfTOrKpqAukn1E,47370
61
+ pkgs/type_spec/emit_typescript.py,sha256=w9DUpksc4QP0CatUU9NYSZN4IBNNXVXkMnKMCFQmL58,18274
62
+ pkgs/type_spec/emit_typescript_util.py,sha256=StCDbJ5mU23MBb2LGu847yJN2fuiogjoQqZu6q3E6FY,797
63
+ pkgs/type_spec/load_types.py,sha256=vO8VLI7aTKzzHQIla-WO-5Z_mfTuwUqH4ZSKN9E9n5U,3688
64
64
  pkgs/type_spec/open_api_util.py,sha256=IGh-_snGPST_P_8FdYtO8MTEa9PUxRW6Rzg9X9EgQik,7114
65
65
  pkgs/type_spec/test.py,sha256=4ueujBq-pEgnX3Z69HyPmD-bullFXmpixcpVzfOkhP4,489
66
- pkgs/type_spec/util.py,sha256=6m6MPfY-SwjyZf2FWQKclswWB5o7gcdd-3tdpViPYOQ,4844
66
+ pkgs/type_spec/util.py,sha256=79SLJsSPVnBe2_3CTF6J-7-QD9nRr6o8MKvfjyx53eI,4864
67
67
  pkgs/type_spec/actions_registry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
68
  pkgs/type_spec/actions_registry/__main__.py,sha256=JGwKxcAmrQdbpVR2vwknoimN1Q-r5h4SADw1cYLYzgk,4331
69
69
  pkgs/type_spec/actions_registry/emit_typescript.py,sha256=Z1ZM4zOw26tvLspvW6Emg79-jxjhNBse-8yaionbmeo,6066
70
70
  pkgs/type_spec/parts/base.py.prepart,sha256=wGNoDyQnLolHRZGRwHQX5TrPfKnu558NXCocYvqyroc,2174
71
71
  pkgs/type_spec/parts/base.ts.prepart,sha256=2FJJvpg2olCcavxj0nbYWdwKl6KeScour2JjSvN42l8,1001
72
72
  pkgs/type_spec/type_info/__main__.py,sha256=pmVjVqXyVh8vKTNCTFgz80Sg74C5BKToP3E6GS-X_So,857
73
- pkgs/type_spec/type_info/emit_type_info.py,sha256=1R1ygKbGBIrKDCh3NDiBB6w9ofRCoCjujhHZx9A4_Wc,13289
73
+ pkgs/type_spec/type_info/emit_type_info.py,sha256=C4Rq5z22c3IJTyQriNkQWgGV7I3ZgTDjwKm_JM_sOYI,13362
74
74
  pkgs/type_spec/value_spec/__init__.py,sha256=Z-grlcZtxAfEXhPHsK0nD7PFLGsv4eqvunaPN7_TA84,83
75
75
  pkgs/type_spec/value_spec/__main__.py,sha256=6bzP85p_Cm4bPp5tXz8D_4p64wMn5SKsXC7SqSZquYc,8318
76
76
  pkgs/type_spec/value_spec/convert_type.py,sha256=Tg5YsYOwvmf_EqbCAtCmqy3-dud8OwdbEOzAaRN7cCs,2286
@@ -80,7 +80,7 @@ uncountable/__init__.py,sha256=8l8XWNCKsu7TG94c-xa2KHpDegvxDC2FyQISdWC763Y,89
80
80
  uncountable/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
81
  uncountable/core/__init__.py,sha256=RFv0kO6rKFf1PtBPu83hCGmxqkJamRtsgQ9_-ztw7tA,341
82
82
  uncountable/core/async_batch.py,sha256=Gur0VOS0AH2ugwvk65hwoX-iqwQAAyJaejY_LyAZZPo,1210
83
- uncountable/core/client.py,sha256=KUJN3XcbawMg_GuJ5DvmDsmhRzsnafCjyq27vOD4jC4,10640
83
+ uncountable/core/client.py,sha256=qTM61IJV4DTE2LsTZyv4kePBZAv55vncWt2rtBf-SLQ,10632
84
84
  uncountable/core/environment.py,sha256=n46mWvG5uBOy6H_aetu_iuaYmO_d23uSbQBRgb6xStw,677
85
85
  uncountable/core/file_upload.py,sha256=qR7BBBWVxFNrb1_WICreo3dkZygE9lcE1fmZCQrDZU0,3469
86
86
  uncountable/core/types.py,sha256=s2CjqYJpsmbC7xMwxxT7kJ_V9bwokrjjWVVjpMcQpKI,333
@@ -88,11 +88,11 @@ uncountable/integration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG
88
88
  uncountable/integration/cli.py,sha256=h3RE0l1SdjkveOKeY2amlmrJppK4HEQJXk8VG9UJRWg,1359
89
89
  uncountable/integration/construct_client.py,sha256=I2XTamht13vs-JYkV4PpNS_Pc4FJm-KVYqNNvxI4qNk,1916
90
90
  uncountable/integration/cron.py,sha256=6eH-kIs3sdYPCyb62_L2M7U_uQTdMTdwY5hreEJb0hw,887
91
- uncountable/integration/entrypoint.py,sha256=EjJdTmED80MrVcNoQ5BhFP3bAYHdU6CzRGiPSZF9y8w,802
91
+ uncountable/integration/entrypoint.py,sha256=BHOYPQgKvZE6HG8Rv15MkdYl8lRkvfDgv1OdLo0oQ9Q,433
92
92
  uncountable/integration/job.py,sha256=af197JUceIKzpIN5C2z8zeZOPhIQ16ipyC6qVt1WXv0,2386
93
93
  uncountable/integration/scan_profiles.py,sha256=ro4u5_1ClUeyW4vcWJ9epf2UQaJrjtc7S1R5bZpuHTM,1430
94
94
  uncountable/integration/scheduler.py,sha256=sVe7V5zlUbSzSMyC30rAlWR30w0jurhrYYCgK8-lVRo,4546
95
- uncountable/integration/server.py,sha256=-ALtXNlBDnDbeSJcqAHHJzl46mGuq43aIM9RLzG-ZWA,4701
95
+ uncountable/integration/server.py,sha256=zUDj2W45ih_UyvGou0Dsep9RVXb5m0o8i6mkm4BQCrg,5066
96
96
  uncountable/integration/telemetry.py,sha256=MwQLmgCoxpmA_UTp3e2ZB37wcDzKM0qzm5MrmaiJWhU,7142
97
97
  uncountable/integration/db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
98
98
  uncountable/integration/db/connect.py,sha256=mE3bdV0huclH2iT_dXCQdRL4LkjIuf_myAR64RTWXEs,498
@@ -105,7 +105,7 @@ uncountable/integration/queue_runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeu
105
105
  uncountable/integration/queue_runner/job_scheduler.py,sha256=n6bM6ZqVOPD0PoJuZV5Y5tuhmw2gI-_p6JbnVlK42uI,5016
106
106
  uncountable/integration/queue_runner/queue_runner.py,sha256=0BmYu5zHdothTevGsB-nXg6MBd1UD-WkP3h1WCKMdQg,710
107
107
  uncountable/integration/queue_runner/types.py,sha256=8qTq29BTSa5rmW6CBlBntP0pNIiDcwu1wHa78pjroS0,219
108
- uncountable/integration/queue_runner/worker.py,sha256=GNz8PmPUBMLA-R2VWkC_86WOaeHjHFI2mvBlNRcI3wE,4238
108
+ uncountable/integration/queue_runner/worker.py,sha256=wS_Mv12MtG9ULz2K4nUdivUAxJdZmd6B6GEUhqysG2A,4403
109
109
  uncountable/integration/queue_runner/command_server/__init__.py,sha256=gQPVILGpWzCr2i5GJyoqna7AOSFvtn4tav69gB78mTQ,571
110
110
  uncountable/integration/queue_runner/command_server/command_client.py,sha256=DJb0TUVFkiiLBEQzHSN94sTRnuEbutNEgdN39XmnOXI,2046
111
111
  uncountable/integration/queue_runner/command_server/command_server.py,sha256=yyXryhiEC2eGS0yFElLGsVzSKwOuYvj-zp22jQorkv0,2138
@@ -124,160 +124,160 @@ uncountable/integration/secret_retrieval/retrieve_secret.py,sha256=eoPWbkUtCn_63
124
124
  uncountable/integration/webhook_server/entrypoint.py,sha256=hgbEtdVo3QU3odlHSygxmrsxR9g7rgU0yKt-o9nVAHE,5686
125
125
  uncountable/types/__init__.py,sha256=KSsSEBnGhn88NPex5q9MZtY4kj8PRqVTbaKtko4hxUU,8561
126
126
  uncountable/types/async_batch.py,sha256=_OhT25_dEVts_z_n1kqfJH3xlZg3btLqR6TNkfFLlXE,609
127
- uncountable/types/async_batch_processor.py,sha256=obVzN-PcYLV2pHScszfCGjSq6-Xc34WM1ysx6Fv6tZk,11293
128
- uncountable/types/async_batch_t.py,sha256=ipSGz93O1KB-WE2dvlvflTKS51rJrf3bJkUojyxos7I,2193
127
+ uncountable/types/async_batch_processor.py,sha256=esKBP56RiRH-VjAFBr8wgfcgKsRkUfiLBmQmYGx4XXY,11462
128
+ uncountable/types/async_batch_t.py,sha256=CZ-rltFUiKVowvL5BhMfWaFxgf-Z0KPsghvjsg-PweY,2493
129
129
  uncountable/types/base.py,sha256=xVSjWvA_fUUnkCg83EjoYEFvAfmskinKFMeYFOxNc9E,359
130
130
  uncountable/types/base_t.py,sha256=XXjZXexx0xWFUxMMhW8i9nIL6n8dsZVsHwdgnhZ0zJ4,2714
131
131
  uncountable/types/calculations.py,sha256=FFO_D3BbKoGDZnqWvTKpW4KF359i2vrKjpdFCLYzJC0,284
132
- uncountable/types/calculations_t.py,sha256=7GTSi2L8NYjzjUJJx3cmtVkK9uD-uhfYvIFK-ffQj-8,556
132
+ uncountable/types/calculations_t.py,sha256=157qD0VqijD5kNDF5BRsfGli3WaPGnNjoo2o2CPX-Ik,669
133
133
  uncountable/types/chemical_structure.py,sha256=E-LnikTFDoVQ1b2zKaVUIO_PAKm-7aZZYJi8I8SDSic,302
134
- uncountable/types/chemical_structure_t.py,sha256=aFsTkkbzy6Gvyde3qrrEYD95gcYhxkgKMiDRaRE0o-Y,760
135
- uncountable/types/client_base.py,sha256=wgAU6xbOmY9oiKN54JYoJmA3UzJSXewCI2YBWzweuHs,67232
134
+ uncountable/types/chemical_structure_t.py,sha256=zDJ6WkeT3YwWZRZT21znQn2ZYelv3L7yv7kJiGoNZCw,824
135
+ uncountable/types/client_base.py,sha256=16W0EnH7kyy_sRL_fNn4NBvNhE8NCmmrSad-grKhLus,67489
136
136
  uncountable/types/client_config.py,sha256=4h5Liko9uKCo9_0gdbPhoK6Jr2Kv7tioLiQ8iKeq-_4,301
137
- uncountable/types/client_config_t.py,sha256=_HdS37gMSTIiD4qLnW9dIgt8_Rt5A6xhwMGGga7vnLg,625
137
+ uncountable/types/client_config_t.py,sha256=6dStfR0IEHiPW8f9_aF3DD_tHmXXw2rEVrgpebzq8Fg,747
138
138
  uncountable/types/curves.py,sha256=W6uMpG5SyW1MS82szNpxkFEn1MnxNpBFyFbQb2Ysfng,366
139
- uncountable/types/curves_t.py,sha256=TDpsThz4lKmiBmS9b4ItUSCp64TGv8-qDkxb4B2RoTo,1314
139
+ uncountable/types/curves_t.py,sha256=lKhRM-2cZ_sFaW7pa_I_Ipz_pJhm3_yTFehRXI79pKk,1416
140
140
  uncountable/types/entity.py,sha256=3XhLteFDRDZvHejDuYh-KvB65hpwrBygljFfiUcOAM8,315
141
- uncountable/types/entity_t.py,sha256=YXwFnscd4ivJOSH9IpYvCxeHhZob29ZvkGFgkypYAlo,14705
141
+ uncountable/types/entity_t.py,sha256=8OkFVgvrItdA1ysyWB21mLL85JTPdcdzAmb6CNBUVI0,15003
142
142
  uncountable/types/experiment_groups.py,sha256=_0OXcPzSAbkE-rfKt5tPx178YJ4pcEKZvrCxUHgDnvw,309
143
- uncountable/types/experiment_groups_t.py,sha256=0IGAXwkYiwdjj6aFjLMihxwauACQTyuRU_1usJTeUg4,593
143
+ uncountable/types/experiment_groups_t.py,sha256=qEs8YW0eJOJ_sCOObT5v9QRx9wsjLYpJqJhCJXa-vNA,721
144
144
  uncountable/types/field_values.py,sha256=uuIWX-xmfvcinYPdfkWJeb56zzQY01mc9rmotMPMh24,503
145
- uncountable/types/field_values_t.py,sha256=_JYzmHlPczEnROz_tUbY0r3mZWffCB8m2_a9ktZLgP0,1700
145
+ uncountable/types/field_values_t.py,sha256=WIGXJKtQbHroCgaHhb15H6Rzi00liSkhoi2JBMVEgv0,1935
146
146
  uncountable/types/fields.py,sha256=GUY5ne8Zp2_Lalikr0zcbdJrin8dG81eyS8fKWJ9yf8,266
147
- uncountable/types/fields_t.py,sha256=9pDroeNvj4hQQ4QB4-2ioTAFR30YTuW_364Q-Ka9SoQ,564
147
+ uncountable/types/fields_t.py,sha256=LZBEfBHDn2thc1u4i8BulMEcFfDxK4JA-VzahTjivNA,665
148
148
  uncountable/types/generic_upload.py,sha256=n6hue9BX_rLSXeEt_DcGwL2ckxfNXg1wEPR9JNEGQxQ,879
149
- uncountable/types/generic_upload_t.py,sha256=Hv4cVyllV1BMW2HDOlA6XuF3lQOA8DTAMblgAsu0AIU,3314
149
+ uncountable/types/generic_upload_t.py,sha256=wTU5NfEGHm8wQzTGww42AIYnYj4CfQtUAP_22HZqavA,3830
150
150
  uncountable/types/id_source.py,sha256=wGLA0fMl-5IqBG_fg2UDC7fY-8CWRBNFJOokejOoN_w,567
151
- uncountable/types/id_source_t.py,sha256=ReOuIHIuFbkE2mQ58x6UP4jCV4_JUxMCvAU9bxUxG84,1369
151
+ uncountable/types/id_source_t.py,sha256=s2oOCO2Ap7dt5BVOTiXsclD5m7SG_e0D8M2GOhCjuNg,1715
152
152
  uncountable/types/identifier.py,sha256=6ziONd__L07ijhVwpIehUUDvxgKTtHbunk-6CivJqxQ,503
153
- uncountable/types/identifier_t.py,sha256=zZjTXgs1je1hlCcDgXkwXqToxsqKAp7rc8rYe5i4q38,1473
153
+ uncountable/types/identifier_t.py,sha256=3YvYoYEWjxIaslyaEwnvhatbsgRC9Hm4EMsRUXzUXvc,1652
154
154
  uncountable/types/input_attributes.py,sha256=IrIKQnHqHdS1Utdfzr9GnOe17a8riaqYcO1r0nvtkvA,304
155
- uncountable/types/input_attributes_t.py,sha256=wE1ekiQfb72Z9VpF5SHipKJkgaJFUHJrNkkJdmuhF9w,820
155
+ uncountable/types/input_attributes_t.py,sha256=mD9JIagE8TQ0KVwGkl-hinKz_gcunV3y30w_dW5sfeU,884
156
156
  uncountable/types/inputs.py,sha256=jFZHyo0ZOGJ3bb4TOPXovhE3Fo1-kf7B7T3usk4Sqg8,467
157
- uncountable/types/inputs_t.py,sha256=7xEtcW3pl5I8AQFIwVt20y3rbpR8StG03yngWp0FoOI,2036
157
+ uncountable/types/inputs_t.py,sha256=CpuuKRduZGET_wvkGUpUFN6rbZCHsdOIp1veEM-hspI,2143
158
158
  uncountable/types/job_definition.py,sha256=HXfaYl5Nafm9C0teQLBtqzroe1HlfKJtfGVm2-40hvg,1937
159
- uncountable/types/job_definition_t.py,sha256=frtTpcJJCNXzdDlz8OWLMBFvsnS9nmqJVn9l7fBI7uc,7616
159
+ uncountable/types/job_definition_t.py,sha256=A62fgHEK5JHTekDQ-UXCLJIEbWx64MJMk2Hlo64p8rg,8895
160
160
  uncountable/types/outputs.py,sha256=sUZx_X-TKCZtLm1YCEH8OISX9DdPlv9ZuUfM3-askCc,281
161
- uncountable/types/outputs_t.py,sha256=2aORUOr0ls1ZYo-ddkWax3D1ZndmQsWtHfJxpYozlhg,656
161
+ uncountable/types/outputs_t.py,sha256=AdJZvIzqikHV9CnlC24WEo0OUe-5vrD4cjMqc2txEs0,765
162
162
  uncountable/types/overrides.py,sha256=Mv-smwK1B3pvbt48fNOiqkeQn9wMgYlBFJKUBOJqceE,431
163
- uncountable/types/overrides_t.py,sha256=-DMuW3Iqxlf7pb3HmPN8cswYrhG9UrRstRUzM9wDVHo,960
163
+ uncountable/types/overrides_t.py,sha256=0K2kflxM8ogEi4HHs3RlpVXCZ30Bk3XeWiqHh3DGzbc,1146
164
164
  uncountable/types/permissions.py,sha256=1mRnSsmRgjuLgp6pylTwwACD_YRIcmlqxHkufwZtMns,297
165
165
  uncountable/types/permissions_t.py,sha256=i0vFwVvmmnInrA5qW8uuo0_tM6KYn3VYZ75d9084Vko,1625
166
166
  uncountable/types/phases.py,sha256=YCsU77DdjRJJWdLTwLuOZNG4e9ML82NIBI1xTWr3ggA,266
167
- uncountable/types/phases_t.py,sha256=21_4-O5MlO1AzsZijSlSUeEHknY0T9KCPilFMG8GMEo,544
167
+ uncountable/types/phases_t.py,sha256=gF87ZZqArXd1Eihh27i4ctwetQ7TgZzrLJG9JGnX4_8,645
168
168
  uncountable/types/post_base.py,sha256=GES5_IhXFAjpzI6ChbVP4zTkX6f3tPUIHST1sxsRN6Q,279
169
169
  uncountable/types/post_base_t.py,sha256=2et3TDnFChZcx0RWU-18RJHw9Yiyj2TJz-2tByHXwaI,770
170
170
  uncountable/types/queued_job.py,sha256=67exX5vfpewKzvFKxuxTLsSJTDKlE3JqKfWnnYx2Jos,842
171
- uncountable/types/queued_job_t.py,sha256=yd3FhtcbfMxPjBq_ykLY2ASx_EJvQ4kW3MKIL2gdPWc,3049
171
+ uncountable/types/queued_job_t.py,sha256=tcZsYoNgNeyrjbwXpxJSLOnhgwMFdiwJ-saPga7HSac,3575
172
172
  uncountable/types/recipe_identifiers.py,sha256=Pi5KX64kzoBp_t_tjb3uVk9Ef1WPIIXGtUdINXi5vcY,654
173
- uncountable/types/recipe_identifiers_t.py,sha256=suumLdp_8SZD7oqIxSEaV9D1irMeLJ5_-pJqqUrQ5k8,1786
173
+ uncountable/types/recipe_identifiers_t.py,sha256=9FhWx-mHWGvHBwUysxE614-AV9uOuSE1VWRNE_iW5YU,2009
174
174
  uncountable/types/recipe_inputs.py,sha256=5ThNFEOGbADqqfj1V3hNvZUcO5pn1Gm17LmzQkWDrtI,351
175
175
  uncountable/types/recipe_inputs_t.py,sha256=t5nFzuF1AU6SUHpya6xKHSlcckmt3XxAuk9ofjZ2oGU,746
176
176
  uncountable/types/recipe_links.py,sha256=YRiu6t7FWr7ZWycIaOPXBtQFqbY_q5unaP6KQzh1LzE,343
177
- uncountable/types/recipe_links_t.py,sha256=ZaTeP8AsIT9-gDRi_uQreDsAzEmqF34YTesh9uydYa0,1417
177
+ uncountable/types/recipe_links_t.py,sha256=ZtGQ8iTKn8yw2z7SWbE4YXaffpUlmWYAlssSkffsv-M,1529
178
178
  uncountable/types/recipe_metadata.py,sha256=Zpcrupq_mlT2UhXpMJup5XjtubmvgZ8SbJNq7da2pCs,441
179
- uncountable/types/recipe_metadata_t.py,sha256=3gcspWc7CYCoLtoDLhhthPg3o5NaZZTF4NZvH8xTufk,1521
179
+ uncountable/types/recipe_metadata_t.py,sha256=m1ibl-fRVmgpKhNmKX0trg8PgxHx_C4MxLvgWu7mZdk,1722
180
180
  uncountable/types/recipe_output_metadata.py,sha256=83jKZCvogG9QjZeJpQptdSam_MnnUj-tqh9EVIrTWjE,322
181
- uncountable/types/recipe_output_metadata_t.py,sha256=jazuYonhY0FklLy2jWoS51LM6Mc_1ZBHvPu7-6btJd0,607
181
+ uncountable/types/recipe_output_metadata_t.py,sha256=g0EIFTxlt6a_zKI-GclMpEz3NQ-w0Dk4CsBXQ6pHSVY,744
182
182
  uncountable/types/recipe_tags.py,sha256=eyYa_rox00a1JQ0lOQv9STnJI04ksCL_3kHSDx5w7rM,291
183
- uncountable/types/recipe_tags_t.py,sha256=D1gKbi2mjNs68nkGbXgFPSKSWmORPB8E8mLdiWn6btY,575
183
+ uncountable/types/recipe_tags_t.py,sha256=_NT_Xwt-rjkvCnR5QjBYLTCSC_zyY7Nr588lOTWwZ7E,691
184
184
  uncountable/types/recipe_workflow_steps.py,sha256=-s1sOXMny4kcqT8K_vQRbKjc1Hs855A_e9ZZejDRvN4,971
185
- uncountable/types/recipe_workflow_steps_t.py,sha256=5VnQh_jb_QS5ayo_bJVJxkE6wvmIfXrnzX-C6-XxEfA,3021
185
+ uncountable/types/recipe_workflow_steps_t.py,sha256=1Y_RpyJAZsJrL_StMooUzhgD-NFjZ_4QC9NoDB2cK2M,3454
186
186
  uncountable/types/recipes.py,sha256=1ifutxUN-Blv_vcwMx6DKT47My5pJTG1cwqsMqKK7LY,307
187
- uncountable/types/recipes_t.py,sha256=04dh2wn_lIWB3KF36sxcdJxb_JDclkHp5g3AHbfoc-0,551
187
+ uncountable/types/recipes_t.py,sha256=ZRh3inkz36_vKrmpYUb8MIk08TbkeuCMg_FqG-npsJU,673
188
188
  uncountable/types/response.py,sha256=WOlSgQYKK_fnnXk1i-h3Bwx2ZiYqpLj-lnt-hXhmbWs,274
189
- uncountable/types/response_t.py,sha256=jjTyB0bM-xEz7WjqPb6GUIkMgUvqXvM9trMdKdIcAZw,622
189
+ uncountable/types/response_t.py,sha256=E77C8dbV8HschivDfuKU-n7eA7Fn1v_Y05hWczQZUHI,667
190
190
  uncountable/types/secret_retrieval.py,sha256=Jt_-sjYBKBwJytS4QgF1KnUVEEu9YAsCYI3NtYlbqa4,592
191
- uncountable/types/secret_retrieval_t.py,sha256=i9Aq1HoNvARYVgKmSjTjECUYp1AZtW4052hYJi9Jngo,1930
191
+ uncountable/types/secret_retrieval_t.py,sha256=EvUhxR5_NCLc0F3YmLiwXKmmqcphy1OOXOwauxuMhKI,2197
192
192
  uncountable/types/units.py,sha256=R_TBhxWCIWSSXK9J3S0Omtj3t5BZNK9C80MyqFjMO7k,275
193
- uncountable/types/units_t.py,sha256=w_k7SQ_J_-XTGY-BMcWC5sQi2z3uInqtrRUPHgniuew,559
193
+ uncountable/types/units_t.py,sha256=gbiUzFTzzJbozWVwwEP04rI_PL2OhmcZmnWtQpwNopw,664
194
194
  uncountable/types/users.py,sha256=YEk8v0vDOBFvmOQMQw7MAOicSGzMui8Hb9hdFX2Vw3E,275
195
- uncountable/types/users_t.py,sha256=ATsF1EGKw49jfcspf9OWHL0tSgOR76x80XloKk624fk,582
195
+ uncountable/types/users_t.py,sha256=IS_pHUjam-BzGNIQQUb-alITwUGvXjr_Ef6RxJZG6Q8,687
196
196
  uncountable/types/webhook_job.py,sha256=Y8IVmL311Hd4Jvdl1d7ND_OCygyC0dAoV-_E4A-lI6A,363
197
- uncountable/types/webhook_job_t.py,sha256=MM-0epv4nIp4lgtLBTr-gs51PVjBuAMqpHfCPXDnYc0,847
197
+ uncountable/types/webhook_job_t.py,sha256=1FEDbKlNIyqrVZbelpZI_jE1KudG6BB0V2-MhFHo5Rw,979
198
198
  uncountable/types/workflows.py,sha256=uSZWsdDe2jpXnBnRunEen7_7pbKBrE0ds_ez98EzyPg,353
199
- uncountable/types/workflows_t.py,sha256=Nz9z_eerEDEP_Ieuz7gQEv1SabkFdCiZmu6RL8w3kyE,831
199
+ uncountable/types/workflows_t.py,sha256=aGcwvlUDi98ywq-0LWhhamcPvDPQNujo4SO0crM8-Ng,1017
200
200
  uncountable/types/api/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
201
201
  uncountable/types/api/batch/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
202
- uncountable/types/api/batch/execute_batch.py,sha256=DCAvpvI0wL-xvFJBjSKD-kCN0sFs1-Tl7_F1x2Jtgdc,1726
203
- uncountable/types/api/batch/execute_batch_load_async.py,sha256=3ptjtokj7eZ_A7OUX9FPCbLTjymPwQU-ThIbMvwh8Jc,876
202
+ uncountable/types/api/batch/execute_batch.py,sha256=Dgy_XHo4T3sVOWvHMe6AwjgI4aTnF1KtClqF_Y2_IH0,2006
203
+ uncountable/types/api/batch/execute_batch_load_async.py,sha256=j5a5dk0_lTJ-YslrBN29kOAMjtbZlmwYtXU1MnxEGjU,1093
204
204
  uncountable/types/api/chemical/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
205
- uncountable/types/api/chemical/convert_chemical_formats.py,sha256=-FKBOcg1jteFu920NM-0lBk90pfucpcg2WAsaddfDc8,1323
205
+ uncountable/types/api/chemical/convert_chemical_formats.py,sha256=xLpma1W1O9MzgxM4CCl5GPnpj3dpqRHhKcXr3b_ToAo,1589
206
206
  uncountable/types/api/entity/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
207
- uncountable/types/api/entity/create_entities.py,sha256=1WK3HTKR5D5Y3yFkaa5jJNourGC-IE45yRkfulty75U,1888
208
- uncountable/types/api/entity/create_entity.py,sha256=HhR8GBSvqMdMXhm8aUtvkUPrW9bCPIfejD0QOUX4aYE,2058
209
- uncountable/types/api/entity/get_entities_data.py,sha256=_dyDJ8Aukeijj2U3ZEQYNECoI3TC4phn8RhgJQP1e1s,1162
210
- uncountable/types/api/entity/list_entities.py,sha256=93J8jbHOdBL7Ee2_z_M57JpIVsmI2RddDMpprTakYks,1717
211
- uncountable/types/api/entity/lock_entity.py,sha256=twQ-f61AKS_NrKP-TzqHkMmzTJGMc4yxZFl-2JctOg4,1004
212
- uncountable/types/api/entity/resolve_entity_ids.py,sha256=YxmVaPrbpB5I14sggAcQHEEwZtoTLVrkFaDeZZu7a5U,1094
213
- uncountable/types/api/entity/set_values.py,sha256=Fmhi80YDkaMmWTkjsHlGkQrBQ4PZxJTZpIZyMJjw5Mw,934
214
- uncountable/types/api/entity/transition_entity_phase.py,sha256=mD6cyR7JyABA7se1jx9MFAgQ6ef1nP7Eigm_sOopUcg,1805
215
- uncountable/types/api/entity/unlock_entity.py,sha256=I-Wi_iKn170w2vc94W9G9jOVQABqVK3BPrgZPYKMT9Y,953
207
+ uncountable/types/api/entity/create_entities.py,sha256=3zBPO3_CM9fU2R1EFWQcFcXxCVCNNU2NIsnJLYnojzI,2219
208
+ uncountable/types/api/entity/create_entity.py,sha256=elMRdi8VT7CTrPhypQsL9P5gvCLlk5_D_1CUxulnXzA,2331
209
+ uncountable/types/api/entity/get_entities_data.py,sha256=gTEZ7Z7T-DWP8BZPNDF4c__EHtf9kAb1sGtHmiGOgnM,1454
210
+ uncountable/types/api/entity/list_entities.py,sha256=ykbdq4DD31uiRz4i8LH-8LLeA2Lpp_5fWfb5fdyx248,2000
211
+ uncountable/types/api/entity/lock_entity.py,sha256=mMZx2tWOtuYg0sIftdPsFWgZO5LCav2ubqTw97dCtDU,1197
212
+ uncountable/types/api/entity/resolve_entity_ids.py,sha256=GnQjeoTdzL0PIubrLay-PpaRsYFFWVGrTxhzSmP4hhw,1387
213
+ uncountable/types/api/entity/set_values.py,sha256=O_LpcYeBXFfxxUVOL2FDDYQwU7La-IBM_uEQLgtPrVo,1125
214
+ uncountable/types/api/entity/transition_entity_phase.py,sha256=J0lO_dubmTCO9s7P2DZgC-Zq6m0VagpXfg0jZqxz5XM,2160
215
+ uncountable/types/api/entity/unlock_entity.py,sha256=8UGffqqV8eiSbz_-7y0W2CXLsz4IvM496RFz6L0Y23o,1150
216
216
  uncountable/types/api/equipment/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
217
- uncountable/types/api/equipment/associate_equipment_input.py,sha256=pJoHhbJtg1zpz2k9zN7zaFb8kuPCcGP5lkK3xocqRiM,970
217
+ uncountable/types/api/equipment/associate_equipment_input.py,sha256=lLge_Y20IO2Rp597R7KvqGo0MV-uTJG9OU3EJYDc3E0,1197
218
218
  uncountable/types/api/field_options/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
219
- uncountable/types/api/field_options/upsert_field_options.py,sha256=A0l6xXC9JZw8VwAALUbD2L3AGK-cJ9e9-rq_TSVG2lo,1156
219
+ uncountable/types/api/field_options/upsert_field_options.py,sha256=UsAlRTsDWIOwPlX3iFWIPIndGQtZW--b-A1KkACd7ek,1476
220
220
  uncountable/types/api/id_source/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
221
- uncountable/types/api/id_source/list_id_source.py,sha256=rbyfQmYEis5sm8H62BAr0YXUIekyzZKK1m2pQyp8itM,1162
222
- uncountable/types/api/id_source/match_id_source.py,sha256=bDL9oIhLxMabf9hIovWn9Mo78KVQLo2ssfHxhT05hYE,1053
221
+ uncountable/types/api/id_source/list_id_source.py,sha256=vke7Dsxo2nJ78Y7WKph-KKZIXFW7RDoJ4iJ_yUdR81A,1447
222
+ uncountable/types/api/id_source/match_id_source.py,sha256=V-W-JEGVx59_Ijv5neKKFlWKy0FEEwoCD10bMiERRvc,1340
223
223
  uncountable/types/api/input_groups/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
224
- uncountable/types/api/input_groups/get_input_group_names.py,sha256=X6xIBxvNvpHSe__BYAbsLaNg82x0UCPEuNMmEu1RH40,1051
224
+ uncountable/types/api/input_groups/get_input_group_names.py,sha256=gii9L2Pt1u_a-APsdRM0gXAGJOv1K06zbiiUZBFQ4Ag,1376
225
225
  uncountable/types/api/inputs/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
226
- uncountable/types/api/inputs/create_inputs.py,sha256=zVyKGmNCsJA5ehUu24jqwacHO7r_jb_W76rNOPnJiXk,1675
227
- uncountable/types/api/inputs/get_input_data.py,sha256=HpSNow6fzyzru83rf45OacNimHFP-i4g7x7rPjP8Fk0,2212
228
- uncountable/types/api/inputs/get_input_names.py,sha256=m7drfXhYwNnLKIOMTOGHehDQIZGGFmiwXcobyvIAOv8,1171
229
- uncountable/types/api/inputs/get_inputs_data.py,sha256=hXu7AVHaMpdoOhAfKcoUZqhix1nAOzmKG6qdWAUAprE,1875
230
- uncountable/types/api/inputs/set_input_attribute_values.py,sha256=J-vi3lc_aPyNSRJLg1iXjwpv_aY1J10NcpCWjzzTpQA,1347
231
- uncountable/types/api/inputs/set_input_category.py,sha256=PLV6yLgdRxiO4oSMHGUTbS7amjPztNkEt5VA7uHrMNo,972
232
- uncountable/types/api/inputs/set_input_subcategories.py,sha256=wZ6ogTtBRQlJV5619jxW5fGiF4WbHC7x3CwzdcxvQYQ,979
233
- uncountable/types/api/inputs/set_intermediate_type.py,sha256=KZXfkcb7zEZ1wuoNb0RbD2AzirPujnGQbwcABX66juY,1109
226
+ uncountable/types/api/inputs/create_inputs.py,sha256=mY4zuWl64VVlzCQWzUy08AtUOYW8twEKgOkTdFcXaW0,2036
227
+ uncountable/types/api/inputs/get_input_data.py,sha256=q7oTF_CW67riFWzceOU67Gf3sKRRoXSQIkaMCutgXHI,2766
228
+ uncountable/types/api/inputs/get_input_names.py,sha256=3-Vp1FlWYgAQRdGvzWU0IGVIFj53xPH5Ge5xrJLN4yM,1457
229
+ uncountable/types/api/inputs/get_inputs_data.py,sha256=3ShX7mRb0egFU04VSY4Z2h1UWa1jaIpB99mx7DVLh6U,2413
230
+ uncountable/types/api/inputs/set_input_attribute_values.py,sha256=yQMeikk-jypwuecL84V_M_2NaEuBotM4fa9DrNhrgq8,1611
231
+ uncountable/types/api/inputs/set_input_category.py,sha256=pJQJp4A28--69OENjVX75hwKtST7h6Vf5XGHoROmrJA,1179
232
+ uncountable/types/api/inputs/set_input_subcategories.py,sha256=tYXyS2_hQRGiryYyQ0sxqO51Ca-fAR9TA9rvUMft4l8,1196
233
+ uncountable/types/api/inputs/set_intermediate_type.py,sha256=CIgTw41GQfcyGwgiWKhjr3BzPjB72ZyMQvpjr8EyihA,1322
234
234
  uncountable/types/api/material_families/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
235
- uncountable/types/api/material_families/update_entity_material_families.py,sha256=W7x-_D5xtAEKSL2YQUDgnS-n-JH3hyMw8k6FI5D2Zww,1353
235
+ uncountable/types/api/material_families/update_entity_material_families.py,sha256=yG6ItbZbOEI2dB3kxGYIokn2kdelm-6dFB5O2oWbOOE,1608
236
236
  uncountable/types/api/outputs/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
237
- uncountable/types/api/outputs/get_output_data.py,sha256=Q0SL1frhPYsOSZeMbpx1yQYc2beQFoxj8W5xxw9jKlE,2285
238
- uncountable/types/api/outputs/get_output_names.py,sha256=42Z70cj5zc43TLP6HGAARw3gUJynNcLwA3ILSMh5ovg,1104
239
- uncountable/types/api/outputs/resolve_output_conditions.py,sha256=b29XyJ86mF44nG5AXXFUQw519KAkYRGOkNi3fS7BrzE,1841
237
+ uncountable/types/api/outputs/get_output_data.py,sha256=pzwLsf1_wJsZtLH-bBbS4nNWbhS_Zva8ceV7j7bOXUo,2784
238
+ uncountable/types/api/outputs/get_output_names.py,sha256=zsa4TtwQcGuIzBlh1jNLQ0qSGGV1trAKhj0msl0Oaz4,1397
239
+ uncountable/types/api/outputs/resolve_output_conditions.py,sha256=XoaDc6p3aoFhxakHfR8hOKZ0_4o3gfYOy8prSfmcPZ8,2314
240
240
  uncountable/types/api/permissions/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
241
- uncountable/types/api/permissions/set_core_permissions.py,sha256=411-pSeiFoaguzGCnVWZBh23SpleQeHgj4XWg7GSerU,2570
241
+ uncountable/types/api/permissions/set_core_permissions.py,sha256=mkaSWfrRJQIFIcOIC1yslhJd_SQykkiK26x7RwUX1L4,3117
242
242
  uncountable/types/api/project/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
243
- uncountable/types/api/project/get_projects.py,sha256=Mep7cT_yji7V8_JVnrWC-k-Zoqp1F1tYu-BGLIEbLwE,1243
244
- uncountable/types/api/project/get_projects_data.py,sha256=PEjbR7l521JxmehF0lftcv_ksmBoAGwhimvFSRCHN74,1473
243
+ uncountable/types/api/project/get_projects.py,sha256=IT8oqQSUv0Jc4Hmz5TORlzaJUWU_IQ9sXADYNOiGRL8,1517
244
+ uncountable/types/api/project/get_projects_data.py,sha256=yME4KRzC5pLHW_oA07kTa42icbHpdjdkFIuQR9xU5OY,1770
245
245
  uncountable/types/api/recipe_links/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
246
- uncountable/types/api/recipe_links/create_recipe_link.py,sha256=9J4UwzsuyeJlOw_B7LJQIb6FeWoDhD-0eU4BH6wgLlY,1182
247
- uncountable/types/api/recipe_links/remove_recipe_link.py,sha256=-l2E1ubcOkblIZuEkwuUtFt7KV9CfEuqCc90r3rY0aU,1168
246
+ uncountable/types/api/recipe_links/create_recipe_link.py,sha256=FwUor9Jnbxhvvg_Np3jXLmqqbL_xQ-mR-WoZJ9FeUPk,1401
247
+ uncountable/types/api/recipe_links/remove_recipe_link.py,sha256=eILbAfhRvN4hVmzQIV6lFeEZA54Pw_O2eUrIHdSYu6w,1387
248
248
  uncountable/types/api/recipe_metadata/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
249
- uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py,sha256=zueqr3mrac6i2tkPLOnO_DaUMBXv-Lephwg-jiT1jQA,1285
249
+ uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py,sha256=MpmJ-CwC-jdIPuN-fyYj61KYHRyXSBExhdh4mrlEdr4,1635
250
250
  uncountable/types/api/recipes/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
251
- uncountable/types/api/recipes/add_recipe_to_project.py,sha256=JPYk25a5JSqM2X_93WaHsf8RBYtKlJyfM7GUsV-eX60,867
252
- uncountable/types/api/recipes/archive_recipes.py,sha256=w8r7-NpWhW5oE-K6PGf0Th0T1-HkdHjjVmk5AcxUrio,852
253
- uncountable/types/api/recipes/associate_recipe_as_input.py,sha256=NGZ3RH2-sDcqzoVKuqnAWFmkDszvCXKLTLhs-YZe0x0,1012
254
- uncountable/types/api/recipes/associate_recipe_as_lot.py,sha256=iwRDSje33GaDpOVhQrFXcJjBax9k80gwbs8IUkFNKpU,940
255
- uncountable/types/api/recipes/clear_recipe_outputs.py,sha256=htm2MsFRWvlPsIyogSiVHzQ02_ZtAOCyV5M6AMh_FHQ,890
256
- uncountable/types/api/recipes/create_recipe.py,sha256=-ybqIZ3LH5018g0fQ07XWq9L6OL3qkiYkXnH02kxnL0,1371
257
- uncountable/types/api/recipes/create_recipes.py,sha256=Cr7hXRAMnFeBNxOBv7_j-K5nkaC67cu3vFLqMBH3yVc,1555
258
- uncountable/types/api/recipes/disassociate_recipe_as_input.py,sha256=EreRtLP4o29RazwbM5qb1PJZqLf4Ii8xJ9NT7ciKfKo,898
259
- uncountable/types/api/recipes/edit_recipe_inputs.py,sha256=lf-havtdT5oizB-3mJ-XChv-rHGV3rvWLIff1IC8kUY,6641
260
- uncountable/types/api/recipes/get_curve.py,sha256=GVNgTm0_toTR9530kEa1qSojsck_xi_nkwakMo588YQ,935
261
- uncountable/types/api/recipes/get_recipe_calculations.py,sha256=Hq9hmIUBdZ5KRb9FrniaK5khH4KNSOT8vX2oD9h1J-o,1474
262
- uncountable/types/api/recipes/get_recipe_links.py,sha256=zD4dEIQVAV5wv0NirBldwMEROgvOf7mXT-pWlaSiuN4,975
263
- uncountable/types/api/recipes/get_recipe_names.py,sha256=abBQoZ5JRek0UDOE6ETn6NLUQp9stZ5XhCNFdc5kM3U,1004
264
- uncountable/types/api/recipes/get_recipe_output_metadata.py,sha256=ORokvA6vvLkkuUHZjY1ym2voxovljMrA48qjt8RD7mU,1456
265
- uncountable/types/api/recipes/get_recipes_data.py,sha256=s8LE8VQSYgGXEUYpbVJYCOBelrrwMCwXKqiBvvLx9pE,5511
266
- uncountable/types/api/recipes/lock_recipes.py,sha256=hdxqn5gOk80Rbw05J9RWi1dPMiW-4wJwkVT_fmKiDUw,1356
267
- uncountable/types/api/recipes/remove_recipe_from_project.py,sha256=3lqSU9UQIPMmOIvrdD9H--6QIdolYD0SadIuKxtObaE,872
268
- uncountable/types/api/recipes/set_recipe_inputs.py,sha256=yCGFQoguzsSK_weOK4kcvqnUSkRJV1rzKxWnanIZbko,1444
269
- uncountable/types/api/recipes/set_recipe_metadata.py,sha256=J2F1FDgFLKjlbGw29TW1Xefy38Zt-C7V1WDK70gRiuY,914
270
- uncountable/types/api/recipes/set_recipe_output_annotations.py,sha256=ayG9vnCroYGQ3mmNBALLlQhf9otrR-q0QiNLnWgmIsw,2930
271
- uncountable/types/api/recipes/set_recipe_output_file.py,sha256=8s0oxgjhv_hIyV3EoAjIBb970TrJJbKTFaSdNvbgU78,1225
272
- uncountable/types/api/recipes/set_recipe_outputs.py,sha256=bLR-FtncB6hzqvzQhCts6ERdHJWgPMne4bQi6-xxu_k,1890
273
- uncountable/types/api/recipes/set_recipe_tags.py,sha256=kYX13RvHyUOlzL6LbBKDQ8yNvpvNobbnF2WDtgZsKRc,2493
274
- uncountable/types/api/recipes/unarchive_recipes.py,sha256=KZKzw0fbQdOBUR3YBunFrHFcex4qPMiA8mDgsB6n24k,814
275
- uncountable/types/api/recipes/unlock_recipes.py,sha256=AvzQeZCLs9i7CuhMs3Xltdi4n0q4Td55yHYyBGQgWag,1103
251
+ uncountable/types/api/recipes/add_recipe_to_project.py,sha256=0c___agZkJ1vIfjt74YwSHMpCteo1Gj6egLx2DSNjyc,1082
252
+ uncountable/types/api/recipes/archive_recipes.py,sha256=gQcb3qBidXCua3xgr4p7up2an7yhVA2fo_dBq2WJL8A,1055
253
+ uncountable/types/api/recipes/associate_recipe_as_input.py,sha256=52h2y5JofzdMbYmL6D5Nh87oSByT2V0xOoBiBZn8hB0,1235
254
+ uncountable/types/api/recipes/associate_recipe_as_lot.py,sha256=Ugh0TBD9xvpdq9s0zN5TE6iE-ht4cdq_I7KoJs33Lfg,1159
255
+ uncountable/types/api/recipes/clear_recipe_outputs.py,sha256=sZ6sWtdfOYp8ORQD9GAkPhrtyWyLo4NQiSW68OEi8Xw,1103
256
+ uncountable/types/api/recipes/create_recipe.py,sha256=Gh6Z_7wBfYBMGUgUSixw57ucRjkBhjScIjDg1__4rVU,1570
257
+ uncountable/types/api/recipes/create_recipes.py,sha256=kmTDi0nF5OK5wYIErg_4CY3YsF3pDbrj4LLFqgDNRoU,1940
258
+ uncountable/types/api/recipes/disassociate_recipe_as_input.py,sha256=YcLCle-yQ8A7hPmFg8wPfW4dyJwpMQXNKzJxCEr8xlw,1127
259
+ uncountable/types/api/recipes/edit_recipe_inputs.py,sha256=7TBjzA8-yXYIko_jx0AvKMs8SnIkiQukhQFWyf2fkxk,7815
260
+ uncountable/types/api/recipes/get_curve.py,sha256=SPD9kx4m95KPXAD0MawX52IFl8W7gVKj-WmA4Wx2YtU,1126
261
+ uncountable/types/api/recipes/get_recipe_calculations.py,sha256=_sBE5M2xzwagh1beTW32D_HTxqu9OrZTPZBGMba6Myk,1730
262
+ uncountable/types/api/recipes/get_recipe_links.py,sha256=IIA_LV-iPayZRAsVmDCpSA8jgFnzcgGpk0lAnygyi-s,1180
263
+ uncountable/types/api/recipes/get_recipe_names.py,sha256=qxZlWWE-j-GbcMLIBZ7OKYLG9HZJMsu3Xobincwgfdk,1295
264
+ uncountable/types/api/recipes/get_recipe_output_metadata.py,sha256=tMu7VdTgn5gQYpNIWUkVUP_0RxIMAXuscHmsov_Rg9M,1724
265
+ uncountable/types/api/recipes/get_recipes_data.py,sha256=Y2lDCEDjej6e0VFYGScKjdA8JX1LdZVQLfJtv_KoqJo,6408
266
+ uncountable/types/api/recipes/lock_recipes.py,sha256=r4B1HkjTG56D8QuntPy2CAx9F0SQmVJPk1cxyI0WXWE,1637
267
+ uncountable/types/api/recipes/remove_recipe_from_project.py,sha256=q4ZRB6pyi8EpQdK3CizNYfgV0-1LG_s7PEy3gIgKbVo,1097
268
+ uncountable/types/api/recipes/set_recipe_inputs.py,sha256=zrZiiFtvHbJ0qmpDp-Penv8nbHMtNjVyD8wbZNAWYu4,1681
269
+ uncountable/types/api/recipes/set_recipe_metadata.py,sha256=AWkC5zMSMJMV6vca4uoP0HiWdP0myihZlk4OWEtOlLo,1125
270
+ uncountable/types/api/recipes/set_recipe_output_annotations.py,sha256=l3vpsKdEqLHHympLxk0av-1-9Ag7Hng5e4smVCK6QyU,3605
271
+ uncountable/types/api/recipes/set_recipe_output_file.py,sha256=Wta7JnKHHNmoEKtzRn0IcfI6LU4B8ZoaxacjGUp0vJc,1543
272
+ uncountable/types/api/recipes/set_recipe_outputs.py,sha256=AhDsFnqRAfZkVGaC7iiuM9yledOy_TU8pexrmfht8jw,2218
273
+ uncountable/types/api/recipes/set_recipe_tags.py,sha256=HJ5SYiNaQjmmEfNggZ1kzi-zFsjn0F4XXVGHpiEnGM0,2959
274
+ uncountable/types/api/recipes/unarchive_recipes.py,sha256=zPUDmKjrUB7DJcw3XVeK4zuVqz94VbHYF9oiVb-Xu40,1021
275
+ uncountable/types/api/recipes/unlock_recipes.py,sha256=RaC5N5rz6f3FAIaQM3NgLuXEMdvnuCl8U_19pFI6ojs,1304
276
276
  uncountable/types/api/triggers/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
277
- uncountable/types/api/triggers/run_trigger.py,sha256=_Rpha9nxXI3Xr17CrGDtofg4HZ81x2lt0rMZ6As0qfE,893
277
+ uncountable/types/api/triggers/run_trigger.py,sha256=-oZgPyn43xEKSCs81DVNzwaYMCdRJxbM9GY6fsqKwf4,1090
278
278
  uncountable/types/api/uploader/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
279
- uncountable/types/api/uploader/invoke_uploader.py,sha256=Rc77y5q-3R9-SNQgm8P35zKaW2D1Hbtm7PDixnOn1G0,1025
280
- UncountablePythonSDK-0.0.72.dist-info/METADATA,sha256=Tg7-rgPrn3Yym3NA4cOfJjdjawKYQFKmEi6mMe7rPi0,2051
281
- UncountablePythonSDK-0.0.72.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
282
- UncountablePythonSDK-0.0.72.dist-info/top_level.txt,sha256=1UVGjAU-6hJY9qw2iJ7nCBeEwZ793AEN5ZfKX9A1uj4,31
283
- UncountablePythonSDK-0.0.72.dist-info/RECORD,,
279
+ uncountable/types/api/uploader/invoke_uploader.py,sha256=6mwVG136oLp9JcbB2I-kZnrcm3aeZzYZB-SFjEImY2o,1314
280
+ UncountablePythonSDK-0.0.74.dist-info/METADATA,sha256=cvY7ALGHYsY6rqK3qLdaXGE_8joz1ouiGFKtbPaOsFw,2051
281
+ UncountablePythonSDK-0.0.74.dist-info/WHEEL,sha256=OVMc5UfuAQiSplgO0_WdW7vXVGAt9Hdd6qtN4HotdyA,91
282
+ UncountablePythonSDK-0.0.74.dist-info/top_level.txt,sha256=1UVGjAU-6hJY9qw2iJ7nCBeEwZ793AEN5ZfKX9A1uj4,31
283
+ UncountablePythonSDK-0.0.74.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.1.0)
2
+ Generator: setuptools (75.2.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,4 +1,4 @@
1
- base_url: http://0.0.0.0:5000
1
+ base_url: http://host.docker.internal:5000
2
2
  auth_retrieval:
3
3
  type: basic
4
4
  api_id_secret:
@@ -1,4 +1,5 @@
1
1
  from .argument_parser import CachedParser as CachedParser
2
+ from .argument_parser import ParserFunction as ParserFunction
2
3
  from .argument_parser import ParserOptions as ParserOptions
3
4
  from .argument_parser import build_parser as build_parser
4
5
  from .case_convert import camel_to_snake_case as camel_to_snake_case
@@ -1,4 +1,5 @@
1
1
  import dataclasses
2
+ import math
2
3
  import types
3
4
  import typing
4
5
  from collections import defaultdict
@@ -299,7 +300,18 @@ def _build_parser_inner(
299
300
 
300
301
  return parse_str
301
302
 
302
- if parsed_type in (float, dict, bool, Decimal) or is_string_enum_class(parsed_type):
303
+ if parsed_type in (float, Decimal):
304
+
305
+ def parse_as_numeric_type(value: typing.Any) -> T:
306
+ numeric_value: Decimal | float = parsed_type(value) # type: ignore
307
+ if math.isnan(numeric_value):
308
+ raise ValueError(f"Invalid numeric value: {numeric_value}")
309
+
310
+ return numeric_value # type: ignore
311
+
312
+ return parse_as_numeric_type
313
+
314
+ if parsed_type in (dict, bool) or is_string_enum_class(parsed_type):
303
315
  return lambda value: parsed_type(value) # type: ignore
304
316
 
305
317
  if parsed_type is MissingSentryType:
@@ -14,6 +14,11 @@ class _SerialClassData:
14
14
  unconverted_values: set[str] = dataclasses.field(default_factory=set)
15
15
  to_string_values: set[str] = dataclasses.field(default_factory=set)
16
16
  parse_require: set[str] = dataclasses.field(default_factory=set)
17
+ named_type_path: Optional[str] = None
18
+ # Tracks if this data was provided as a decorator to the type.
19
+ # This is used to track "proper types" which are appropriate
20
+ # for serialization and/or dynamic discovery
21
+ from_decorator: bool = False
17
22
 
18
23
 
19
24
  EMPTY_SERIAL_CLASS_DATA = _SerialClassData()
@@ -25,6 +30,7 @@ def serial_class(
25
30
  unconverted_values: Optional[set[str]] = None,
26
31
  to_string_values: Optional[set[str]] = None,
27
32
  parse_require: Optional[set[str]] = None,
33
+ named_type_path: Optional[str] = None,
28
34
  ) -> Callable[[_ClassT], _ClassT]:
29
35
  """
30
36
  An additional decorator to a dataclass that specifies serialization options.
@@ -45,6 +51,8 @@ def serial_class(
45
51
  This field is always required while parsing, even if it has a default in the definition.
46
52
  This allows supporting literal type defaults for Python instantiation, but
47
53
  requiring them for the API input.
54
+ @param named_type_path
55
+ The type_spec type-path to this type. This applies only to named types.
48
56
  """
49
57
 
50
58
  def decorate(orig_class: _ClassT) -> _ClassT:
@@ -53,6 +61,8 @@ def serial_class(
53
61
  unconverted_values=unconverted_values or set(),
54
62
  to_string_values=to_string_values or set(),
55
63
  parse_require=parse_require or set(),
64
+ named_type_path=named_type_path,
65
+ from_decorator=True,
56
66
  )
57
67
  return orig_class
58
68
 
@@ -78,6 +88,14 @@ class SerialClassDataInspector:
78
88
  def has_parse_require(self, key: str) -> bool:
79
89
  return key in self.current.parse_require
80
90
 
91
+ @property
92
+ def from_decorator(self) -> bool:
93
+ return self.current.from_decorator
94
+
95
+ @property
96
+ def named_type_path(self) -> Optional[str]:
97
+ return self.current.named_type_path
98
+
81
99
 
82
100
  def _get_merged_serial_class_data(type_class: type[Any]) -> _SerialClassData | None:
83
101
  base_class_data = (
@@ -27,18 +27,21 @@ class _SerialUnion:
27
27
  # determine which type to parse.
28
28
  discriminator: typing.Optional[str] = None
29
29
  discriminator_map: typing.Optional[IdentityHashWrapper[dict[str, type]]] = None
30
+ named_type_path: typing.Optional[str] = None
30
31
 
31
32
 
32
33
  def serial_union_annotation(
33
34
  *,
34
35
  discriminator: typing.Optional[str] = None,
35
36
  discriminator_map: typing.Optional[dict[str, type]] = None,
37
+ named_type_path: typing.Optional[str] = None,
36
38
  ) -> _SerialUnion:
37
39
  return _SerialUnion(
38
40
  discriminator=discriminator,
39
41
  discriminator_map=IdentityHashWrapper(discriminator_map)
40
42
  if discriminator_map is not None
41
43
  else None,
44
+ named_type_path=named_type_path,
42
45
  )
43
46
 
44
47