UncountablePythonSDK 0.0.39__py3-none-any.whl → 0.0.41__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.
- {UncountablePythonSDK-0.0.39.dist-info → UncountablePythonSDK-0.0.41.dist-info}/METADATA +1 -1
- UncountablePythonSDK-0.0.41.dist-info/RECORD +223 -0
- {UncountablePythonSDK-0.0.39.dist-info → UncountablePythonSDK-0.0.41.dist-info}/WHEEL +1 -1
- pkgs/argument_parser/argument_parser.py +1 -1
- pkgs/serialization/yaml.py +54 -0
- pkgs/type_spec/config.py +1 -13
- pkgs/type_spec/emit_open_api.py +3 -3
- pkgs/type_spec/emit_python.py +40 -7
- pkgs/type_spec/load_types.py +2 -1
- pkgs/type_spec/type_info/emit_type_info.py +1 -1
- pkgs/type_spec/value_spec/__main__.py +1 -1
- uncountable/integration/cron.py +2 -0
- uncountable/integration/entrypoint.py +5 -6
- uncountable/integration/job.py +1 -1
- uncountable/types/__init__.py +29 -29
- uncountable/types/api/batch/execute_batch.py +1 -1
- uncountable/types/api/batch/execute_batch_load_async.py +2 -2
- uncountable/types/api/chemical/convert_chemical_formats.py +1 -1
- uncountable/types/api/entity/create_entities.py +3 -3
- uncountable/types/api/entity/create_entity.py +3 -3
- uncountable/types/api/entity/get_entities_data.py +3 -3
- uncountable/types/api/entity/list_entities.py +2 -2
- uncountable/types/api/entity/lock_entity.py +3 -3
- uncountable/types/api/entity/resolve_entity_ids.py +2 -2
- uncountable/types/api/entity/set_values.py +3 -3
- uncountable/types/api/entity/transition_entity_phase.py +3 -3
- uncountable/types/api/entity/unlock_entity.py +3 -3
- uncountable/types/api/equipment/associate_equipment_input.py +3 -3
- uncountable/types/api/field_options/upsert_field_options.py +1 -1
- uncountable/types/api/id_source/list_id_source.py +2 -2
- uncountable/types/api/id_source/match_id_source.py +2 -2
- uncountable/types/api/input_groups/get_input_group_names.py +1 -1
- uncountable/types/api/inputs/create_inputs.py +3 -3
- uncountable/types/api/inputs/get_input_data.py +2 -2
- uncountable/types/api/inputs/get_input_names.py +1 -1
- uncountable/types/api/inputs/get_inputs_data.py +2 -2
- uncountable/types/api/inputs/set_input_attribute_values.py +2 -2
- uncountable/types/api/inputs/set_input_category.py +2 -2
- uncountable/types/api/inputs/set_input_subcategories.py +3 -3
- uncountable/types/api/inputs/set_intermediate_type.py +1 -1
- uncountable/types/api/material_families/update_entity_material_families.py +5 -5
- uncountable/types/api/outputs/get_output_data.py +2 -2
- uncountable/types/api/outputs/get_output_names.py +1 -1
- uncountable/types/api/outputs/resolve_output_conditions.py +1 -1
- uncountable/types/api/permissions/set_core_permissions.py +3 -3
- uncountable/types/api/project/get_projects.py +2 -2
- uncountable/types/api/project/get_projects_data.py +4 -4
- uncountable/types/api/recipe_links/create_recipe_link.py +3 -3
- uncountable/types/api/recipe_links/remove_recipe_link.py +3 -3
- uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +1 -1
- uncountable/types/api/recipes/add_recipe_to_project.py +1 -1
- uncountable/types/api/recipes/archive_recipes.py +1 -1
- uncountable/types/api/recipes/associate_recipe_as_input.py +2 -2
- uncountable/types/api/recipes/associate_recipe_as_lot.py +2 -2
- uncountable/types/api/recipes/create_recipe.py +4 -4
- uncountable/types/api/recipes/create_recipes.py +2 -2
- uncountable/types/api/recipes/disassociate_recipe_as_input.py +2 -2
- uncountable/types/api/recipes/edit_recipe_inputs.py +3 -3
- uncountable/types/api/recipes/get_curve.py +2 -2
- uncountable/types/api/recipes/get_recipe_calculations.py +2 -2
- uncountable/types/api/recipes/get_recipe_links.py +2 -2
- uncountable/types/api/recipes/get_recipe_names.py +1 -1
- uncountable/types/api/recipes/get_recipe_output_metadata.py +2 -2
- uncountable/types/api/recipes/get_recipes_data.py +7 -7
- uncountable/types/api/recipes/lock_recipes.py +1 -1
- uncountable/types/api/recipes/remove_recipe_from_project.py +1 -1
- uncountable/types/api/recipes/set_recipe_inputs.py +1 -1
- uncountable/types/api/recipes/set_recipe_metadata.py +2 -2
- uncountable/types/api/recipes/set_recipe_output_annotations.py +2 -2
- uncountable/types/api/recipes/set_recipe_outputs.py +3 -3
- uncountable/types/api/recipes/set_recipe_tags.py +2 -2
- uncountable/types/api/recipes/unarchive_recipes.py +1 -1
- uncountable/types/api/recipes/unlock_recipes.py +1 -1
- uncountable/types/api/triggers/run_trigger.py +2 -2
- uncountable/types/async_batch.py +5 -53
- uncountable/types/async_batch_processor.py +6 -6
- uncountable/types/async_batch_t.py +59 -0
- uncountable/types/base.py +4 -78
- uncountable/types/base_t.py +85 -0
- uncountable/types/calculations.py +2 -17
- uncountable/types/calculations_t.py +23 -0
- uncountable/types/chemical_structure.py +2 -21
- uncountable/types/chemical_structure_t.py +27 -0
- uncountable/types/client_base.py +12 -12
- uncountable/types/curves.py +4 -41
- uncountable/types/curves_t.py +47 -0
- uncountable/types/entity.py +3 -268
- uncountable/types/entity_t.py +274 -0
- uncountable/types/experiment_groups.py +2 -17
- uncountable/types/experiment_groups_t.py +23 -0
- uncountable/types/field_values.py +5 -59
- uncountable/types/field_values_t.py +65 -0
- uncountable/types/fields.py +2 -18
- uncountable/types/fields_t.py +24 -0
- uncountable/types/id_source.py +6 -43
- uncountable/types/id_source_t.py +49 -0
- uncountable/types/identifier.py +5 -48
- uncountable/types/identifier_t.py +54 -0
- uncountable/types/input_attributes.py +2 -23
- uncountable/types/input_attributes_t.py +29 -0
- uncountable/types/inputs.py +4 -56
- uncountable/types/inputs_t.py +62 -0
- uncountable/types/outputs.py +2 -20
- uncountable/types/outputs_t.py +26 -0
- uncountable/types/permissions.py +2 -40
- uncountable/types/permissions_t.py +46 -0
- uncountable/types/phases.py +2 -17
- uncountable/types/phases_t.py +23 -0
- uncountable/types/post_base.py +2 -24
- uncountable/types/post_base_t.py +30 -0
- uncountable/types/recipe_identifiers.py +6 -56
- uncountable/types/recipe_identifiers_t.py +62 -0
- uncountable/types/recipe_inputs.py +3 -24
- uncountable/types/recipe_inputs_t.py +30 -0
- uncountable/types/recipe_links.py +3 -44
- uncountable/types/recipe_links_t.py +50 -0
- uncountable/types/recipe_metadata.py +4 -46
- uncountable/types/recipe_metadata_t.py +52 -0
- uncountable/types/recipe_output_metadata.py +2 -18
- uncountable/types/recipe_output_metadata_t.py +24 -0
- uncountable/types/recipe_tags.py +2 -17
- uncountable/types/recipe_tags_t.py +23 -0
- uncountable/types/recipe_workflow_steps.py +8 -82
- uncountable/types/recipe_workflow_steps_t.py +88 -0
- uncountable/types/recipes.py +2 -15
- uncountable/types/recipes_t.py +21 -0
- uncountable/types/response.py +2 -19
- uncountable/types/response_t.py +25 -0
- uncountable/types/units.py +2 -17
- uncountable/types/units_t.py +23 -0
- uncountable/types/users.py +2 -18
- uncountable/types/users_t.py +24 -0
- uncountable/types/workflows.py +3 -26
- uncountable/types/workflows_t.py +32 -0
- UncountablePythonSDK-0.0.39.dist-info/RECORD +0 -193
- {UncountablePythonSDK-0.0.39.dist-info → UncountablePythonSDK-0.0.41.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.
|
|
3
|
+
Version: 0.0.41
|
|
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
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
docs/.gitignore,sha256=_ebkZUcwfvfnGEJ95rfj1lxoBNd6EE9ZvtOc7FsbfFE,7
|
|
2
|
+
docs/conf.py,sha256=YF5J-9g_Wg8wXmyHsGaE8xYlDEzqocNl3UWUmP0CwBg,1702
|
|
3
|
+
docs/index.md,sha256=eEdirX_Ds6ICTRtIS5iT4irCquHcQyKN7E4M5QP9T8A,257
|
|
4
|
+
docs/justfile,sha256=cvNcpb-ByPOF2aCrFlg3DDZBoYMx5W8xGdr13m9HcnI,215
|
|
5
|
+
docs/quickstart.md,sha256=3GuJ0MB1O5kjlsrgAmdSkDq0rYqATrYy-tzEHDy8H-c,422
|
|
6
|
+
docs/requirements.txt,sha256=NnB0-jOOufUvD3q1csl7WvQ8oHOD-5emqp_SWUXExI0,138
|
|
7
|
+
docs/static/logo_blue.png,sha256=SyYpMTVhhBbhF5Wl8lWaVwz-_p1MIR6dW6bVhufQRME,46708
|
|
8
|
+
docs/static/favicons/android-chrome-192x192.png,sha256=XoF-AhD55JlSBDGsEPJKfT_VeXT-awhwKyZnxLhrwvk,1369
|
|
9
|
+
docs/static/favicons/android-chrome-512x512.png,sha256=1S4xwY9YtJQ5ifFsZ-DOzssoyBYs0t9uwdOUmYx0Xso,3888
|
|
10
|
+
docs/static/favicons/apple-touch-icon.png,sha256=4qdKI-pFHxrot00cFGY-_jD7Kame6Ct_klQBNmW3j80,1403
|
|
11
|
+
docs/static/favicons/browserconfig.xml,sha256=oU7ZjY1qKLU992MIOAOZ7h-uVyqmEah2TKzyae4Uw0s,263
|
|
12
|
+
docs/static/favicons/favicon-16x16.png,sha256=M4r4A3_NVuw3h5pWZs5-CmhmquSMiKaNcCqyyJRjNmU,392
|
|
13
|
+
docs/static/favicons/favicon-32x32.png,sha256=U4UU652zGnSeU3P9kUqxPeEnVf6zhtdNdNwGz1E40UU,511
|
|
14
|
+
docs/static/favicons/manifest.json,sha256=6q_3nZkcg_x0xut4eE-xpdeMY1TydwiZIcbXlLAq9X8,437
|
|
15
|
+
docs/static/favicons/mstile-150x150.png,sha256=eAK4QdEofhdLtfmjuPTpnX3MJqYnvGXsHYUjlcQekyY,1035
|
|
16
|
+
docs/static/favicons/safari-pinned-tab.svg,sha256=S84fRnz0ZxLnQrKtmmFZytiRyu1xLtMR_RVy5jmwU7k,1926
|
|
17
|
+
examples/async_batch.py,sha256=CffQ8O9drJ-Mdd6S5DnMIOBsHv5aVkTZrD3l3xBnB4s,1094
|
|
18
|
+
examples/create_entity.py,sha256=noZdtJ5f9Wfiob3zUH-8bDVbrCPJnFtXFk_W9pSjvUA,664
|
|
19
|
+
examples/edit_recipe_inputs.py,sha256=f1zpK2T00JNQdbh7R01Sns1D_3TTgj-u8-YInoczRX8,1541
|
|
20
|
+
examples/upload_files.py,sha256=tUfKFqiqwnw08OL5Y8_e4j5pSRhp94cFex8XTuVa_ig,487
|
|
21
|
+
pkgs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
|
+
pkgs/argument_parser/__init__.py,sha256=CsQ6QoPKSLLRVl-z6URAmPkiUL9ZPZoV4rJHgy_-RjA,385
|
|
23
|
+
pkgs/argument_parser/_is_enum.py,sha256=Gw6jJa8nBwYGqXwwCZbSnWL8Rvr5alkg5lSVAqXtOZM,257
|
|
24
|
+
pkgs/argument_parser/_is_namedtuple.py,sha256=Rjc1bKanIPPogl3qG5JPBxglG1TqWYOo1nxxhBASQWY,265
|
|
25
|
+
pkgs/argument_parser/argument_parser.py,sha256=wNGidf80hO0PrPq2zC6NPQXm3Ia_qbrhlsiCXtGIETY,17272
|
|
26
|
+
pkgs/argument_parser/case_convert.py,sha256=NuJLJUJRbyVb6_Slen4uqaStEHbcOS1d-hBBfDrrw-c,605
|
|
27
|
+
pkgs/serialization/__init__.py,sha256=LifasRW0a50A3qRFmo2bf3FQ6TXhZWOTz2-CVTgPjcQ,753
|
|
28
|
+
pkgs/serialization/missing_sentry.py,sha256=aM_9KxbCk9dVvXvcOKgkIQBqFWvLhv8QlIUCiuFEXMo,806
|
|
29
|
+
pkgs/serialization/opaque_key.py,sha256=FIfXEE0DA1U8R_taFbQ1RCoTSgehrPjP06-qvo-GeNQ,177
|
|
30
|
+
pkgs/serialization/serial_class.py,sha256=r0hrQdIbJA_X0W0_jKEVrxi_JzVRT9qHCjsUgGu3cCI,5290
|
|
31
|
+
pkgs/serialization/serial_union.py,sha256=z8Ptj4bVHyb1ROfg0UPTwZ6Ef6iXLr0YJfAH5o_PU9A,2601
|
|
32
|
+
pkgs/serialization/yaml.py,sha256=t-31FS0pL1YbhfspK88iQEGa1WDn60Fw16CpoLSClJM,1453
|
|
33
|
+
pkgs/serialization_util/__init__.py,sha256=MVKqHTUl2YnWZAFG9xCxu1SgmkQ5xPofrAGlYg6h7rI,330
|
|
34
|
+
pkgs/serialization_util/_get_type_for_serialization.py,sha256=dW5_W9MFd6wgWfW5qlWork-GBb-QFLtiOZkjk2Zqn2M,1177
|
|
35
|
+
pkgs/serialization_util/convert_to_snakecase.py,sha256=H2BAo5ZdcCDN77RpLb-uP0s7-FQ5Ukwnsd3VYc1vD0M,583
|
|
36
|
+
pkgs/serialization_util/serialization_helpers.py,sha256=B8W82-KT10nQYmDk5uhAqB5QNS-dsxzXMFhtTmooMqw,6365
|
|
37
|
+
pkgs/strenum_compat/__init__.py,sha256=wXRFeNvBm8RU6dy1PFJ5sRLgUIEeH_DVR95Sv5qpGbk,59
|
|
38
|
+
pkgs/strenum_compat/strenum_compat.py,sha256=uOUAgpYTjHs1MX8dG81jRlyTkt3KNbkV_25zp7xTX2s,36
|
|
39
|
+
pkgs/type_spec/__init__.py,sha256=h5DmJTca4QVV10sZR1x0-MlkZfuGYDfapR3zHvXfzto,19
|
|
40
|
+
pkgs/type_spec/__main__.py,sha256=5bJaX9Y_-FavP0qwzhk-z-V97UY7uaezJTa1zhO_HHQ,1048
|
|
41
|
+
pkgs/type_spec/builder.py,sha256=xQcY2HcQTI2FSOMycgx3yD23_Oz3_LfWdyW65pDaHoc,46667
|
|
42
|
+
pkgs/type_spec/config.py,sha256=IQyo2Vj11uNt7_d6jQxvominAOU-oPB8ldEmuGzJLpU,4644
|
|
43
|
+
pkgs/type_spec/emit_io_ts.py,sha256=Ghd8XYqyNYldHQDepwa9GLfHXcoi48ztBw84K28ETic,5707
|
|
44
|
+
pkgs/type_spec/emit_open_api.py,sha256=8BTZpiQlD628WoFsjDVzRdmM0ZBfMP19QSJOOcdZoLQ,24397
|
|
45
|
+
pkgs/type_spec/emit_open_api_util.py,sha256=9tWLMT6NTeCa2caO8DdWo6aYoi0b4AEFiAXNaaQKJIs,2373
|
|
46
|
+
pkgs/type_spec/emit_python.py,sha256=djF_nUs0v3c5NI8BJjOj0gbLtf_PgbMgk5CCgvh2aPg,46469
|
|
47
|
+
pkgs/type_spec/emit_typescript.py,sha256=cdr5h8N70PuwORcvhURUujzwH9r1LVwJB8V2EoipGkw,17917
|
|
48
|
+
pkgs/type_spec/emit_typescript_util.py,sha256=sR7ys3Ilnh6SQiXJbfYk4pxfOu0bDjbUFTEYEW-ud6c,863
|
|
49
|
+
pkgs/type_spec/load_types.py,sha256=BOLyndtxPqqhUqZAh-lIbN5IZBaW_m-bdYpKGsbPyXM,3654
|
|
50
|
+
pkgs/type_spec/open_api_util.py,sha256=IGh-_snGPST_P_8FdYtO8MTEa9PUxRW6Rzg9X9EgQik,7114
|
|
51
|
+
pkgs/type_spec/test.py,sha256=4ueujBq-pEgnX3Z69HyPmD-bullFXmpixcpVzfOkhP4,489
|
|
52
|
+
pkgs/type_spec/util.py,sha256=6m6MPfY-SwjyZf2FWQKclswWB5o7gcdd-3tdpViPYOQ,4844
|
|
53
|
+
pkgs/type_spec/actions_registry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
|
+
pkgs/type_spec/actions_registry/__main__.py,sha256=JGwKxcAmrQdbpVR2vwknoimN1Q-r5h4SADw1cYLYzgk,4331
|
|
55
|
+
pkgs/type_spec/actions_registry/emit_typescript.py,sha256=ben0W7qwaVCzLO-t3NEJPPNGEE_6sKLdJMuAh8aMBnw,6044
|
|
56
|
+
pkgs/type_spec/parts/base.py.prepart,sha256=wGNoDyQnLolHRZGRwHQX5TrPfKnu558NXCocYvqyroc,2174
|
|
57
|
+
pkgs/type_spec/parts/base.ts.prepart,sha256=2FJJvpg2olCcavxj0nbYWdwKl6KeScour2JjSvN42l8,1001
|
|
58
|
+
pkgs/type_spec/type_info/__main__.py,sha256=pmVjVqXyVh8vKTNCTFgz80Sg74C5BKToP3E6GS-X_So,857
|
|
59
|
+
pkgs/type_spec/type_info/emit_type_info.py,sha256=7FtMm_WOhxoT8Hy2DDorexIccwCNVZ9mJTBURD8l9Rk,13282
|
|
60
|
+
pkgs/type_spec/value_spec/__init__.py,sha256=Z-grlcZtxAfEXhPHsK0nD7PFLGsv4eqvunaPN7_TA84,83
|
|
61
|
+
pkgs/type_spec/value_spec/__main__.py,sha256=6bzP85p_Cm4bPp5tXz8D_4p64wMn5SKsXC7SqSZquYc,8318
|
|
62
|
+
pkgs/type_spec/value_spec/convert_type.py,sha256=SAYyEV6orQJJbkXSE4hhtOQJ2vKUXJCKPeYPrB8G9oA,2272
|
|
63
|
+
pkgs/type_spec/value_spec/emit_python.py,sha256=rjg6LIGYdaagrZ19XpDfW_Z7LPNwCMDceBje5dsMFbw,6959
|
|
64
|
+
pkgs/type_spec/value_spec/types.py,sha256=a2zxbbCRWepY1l8OtjeCDKgBKFPFHVgV99oP6pTtaro,441
|
|
65
|
+
uncountable/__init__.py,sha256=8l8XWNCKsu7TG94c-xa2KHpDegvxDC2FyQISdWC763Y,89
|
|
66
|
+
uncountable/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
67
|
+
uncountable/core/__init__.py,sha256=RFv0kO6rKFf1PtBPu83hCGmxqkJamRtsgQ9_-ztw7tA,341
|
|
68
|
+
uncountable/core/async_batch.py,sha256=Zo02TICZ7AK81Qa02NQ8fp8uaijQph1FEta28K3cKb0,749
|
|
69
|
+
uncountable/core/client.py,sha256=50vR11GwwyTc3qOIahUxCJK77zCM7LOXwbZdHoZCZgY,10168
|
|
70
|
+
uncountable/core/file_upload.py,sha256=t4cutIFB5rNN2qVCx3H0HotSjCSJSxis2_QBarDuXyc,2833
|
|
71
|
+
uncountable/core/types.py,sha256=s2CjqYJpsmbC7xMwxxT7kJ_V9bwokrjjWVVjpMcQpKI,333
|
|
72
|
+
uncountable/integration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
73
|
+
uncountable/integration/construct_client.py,sha256=N3K-wck7teqvHTrOh0N2bGF3u6kyuwQvgo7gsKLihQ0,1077
|
|
74
|
+
uncountable/integration/cron.py,sha256=JIBgHUi4BqUULEPwYCZlDsvdJXLtl-EgCt7RVIdVmSE,995
|
|
75
|
+
uncountable/integration/entrypoint.py,sha256=zpYd1mzbc7uZ68IyXIkODqKPvzsUZ_3Lkj2H2bhKor0,1377
|
|
76
|
+
uncountable/integration/job.py,sha256=Cy10LUfy2HaGcVz0uH7I00WeyyFYKYgEd-rE_OqVkUc,819
|
|
77
|
+
uncountable/integration/server.py,sha256=5Wh80VyfgUUHA5NiFGn9LjS4KJ9zJz3QbNTLLKhFAso,3342
|
|
78
|
+
uncountable/integration/types.py,sha256=n9idu2_qHOA5CQdE6NK8HS6aZ8ugTZKTfTTnm4sy8tI,2066
|
|
79
|
+
uncountable/integration/db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
80
|
+
uncountable/integration/db/connect.py,sha256=YtQHJ1DBGPhxKFRCfiXqohOYUceKSxMVOJ88aPI48Ug,181
|
|
81
|
+
uncountable/integration/executors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
82
|
+
uncountable/integration/executors/script_executor.py,sha256=hM8E-aU8zyM6ZcBtqAqInKZ_BF93RLqEA0dU7y5FhWQ,841
|
|
83
|
+
uncountable/types/__init__.py,sha256=7Mh5hhEpY2w33Wp8SfUc2fbvyDk_DvuK9oZFWol07dc,7771
|
|
84
|
+
uncountable/types/async_batch.py,sha256=ihCv5XWSTTPmuO-GMPn1EACGI2CBUIJTATZ3aPgsNBA,523
|
|
85
|
+
uncountable/types/async_batch_processor.py,sha256=wqwEe6L0_YdcldljZi6aaunYJTbNwYqo2rC5r_nxfvM,7368
|
|
86
|
+
uncountable/types/async_batch_t.py,sha256=UJ-9vkTCJjY5QNS9Us0F-_swD1as80s9xztyJzwPdmI,1773
|
|
87
|
+
uncountable/types/base.py,sha256=xVSjWvA_fUUnkCg83EjoYEFvAfmskinKFMeYFOxNc9E,359
|
|
88
|
+
uncountable/types/base_t.py,sha256=XXjZXexx0xWFUxMMhW8i9nIL6n8dsZVsHwdgnhZ0zJ4,2714
|
|
89
|
+
uncountable/types/calculations.py,sha256=FFO_D3BbKoGDZnqWvTKpW4KF359i2vrKjpdFCLYzJC0,284
|
|
90
|
+
uncountable/types/calculations_t.py,sha256=C2LlGVtVFhAo3uXK8LTXb36890nYIjfaL21goQA6YcU,559
|
|
91
|
+
uncountable/types/chemical_structure.py,sha256=E-LnikTFDoVQ1b2zKaVUIO_PAKm-7aZZYJi8I8SDSic,302
|
|
92
|
+
uncountable/types/chemical_structure_t.py,sha256=Qfeq0Iwgvd0Jq42fSsa5TPeeL_nH0FOctbmLGBlZqY4,763
|
|
93
|
+
uncountable/types/client_base.py,sha256=FMXVJZDoMZhUu0pjsuHg-wn7cDCFtgoYDVFd8A9L5rs,64358
|
|
94
|
+
uncountable/types/curves.py,sha256=W6uMpG5SyW1MS82szNpxkFEn1MnxNpBFyFbQb2Ysfng,366
|
|
95
|
+
uncountable/types/curves_t.py,sha256=D-7CRBxnx13-CURb2PyhYC-heHyb766zp1Dl8gb8fI0,1305
|
|
96
|
+
uncountable/types/entity.py,sha256=3XhLteFDRDZvHejDuYh-KvB65hpwrBygljFfiUcOAM8,315
|
|
97
|
+
uncountable/types/entity_t.py,sha256=zwm0YAEfO2Nk5cAOZIltTNguncU2W_E6Y194z6cmxis,11634
|
|
98
|
+
uncountable/types/experiment_groups.py,sha256=_0OXcPzSAbkE-rfKt5tPx178YJ4pcEKZvrCxUHgDnvw,309
|
|
99
|
+
uncountable/types/experiment_groups_t.py,sha256=O5Ae5J7QpY-UCJtVyFklzy2j4H7G9C_GI9gPuG7u4Ro,596
|
|
100
|
+
uncountable/types/field_values.py,sha256=uuIWX-xmfvcinYPdfkWJeb56zzQY01mc9rmotMPMh24,503
|
|
101
|
+
uncountable/types/field_values_t.py,sha256=E1bAGQ1CeKIJWSvRte-vBfVYU78FjMhPo_0FZyXMpec,1667
|
|
102
|
+
uncountable/types/fields.py,sha256=GUY5ne8Zp2_Lalikr0zcbdJrin8dG81eyS8fKWJ9yf8,266
|
|
103
|
+
uncountable/types/fields_t.py,sha256=r2voMUbJ_NNLTqLpoTlroJFz5ZtRs8Uicfk2VRnKPls,567
|
|
104
|
+
uncountable/types/id_source.py,sha256=wGLA0fMl-5IqBG_fg2UDC7fY-8CWRBNFJOokejOoN_w,567
|
|
105
|
+
uncountable/types/id_source_t.py,sha256=nboOaYjzN4WPaepfAiuGUXAc-PrIp319BXBmOyfBA9E,1336
|
|
106
|
+
uncountable/types/identifier.py,sha256=6ziONd__L07ijhVwpIehUUDvxgKTtHbunk-6CivJqxQ,503
|
|
107
|
+
uncountable/types/identifier_t.py,sha256=KwdB4TJco_ygq8UgI50XgBB3CR7xOBu_zxQs1qJlnII,1452
|
|
108
|
+
uncountable/types/input_attributes.py,sha256=IrIKQnHqHdS1Utdfzr9GnOe17a8riaqYcO1r0nvtkvA,304
|
|
109
|
+
uncountable/types/input_attributes_t.py,sha256=vfTexLpntWRQV8KLRyw_ihdvk-rL_guqGeuIpiq2QrI,823
|
|
110
|
+
uncountable/types/inputs.py,sha256=6RIEFfCxLqpeHEGOpu63O4i8zPogjGeB7wiV_rPBw_g,404
|
|
111
|
+
uncountable/types/inputs_t.py,sha256=4Xgm807Fl8AXr76jJT1cHjqOKHkhP2KcDqPhaAS7X7Y,1614
|
|
112
|
+
uncountable/types/outputs.py,sha256=sUZx_X-TKCZtLm1YCEH8OISX9DdPlv9ZuUfM3-askCc,281
|
|
113
|
+
uncountable/types/outputs_t.py,sha256=35T97zdbKOXj_63nOeICuictV0Txq6vB5rVw__4aF8E,659
|
|
114
|
+
uncountable/types/permissions.py,sha256=1mRnSsmRgjuLgp6pylTwwACD_YRIcmlqxHkufwZtMns,297
|
|
115
|
+
uncountable/types/permissions_t.py,sha256=i0vFwVvmmnInrA5qW8uuo0_tM6KYn3VYZ75d9084Vko,1625
|
|
116
|
+
uncountable/types/phases.py,sha256=YCsU77DdjRJJWdLTwLuOZNG4e9ML82NIBI1xTWr3ggA,266
|
|
117
|
+
uncountable/types/phases_t.py,sha256=uC4-16UzWVrywTTz8YBkLsiRaxS69s5ft89hZNGUzsE,547
|
|
118
|
+
uncountable/types/post_base.py,sha256=GES5_IhXFAjpzI6ChbVP4zTkX6f3tPUIHST1sxsRN6Q,279
|
|
119
|
+
uncountable/types/post_base_t.py,sha256=2et3TDnFChZcx0RWU-18RJHw9Yiyj2TJz-2tByHXwaI,770
|
|
120
|
+
uncountable/types/recipe_identifiers.py,sha256=Pi5KX64kzoBp_t_tjb3uVk9Ef1WPIIXGtUdINXi5vcY,654
|
|
121
|
+
uncountable/types/recipe_identifiers_t.py,sha256=zt3OK0aqoIl0jMgvZH8vFe_L4vsAue0Bn44NMbBJgUE,1765
|
|
122
|
+
uncountable/types/recipe_inputs.py,sha256=5ThNFEOGbADqqfj1V3hNvZUcO5pn1Gm17LmzQkWDrtI,351
|
|
123
|
+
uncountable/types/recipe_inputs_t.py,sha256=t5nFzuF1AU6SUHpya6xKHSlcckmt3XxAuk9ofjZ2oGU,746
|
|
124
|
+
uncountable/types/recipe_links.py,sha256=YRiu6t7FWr7ZWycIaOPXBtQFqbY_q5unaP6KQzh1LzE,343
|
|
125
|
+
uncountable/types/recipe_links_t.py,sha256=7Pai7fWuu5iGcHBDfDflkhj6L4MPCe9G0uER6KrsmRU,1403
|
|
126
|
+
uncountable/types/recipe_metadata.py,sha256=Zpcrupq_mlT2UhXpMJup5XjtubmvgZ8SbJNq7da2pCs,441
|
|
127
|
+
uncountable/types/recipe_metadata_t.py,sha256=JDi3AJkwRF9sgu9gvPtLy9xMixX8BM1QpiZdZHdRXF4,1434
|
|
128
|
+
uncountable/types/recipe_output_metadata.py,sha256=83jKZCvogG9QjZeJpQptdSam_MnnUj-tqh9EVIrTWjE,322
|
|
129
|
+
uncountable/types/recipe_output_metadata_t.py,sha256=PYDXH1i6-W53vqj9qy_1QXeHX6m7cmkmKGCWnM8GHfk,610
|
|
130
|
+
uncountable/types/recipe_tags.py,sha256=eyYa_rox00a1JQ0lOQv9STnJI04ksCL_3kHSDx5w7rM,291
|
|
131
|
+
uncountable/types/recipe_tags_t.py,sha256=cdn0cuHQtn3l5WQXt8rydgjYkYbhhcGyepeB-So9jhE,578
|
|
132
|
+
uncountable/types/recipe_workflow_steps.py,sha256=-s1sOXMny4kcqT8K_vQRbKjc1Hs855A_e9ZZejDRvN4,971
|
|
133
|
+
uncountable/types/recipe_workflow_steps_t.py,sha256=6dQWjZh4vxhDwa8sXcdlePYMqFwxEXTJl_IZOrwUZp0,2988
|
|
134
|
+
uncountable/types/recipes.py,sha256=1ifutxUN-Blv_vcwMx6DKT47My5pJTG1cwqsMqKK7LY,307
|
|
135
|
+
uncountable/types/recipes_t.py,sha256=U1QxgZPGDYM7HfTm7Y401-FvAh5VPigd9b34b-3kQTA,554
|
|
136
|
+
uncountable/types/response.py,sha256=WOlSgQYKK_fnnXk1i-h3Bwx2ZiYqpLj-lnt-hXhmbWs,274
|
|
137
|
+
uncountable/types/response_t.py,sha256=1vSfw7u5k5vrbQFQbVrT3JU7vkOHa86jY5T0kGVaHvY,625
|
|
138
|
+
uncountable/types/units.py,sha256=R_TBhxWCIWSSXK9J3S0Omtj3t5BZNK9C80MyqFjMO7k,275
|
|
139
|
+
uncountable/types/units_t.py,sha256=mRBkBY4u1Fko5kFhoonUp4XlwHxoUlMv_v2o727AsOs,562
|
|
140
|
+
uncountable/types/users.py,sha256=YEk8v0vDOBFvmOQMQw7MAOicSGzMui8Hb9hdFX2Vw3E,275
|
|
141
|
+
uncountable/types/users_t.py,sha256=GchFvllFynlbEDpXE_Kt5LmNu_hGfI-G1lcNjhICpgo,585
|
|
142
|
+
uncountable/types/workflows.py,sha256=uSZWsdDe2jpXnBnRunEen7_7pbKBrE0ds_ez98EzyPg,353
|
|
143
|
+
uncountable/types/workflows_t.py,sha256=bCyv0lrKutEQ7ltoUFh-PDbgCbxTk1I-gIY05jbHv_4,822
|
|
144
|
+
uncountable/types/api/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
145
|
+
uncountable/types/api/batch/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
146
|
+
uncountable/types/api/batch/execute_batch.py,sha256=uLpxq9eUTadDaIDe6NhIk9aXyW0FAlEYleSak6rC8hs,1693
|
|
147
|
+
uncountable/types/api/batch/execute_batch_load_async.py,sha256=xBPageO2rDSpZcyyF-e34DWls08BnFJeKPMAH9RfROc,867
|
|
148
|
+
uncountable/types/api/chemical/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
149
|
+
uncountable/types/api/chemical/convert_chemical_formats.py,sha256=vVw4RbR8ueEwW97kQr9MIr-srU7Qj38PnkI_5fElAXM,1302
|
|
150
|
+
uncountable/types/api/entity/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
151
|
+
uncountable/types/api/entity/create_entities.py,sha256=3e00ZPoMOHoXZVfXreBLsia5R50LJxD5tS7XpVJ576Y,1674
|
|
152
|
+
uncountable/types/api/entity/create_entity.py,sha256=OeG8BMPtlV529bZi3qcYeojDppuASs0J6LRncmXxrfE,1844
|
|
153
|
+
uncountable/types/api/entity/get_entities_data.py,sha256=O0D5MK6antWUZUaTLn10Q89iE-fpc7Earvr47obpp2A,1141
|
|
154
|
+
uncountable/types/api/entity/list_entities.py,sha256=GhLqLdXbdJvF5bmhpZuCUiKsxM6J66HXqy-1QJJoBXY,1684
|
|
155
|
+
uncountable/types/api/entity/lock_entity.py,sha256=LIJFVBQrrmf3ts09oN-V6_2MnVi2dXXd5WVRR2iaotY,995
|
|
156
|
+
uncountable/types/api/entity/resolve_entity_ids.py,sha256=hNYBk_ne_s3xVvQZ02Z8-V8BCbp3G5Eg0NZRWDfNUck,1073
|
|
157
|
+
uncountable/types/api/entity/set_values.py,sha256=NgsI7m7BMifmiFS0XSBaU5a1AG-X86bCz4DwAHvINBg,925
|
|
158
|
+
uncountable/types/api/entity/transition_entity_phase.py,sha256=_QiWEiOeCNnSX1YFdSqeAHYWEOEeM4-A6jHB59XaHvo,1772
|
|
159
|
+
uncountable/types/api/entity/unlock_entity.py,sha256=dNZAPCbi8JpB7wCUJQWxwz0k1yBgZeqdCu9Vajio3PY,944
|
|
160
|
+
uncountable/types/api/equipment/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
161
|
+
uncountable/types/api/equipment/associate_equipment_input.py,sha256=zurlH3QJaUHmruSSfi1XjXLMNQeSkkbPScAyiEOgyf8,961
|
|
162
|
+
uncountable/types/api/field_options/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
163
|
+
uncountable/types/api/field_options/upsert_field_options.py,sha256=kRezpWqVA7mrCOXt1KufeTHbRrIQEewpY5BXDSlJz70,1135
|
|
164
|
+
uncountable/types/api/id_source/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
165
|
+
uncountable/types/api/id_source/list_id_source.py,sha256=zTThlQkB6Rai2t4V4qAJX9I_SmnzA6JJSF8FnItGZeA,1141
|
|
166
|
+
uncountable/types/api/id_source/match_id_source.py,sha256=p016NJhx7N9qb5lWYiE-bkXvlJVqiAOArxS4ZJQoAfs,1032
|
|
167
|
+
uncountable/types/api/input_groups/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
168
|
+
uncountable/types/api/input_groups/get_input_group_names.py,sha256=3Xnug0sz4Rd9Pp34lr6I_VRQ_k7Na_aFfU4lsTw91K0,1030
|
|
169
|
+
uncountable/types/api/inputs/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
170
|
+
uncountable/types/api/inputs/create_inputs.py,sha256=LJVwafoi4dShjNW2TH8AgMY78Y0q-n1WRsfk70qAUPg,1642
|
|
171
|
+
uncountable/types/api/inputs/get_input_data.py,sha256=t4ab7T7FBuM16IYaOuqbl9zVHWhSQf5rlFxUTzf74Ik,2155
|
|
172
|
+
uncountable/types/api/inputs/get_input_names.py,sha256=gCYigBacSWU1EHY7PyDML_iX5zKTHIXsAYOLO0-Hy_I,1150
|
|
173
|
+
uncountable/types/api/inputs/get_inputs_data.py,sha256=Ujkl3N5va3cVFZ_cmumBQ0Gu7DM0pCnb8bxdaywGhKU,1818
|
|
174
|
+
uncountable/types/api/inputs/set_input_attribute_values.py,sha256=dFvpKm1bJjGXWXUdsbSgkQcIzoJBLAG4OIkq5a7lWaY,1326
|
|
175
|
+
uncountable/types/api/inputs/set_input_category.py,sha256=bSFF5Ix-s8rymKGsmgPM17pArbG9ibsbdjID6TCRL84,946
|
|
176
|
+
uncountable/types/api/inputs/set_input_subcategories.py,sha256=2FlLg7kEhyQa9eEV8gcExODNQduLhROPnsdwafsL9FA,970
|
|
177
|
+
uncountable/types/api/inputs/set_intermediate_type.py,sha256=TPpVIwLtYQdfcm80E9nWmkts4KsD819phDqFJJF4gVE,1100
|
|
178
|
+
uncountable/types/api/material_families/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
179
|
+
uncountable/types/api/material_families/update_entity_material_families.py,sha256=GOtVMYNCqqYrOI2hZ8z4x5mxonOZmG62OBulaQqoz4U,1344
|
|
180
|
+
uncountable/types/api/outputs/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
181
|
+
uncountable/types/api/outputs/get_output_data.py,sha256=3sfB0YxJhfsLfqTXss5jL6XVtd_iiULl29qo1jfcIoI,2228
|
|
182
|
+
uncountable/types/api/outputs/get_output_names.py,sha256=lQcEPVJRa6graVTqLmBj_UZzM6j8aOAN-s_XOgzD5VA,1083
|
|
183
|
+
uncountable/types/api/outputs/resolve_output_conditions.py,sha256=OhdiCTjxizgjHZFuzCiN1icAMrjoZ3GI2A3MNneiNww,1796
|
|
184
|
+
uncountable/types/api/permissions/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
185
|
+
uncountable/types/api/permissions/set_core_permissions.py,sha256=qEkhk4TTwzl8IkMKSy8sppUTTTo4d-1NhZ6c3xi1vf4,2513
|
|
186
|
+
uncountable/types/api/project/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
187
|
+
uncountable/types/api/project/get_projects.py,sha256=8_hXCd7sWOXajL6RqN-oFZWJqiVywzEPqQxOIUu07C4,1222
|
|
188
|
+
uncountable/types/api/project/get_projects_data.py,sha256=gulOmoOVTOIjGAXPLZ-GNZ0oBGww59kl-ev6Bdk5jTE,1452
|
|
189
|
+
uncountable/types/api/recipe_links/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
190
|
+
uncountable/types/api/recipe_links/create_recipe_link.py,sha256=CTkiELzsdt9tn2VM9Rzs6dYHTNW853ylyYUfcyy6Ft4,1173
|
|
191
|
+
uncountable/types/api/recipe_links/remove_recipe_link.py,sha256=JAziNUPh_j8TlTjx8H4tqwRcEqZ_u4dcl4P0Gd_5x9g,1159
|
|
192
|
+
uncountable/types/api/recipe_metadata/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
193
|
+
uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py,sha256=hmI8txYW43p7-x3EG6JkQzUlw9Jlutg1WoC_mMrGDGA,1264
|
|
194
|
+
uncountable/types/api/recipes/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
195
|
+
uncountable/types/api/recipes/add_recipe_to_project.py,sha256=c0UriWJJdGLhraed06mKJ1c3aBXQCa1BBCYG_JLhxM0,858
|
|
196
|
+
uncountable/types/api/recipes/archive_recipes.py,sha256=y6bqx-nBDN-PIPnGxnleFAzhsLq-BecjHgZ_BfH_0jM,843
|
|
197
|
+
uncountable/types/api/recipes/associate_recipe_as_input.py,sha256=DXZf7SlcyzCAegW4qdVatMRCig288xDEe6UZjvwea7k,1003
|
|
198
|
+
uncountable/types/api/recipes/associate_recipe_as_lot.py,sha256=4NjNp2ULxaUcGiMp5hKjnjMbmLu-jTSI2KcfGvAqi1I,931
|
|
199
|
+
uncountable/types/api/recipes/create_recipe.py,sha256=9-t2K2kKrmjctGXdisFpw-1MCNR0IAaeWEb6S7U_Q9Q,1362
|
|
200
|
+
uncountable/types/api/recipes/create_recipes.py,sha256=G--GmvY_8Nz4epYaaOExmiTxH15Cl2POjXFgbLTd2z0,1522
|
|
201
|
+
uncountable/types/api/recipes/disassociate_recipe_as_input.py,sha256=5l_gzIEPCLZIlgt8jr9iS4xQ0c-BAr6SsS7HmY2TAZk,889
|
|
202
|
+
uncountable/types/api/recipes/edit_recipe_inputs.py,sha256=kEKTP5L4kmrFkzc4FYPSj_SEH32Vw6U7VPGxdMTr3ls,5462
|
|
203
|
+
uncountable/types/api/recipes/get_curve.py,sha256=dx0E7qt_wWAYT9AgmcIeqZor-p3a0LRoVPk9K8qg7oE,926
|
|
204
|
+
uncountable/types/api/recipes/get_recipe_calculations.py,sha256=T175uU5P7RsLul_A4dE4Lcc_1LcURS8Peozf63q2pk0,1453
|
|
205
|
+
uncountable/types/api/recipes/get_recipe_links.py,sha256=B38zia1Gxkyf8mX0SctVZ0fk3e0QFHOgo_VL2RCZWcM,966
|
|
206
|
+
uncountable/types/api/recipes/get_recipe_names.py,sha256=KSeaKWTjBTNbeyNXiHscTUvioz1HNQ-MCGd2_1ScYb0,983
|
|
207
|
+
uncountable/types/api/recipes/get_recipe_output_metadata.py,sha256=FEq_PCPg1JqKYpNaL6ZtowgDPIQEP_8eckrRjEM5fIM,1435
|
|
208
|
+
uncountable/types/api/recipes/get_recipes_data.py,sha256=vezKPPviX1y8uZMosuDdZeg4PrDMwLz4jurwFtvVtVE,5337
|
|
209
|
+
uncountable/types/api/recipes/lock_recipes.py,sha256=pg3oj21oHmTgDrfj9ff4XPX6-9aU0HmM2jPrZcB4tas,1335
|
|
210
|
+
uncountable/types/api/recipes/remove_recipe_from_project.py,sha256=lYjCR4F5V949tykrQaSXQOjpDMDUF2xtBEdJu4Nt4Xw,863
|
|
211
|
+
uncountable/types/api/recipes/set_recipe_inputs.py,sha256=d-vO7kvHihn4mdkzXr_hc7FsRbdC45pM0kyhTWEOPss,1423
|
|
212
|
+
uncountable/types/api/recipes/set_recipe_metadata.py,sha256=_I2BmhuXD-69EWgnkycA5JMv78gmHSEvc4VGUDSTsmg,905
|
|
213
|
+
uncountable/types/api/recipes/set_recipe_output_annotations.py,sha256=zXhzujnRNswxwWFZL8lFSMNbbatTP1Lfzmv39xc1a44,2873
|
|
214
|
+
uncountable/types/api/recipes/set_recipe_outputs.py,sha256=Qt_zXRbDoTnR6ivSd9CAUYb3JbMk1gzy2Ecp6WNW9NM,1696
|
|
215
|
+
uncountable/types/api/recipes/set_recipe_tags.py,sha256=OCzWDST6My5zmwjaW_3rqV0sSozjpzhIbm1Gky6IxgM,2436
|
|
216
|
+
uncountable/types/api/recipes/unarchive_recipes.py,sha256=W_tOZgz_FEVQcI3y1tnxJzxHusSz1OcByQIDoHLliHg,805
|
|
217
|
+
uncountable/types/api/recipes/unlock_recipes.py,sha256=BORmGgYjQfBVRnqimVXc-RcvG3QJkvexesTGuKdgoOw,1094
|
|
218
|
+
uncountable/types/api/triggers/__init__.py,sha256=gCgbynxG3jA8FQHzercKtrHKHkiIKr8APdZYUniAor8,55
|
|
219
|
+
uncountable/types/api/triggers/run_trigger.py,sha256=nV81yBsxmBi5u4hJyO8RhOd6zG0BK0y1aN33zLDbJmM,884
|
|
220
|
+
UncountablePythonSDK-0.0.41.dist-info/METADATA,sha256=Y8go69WL8lqmsIZjvbolQvZSZKv2aHelEUa0Ghi2ZI0,1577
|
|
221
|
+
UncountablePythonSDK-0.0.41.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
|
|
222
|
+
UncountablePythonSDK-0.0.41.dist-info/top_level.txt,sha256=1UVGjAU-6hJY9qw2iJ7nCBeEwZ793AEN5ZfKX9A1uj4,31
|
|
223
|
+
UncountablePythonSDK-0.0.41.dist-info/RECORD,,
|
|
@@ -8,13 +8,13 @@ from decimal import Decimal
|
|
|
8
8
|
from importlib import resources
|
|
9
9
|
|
|
10
10
|
import dateutil.parser
|
|
11
|
-
import yaml
|
|
12
11
|
|
|
13
12
|
from pkgs.serialization import (
|
|
14
13
|
MissingSentryType,
|
|
15
14
|
OpaqueKey,
|
|
16
15
|
get_serial_class_data,
|
|
17
16
|
get_serial_union_data,
|
|
17
|
+
yaml,
|
|
18
18
|
)
|
|
19
19
|
|
|
20
20
|
from ._is_enum import is_string_enum_class
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
from decimal import Decimal
|
|
2
|
+
from typing import TYPE_CHECKING, Any
|
|
3
|
+
|
|
4
|
+
import yaml
|
|
5
|
+
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
from _typeshed import SupportsRead as SupportsReadT
|
|
8
|
+
from _typeshed import SupportsWrite as SupportsWriteT
|
|
9
|
+
|
|
10
|
+
SupportsRead = SupportsReadT[Any]
|
|
11
|
+
SupportsWrite = SupportsWriteT[Any]
|
|
12
|
+
else:
|
|
13
|
+
SupportsRead = object
|
|
14
|
+
SupportsWrite = object
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def _decimal_constructor(loader, node): # type:ignore
|
|
18
|
+
value = loader.construct_scalar(node)
|
|
19
|
+
return Decimal(value)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# A semi-acceptable patch to force a number to be parsed as a decimal, since pyyaml
|
|
23
|
+
# parses them as lossy floats otherwise. Though a bit ugly, at least this way we have
|
|
24
|
+
# support for decimal constants
|
|
25
|
+
yaml.SafeLoader.add_constructor("!decimal", _decimal_constructor)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class YAMLError(BaseException):
|
|
29
|
+
pass
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def dumps(obj: Any, sort_keys: bool = False) -> str:
|
|
33
|
+
return yaml.dump(obj, sort_keys=sort_keys)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def dump(obj: Any, f: SupportsWrite, sort_keys: bool = False) -> None:
|
|
37
|
+
yaml.dump(obj, f, sort_keys=sort_keys)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def safe_load(src: str | bytes | SupportsRead) -> Any:
|
|
41
|
+
try:
|
|
42
|
+
return yaml.safe_load(src)
|
|
43
|
+
except yaml.YAMLError as e:
|
|
44
|
+
raise YAMLError() from e
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def safe_dump(
|
|
48
|
+
obj: Any, sort_keys: bool = False, indent: int | None = None, width: int | None = None
|
|
49
|
+
) -> str:
|
|
50
|
+
return yaml.safe_dump(obj, sort_keys=sort_keys, indent=indent, width=width)
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
def c_load(f: SupportsRead) -> Any:
|
|
54
|
+
return yaml.load(f, Loader=yaml.CLoader)
|
pkgs/type_spec/config.py
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import os
|
|
2
2
|
from collections.abc import Callable, Mapping
|
|
3
3
|
from dataclasses import dataclass
|
|
4
|
-
from decimal import Decimal
|
|
5
4
|
from typing import Self, TypeVar
|
|
6
5
|
|
|
7
|
-
import yaml
|
|
6
|
+
from pkgs.serialization import yaml
|
|
8
7
|
|
|
9
8
|
ConfigValueType = str | None | Mapping[str, str | None] | list[str]
|
|
10
9
|
|
|
@@ -103,17 +102,6 @@ def _parse_language(config_class: type[_T], raw_value: ConfigValueType) -> _T:
|
|
|
103
102
|
return config_class(**raw_value)
|
|
104
103
|
|
|
105
104
|
|
|
106
|
-
def _decimal_constructor(loader, node): # type:ignore
|
|
107
|
-
value = loader.construct_scalar(node)
|
|
108
|
-
return Decimal(value)
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
# A semi-acceptable patch to force a number to be parsed as a decimal, since pyyaml
|
|
112
|
-
# parses them as lossy floats otherwise. Though a bit ugly, at least this way we have
|
|
113
|
-
# support for decimal constants
|
|
114
|
-
yaml.SafeLoader.add_constructor("!decimal", _decimal_constructor)
|
|
115
|
-
|
|
116
|
-
|
|
117
105
|
def parse_yaml_config(config_file: str) -> Config:
|
|
118
106
|
with open(config_file, encoding="utf-8") as input:
|
|
119
107
|
raw_config: dict[str, ConfigValueType] = yaml.safe_load(input)
|
pkgs/type_spec/emit_open_api.py
CHANGED
|
@@ -9,7 +9,7 @@ import json
|
|
|
9
9
|
import re
|
|
10
10
|
from typing import Collection, cast
|
|
11
11
|
|
|
12
|
-
import yaml
|
|
12
|
+
from pkgs.serialization import yaml
|
|
13
13
|
|
|
14
14
|
from . import builder, util
|
|
15
15
|
from .builder import EndpointGuideKey, RootGuideKey
|
|
@@ -169,7 +169,7 @@ def _serialize_global_context(ctx: EmitOpenAPIGlobalContext) -> str:
|
|
|
169
169
|
oa_paths[path.path] = {"$ref": path.ref}
|
|
170
170
|
oa_root["paths"] = oa_paths
|
|
171
171
|
|
|
172
|
-
return yaml.
|
|
172
|
+
return yaml.dumps(oa_root, sort_keys=False)
|
|
173
173
|
|
|
174
174
|
|
|
175
175
|
def _is_empty_object_type(typ: OpenAPIType) -> bool:
|
|
@@ -413,7 +413,7 @@ def _emit_namespace(
|
|
|
413
413
|
|
|
414
414
|
path = f"{config.types_output}/common/{'/'.join(namespace.path)}.yaml"
|
|
415
415
|
oa_namespace = {"components": oa_components}
|
|
416
|
-
_rewrite_with_notice(path, yaml.
|
|
416
|
+
_rewrite_with_notice(path, yaml.dumps(oa_namespace, sort_keys=False))
|
|
417
417
|
|
|
418
418
|
|
|
419
419
|
def _emit_type(
|
pkgs/type_spec/emit_python.py
CHANGED
|
@@ -23,7 +23,7 @@ __all__: list[str] = [
|
|
|
23
23
|
"""
|
|
24
24
|
END_ALL_EXPORTS = "]\n"
|
|
25
25
|
|
|
26
|
-
ASYNC_BATCH_TYPE_NAMESPACE = builder.SpecNamespace(name="
|
|
26
|
+
ASYNC_BATCH_TYPE_NAMESPACE = builder.SpecNamespace(name="async_batch")
|
|
27
27
|
ASYNC_BATCH_REQUEST_PATH_STYPE = builder.SpecTypeDefnStringEnum(
|
|
28
28
|
namespace=ASYNC_BATCH_TYPE_NAMESPACE, name="AsyncBatchRequestPath"
|
|
29
29
|
)
|
|
@@ -57,7 +57,9 @@ class Context(TrackingContext):
|
|
|
57
57
|
|
|
58
58
|
|
|
59
59
|
def _resolve_namespace_name(namespace: builder.SpecNamespace) -> str:
|
|
60
|
-
|
|
60
|
+
if len(namespace.path) > 1:
|
|
61
|
+
return namespace.name
|
|
62
|
+
return f"{namespace.name}_t"
|
|
61
63
|
|
|
62
64
|
|
|
63
65
|
def _resolve_namespace_ref(namespace: builder.SpecNamespace) -> str:
|
|
@@ -294,17 +296,22 @@ def _emit_types(*, builder: builder.SpecBuilder, config: PythonConfig) -> None:
|
|
|
294
296
|
full.write(f"# === END section from {namespace.name}.part.py ===\n")
|
|
295
297
|
|
|
296
298
|
basename = "/".join(namespace.path)
|
|
297
|
-
filename = f"{config.types_output}/{basename}.py"
|
|
299
|
+
filename = f"{config.types_output}/{basename}{'' if len(namespace.path) > 1 else '_t'}.py"
|
|
298
300
|
util.rewrite_file(filename, full.getvalue())
|
|
299
301
|
|
|
302
|
+
# Deprecated SDK support
|
|
303
|
+
if config.all_named_type_exports and len(namespace.path) == 1:
|
|
304
|
+
compat_out = _create_sdk_compat_namespace(namespace)
|
|
305
|
+
compat_filename = f"{config.types_output}/{basename}.py"
|
|
306
|
+
util.rewrite_file(compat_filename, compat_out.getvalue())
|
|
307
|
+
|
|
300
308
|
path_to = os.path.dirname(basename)
|
|
301
309
|
while path_to != "":
|
|
302
310
|
all_dirs.add(path_to)
|
|
303
311
|
path_to = os.path.dirname(path_to)
|
|
304
312
|
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
):
|
|
313
|
+
# Deprecated SDK support
|
|
314
|
+
if config.all_named_type_exports:
|
|
308
315
|
index_out.write("from ")
|
|
309
316
|
if len(namespace.path) == 1:
|
|
310
317
|
index_out.write(".")
|
|
@@ -354,6 +361,32 @@ def _emit_namespace(ctx: Context, namespace: builder.SpecNamespace) -> None:
|
|
|
354
361
|
_emit_constant(ctx, sconst)
|
|
355
362
|
|
|
356
363
|
|
|
364
|
+
def _create_sdk_compat_namespace(namespace: builder.SpecNamespace) -> io.StringIO:
|
|
365
|
+
compat_out = io.StringIO()
|
|
366
|
+
compat_out.write(LINT_HEADER)
|
|
367
|
+
compat_out.write(MODIFY_NOTICE)
|
|
368
|
+
compat_out.write("# Kept only for SDK backwards compatibility\n")
|
|
369
|
+
|
|
370
|
+
# This mostly an prepart import, thus has no high-level knowledge. Since this onl
|
|
371
|
+
# needs backwards copmatibiltiy from when written we can just hardcode what was there
|
|
372
|
+
# (only those in __all__ assuming that worked, which it might not)
|
|
373
|
+
if namespace.name == "base":
|
|
374
|
+
compat_out.write("""
|
|
375
|
+
from .base_t import JsonScalar as JsonScalar
|
|
376
|
+
from .base_t import JsonValue as JsonValue
|
|
377
|
+
from .base_t import ObjectId as ObjectId
|
|
378
|
+
""")
|
|
379
|
+
else:
|
|
380
|
+
for stype in namespace.types.values():
|
|
381
|
+
compat_out.write(
|
|
382
|
+
f"from .{namespace.path[-1]}_t import {stype.name} as {stype.name}\n"
|
|
383
|
+
)
|
|
384
|
+
|
|
385
|
+
compat_out.write(MODIFY_NOTICE)
|
|
386
|
+
|
|
387
|
+
return compat_out
|
|
388
|
+
|
|
389
|
+
|
|
357
390
|
def _validate_supports_handler_generation(
|
|
358
391
|
stype: builder.SpecTypeDefn, name: str, supports_inheritance: bool = False
|
|
359
392
|
) -> builder.SpecTypeDefnObject:
|
|
@@ -994,7 +1027,7 @@ def _emit_namespace_imports(
|
|
|
994
1027
|
else:
|
|
995
1028
|
from_path = config.types_package
|
|
996
1029
|
|
|
997
|
-
out.write(f"from {from_path} import {resolved}
|
|
1030
|
+
out.write(f"from {from_path} import {resolved}\n")
|
|
998
1031
|
|
|
999
1032
|
|
|
1000
1033
|
def _emit_id_source(*, builder: builder.SpecBuilder, config: PythonConfig) -> None:
|
pkgs/type_spec/load_types.py
CHANGED
|
@@ -6,7 +6,7 @@ import json
|
|
|
6
6
|
from typing import Any, Optional, TypeAlias, Union, cast
|
|
7
7
|
|
|
8
8
|
from main.base.types import data_t
|
|
9
|
-
from main.base.types.
|
|
9
|
+
from main.base.types.base_t import PureJsonValue
|
|
10
10
|
from pkgs.argument_parser import CachedParser
|
|
11
11
|
from pkgs.serialization_util import (
|
|
12
12
|
serialize_for_api,
|
|
@@ -20,9 +20,9 @@ import sys
|
|
|
20
20
|
from typing import TypeVar, cast
|
|
21
21
|
|
|
22
22
|
import regex as re
|
|
23
|
-
import yaml
|
|
24
23
|
|
|
25
24
|
from main.base.types import base_t, value_spec_t
|
|
25
|
+
from pkgs.serialization import yaml
|
|
26
26
|
|
|
27
27
|
from ..util import parse_type_str, rewrite_file
|
|
28
28
|
from .convert_type import convert_to_value_spec_type
|
uncountable/integration/cron.py
CHANGED
|
@@ -9,10 +9,9 @@ from uncountable.integration.types import ProfileDefinition
|
|
|
9
9
|
profile_parser = CachedParser(ProfileDefinition)
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
def main() -> None:
|
|
12
|
+
def main(blocking: bool) -> None:
|
|
13
13
|
profiles_module = os.environ["UNC_PROFILES_MODULE"]
|
|
14
14
|
with IntegrationServer(create_db_engine()) as server:
|
|
15
|
-
# TODO: Loop through all job spec yaml files and call server.add_job
|
|
16
15
|
profiles = [
|
|
17
16
|
entry
|
|
18
17
|
for entry in resources.files(profiles_module).iterdir()
|
|
@@ -26,7 +25,7 @@ def main() -> None:
|
|
|
26
25
|
resource="profile.yaml",
|
|
27
26
|
)
|
|
28
27
|
except FileNotFoundError as e:
|
|
29
|
-
print("WARN: profile.yaml not found", e)
|
|
28
|
+
print(f"WARN: profile.yaml not found for {profile_name}", e)
|
|
30
29
|
continue
|
|
31
30
|
server.register_profile(
|
|
32
31
|
profile_name=profile_name,
|
|
@@ -35,8 +34,8 @@ def main() -> None:
|
|
|
35
34
|
jobs=profile.jobs,
|
|
36
35
|
)
|
|
37
36
|
|
|
38
|
-
|
|
37
|
+
if blocking:
|
|
38
|
+
server.serve_forever()
|
|
39
39
|
|
|
40
40
|
|
|
41
|
-
|
|
42
|
-
main()
|
|
41
|
+
main(__name__ == "__main__")
|