runloop_api_client 1.29.0__tar.gz → 1.30.0__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.
- runloop_api_client-1.30.0/.release-please-manifest.json +3 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/CHANGELOG.md +13 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/PKG-INFO +1 -1
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/pyproject.toml +1 -1
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_version.py +1 -1
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/devboxes/devboxes.py +66 -44
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_devboxes.py +80 -10
- runloop_api_client-1.29.0/.release-please-manifest.json +0 -3
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/.gitignore +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/AGENTS.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/CLAUDE.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/CONTRIBUTING.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/EXAMPLES.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/LICENSE +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/README-SDK.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/README.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/SECURITY.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/api.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/bin/check-release-environment +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/bin/publish-pypi +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/_harness.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/blueprint_with_build_context.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/devbox_from_blueprint_lifecycle.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/devbox_snapshot_resume.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/devbox_snapshots.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/devbox_tunnel.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/example_types.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/mcp_github_tools.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/registry.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/secrets_with_devbox.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/release-please-config.json +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/requirements-dev.lock +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop/lib/.keep +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_base_client.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_client.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_compat.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_constants.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_exceptions.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_files.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_models.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_qs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_resource.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_streaming.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_types.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_compat.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_datetime_parse.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_json.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_logs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_path.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_resources_proxy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_streams.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_sync.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_transform.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_typing.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_utils.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_validation.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/.keep +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/_ignore.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/context_loader.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/polling.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/polling_async.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/wait_for_status.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/pagination.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/py.typed +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/accounts.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/agents.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/apikeys.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/axons/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/axons/axons.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/axons/events.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/axons/sql.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/benchmark_jobs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/benchmark_runs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/benchmarks.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/blueprints.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/devboxes/disk_snapshots.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/devboxes/executions.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/gateway_configs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/mcp_configs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/network_policies.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/objects.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/pty.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/restricted_keys.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/scenarios/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/scenarios/runs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/scenarios/scenarios.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/scenarios/scorers.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/secrets.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/_helpers.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/_types.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/agent.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_agent.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_axon.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_benchmark.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_benchmark_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_blueprint.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_devbox.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_execution.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_execution_result.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_gateway_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_mcp_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_network_policy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_scenario.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_scenario_builder.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_scenario_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_scorer.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_secret.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_snapshot.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_storage_object.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/axon.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/benchmark.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/benchmark_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/blueprint.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/devbox.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/execution.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/execution_result.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/gateway_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/mcp_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/network_policy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/scenario.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/scenario_builder.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/scenario_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/scorer.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/secret.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/snapshot.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/storage_object.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/sync.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/account_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/agent_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/agent_devbox_counts_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/agent_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/agent_list_public_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/agent_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/agent_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/allowed_cidr.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/allowed_cidr_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/api_key_created_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/apikey_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axon_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axon_event_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axon_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axon_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axon_publish_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axon_subscribe_sse_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axon_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/axon_event_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/event_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_batch_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_batch_result_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_column_meta_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_query_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_query_result_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_result_meta_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_statement_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_step_error_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/axons/sql_step_result_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_definitions_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_job_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_job_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_job_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_job_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_list_public_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_run_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_run_list_scenario_runs_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_run_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_run_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_start_run_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_update_scenarios_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/benchmark_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_list_public_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_enable_tunnel_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_eviction_event_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_execute_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_resource_usage_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_send_std_in_result.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_shutdown_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_snapshot_disk_async_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_snapshot_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_wait_for_command_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devbox_write_file_contents_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/devbox_snapshot_async_status_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/disk_snapshot_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/disk_snapshot_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_kill_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_send_std_in_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_stream_stderr_updates_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_stream_stdout_updates_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/execution_update_chunk.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/gateway_config_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/gateway_config_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/gateway_config_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/gateway_config_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/gateway_config_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/input_context.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/input_context_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/input_context_update_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/mcp_config_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/mcp_config_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/mcp_config_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/mcp_config_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/mcp_config_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/network_policy_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/network_policy_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/network_policy_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/network_policy_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/network_policy_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/object_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/object_download_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/object_download_url_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/object_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/object_list_public_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/object_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/object_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/port_rule.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/port_rule_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/pty_connect_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/pty_connect_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/pty_control_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/pty_control_result_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/pty_tunnel_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/publish_result_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/restricted_key_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/restricted_key_created_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_definition_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_environment.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_environment_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_list_public_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_run_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_run_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_start_run_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenario_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/run_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/scorer_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/scorer_create_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/scorer_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/scorer_list_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/scorer_retrieve_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/scorer_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scenarios/scorer_update_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scope_entry_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scope_entry_view_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scoring_contract.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scoring_contract_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scoring_contract_result_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scoring_contract_update_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scoring_function.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scoring_function_param.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/scoring_function_result_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/secret_create_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/secret_list_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/secret_list_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/secret_update_params.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/secret_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/agent_mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/agent_source.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/auth_mechanism.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/broker_mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/custom_header.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/launch_parameters.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/lifecycle_configuration.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/lifecycle_hooks.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/object_mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/resume_triggers.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared/run_profile.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/agent_mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/agent_source.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/auth_mechanism.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/broker_mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/code_mount_parameters.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/custom_header.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/lifecycle_configuration.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/lifecycle_hooks.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/object_mount.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/resume_triggers.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/shared_params/run_profile.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/types/tunnel_view.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/axons/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/axons/test_events.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/axons/test_sql.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/devboxes/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/devboxes/test_disk_snapshots.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/devboxes/test_executions.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/devboxes/test_logs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/scenarios/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/scenarios/test_runs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/scenarios/test_scorers.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_accounts.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_agents.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_apikeys.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_axons.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_benchmark_jobs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_benchmark_runs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_benchmarks.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_blueprints.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_gateway_configs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_mcp_configs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_network_policies.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_objects.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_pty.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_restricted_keys.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_scenarios.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_secrets.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/conftest.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sample_file.txt +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/async_devbox/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/async_devbox/conftest.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/async_devbox/test_core.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/async_devbox/test_edge_cases.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/async_devbox/test_interfaces.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/async_devbox/test_streaming.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/conftest.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/devbox/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/devbox/conftest.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/devbox/test_core.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/devbox/test_edge_cases.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/devbox/test_interfaces.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/devbox/test_streaming.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_agent.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_agent.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_axon.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_benchmark.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_benchmark_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_blueprint.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_execution.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_execution_result.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_gateway_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_network_policy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_ops.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_scenario.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_scenario_builder.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_scenario_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_scorer.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_snapshot.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_async_storage_object.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_axon.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_benchmark.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_benchmark_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_blueprint.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_execution.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_execution_result.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_gateway_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_helpers.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_network_policy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_ops.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_scenario.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_scenario_builder.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_scenario_run.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_scorer.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_snapshot.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/sdk/test_storage_object.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/README.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/conftest.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/examples/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/examples/test_examples.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/README.md +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/__init__.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/conftest.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_agent.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_agent.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_axon.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_benchmark.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_blueprint.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_devbox.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_gateway_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_network_policy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_scenario.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_scorer.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_sdk.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_secret.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_snapshot.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_async_storage_object.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_axon.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_benchmark.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_blueprint.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_devbox.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_gateway_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_mcp_config.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_network_policy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_scenario.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_scorer.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_sdk.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_secret.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_snapshot.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/sdk/test_storage_object.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/test_blueprints.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/test_devboxes.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/test_executions.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/test_scenarios_benchmarks.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/test_snapshots.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/smoketests/utils.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_client.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_command_id.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_extract_files.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_files.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_h2_bulkhead_integration.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_models.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_polling.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_qs.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_required_args.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_response.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_shared_pool.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_streaming.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_transfer_client.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_transform.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_utils/test_context_loader.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_utils/test_json.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_utils/test_path.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_utils/test_proxy.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/test_utils/test_typing.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/utils.py +0 -0
- {runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/uv.lock +0 -0
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.30.0 (2026-08-20)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v1.29.0...v1.30.0](https://github.com/runloopai/api-client-python/compare/v1.29.0...v1.30.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **devboxes:** use optimistic create endpoint ([#829](https://github.com/runloopai/api-client-python/issues/829)) ([3f47b22](https://github.com/runloopai/api-client-python/commit/3f47b2256189b1aca4c4137134df2643dd3d7ca5))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Chores
|
|
13
|
+
|
|
14
|
+
* **internal:** allow the mock server port to be set with STAINLESS_MOCK_PORT ([b7a3d87](https://github.com/runloopai/api-client-python/commit/b7a3d87997538ff6d4658df77d68177f83811eb3))
|
|
15
|
+
|
|
3
16
|
## 1.29.0 (2026-08-20)
|
|
4
17
|
|
|
5
18
|
Full Changelog: [v1.28.0...v1.29.0](https://github.com/runloopai/api-client-python/compare/v1.28.0...v1.29.0)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: runloop_api_client
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.30.0
|
|
4
4
|
Summary: The official Python library for the runloop API
|
|
5
5
|
Project-URL: Homepage, https://github.com/runloopai/api-client-python
|
|
6
6
|
Project-URL: Repository, https://github.com/runloopai/api-client-python
|
|
@@ -500,30 +500,41 @@ class DevboxesResource(SyncAPIResource):
|
|
|
500
500
|
PollingTimeout: If polling times out before devbox is running
|
|
501
501
|
RunloopError: If devbox enters a non-running terminal state
|
|
502
502
|
"""
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
503
|
+
devbox = self._post(
|
|
504
|
+
"/v1/devboxes/create_and_await_running",
|
|
505
|
+
body=maybe_transform(
|
|
506
|
+
{
|
|
507
|
+
"blueprint_id": blueprint_id,
|
|
508
|
+
"blueprint_name": blueprint_name,
|
|
509
|
+
"code_mounts": code_mounts,
|
|
510
|
+
"entrypoint": entrypoint,
|
|
511
|
+
"environment_variables": environment_variables,
|
|
512
|
+
"file_mounts": file_mounts,
|
|
513
|
+
"gateways": gateways,
|
|
514
|
+
"launch_parameters": launch_parameters,
|
|
515
|
+
"mcp": mcp,
|
|
516
|
+
"metadata": metadata,
|
|
517
|
+
"mounts": mounts,
|
|
518
|
+
"name": name,
|
|
519
|
+
"secrets": secrets,
|
|
520
|
+
"snapshot_id": snapshot_id,
|
|
521
|
+
"tunnel": tunnel,
|
|
522
|
+
},
|
|
523
|
+
devbox_create_params.DevboxCreateParams,
|
|
524
|
+
),
|
|
525
|
+
options=make_request_options(
|
|
526
|
+
extra_headers=extra_headers,
|
|
527
|
+
extra_query=extra_query,
|
|
528
|
+
extra_body=extra_body,
|
|
529
|
+
timeout=timeout,
|
|
530
|
+
idempotency_key=idempotency_key,
|
|
531
|
+
),
|
|
532
|
+
cast_to=DevboxView,
|
|
525
533
|
)
|
|
526
534
|
|
|
535
|
+
if devbox.status == "running":
|
|
536
|
+
return devbox
|
|
537
|
+
|
|
527
538
|
return self.await_running(
|
|
528
539
|
devbox.id,
|
|
529
540
|
polling_config=polling_config,
|
|
@@ -2071,30 +2082,41 @@ class AsyncDevboxesResource(AsyncAPIResource):
|
|
|
2071
2082
|
RunloopError: If devbox enters a non-running terminal state
|
|
2072
2083
|
"""
|
|
2073
2084
|
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
|
|
2079
|
-
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2085
|
+
devbox = await self._post(
|
|
2086
|
+
"/v1/devboxes/create_and_await_running",
|
|
2087
|
+
body=await async_maybe_transform(
|
|
2088
|
+
{
|
|
2089
|
+
"blueprint_id": blueprint_id,
|
|
2090
|
+
"blueprint_name": blueprint_name,
|
|
2091
|
+
"code_mounts": code_mounts,
|
|
2092
|
+
"entrypoint": entrypoint,
|
|
2093
|
+
"environment_variables": environment_variables,
|
|
2094
|
+
"file_mounts": file_mounts,
|
|
2095
|
+
"gateways": gateways,
|
|
2096
|
+
"launch_parameters": launch_parameters,
|
|
2097
|
+
"mcp": mcp,
|
|
2098
|
+
"metadata": metadata,
|
|
2099
|
+
"mounts": mounts,
|
|
2100
|
+
"name": name,
|
|
2101
|
+
"secrets": secrets,
|
|
2102
|
+
"snapshot_id": snapshot_id,
|
|
2103
|
+
"tunnel": tunnel,
|
|
2104
|
+
},
|
|
2105
|
+
devbox_create_params.DevboxCreateParams,
|
|
2106
|
+
),
|
|
2107
|
+
options=make_request_options(
|
|
2108
|
+
extra_headers=extra_headers,
|
|
2109
|
+
extra_query=extra_query,
|
|
2110
|
+
extra_body=extra_body,
|
|
2111
|
+
timeout=timeout,
|
|
2112
|
+
idempotency_key=idempotency_key,
|
|
2113
|
+
),
|
|
2114
|
+
cast_to=DevboxView,
|
|
2096
2115
|
)
|
|
2097
2116
|
|
|
2117
|
+
if devbox.status == "running":
|
|
2118
|
+
return devbox
|
|
2119
|
+
|
|
2098
2120
|
return await self.await_running(
|
|
2099
2121
|
devbox.id,
|
|
2100
2122
|
polling_config=polling_config,
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/tests/api_resources/test_devboxes.py
RENAMED
|
@@ -4,7 +4,7 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
import os
|
|
6
6
|
from typing import Any, cast
|
|
7
|
-
from unittest.mock import Mock, patch
|
|
7
|
+
from unittest.mock import Mock, AsyncMock, patch
|
|
8
8
|
|
|
9
9
|
import httpx
|
|
10
10
|
import pytest
|
|
@@ -1452,9 +1452,9 @@ class TestDevboxes:
|
|
|
1452
1452
|
state_transitions=[],
|
|
1453
1453
|
)
|
|
1454
1454
|
|
|
1455
|
-
with patch.object(client.devboxes, "
|
|
1455
|
+
with patch.object(client.devboxes, "_post") as mock_post:
|
|
1456
1456
|
with patch.object(client.devboxes, "await_running") as mock_await:
|
|
1457
|
-
|
|
1457
|
+
mock_post.return_value = mock_devbox_creating
|
|
1458
1458
|
mock_await.return_value = mock_devbox_running
|
|
1459
1459
|
|
|
1460
1460
|
result = client.devboxes.create_and_await_running(
|
|
@@ -1463,9 +1463,34 @@ class TestDevboxes:
|
|
|
1463
1463
|
|
|
1464
1464
|
assert result.id == "test_id"
|
|
1465
1465
|
assert result.status == "running"
|
|
1466
|
-
|
|
1466
|
+
assert mock_post.call_args.args[0] == "/v1/devboxes/create_and_await_running"
|
|
1467
|
+
assert mock_post.call_args.kwargs["body"]["name"] == "test"
|
|
1467
1468
|
mock_await.assert_called_once_with("test_id", polling_config=None)
|
|
1468
1469
|
|
|
1470
|
+
@parametrize
|
|
1471
|
+
def test_method_create_and_await_running_optimistic_success(self, client: Runloop) -> None:
|
|
1472
|
+
"""Test create_and_await_running returns a running response without polling."""
|
|
1473
|
+
|
|
1474
|
+
mock_devbox_running = DevboxView(
|
|
1475
|
+
id="test_id",
|
|
1476
|
+
status="running",
|
|
1477
|
+
capabilities=[],
|
|
1478
|
+
create_time_ms=1234567890,
|
|
1479
|
+
launch_parameters=LaunchParameters(resource_size_request="X_SMALL"),
|
|
1480
|
+
metadata={},
|
|
1481
|
+
state_transitions=[],
|
|
1482
|
+
)
|
|
1483
|
+
|
|
1484
|
+
with patch.object(client.devboxes, "_post") as mock_post:
|
|
1485
|
+
with patch.object(client.devboxes, "await_running") as mock_await:
|
|
1486
|
+
mock_post.return_value = mock_devbox_running
|
|
1487
|
+
|
|
1488
|
+
result = client.devboxes.create_and_await_running(name="test")
|
|
1489
|
+
|
|
1490
|
+
assert result.status == "running"
|
|
1491
|
+
assert mock_post.call_args.args[0] == "/v1/devboxes/create_and_await_running"
|
|
1492
|
+
mock_await.assert_not_called()
|
|
1493
|
+
|
|
1469
1494
|
@parametrize
|
|
1470
1495
|
def test_method_create_and_await_running_with_config(self, client: Runloop) -> None:
|
|
1471
1496
|
"""Test create_and_await_running with custom polling configuration"""
|
|
@@ -1492,9 +1517,9 @@ class TestDevboxes:
|
|
|
1492
1517
|
|
|
1493
1518
|
config = PollingConfig(interval_seconds=0.1, max_attempts=10)
|
|
1494
1519
|
|
|
1495
|
-
with patch.object(client.devboxes, "
|
|
1520
|
+
with patch.object(client.devboxes, "_post") as mock_post:
|
|
1496
1521
|
with patch.object(client.devboxes, "await_running") as mock_await:
|
|
1497
|
-
|
|
1522
|
+
mock_post.return_value = mock_devbox_creating
|
|
1498
1523
|
mock_await.return_value = mock_devbox_running
|
|
1499
1524
|
|
|
1500
1525
|
result = client.devboxes.create_and_await_running(
|
|
@@ -1514,8 +1539,8 @@ class TestDevboxes:
|
|
|
1514
1539
|
mock_response.status_code = 400
|
|
1515
1540
|
mock_error = APIStatusError("Bad request", response=mock_response, body=None)
|
|
1516
1541
|
|
|
1517
|
-
with patch.object(client.devboxes, "
|
|
1518
|
-
|
|
1542
|
+
with patch.object(client.devboxes, "_post") as mock_post:
|
|
1543
|
+
mock_post.side_effect = mock_error
|
|
1519
1544
|
|
|
1520
1545
|
with pytest.raises(APIStatusError, match="Bad request"):
|
|
1521
1546
|
client.devboxes.create_and_await_running(
|
|
@@ -1536,9 +1561,9 @@ class TestDevboxes:
|
|
|
1536
1561
|
state_transitions=[],
|
|
1537
1562
|
)
|
|
1538
1563
|
|
|
1539
|
-
with patch.object(client.devboxes, "
|
|
1564
|
+
with patch.object(client.devboxes, "_post") as mock_post:
|
|
1540
1565
|
with patch.object(client.devboxes, "await_running") as mock_await:
|
|
1541
|
-
|
|
1566
|
+
mock_post.return_value = mock_devbox_creating
|
|
1542
1567
|
mock_await.side_effect = RunloopError("Devbox entered non-running terminal state: failed")
|
|
1543
1568
|
|
|
1544
1569
|
with pytest.raises(RunloopError, match="Devbox entered non-running terminal state: failed"):
|
|
@@ -1739,6 +1764,51 @@ class TestAsyncDevboxes:
|
|
|
1739
1764
|
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
1740
1765
|
)
|
|
1741
1766
|
|
|
1767
|
+
@parametrize
|
|
1768
|
+
async def test_method_create_and_await_running_success(self, async_client: AsyncRunloop) -> None:
|
|
1769
|
+
mock_devbox_creating = DevboxView(
|
|
1770
|
+
id="test_id",
|
|
1771
|
+
status="provisioning",
|
|
1772
|
+
capabilities=[],
|
|
1773
|
+
create_time_ms=1234567890,
|
|
1774
|
+
launch_parameters=LaunchParameters(resource_size_request="X_SMALL"),
|
|
1775
|
+
metadata={},
|
|
1776
|
+
state_transitions=[],
|
|
1777
|
+
)
|
|
1778
|
+
mock_devbox_running = mock_devbox_creating.model_copy(update={"status": "running"})
|
|
1779
|
+
|
|
1780
|
+
with patch.object(async_client.devboxes, "_post", new_callable=AsyncMock) as mock_post:
|
|
1781
|
+
with patch.object(async_client.devboxes, "await_running", new_callable=AsyncMock) as mock_await:
|
|
1782
|
+
mock_post.return_value = mock_devbox_creating
|
|
1783
|
+
mock_await.return_value = mock_devbox_running
|
|
1784
|
+
|
|
1785
|
+
result = await async_client.devboxes.create_and_await_running(name="test")
|
|
1786
|
+
|
|
1787
|
+
assert result.status == "running"
|
|
1788
|
+
assert mock_post.call_args.args[0] == "/v1/devboxes/create_and_await_running"
|
|
1789
|
+
mock_await.assert_awaited_once_with("test_id", polling_config=None)
|
|
1790
|
+
|
|
1791
|
+
@parametrize
|
|
1792
|
+
async def test_method_create_and_await_running_optimistic_success(self, async_client: AsyncRunloop) -> None:
|
|
1793
|
+
mock_devbox_running = DevboxView(
|
|
1794
|
+
id="test_id",
|
|
1795
|
+
status="running",
|
|
1796
|
+
capabilities=[],
|
|
1797
|
+
create_time_ms=1234567890,
|
|
1798
|
+
launch_parameters=LaunchParameters(resource_size_request="X_SMALL"),
|
|
1799
|
+
metadata={},
|
|
1800
|
+
state_transitions=[],
|
|
1801
|
+
)
|
|
1802
|
+
|
|
1803
|
+
with patch.object(async_client.devboxes, "_post", new_callable=AsyncMock) as mock_post:
|
|
1804
|
+
with patch.object(async_client.devboxes, "await_running", new_callable=AsyncMock) as mock_await:
|
|
1805
|
+
mock_post.return_value = mock_devbox_running
|
|
1806
|
+
|
|
1807
|
+
result = await async_client.devboxes.create_and_await_running(name="test")
|
|
1808
|
+
|
|
1809
|
+
assert result.status == "running"
|
|
1810
|
+
mock_await.assert_not_awaited()
|
|
1811
|
+
|
|
1742
1812
|
@parametrize
|
|
1743
1813
|
async def test_method_create(self, async_client: AsyncRunloop) -> None:
|
|
1744
1814
|
devbox = await async_client.devboxes.create()
|
|
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
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/blueprint_with_build_context.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/examples/devbox_from_blueprint_lifecycle.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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_base_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_constants.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_streaming.py
RENAMED
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/__init__.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_compat.py
RENAMED
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_json.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_logs.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_path.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_proxy.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_reflection.py
RENAMED
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_streams.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_sync.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_transform.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_typing.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_utils.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/_utils/_validation.py
RENAMED
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/__init__.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/_ignore.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/context_loader.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/polling.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/lib/polling_async.py
RENAMED
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/pagination.py
RENAMED
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/__init__.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/accounts.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/agents.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/apikeys.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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/objects.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/pty.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/resources/secrets.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/__init__.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/_helpers.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/_types.py
RENAMED
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_agent.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_axon.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_devbox.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_scenario.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_scorer.py
RENAMED
|
File without changes
|
{runloop_api_client-1.29.0 → runloop_api_client-1.30.0}/src/runloop_api_client/sdk/async_secret.py
RENAMED
|
File without changes
|