UncountablePythonSDK 0.0.99__tar.gz → 0.0.100__tar.gz
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.
- {uncountablepythonsdk-0.0.99/UncountablePythonSDK.egg-info → uncountablepythonsdk-0.0.100}/PKG-INFO +1 -1
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100/UncountablePythonSDK.egg-info}/PKG-INFO +1 -1
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/UncountablePythonSDK.egg-info/SOURCES.txt +2 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/builder.py +7 -1
- uncountablepythonsdk-0.0.100/pkgs/type_spec/cross_output_links.py +105 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_python.py +8 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_typescript.py +12 -2
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_typescript_util.py +2 -1
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/load_types.py +15 -1
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/__init__.py +2 -0
- uncountablepythonsdk-0.0.100/uncountable/types/api/entity/create_or_update_entity.py +46 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/async_batch_processor.py +38 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/async_batch_t.py +1 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/client_base.py +25 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/.github/workflows/documentation.yml +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/.github/workflows/publish.yml +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/.gitignore +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/README.md +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/UncountablePythonSDK.egg-info/dependency_links.txt +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/UncountablePythonSDK.egg-info/requires.txt +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/UncountablePythonSDK.egg-info/top_level.txt +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/.gitignore +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/conf.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/index.md +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/justfile +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/quickstart.md +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/requirements.txt +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/android-chrome-192x192.png +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/android-chrome-512x512.png +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/apple-touch-icon.png +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/browserconfig.xml +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/favicon-16x16.png +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/favicon-32x32.png +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/manifest.json +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/mstile-150x150.png +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/safari-pinned-tab.svg +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/logo_blue.png +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/async_batch.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/create_entity.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/download_files.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/edit_recipe_inputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/integration-server/jobs/materials_auto/example_cron.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/integration-server/jobs/materials_auto/example_wh.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/integration-server/jobs/materials_auto/profile.yaml +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/integration-server/pyproject.toml +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/invoke_uploader.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/set_recipe_metadata_file.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/set_recipe_output_file_sdk.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/upload_files.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/_is_enum.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/_is_namedtuple.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/argument_parser.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/case_convert.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_blob_session.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_gdrive_session.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_local_session.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_s3_session.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_sftp_session.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/file_type_utils.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/filesystem_session.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/py.typed +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/annotation.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/missing_sentry.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/opaque_key.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_alias.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_class.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_generic.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_union.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/yaml.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization_util/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization_util/_get_type_for_serialization.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization_util/convert_to_snakecase.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization_util/dataclasses.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization_util/serialization_helpers.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/strenum_compat/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/strenum_compat/strenum_compat.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/__main__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/actions_registry/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/actions_registry/__main__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/actions_registry/emit_typescript.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/config.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_io_ts.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_open_api.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_open_api_util.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/open_api_util.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/parts/base.py.prepart +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/parts/base.ts.prepart +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/test.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/type_info/__main__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/type_info/emit_type_info.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/util.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/value_spec/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/value_spec/__main__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/value_spec/convert_type.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/value_spec/emit_python.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/value_spec/types.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pyproject.toml +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/setup.cfg +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/core/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/core/async_batch.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/core/client.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/core/environment.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/core/file_upload.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/core/types.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/cli.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/construct_client.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/cron.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/db/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/db/connect.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/db/session.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/entrypoint.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/executors/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/executors/executors.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/executors/generic_upload_executor.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/executors/script_executor.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/job.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/command_client.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/command_server.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/protocol/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/protocol/command_server.proto +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/protocol/command_server_pb2.pyi +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/protocol/command_server_pb2_grpc.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/command_server/types.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/datastore/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/datastore/datastore_sqlite.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/datastore/interface.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/datastore/model.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/job_scheduler.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/queue_runner.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/types.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/queue_runner/worker.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/scan_profiles.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/scheduler.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/secret_retrieval/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/secret_retrieval/retrieve_secret.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/server.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/telemetry.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/integration/webhook_server/entrypoint.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/py.typed +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/batch/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/batch/execute_batch.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/batch/execute_batch_load_async.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/chemical/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/chemical/convert_chemical_formats.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/create_entities.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/create_entity.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/get_entities_data.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/grant_entity_permissions.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/list_entities.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/lock_entity.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/resolve_entity_ids.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/set_entity_field_values.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/set_values.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/transition_entity_phase.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/entity/unlock_entity.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/equipment/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/equipment/associate_equipment_input.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/field_options/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/field_options/upsert_field_options.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/files/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/files/download_file.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/id_source/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/id_source/list_id_source.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/id_source/match_id_source.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/input_groups/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/input_groups/get_input_group_names.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/create_inputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/get_input_data.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/get_input_names.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/get_inputs_data.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/set_input_attribute_values.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/set_input_category.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/set_input_subcategories.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/inputs/set_intermediate_type.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/material_families/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/material_families/update_entity_material_families.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/outputs/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/outputs/get_output_data.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/outputs/get_output_names.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/outputs/resolve_output_conditions.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/permissions/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/permissions/set_core_permissions.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/project/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/project/get_projects.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/project/get_projects_data.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipe_links/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipe_links/create_recipe_link.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipe_links/remove_recipe_link.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipe_metadata/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/add_recipe_to_project.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/archive_recipes.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/associate_recipe_as_input.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/associate_recipe_as_lot.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/clear_recipe_outputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/create_recipe.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/create_recipes.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/disassociate_recipe_as_input.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/edit_recipe_inputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/get_column_calculation_values.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/get_curve.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/get_recipe_calculations.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/get_recipe_links.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/get_recipe_names.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/get_recipe_output_metadata.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/get_recipes_data.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/lock_recipes.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/remove_recipe_from_project.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/set_recipe_inputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/set_recipe_metadata.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/set_recipe_output_annotations.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/set_recipe_output_file.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/set_recipe_outputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/set_recipe_tags.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/unarchive_recipes.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/recipes/unlock_recipes.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/triggers/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/triggers/run_trigger.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/uploader/__init__.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/api/uploader/invoke_uploader.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/async_batch.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/async_jobs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/async_jobs_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/auth_retrieval.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/auth_retrieval_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/base.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/base_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/calculations.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/calculations_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/chemical_structure.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/chemical_structure_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/client_config.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/client_config_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/curves.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/curves_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/entity.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/entity_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/experiment_groups.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/experiment_groups_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/field_values.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/field_values_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/fields.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/fields_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/generic_upload.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/generic_upload_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/id_source.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/id_source_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/identifier.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/identifier_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/input_attributes.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/input_attributes_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/inputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/inputs_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/integration_server.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/integration_server_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/job_definition.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/job_definition_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/outputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/outputs_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/overrides.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/overrides_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/permissions.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/permissions_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/phases.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/phases_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/post_base.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/post_base_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/queued_job.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/queued_job_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_identifiers.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_identifiers_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_inputs.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_inputs_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_links.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_links_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_metadata.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_metadata_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_output_metadata.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_output_metadata_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_tags.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_tags_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_workflow_steps.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipe_workflow_steps_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipes.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/recipes_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/response.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/response_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/secret_retrieval.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/secret_retrieval_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/units.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/units_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/users.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/users_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/webhook_job.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/webhook_job_t.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/workflows.py +0 -0
- {uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/workflows_t.py +0 -0
{uncountablepythonsdk-0.0.99/UncountablePythonSDK.egg-info → uncountablepythonsdk-0.0.100}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: UncountablePythonSDK
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.100
|
|
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
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100/UncountablePythonSDK.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: UncountablePythonSDK
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.100
|
|
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
|
|
@@ -71,6 +71,7 @@ pkgs/type_spec/__init__.py
|
|
|
71
71
|
pkgs/type_spec/__main__.py
|
|
72
72
|
pkgs/type_spec/builder.py
|
|
73
73
|
pkgs/type_spec/config.py
|
|
74
|
+
pkgs/type_spec/cross_output_links.py
|
|
74
75
|
pkgs/type_spec/emit_io_ts.py
|
|
75
76
|
pkgs/type_spec/emit_open_api.py
|
|
76
77
|
pkgs/type_spec/emit_open_api_util.py
|
|
@@ -229,6 +230,7 @@ uncountable/types/api/chemical/convert_chemical_formats.py
|
|
|
229
230
|
uncountable/types/api/entity/__init__.py
|
|
230
231
|
uncountable/types/api/entity/create_entities.py
|
|
231
232
|
uncountable/types/api/entity/create_entity.py
|
|
233
|
+
uncountable/types/api/entity/create_or_update_entity.py
|
|
232
234
|
uncountable/types/api/entity/get_entities_data.py
|
|
233
235
|
uncountable/types/api/entity/grant_entity_permissions.py
|
|
234
236
|
uncountable/types/api/entity/list_entities.py
|
|
@@ -13,6 +13,7 @@ from enum import Enum, StrEnum, auto
|
|
|
13
13
|
from typing import Any, Self
|
|
14
14
|
|
|
15
15
|
from . import util
|
|
16
|
+
from .cross_output_links import CrossOutputPaths
|
|
16
17
|
from .util import parse_type_str, unused
|
|
17
18
|
|
|
18
19
|
RawDict = dict[Any, Any]
|
|
@@ -1321,7 +1322,11 @@ class NameDataPair:
|
|
|
1321
1322
|
|
|
1322
1323
|
class SpecBuilder:
|
|
1323
1324
|
def __init__(
|
|
1324
|
-
self,
|
|
1325
|
+
self,
|
|
1326
|
+
*,
|
|
1327
|
+
api_endpoints: dict[EndpointKey, str],
|
|
1328
|
+
top_namespace: str,
|
|
1329
|
+
cross_output_paths: CrossOutputPaths | None,
|
|
1325
1330
|
) -> None:
|
|
1326
1331
|
self.top_namespace = top_namespace
|
|
1327
1332
|
self.where: list[str] = []
|
|
@@ -1332,6 +1337,7 @@ class SpecBuilder:
|
|
|
1332
1337
|
self.examples: dict[str, list[SpecEndpointExample]] = defaultdict(list)
|
|
1333
1338
|
self.guides: dict[SpecGuideKey, list[SpecGuide]] = defaultdict(list)
|
|
1334
1339
|
self.api_endpoints = api_endpoints
|
|
1340
|
+
self.cross_output_paths = cross_output_paths
|
|
1335
1341
|
base_namespace = SpecNamespace(name=base_namespace_name)
|
|
1336
1342
|
for base_type in BaseTypeName:
|
|
1337
1343
|
defn = SpecTypeDefnObject(base_namespace, base_type, is_base=True)
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
import os
|
|
4
|
+
from dataclasses import dataclass
|
|
5
|
+
|
|
6
|
+
from pkgs.type_spec import builder
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
def get_python_stub_file_path(
|
|
10
|
+
function_name: str | None,
|
|
11
|
+
) -> str | None:
|
|
12
|
+
if function_name is None:
|
|
13
|
+
return None
|
|
14
|
+
module_dir, file_name, func_name = function_name.rsplit(".", 2)
|
|
15
|
+
module_path = os.path.relpath(module_dir.replace(".", "/"))
|
|
16
|
+
api_stub_file = f"{module_path}/{file_name}.py"
|
|
17
|
+
return api_stub_file
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
@dataclass(kw_only=True, frozen=True)
|
|
21
|
+
class CrossOutputPaths:
|
|
22
|
+
python_types_output: str
|
|
23
|
+
typescript_types_output: str
|
|
24
|
+
typescript_routes_output: str
|
|
25
|
+
typespec_files_input: list[str]
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def get_python_api_file_path(
|
|
29
|
+
cross_output_paths: CrossOutputPaths,
|
|
30
|
+
namespace: builder.SpecNamespace,
|
|
31
|
+
) -> str:
|
|
32
|
+
return f"{cross_output_paths.python_types_output}/{'/'.join(namespace.path)}{'' if len(namespace.path) > 1 else '_t'}.py"
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def get_typescript_api_file_path(
|
|
36
|
+
cross_output_paths: CrossOutputPaths,
|
|
37
|
+
namespace: builder.SpecNamespace,
|
|
38
|
+
) -> str:
|
|
39
|
+
return (
|
|
40
|
+
f"{cross_output_paths.typescript_routes_output}/{'/'.join(namespace.path)}.tsx"
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def get_yaml_api_file_path(
|
|
45
|
+
cross_output_paths: CrossOutputPaths,
|
|
46
|
+
namespace: builder.SpecNamespace,
|
|
47
|
+
) -> str:
|
|
48
|
+
abs_path = next(
|
|
49
|
+
(
|
|
50
|
+
path
|
|
51
|
+
for path in cross_output_paths.typespec_files_input
|
|
52
|
+
if (
|
|
53
|
+
namespace.endpoint is None
|
|
54
|
+
or namespace.endpoint.default_endpoint_key in path
|
|
55
|
+
)
|
|
56
|
+
),
|
|
57
|
+
cross_output_paths.typespec_files_input[0],
|
|
58
|
+
)
|
|
59
|
+
return f"{os.path.relpath(abs_path)}/{'/'.join(namespace.path)}.yaml"
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
def get_return_to_root_path(path: str) -> str:
|
|
63
|
+
return "../" * (path.count("/"))
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
def get_path_links(
|
|
67
|
+
cross_output_paths: CrossOutputPaths | None,
|
|
68
|
+
namespace: builder.SpecNamespace,
|
|
69
|
+
*,
|
|
70
|
+
current_path_type: str,
|
|
71
|
+
) -> str:
|
|
72
|
+
if cross_output_paths is None:
|
|
73
|
+
return ""
|
|
74
|
+
|
|
75
|
+
api_paths = {
|
|
76
|
+
"Python": get_python_api_file_path(cross_output_paths, namespace),
|
|
77
|
+
"TypeScript": get_typescript_api_file_path(cross_output_paths, namespace),
|
|
78
|
+
"YAML": get_yaml_api_file_path(cross_output_paths, namespace),
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
assert current_path_type in api_paths
|
|
82
|
+
|
|
83
|
+
comment_prefix = "#"
|
|
84
|
+
if current_path_type == "TypeScript":
|
|
85
|
+
comment_prefix = "//"
|
|
86
|
+
|
|
87
|
+
return_to_root_path = get_return_to_root_path(api_paths[current_path_type])
|
|
88
|
+
del api_paths[current_path_type]
|
|
89
|
+
|
|
90
|
+
paths_string = ""
|
|
91
|
+
for path_name, path in api_paths.items():
|
|
92
|
+
paths_string += (
|
|
93
|
+
f"{comment_prefix} {path_name}: file://./{return_to_root_path}{path}\n"
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
if namespace.endpoint is not None:
|
|
97
|
+
for (
|
|
98
|
+
endpoint,
|
|
99
|
+
path_specific_endpoint,
|
|
100
|
+
) in namespace.endpoint.path_per_api_endpoint.items():
|
|
101
|
+
path_from_root = get_python_stub_file_path(path_specific_endpoint.function)
|
|
102
|
+
if path_from_root is None:
|
|
103
|
+
continue
|
|
104
|
+
paths_string += f"{comment_prefix} Implementation for {endpoint}: file://./{return_to_root_path}{path_from_root}\n"
|
|
105
|
+
return paths_string
|
|
@@ -7,6 +7,7 @@ from typing import Any
|
|
|
7
7
|
from . import builder, util
|
|
8
8
|
from .builder import EndpointEmitType, EndpointSpecificPath
|
|
9
9
|
from .config import PythonConfig
|
|
10
|
+
from .cross_output_links import get_path_links
|
|
10
11
|
|
|
11
12
|
INDENT = " "
|
|
12
13
|
LINE_BREAK = "\n"
|
|
@@ -354,6 +355,13 @@ def _get_epf_root(endpoint_specific_path: EndpointSpecificPath) -> str:
|
|
|
354
355
|
def _emit_namespace(ctx: Context, namespace: builder.SpecNamespace) -> None:
|
|
355
356
|
endpoint = namespace.endpoint
|
|
356
357
|
if endpoint is not None:
|
|
358
|
+
path_links = get_path_links(
|
|
359
|
+
ctx.builder.cross_output_paths, namespace, current_path_type="Python"
|
|
360
|
+
)
|
|
361
|
+
if path_links != "":
|
|
362
|
+
ctx.out.write("\n")
|
|
363
|
+
ctx.out.write(path_links)
|
|
364
|
+
|
|
357
365
|
ctx.out.write("\n")
|
|
358
366
|
ctx.out.write(f'{ENDPOINT_METHOD} = "{endpoint.method.upper()}"\n')
|
|
359
367
|
for endpoint_specific_path in sorted(
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_typescript.py
RENAMED
|
@@ -4,6 +4,7 @@ import os
|
|
|
4
4
|
from . import builder, util
|
|
5
5
|
from .builder import EndpointKey, EndpointSpecificPath
|
|
6
6
|
from .config import TypeScriptConfig
|
|
7
|
+
from .cross_output_links import get_path_links
|
|
7
8
|
from .emit_io_ts import emit_type_io_ts
|
|
8
9
|
from .emit_typescript_util import (
|
|
9
10
|
MODIFY_NOTICE,
|
|
@@ -32,7 +33,11 @@ def _emit_types(builder: builder.SpecBuilder, config: TypeScriptConfig) -> None:
|
|
|
32
33
|
builder.namespaces.values(),
|
|
33
34
|
key=lambda ns: resolve_namespace_name(ns),
|
|
34
35
|
):
|
|
35
|
-
ctx = EmitTypescriptContext(
|
|
36
|
+
ctx = EmitTypescriptContext(
|
|
37
|
+
out=io.StringIO(),
|
|
38
|
+
namespace=namespace,
|
|
39
|
+
cross_output_paths=builder.cross_output_paths,
|
|
40
|
+
)
|
|
36
41
|
|
|
37
42
|
_emit_namespace(ctx, config, namespace)
|
|
38
43
|
|
|
@@ -139,6 +144,10 @@ def _emit_endpoint(
|
|
|
139
144
|
if not is_binary:
|
|
140
145
|
assert endpoint.result_type == builder.ResultType.json
|
|
141
146
|
|
|
147
|
+
paths_string = get_path_links(
|
|
148
|
+
ctx.cross_output_paths, namespace, current_path_type="TypeScript"
|
|
149
|
+
)
|
|
150
|
+
|
|
142
151
|
data_loader_head = ""
|
|
143
152
|
data_loader_body = ""
|
|
144
153
|
if endpoint.data_loader:
|
|
@@ -236,7 +245,8 @@ export type Response = DeprecatedResult
|
|
|
236
245
|
endpoint_path_part = f"""appSpecificApiPath({{{path_lookup_map}
|
|
237
246
|
}}),"""
|
|
238
247
|
|
|
239
|
-
tsx_api = f"""{MODIFY_NOTICE}
|
|
248
|
+
# tsx_api = f"""{MODIFY_NOTICE}
|
|
249
|
+
tsx_api = f"""{MODIFY_NOTICE}{paths_string}
|
|
240
250
|
{data_loader_head}{tsx_response_part}
|
|
241
251
|
export const apiCall = {wrap_call}(
|
|
242
252
|
{endpoint_path_part}
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/type_spec/emit_typescript_util.py
RENAMED
|
@@ -3,12 +3,12 @@ import typing
|
|
|
3
3
|
from dataclasses import dataclass, field
|
|
4
4
|
|
|
5
5
|
from . import builder, util
|
|
6
|
+
from .cross_output_links import CrossOutputPaths
|
|
6
7
|
|
|
7
8
|
INDENT = " "
|
|
8
9
|
|
|
9
10
|
MODIFY_NOTICE = "// DO NOT MODIFY -- This file is generated by type_spec\n"
|
|
10
11
|
|
|
11
|
-
|
|
12
12
|
base_name_map = {
|
|
13
13
|
builder.BaseTypeName.s_boolean: "boolean",
|
|
14
14
|
builder.BaseTypeName.s_date: "string", # IMPROVE: Aliased DateStr
|
|
@@ -31,6 +31,7 @@ class EmitTypescriptContext:
|
|
|
31
31
|
out: io.StringIO
|
|
32
32
|
namespace: builder.SpecNamespace
|
|
33
33
|
namespaces: set[builder.SpecNamespace] = field(default_factory=set)
|
|
34
|
+
cross_output_paths: CrossOutputPaths | None = None
|
|
34
35
|
|
|
35
36
|
|
|
36
37
|
def ts_type_name(name: str) -> str:
|
|
@@ -8,6 +8,7 @@ from pkgs.serialization import yaml
|
|
|
8
8
|
|
|
9
9
|
from .builder import SpecBuilder
|
|
10
10
|
from .config import Config
|
|
11
|
+
from .cross_output_links import CrossOutputPaths
|
|
11
12
|
|
|
12
13
|
ext_map = {
|
|
13
14
|
".ts": "typescript",
|
|
@@ -41,8 +42,21 @@ def find_and_handle_files(
|
|
|
41
42
|
|
|
42
43
|
|
|
43
44
|
def load_types(config: Config) -> SpecBuilder | None:
|
|
45
|
+
if config.typescript is not None and config.python is not None:
|
|
46
|
+
cross_output_paths = CrossOutputPaths(
|
|
47
|
+
python_types_output=config.python.types_output,
|
|
48
|
+
typescript_types_output=config.typescript.types_output,
|
|
49
|
+
typescript_routes_output=config.typescript.routes_output,
|
|
50
|
+
typespec_files_input=config.type_spec_types,
|
|
51
|
+
# IMPROVE not sure how to know which one is the correct one in emit_typescript
|
|
52
|
+
)
|
|
53
|
+
else:
|
|
54
|
+
cross_output_paths = None
|
|
55
|
+
|
|
44
56
|
builder = SpecBuilder(
|
|
45
|
-
api_endpoints=config.api_endpoint,
|
|
57
|
+
api_endpoints=config.api_endpoint,
|
|
58
|
+
top_namespace=config.top_namespace,
|
|
59
|
+
cross_output_paths=cross_output_paths,
|
|
46
60
|
)
|
|
47
61
|
|
|
48
62
|
def handle_builder_add(
|
|
@@ -19,6 +19,7 @@ from .api.chemical import convert_chemical_formats as convert_chemical_formats_t
|
|
|
19
19
|
from .api.entity import create_entities as create_entities_t
|
|
20
20
|
from .api.entity import create_entity as create_entity_t
|
|
21
21
|
from .api.inputs import create_inputs as create_inputs_t
|
|
22
|
+
from .api.entity import create_or_update_entity as create_or_update_entity_t
|
|
22
23
|
from .api.recipes import create_recipe as create_recipe_t
|
|
23
24
|
from .api.recipe_links import create_recipe_link as create_recipe_link_t
|
|
24
25
|
from .api.recipes import create_recipes as create_recipes_t
|
|
@@ -127,6 +128,7 @@ __all__: list[str] = [
|
|
|
127
128
|
"create_entities_t",
|
|
128
129
|
"create_entity_t",
|
|
129
130
|
"create_inputs_t",
|
|
131
|
+
"create_or_update_entity_t",
|
|
130
132
|
"create_recipe_t",
|
|
131
133
|
"create_recipe_link_t",
|
|
132
134
|
"create_recipes_t",
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
2
|
+
# ruff: noqa: E402 Q003
|
|
3
|
+
# fmt: off
|
|
4
|
+
# isort: skip_file
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
import typing # noqa: F401
|
|
7
|
+
import datetime # noqa: F401
|
|
8
|
+
from decimal import Decimal # noqa: F401
|
|
9
|
+
import dataclasses
|
|
10
|
+
from pkgs.serialization import serial_class
|
|
11
|
+
from ... import async_batch_t
|
|
12
|
+
from ... import entity_t
|
|
13
|
+
from ... import field_values_t
|
|
14
|
+
from ... import identifier_t
|
|
15
|
+
|
|
16
|
+
__all__: list[str] = [
|
|
17
|
+
"Arguments",
|
|
18
|
+
"Data",
|
|
19
|
+
"ENDPOINT_METHOD",
|
|
20
|
+
"ENDPOINT_PATH",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
ENDPOINT_METHOD = "POST"
|
|
24
|
+
ENDPOINT_PATH = "api/external/entity/create_or_update_entity"
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
28
|
+
@serial_class(
|
|
29
|
+
named_type_path="sdk.api.entity.create_or_update_entity.Arguments",
|
|
30
|
+
)
|
|
31
|
+
@dataclasses.dataclass(kw_only=True)
|
|
32
|
+
class Arguments:
|
|
33
|
+
entity_type: entity_t.EntityType
|
|
34
|
+
definition_key: identifier_t.IdentifierKey
|
|
35
|
+
field_values: list[field_values_t.FieldArgumentValue]
|
|
36
|
+
entity_key: identifier_t.IdentifierKey | None = None
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
40
|
+
@serial_class(
|
|
41
|
+
named_type_path="sdk.api.entity.create_or_update_entity.Data",
|
|
42
|
+
)
|
|
43
|
+
@dataclasses.dataclass(kw_only=True)
|
|
44
|
+
class Data(async_batch_t.AsyncBatchActionReturn):
|
|
45
|
+
pass
|
|
46
|
+
# DO NOT MODIFY -- This file is generated by type_spec
|
|
@@ -12,6 +12,7 @@ import uncountable.types.api.recipes.associate_recipe_as_input as associate_reci
|
|
|
12
12
|
from uncountable.types import async_batch_t
|
|
13
13
|
from uncountable.types import base_t
|
|
14
14
|
import uncountable.types.api.recipes.clear_recipe_outputs as clear_recipe_outputs_t
|
|
15
|
+
import uncountable.types.api.entity.create_or_update_entity as create_or_update_entity_t
|
|
15
16
|
import uncountable.types.api.recipes.create_recipe as create_recipe_t
|
|
16
17
|
import uncountable.types.api.recipes.edit_recipe_inputs as edit_recipe_inputs_t
|
|
17
18
|
from uncountable.types import entity_t
|
|
@@ -144,6 +145,43 @@ class AsyncBatchProcessorBase(ABC):
|
|
|
144
145
|
batch_reference=req.batch_reference,
|
|
145
146
|
)
|
|
146
147
|
|
|
148
|
+
def create_or_update_entity(
|
|
149
|
+
self,
|
|
150
|
+
*,
|
|
151
|
+
entity_type: entity_t.EntityType,
|
|
152
|
+
definition_key: identifier_t.IdentifierKey,
|
|
153
|
+
field_values: list[field_values_t.FieldArgumentValue],
|
|
154
|
+
entity_key: identifier_t.IdentifierKey | None = None,
|
|
155
|
+
depends_on: list[str] | None = None,
|
|
156
|
+
) -> async_batch_t.QueuedAsyncBatchRequest:
|
|
157
|
+
"""Creates or updates field values for an entity
|
|
158
|
+
|
|
159
|
+
:param depends_on: A list of batch reference keys to process before processing this request
|
|
160
|
+
"""
|
|
161
|
+
args = create_or_update_entity_t.Arguments(
|
|
162
|
+
entity_key=entity_key,
|
|
163
|
+
entity_type=entity_type,
|
|
164
|
+
definition_key=definition_key,
|
|
165
|
+
field_values=field_values,
|
|
166
|
+
)
|
|
167
|
+
json_data = serialize_for_api(args)
|
|
168
|
+
|
|
169
|
+
batch_reference = str(uuid.uuid4())
|
|
170
|
+
|
|
171
|
+
req = async_batch_t.AsyncBatchRequest(
|
|
172
|
+
path=async_batch_t.AsyncBatchRequestPath.CREATE_OR_UPDATE_ENTITY,
|
|
173
|
+
data=json_data,
|
|
174
|
+
depends_on=depends_on,
|
|
175
|
+
batch_reference=batch_reference,
|
|
176
|
+
)
|
|
177
|
+
|
|
178
|
+
self._enqueue(req)
|
|
179
|
+
|
|
180
|
+
return async_batch_t.QueuedAsyncBatchRequest(
|
|
181
|
+
path=req.path,
|
|
182
|
+
batch_reference=req.batch_reference,
|
|
183
|
+
)
|
|
184
|
+
|
|
147
185
|
def create_recipe(
|
|
148
186
|
self,
|
|
149
187
|
*,
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/async_batch_t.py
RENAMED
|
@@ -37,6 +37,7 @@ class AsyncBatchRequestPath(StrEnum):
|
|
|
37
37
|
CLEAR_RECIPE_OUTPUTS = "recipes/clear_recipe_outputs"
|
|
38
38
|
GRANT_ENTITY_PERMISSIONS = "entity/grant_entity_permissions"
|
|
39
39
|
SET_ENTITY_FIELD_VALUES = "entity/set_entity_field_values"
|
|
40
|
+
CREATE_OR_UPDATE_ENTITY = "entity/create_or_update_entity"
|
|
40
41
|
|
|
41
42
|
|
|
42
43
|
# DO NOT MODIFY -- This file is generated by type_spec
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/uncountable/types/client_base.py
RENAMED
|
@@ -20,6 +20,7 @@ import uncountable.types.api.chemical.convert_chemical_formats as convert_chemic
|
|
|
20
20
|
import uncountable.types.api.entity.create_entities as create_entities_t
|
|
21
21
|
import uncountable.types.api.entity.create_entity as create_entity_t
|
|
22
22
|
import uncountable.types.api.inputs.create_inputs as create_inputs_t
|
|
23
|
+
import uncountable.types.api.entity.create_or_update_entity as create_or_update_entity_t
|
|
23
24
|
import uncountable.types.api.recipes.create_recipe as create_recipe_t
|
|
24
25
|
import uncountable.types.api.recipe_links.create_recipe_link as create_recipe_link_t
|
|
25
26
|
import uncountable.types.api.recipes.create_recipes as create_recipes_t
|
|
@@ -332,6 +333,30 @@ class ClientMethods(ABC):
|
|
|
332
333
|
)
|
|
333
334
|
return self.do_request(api_request=api_request, return_type=create_inputs_t.Data)
|
|
334
335
|
|
|
336
|
+
def create_or_update_entity(
|
|
337
|
+
self,
|
|
338
|
+
*,
|
|
339
|
+
entity_type: entity_t.EntityType,
|
|
340
|
+
definition_key: identifier_t.IdentifierKey,
|
|
341
|
+
field_values: list[field_values_t.FieldArgumentValue],
|
|
342
|
+
entity_key: identifier_t.IdentifierKey | None = None,
|
|
343
|
+
) -> create_or_update_entity_t.Data:
|
|
344
|
+
"""Creates or updates field values for an entity
|
|
345
|
+
|
|
346
|
+
"""
|
|
347
|
+
args = create_or_update_entity_t.Arguments(
|
|
348
|
+
entity_key=entity_key,
|
|
349
|
+
entity_type=entity_type,
|
|
350
|
+
definition_key=definition_key,
|
|
351
|
+
field_values=field_values,
|
|
352
|
+
)
|
|
353
|
+
api_request = APIRequest(
|
|
354
|
+
method=create_or_update_entity_t.ENDPOINT_METHOD,
|
|
355
|
+
endpoint=create_or_update_entity_t.ENDPOINT_PATH,
|
|
356
|
+
args=args,
|
|
357
|
+
)
|
|
358
|
+
return self.do_request(api_request=api_request, return_type=create_or_update_entity_t.Data)
|
|
359
|
+
|
|
335
360
|
def create_recipe(
|
|
336
361
|
self,
|
|
337
362
|
*,
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/.github/workflows/documentation.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/browserconfig.xml
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/favicon-16x16.png
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/favicon-32x32.png
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/manifest.json
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/docs/static/favicons/mstile-150x150.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/set_recipe_metadata_file.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/examples/set_recipe_output_file_sdk.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/__init__.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/_is_enum.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/_is_namedtuple.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/argument_parser.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/argument_parser/case_convert.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/__init__.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_blob_session.py
RENAMED
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_local_session.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_s3_session.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/filesystem_utils/_sftp_session.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/annotation.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/missing_sentry.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/opaque_key.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_alias.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_class.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_generic.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization/serial_union.py
RENAMED
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization_util/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/serialization_util/dataclasses.py
RENAMED
|
File without changes
|
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/strenum_compat/__init__.py
RENAMED
|
File without changes
|
{uncountablepythonsdk-0.0.99 → uncountablepythonsdk-0.0.100}/pkgs/strenum_compat/strenum_compat.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|