runloop-api-client 0.11.0__tar.gz → 0.13.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-0.13.0/.release-please-manifest.json +3 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/CHANGELOG.md +159 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/LICENSE +1 -1
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/PKG-INFO +85 -11
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/README.md +80 -7
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/api.md +23 -57
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/pyproject.toml +3 -3
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/requirements-dev.lock +7 -6
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/requirements.lock +4 -4
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/__init__.py +2 -1
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_base_client.py +6 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_client.py +32 -44
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_models.py +12 -5
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_response.py +10 -10
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_types.py +2 -4
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/__init__.py +1 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_typing.py +30 -1
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_version.py +1 -1
- runloop_api_client-0.13.0/src/runloop_api_client/lib/polling.py +67 -0
- runloop_api_client-0.13.0/src/runloop_api_client/lib/polling_async.py +56 -0
- runloop_api_client-0.13.0/src/runloop_api_client/pagination.py +247 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/resources/__init__.py +14 -28
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/resources/blueprints.py +90 -62
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/resources/devboxes/devboxes.py +981 -232
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/resources/devboxes/executions.py +208 -42
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/resources/devboxes/logs.py +4 -4
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/resources/devboxes/lsp.py +192 -24
- runloop_api_client-0.13.0/src/runloop_api_client/resources/repositories.py +566 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/__init__.py +10 -10
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_build_parameters.py +1 -1
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_create_params.py +7 -7
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_list_params.py +2 -2
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_preview_params.py +7 -7
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_create_params.py +26 -18
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +2 -2
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_download_file_params.py +4 -1
- runloop_api_client-0.13.0/src/runloop_api_client/types/devbox_execute_async_params.py +25 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/devbox_execute_sync_params.py +25 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +18 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/devbox_list_params.py +20 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_read_file_contents_params.py +4 -1
- runloop_api_client-0.13.0/src/runloop_api_client/types/devbox_remove_tunnel_params.py +12 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +3 -3
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_snapshot_view.py +3 -5
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_upload_file_params.py +7 -3
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_view.py +20 -11
- runloop_api_client-0.13.0/src/runloop_api_client/types/devbox_write_file_contents_params.py +18 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/code_segment_info_response.py +3 -2
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +1 -1
- runloop_api_client-0.13.0/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +25 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +25 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +1 -1
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/log_list_params.py +1 -1
- runloop_api_client-0.13.0/src/runloop_api_client/types/repository_connection_list_view.py +17 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/repository_connection_view.py +25 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/repository_create_params.py +15 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/repository_list_params.py +15 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/repository_version_details.py +44 -0
- runloop_api_client-0.13.0/src/runloop_api_client/types/repository_version_list_view.py +13 -0
- {runloop_api_client-0.11.0/src/runloop_api_client/types/shared_params → runloop_api_client-0.13.0/src/runloop_api_client/types/shared}/__init__.py +1 -0
- {runloop_api_client-0.11.0/src/runloop_api_client/types → runloop_api_client-0.13.0/src/runloop_api_client/types/shared}/code_mount_parameters.py +1 -1
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/shared/launch_parameters.py +2 -1
- runloop_api_client-0.13.0/src/runloop_api_client/types/shared_params/__init__.py +5 -0
- runloop_api_client-0.11.0/src/runloop_api_client/types/code_mount_parameters_param.py → runloop_api_client-0.13.0/src/runloop_api_client/types/shared_params/code_mount_parameters.py +5 -4
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +8 -7
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/api_resources/devboxes/test_executions.py +26 -26
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/api_resources/test_blueprints.py +9 -9
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/api_resources/test_devboxes.py +236 -62
- runloop_api_client-0.13.0/tests/api_resources/test_repositories.py +388 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_client.py +58 -4
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_models.py +27 -1
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/utils.py +4 -0
- runloop_api_client-0.11.0/.release-please-manifest.json +0 -3
- runloop_api_client-0.11.0/src/runloop_api_client/resources/functions/__init__.py +0 -33
- runloop_api_client-0.11.0/src/runloop_api_client/resources/functions/functions.py +0 -395
- runloop_api_client-0.11.0/src/runloop_api_client/resources/functions/invocations.py +0 -357
- runloop_api_client-0.11.0/src/runloop_api_client/resources/projects/__init__.py +0 -33
- runloop_api_client-0.11.0/src/runloop_api_client/resources/projects/logs.py +0 -163
- runloop_api_client-0.11.0/src/runloop_api_client/resources/projects/projects.py +0 -175
- runloop_api_client-0.11.0/src/runloop_api_client/types/devbox_disk_snapshots_params.py +0 -15
- runloop_api_client-0.11.0/src/runloop_api_client/types/devbox_execute_async_params.py +0 -15
- runloop_api_client-0.11.0/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -15
- runloop_api_client-0.11.0/src/runloop_api_client/types/devbox_list_params.py +0 -18
- runloop_api_client-0.11.0/src/runloop_api_client/types/devbox_write_file_params.py +0 -15
- runloop_api_client-0.11.0/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -15
- runloop_api_client-0.11.0/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -15
- runloop_api_client-0.11.0/src/runloop_api_client/types/function_invoke_async_params.py +0 -23
- runloop_api_client-0.11.0/src/runloop_api_client/types/function_invoke_sync_params.py +0 -23
- runloop_api_client-0.11.0/src/runloop_api_client/types/function_list_view.py +0 -20
- runloop_api_client-0.11.0/src/runloop_api_client/types/functions/__init__.py +0 -6
- runloop_api_client-0.11.0/src/runloop_api_client/types/functions/function_invocation_list_view.py +0 -47
- runloop_api_client-0.11.0/src/runloop_api_client/types/functions/invocation_list_params.py +0 -15
- runloop_api_client-0.11.0/src/runloop_api_client/types/project_list_view.py +0 -30
- runloop_api_client-0.11.0/src/runloop_api_client/types/projects/__init__.py +0 -3
- runloop_api_client-0.11.0/src/runloop_api_client/types/shared/__init__.py +0 -8
- runloop_api_client-0.11.0/src/runloop_api_client/types/shared/function_invocation_execution_detail_view.py +0 -42
- runloop_api_client-0.11.0/src/runloop_api_client/types/shared/project_logs_view.py +0 -22
- runloop_api_client-0.11.0/tests/api_resources/functions/__init__.py +0 -1
- runloop_api_client-0.11.0/tests/api_resources/functions/test_invocations.py +0 -241
- runloop_api_client-0.11.0/tests/api_resources/projects/__init__.py +0 -1
- runloop_api_client-0.11.0/tests/api_resources/projects/test_logs.py +0 -98
- runloop_api_client-0.11.0/tests/api_resources/test_functions.py +0 -325
- runloop_api_client-0.11.0/tests/api_resources/test_projects.py +0 -72
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/.gitignore +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/CONTRIBUTING.md +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/SECURITY.md +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/bin/check-release-environment +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/bin/publish-pypi +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/examples/.keep +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/mypy.ini +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/noxfile.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/release-please-config.json +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop/lib/.keep +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_compat.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_constants.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_exceptions.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_files.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_qs.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_resource.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_streaming.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_logs.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_streams.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_sync.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_transform.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/_utils/_utils.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/lib/.keep +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/py.typed +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_create_tunnel_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devbox_tunnel_view.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_code_action.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_command.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_command_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_diagnostic.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_diagnostic_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_location.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_markup_content.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_parameter_information.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_range.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_range_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_signature.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_workspace_edit.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/code_action_application_result.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/code_action_context_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/code_action_kind.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/code_description_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/diagnostic_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/diagnostic_severity.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/diagnostic_tag.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/diagnostics_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/document_symbol.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/document_uri.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/file_contents_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/file_path.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/file_uri.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/health_status_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/integer.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/l_sp_any_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/location_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_file_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_files_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_formatting_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_references_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/position.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/position_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/range.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/range_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/signature_help_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/symbol_kind.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/symbol_tag.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/symbol_type.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/text_edit.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/text_edit_param.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/u_ri.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/uinteger.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/devboxes/watched_file_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/__init__.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/api_resources/__init__.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/api_resources/devboxes/__init__.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/api_resources/devboxes/test_logs.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/api_resources/devboxes/test_lsp.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/conftest.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/sample_file.txt +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_deepcopy.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_extract_files.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_files.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_qs.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_required_args.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_response.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_streaming.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_transform.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_utils/test_proxy.py +0 -0
- {runloop_api_client-0.11.0 → runloop_api_client-0.13.0}/tests/test_utils/test_typing.py +0 -0
|
@@ -1,5 +1,164 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.13.0 (2025-01-15)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.12.0...v0.13.0](https://github.com/runloopai/api-client-python/compare/v0.12.0...v0.13.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* add helpers for common polling operations ([97891c7](https://github.com/runloopai/api-client-python/commit/97891c7cf8be7b9192c5dbcfc35fc93cb3490d04))
|
|
10
|
+
* **api:** api update ([#481](https://github.com/runloopai/api-client-python/issues/481)) ([7a8d8a8](https://github.com/runloopai/api-client-python/commit/7a8d8a8ba1119fd43ee4d40127fc486f0c626cb8))
|
|
11
|
+
* **api:** manual updates ([#490](https://github.com/runloopai/api-client-python/issues/490)) ([bcc441e](https://github.com/runloopai/api-client-python/commit/bcc441ed2706379994b7ef27b6104d2cb47a9095))
|
|
12
|
+
* **api:** manual updates ([#492](https://github.com/runloopai/api-client-python/issues/492)) ([96e2419](https://github.com/runloopai/api-client-python/commit/96e2419332dbd2c65367730d0d4186c31e76ed32))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* **client:** only call .close() when needed ([#484](https://github.com/runloopai/api-client-python/issues/484)) ([55bf004](https://github.com/runloopai/api-client-python/commit/55bf004101e86ebdb01db4b9ad8661d619a777bb))
|
|
18
|
+
* correctly handle deserialising `cls` fields ([#489](https://github.com/runloopai/api-client-python/issues/489)) ([2b2a573](https://github.com/runloopai/api-client-python/commit/2b2a5736c16a985e4b8e33313b4dcde8fc10dbca))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Chores
|
|
22
|
+
|
|
23
|
+
* **internal:** bump httpx dependency ([#483](https://github.com/runloopai/api-client-python/issues/483)) ([dcd5be5](https://github.com/runloopai/api-client-python/commit/dcd5be5065ed52f1172d2fa813d6a5ff64767de6))
|
|
24
|
+
* **internal:** codegen related update ([#488](https://github.com/runloopai/api-client-python/issues/488)) ([af72728](https://github.com/runloopai/api-client-python/commit/af727286ef5018e27be7d564078d1c0305f7d9e1))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Documentation
|
|
28
|
+
|
|
29
|
+
* fix typos ([#487](https://github.com/runloopai/api-client-python/issues/487)) ([440e80b](https://github.com/runloopai/api-client-python/commit/440e80b9e28a64edec079bf72d27c3b188997574))
|
|
30
|
+
|
|
31
|
+
## 0.12.0 (2025-01-07)
|
|
32
|
+
|
|
33
|
+
Full Changelog: [v0.11.0...v0.12.0](https://github.com/runloopai/api-client-python/compare/v0.11.0...v0.12.0)
|
|
34
|
+
|
|
35
|
+
### Features
|
|
36
|
+
|
|
37
|
+
* **api:** api update ([#362](https://github.com/runloopai/api-client-python/issues/362)) ([3dfc4eb](https://github.com/runloopai/api-client-python/commit/3dfc4eb21b5f4096b33b42e6017a4f536767fe39))
|
|
38
|
+
* **api:** api update ([#364](https://github.com/runloopai/api-client-python/issues/364)) ([206a693](https://github.com/runloopai/api-client-python/commit/206a6934f207d0d5006156da6c18a5e2987bece5))
|
|
39
|
+
* **api:** api update ([#365](https://github.com/runloopai/api-client-python/issues/365)) ([ffb41c8](https://github.com/runloopai/api-client-python/commit/ffb41c8bd150b2697bba5881f4b65a939dbc5628))
|
|
40
|
+
* **api:** api update ([#366](https://github.com/runloopai/api-client-python/issues/366)) ([d3acab8](https://github.com/runloopai/api-client-python/commit/d3acab8f273b3c5a9bbba5f8ed1b2fb6fc95d62e))
|
|
41
|
+
* **api:** api update ([#367](https://github.com/runloopai/api-client-python/issues/367)) ([32362b4](https://github.com/runloopai/api-client-python/commit/32362b43f302c837f9becba35d5f582e66111318))
|
|
42
|
+
* **api:** api update ([#369](https://github.com/runloopai/api-client-python/issues/369)) ([7f4ac29](https://github.com/runloopai/api-client-python/commit/7f4ac29899d9dd9f22ac440f84b1bbd26e8e4bf4))
|
|
43
|
+
* **api:** api update ([#370](https://github.com/runloopai/api-client-python/issues/370)) ([b401ea0](https://github.com/runloopai/api-client-python/commit/b401ea0640d58c4425524bdec3bfb754fd3c7b34))
|
|
44
|
+
* **api:** api update ([#371](https://github.com/runloopai/api-client-python/issues/371)) ([7199c10](https://github.com/runloopai/api-client-python/commit/7199c10e22a071d5e80ac429b8ad137afc91ad14))
|
|
45
|
+
* **api:** api update ([#372](https://github.com/runloopai/api-client-python/issues/372)) ([3d054e8](https://github.com/runloopai/api-client-python/commit/3d054e81f40836ec07447339be74e26eb499ea5b))
|
|
46
|
+
* **api:** api update ([#374](https://github.com/runloopai/api-client-python/issues/374)) ([e1df606](https://github.com/runloopai/api-client-python/commit/e1df606d6726f3c2cd3840f86861c2992f946f57))
|
|
47
|
+
* **api:** api update ([#375](https://github.com/runloopai/api-client-python/issues/375)) ([4d377b5](https://github.com/runloopai/api-client-python/commit/4d377b5aabb9d73b01847c04a37e2a13c3228d30))
|
|
48
|
+
* **api:** api update ([#376](https://github.com/runloopai/api-client-python/issues/376)) ([ae3516e](https://github.com/runloopai/api-client-python/commit/ae3516e8b99310ba7cc4da431d1cdbbdaa7e8063))
|
|
49
|
+
* **api:** api update ([#377](https://github.com/runloopai/api-client-python/issues/377)) ([aba9fd4](https://github.com/runloopai/api-client-python/commit/aba9fd4fde4e4f08396ed8b4d3b523c4d3d4020a))
|
|
50
|
+
* **api:** api update ([#378](https://github.com/runloopai/api-client-python/issues/378)) ([b8f2463](https://github.com/runloopai/api-client-python/commit/b8f2463dc08ab85915fe9fc660cd9c11a557649d))
|
|
51
|
+
* **api:** api update ([#379](https://github.com/runloopai/api-client-python/issues/379)) ([e9cf060](https://github.com/runloopai/api-client-python/commit/e9cf06068c0dd56af8b1ce2942045c31ba4fe478))
|
|
52
|
+
* **api:** api update ([#380](https://github.com/runloopai/api-client-python/issues/380)) ([d20ea3b](https://github.com/runloopai/api-client-python/commit/d20ea3b326fe580a288cac749ec0d4e55177e92c))
|
|
53
|
+
* **api:** api update ([#381](https://github.com/runloopai/api-client-python/issues/381)) ([74b87c3](https://github.com/runloopai/api-client-python/commit/74b87c3f41f310d746aacff56e928b1eae6dd9de))
|
|
54
|
+
* **api:** api update ([#382](https://github.com/runloopai/api-client-python/issues/382)) ([233e0dd](https://github.com/runloopai/api-client-python/commit/233e0dd203d32cbc3567a177a1c8e443b2d14cfa))
|
|
55
|
+
* **api:** api update ([#383](https://github.com/runloopai/api-client-python/issues/383)) ([e235409](https://github.com/runloopai/api-client-python/commit/e2354092bbff99c5314d492bc9213c5dad874c68))
|
|
56
|
+
* **api:** api update ([#384](https://github.com/runloopai/api-client-python/issues/384)) ([1b0e2c4](https://github.com/runloopai/api-client-python/commit/1b0e2c4a84f50f07e3c7b034325e7984ee2cc2a9))
|
|
57
|
+
* **api:** api update ([#385](https://github.com/runloopai/api-client-python/issues/385)) ([8343ecc](https://github.com/runloopai/api-client-python/commit/8343ecc1094be1a920af87f7887b4d7601552ce9))
|
|
58
|
+
* **api:** api update ([#386](https://github.com/runloopai/api-client-python/issues/386)) ([70f46f2](https://github.com/runloopai/api-client-python/commit/70f46f205f8fe8d480107973dacb4590ec1b211e))
|
|
59
|
+
* **api:** api update ([#387](https://github.com/runloopai/api-client-python/issues/387)) ([389cf90](https://github.com/runloopai/api-client-python/commit/389cf905ddd1859b72a210ba53274e951c2b1b34))
|
|
60
|
+
* **api:** api update ([#388](https://github.com/runloopai/api-client-python/issues/388)) ([bf43a05](https://github.com/runloopai/api-client-python/commit/bf43a05a9c2a3a78fa26454db7188d5e353a1411))
|
|
61
|
+
* **api:** api update ([#389](https://github.com/runloopai/api-client-python/issues/389)) ([af17aed](https://github.com/runloopai/api-client-python/commit/af17aed21c4221762ae1111b6df7ee51d49742e2))
|
|
62
|
+
* **api:** api update ([#390](https://github.com/runloopai/api-client-python/issues/390)) ([012f542](https://github.com/runloopai/api-client-python/commit/012f542bad6a0c4d1c1f272d4bb0cddeaeecdb48))
|
|
63
|
+
* **api:** api update ([#391](https://github.com/runloopai/api-client-python/issues/391)) ([9f52531](https://github.com/runloopai/api-client-python/commit/9f5253195ec5f9c9c782565f64499e64e3f4f016))
|
|
64
|
+
* **api:** api update ([#392](https://github.com/runloopai/api-client-python/issues/392)) ([b65b5a4](https://github.com/runloopai/api-client-python/commit/b65b5a4c42f488690f91bed57d427a2fa323b3cd))
|
|
65
|
+
* **api:** api update ([#393](https://github.com/runloopai/api-client-python/issues/393)) ([40016f9](https://github.com/runloopai/api-client-python/commit/40016f944bdb366f82d4d02c8ad4e6dd3d35ee6b))
|
|
66
|
+
* **api:** api update ([#394](https://github.com/runloopai/api-client-python/issues/394)) ([d8b3c3f](https://github.com/runloopai/api-client-python/commit/d8b3c3f6668ff9a898c6e87b19d78cb1ef978a61))
|
|
67
|
+
* **api:** api update ([#395](https://github.com/runloopai/api-client-python/issues/395)) ([4d1c78a](https://github.com/runloopai/api-client-python/commit/4d1c78a27459c170fa613d864bdd0ac902ba1bbc))
|
|
68
|
+
* **api:** api update ([#396](https://github.com/runloopai/api-client-python/issues/396)) ([cff50a1](https://github.com/runloopai/api-client-python/commit/cff50a16266e8cc27d69670f0494ba3c914e12bd))
|
|
69
|
+
* **api:** api update ([#397](https://github.com/runloopai/api-client-python/issues/397)) ([7b1cbec](https://github.com/runloopai/api-client-python/commit/7b1cbecd0d3806ca2f204181e40e30eb21748b00))
|
|
70
|
+
* **api:** api update ([#398](https://github.com/runloopai/api-client-python/issues/398)) ([48cda68](https://github.com/runloopai/api-client-python/commit/48cda680cf76d77861697f361cfcbc835270c608))
|
|
71
|
+
* **api:** api update ([#399](https://github.com/runloopai/api-client-python/issues/399)) ([c9473fb](https://github.com/runloopai/api-client-python/commit/c9473fba9e6bafd8cabea5f1cbf3ca4a038ce90c))
|
|
72
|
+
* **api:** api update ([#400](https://github.com/runloopai/api-client-python/issues/400)) ([e17628d](https://github.com/runloopai/api-client-python/commit/e17628dbdf515ec49ae87e82bf0d37218cb27233))
|
|
73
|
+
* **api:** api update ([#401](https://github.com/runloopai/api-client-python/issues/401)) ([80a1564](https://github.com/runloopai/api-client-python/commit/80a1564e73f434233f8e0a3fa01c826a9009ba0f))
|
|
74
|
+
* **api:** api update ([#402](https://github.com/runloopai/api-client-python/issues/402)) ([fffe4ca](https://github.com/runloopai/api-client-python/commit/fffe4ca8e799aad4a38bd18a4ebf96c0276dfa6c))
|
|
75
|
+
* **api:** api update ([#403](https://github.com/runloopai/api-client-python/issues/403)) ([e055c7e](https://github.com/runloopai/api-client-python/commit/e055c7e2940b599060c1a425f0ccec2ded38da38))
|
|
76
|
+
* **api:** api update ([#404](https://github.com/runloopai/api-client-python/issues/404)) ([1afe6bb](https://github.com/runloopai/api-client-python/commit/1afe6bb15cfadc417e4d10155ad77ac14b03aa48))
|
|
77
|
+
* **api:** api update ([#405](https://github.com/runloopai/api-client-python/issues/405)) ([6621921](https://github.com/runloopai/api-client-python/commit/66219217f21dc75bc55842c65b887cab45e3b5ad))
|
|
78
|
+
* **api:** api update ([#406](https://github.com/runloopai/api-client-python/issues/406)) ([633bf17](https://github.com/runloopai/api-client-python/commit/633bf17df71d3d28a0c291414b85e9a201483d94))
|
|
79
|
+
* **api:** api update ([#407](https://github.com/runloopai/api-client-python/issues/407)) ([964cb03](https://github.com/runloopai/api-client-python/commit/964cb03acb9ed236cc2daea4ddc01d575ecc4a2e))
|
|
80
|
+
* **api:** api update ([#408](https://github.com/runloopai/api-client-python/issues/408)) ([f414a30](https://github.com/runloopai/api-client-python/commit/f414a301829cfcf6cb0e09947531882f8b43794e))
|
|
81
|
+
* **api:** api update ([#409](https://github.com/runloopai/api-client-python/issues/409)) ([8eb1ea3](https://github.com/runloopai/api-client-python/commit/8eb1ea3ba5d4f09376b4ae0de5d939692796f34e))
|
|
82
|
+
* **api:** api update ([#410](https://github.com/runloopai/api-client-python/issues/410)) ([cf5cb65](https://github.com/runloopai/api-client-python/commit/cf5cb651fb5e6ac897099d83a91436582e617e18))
|
|
83
|
+
* **api:** api update ([#411](https://github.com/runloopai/api-client-python/issues/411)) ([c4958ef](https://github.com/runloopai/api-client-python/commit/c4958ef61cd2e8ff009574a664357268ebb27d91))
|
|
84
|
+
* **api:** api update ([#412](https://github.com/runloopai/api-client-python/issues/412)) ([f0bdc85](https://github.com/runloopai/api-client-python/commit/f0bdc85aea591110a9e081e28fe33f1910c9d9ca))
|
|
85
|
+
* **api:** api update ([#413](https://github.com/runloopai/api-client-python/issues/413)) ([d621c18](https://github.com/runloopai/api-client-python/commit/d621c18330cc7ddbbdfbb29570a182a3e038a50e))
|
|
86
|
+
* **api:** api update ([#414](https://github.com/runloopai/api-client-python/issues/414)) ([33f66ee](https://github.com/runloopai/api-client-python/commit/33f66eea0d34928bd7245d97b2b7cee539bc7762))
|
|
87
|
+
* **api:** api update ([#415](https://github.com/runloopai/api-client-python/issues/415)) ([dc4dee7](https://github.com/runloopai/api-client-python/commit/dc4dee7d331821048fd29105ca6acc2b79a8cadf))
|
|
88
|
+
* **api:** api update ([#416](https://github.com/runloopai/api-client-python/issues/416)) ([18ade84](https://github.com/runloopai/api-client-python/commit/18ade84c7eddc115f561b938539db9154de3c962))
|
|
89
|
+
* **api:** api update ([#417](https://github.com/runloopai/api-client-python/issues/417)) ([02a1fe8](https://github.com/runloopai/api-client-python/commit/02a1fe8c81a05ff7001ec524fe4207bf14ba31af))
|
|
90
|
+
* **api:** api update ([#418](https://github.com/runloopai/api-client-python/issues/418)) ([ba31602](https://github.com/runloopai/api-client-python/commit/ba31602d7be4ce823fa5d15d834c7a8adea58bcc))
|
|
91
|
+
* **api:** api update ([#419](https://github.com/runloopai/api-client-python/issues/419)) ([ed84a54](https://github.com/runloopai/api-client-python/commit/ed84a544005c0283199b8cff95f26534fbbbe200))
|
|
92
|
+
* **api:** api update ([#420](https://github.com/runloopai/api-client-python/issues/420)) ([a189508](https://github.com/runloopai/api-client-python/commit/a189508858735228872fad813c60a8999a20b008))
|
|
93
|
+
* **api:** api update ([#421](https://github.com/runloopai/api-client-python/issues/421)) ([ee6083b](https://github.com/runloopai/api-client-python/commit/ee6083bb8faca2542ba8c739a12dbac4c1e2cae3))
|
|
94
|
+
* **api:** api update ([#422](https://github.com/runloopai/api-client-python/issues/422)) ([7415fb9](https://github.com/runloopai/api-client-python/commit/7415fb9c452505d21df8aa23cd26c9073c6b5088))
|
|
95
|
+
* **api:** api update ([#423](https://github.com/runloopai/api-client-python/issues/423)) ([cdb793d](https://github.com/runloopai/api-client-python/commit/cdb793d025ce636693933f0e6df405f2b8f6ffd4))
|
|
96
|
+
* **api:** api update ([#424](https://github.com/runloopai/api-client-python/issues/424)) ([5b5c0c1](https://github.com/runloopai/api-client-python/commit/5b5c0c1eac9f9511b46794af11619cfd5efecac7))
|
|
97
|
+
* **api:** api update ([#425](https://github.com/runloopai/api-client-python/issues/425)) ([673d5ba](https://github.com/runloopai/api-client-python/commit/673d5baba9981f28582dab9619b752c8619feae9))
|
|
98
|
+
* **api:** api update ([#426](https://github.com/runloopai/api-client-python/issues/426)) ([0b11b80](https://github.com/runloopai/api-client-python/commit/0b11b80e261da59a644579ec38c15be7ec68d0df))
|
|
99
|
+
* **api:** api update ([#427](https://github.com/runloopai/api-client-python/issues/427)) ([875a3bb](https://github.com/runloopai/api-client-python/commit/875a3bb143bdee17bc534935c57fd6566164b33b))
|
|
100
|
+
* **api:** api update ([#428](https://github.com/runloopai/api-client-python/issues/428)) ([fc11810](https://github.com/runloopai/api-client-python/commit/fc11810c6c5c908813857532a92e50419e9d0494))
|
|
101
|
+
* **api:** api update ([#431](https://github.com/runloopai/api-client-python/issues/431)) ([c4990b0](https://github.com/runloopai/api-client-python/commit/c4990b039821244b15e58a9e0ad61ebc1d4fb4bb))
|
|
102
|
+
* **api:** api update ([#432](https://github.com/runloopai/api-client-python/issues/432)) ([d0684d0](https://github.com/runloopai/api-client-python/commit/d0684d07d452f4e9dd7b1eb8614f15d70f386da2))
|
|
103
|
+
* **api:** api update ([#433](https://github.com/runloopai/api-client-python/issues/433)) ([bbe8d92](https://github.com/runloopai/api-client-python/commit/bbe8d9289c202f89844cc4a5d219f14ad41232de))
|
|
104
|
+
* **api:** api update ([#434](https://github.com/runloopai/api-client-python/issues/434)) ([f81e740](https://github.com/runloopai/api-client-python/commit/f81e740464585f4a4331adba38a834486e63f8ba))
|
|
105
|
+
* **api:** api update ([#435](https://github.com/runloopai/api-client-python/issues/435)) ([531fcc0](https://github.com/runloopai/api-client-python/commit/531fcc0008697eba0ca9dec0437753a7e0d6802b))
|
|
106
|
+
* **api:** api update ([#436](https://github.com/runloopai/api-client-python/issues/436)) ([f4e0343](https://github.com/runloopai/api-client-python/commit/f4e0343c3229501b22d1ab8373d0045e71a02287))
|
|
107
|
+
* **api:** api update ([#437](https://github.com/runloopai/api-client-python/issues/437)) ([e7e5cde](https://github.com/runloopai/api-client-python/commit/e7e5cde5f5e27ed153e10a30dfb512d36a6ffde1))
|
|
108
|
+
* **api:** api update ([#438](https://github.com/runloopai/api-client-python/issues/438)) ([8f3b91f](https://github.com/runloopai/api-client-python/commit/8f3b91f39fefb8e98e1f1bc60e2b3fe7d0cdbeaa))
|
|
109
|
+
* **api:** api update ([#440](https://github.com/runloopai/api-client-python/issues/440)) ([5a89907](https://github.com/runloopai/api-client-python/commit/5a89907c8812c221193bab0493eba36c0d0ca04f))
|
|
110
|
+
* **api:** api update ([#441](https://github.com/runloopai/api-client-python/issues/441)) ([b59c6e8](https://github.com/runloopai/api-client-python/commit/b59c6e8693d5411b9afdb4a8d2bbf881c7edab4a))
|
|
111
|
+
* **api:** api update ([#442](https://github.com/runloopai/api-client-python/issues/442)) ([4b12c1a](https://github.com/runloopai/api-client-python/commit/4b12c1a233c729ca55dcf10bb290fc3d0dd48916))
|
|
112
|
+
* **api:** api update ([#443](https://github.com/runloopai/api-client-python/issues/443)) ([0847342](https://github.com/runloopai/api-client-python/commit/08473429deb4f10c6b405c931f86dc603154f08f))
|
|
113
|
+
* **api:** api update ([#444](https://github.com/runloopai/api-client-python/issues/444)) ([a268c66](https://github.com/runloopai/api-client-python/commit/a268c66d3a01017b273e3f9ac1ff9462aa368143))
|
|
114
|
+
* **api:** api update ([#445](https://github.com/runloopai/api-client-python/issues/445)) ([c81a340](https://github.com/runloopai/api-client-python/commit/c81a340c849869bb84b014b8fcde50bf5151a18c))
|
|
115
|
+
* **api:** api update ([#446](https://github.com/runloopai/api-client-python/issues/446)) ([890dd15](https://github.com/runloopai/api-client-python/commit/890dd154d289a7b108078cf98675e29d897a78b7))
|
|
116
|
+
* **api:** api update ([#447](https://github.com/runloopai/api-client-python/issues/447)) ([5c15205](https://github.com/runloopai/api-client-python/commit/5c152052cbd78738224e49e572f07a7e985e8d72))
|
|
117
|
+
* **api:** api update ([#448](https://github.com/runloopai/api-client-python/issues/448)) ([0a4281c](https://github.com/runloopai/api-client-python/commit/0a4281ca32cc84aff988c7ac74550801d2659dff))
|
|
118
|
+
* **api:** api update ([#450](https://github.com/runloopai/api-client-python/issues/450)) ([f146e9e](https://github.com/runloopai/api-client-python/commit/f146e9e6579b87cd123ab5b40688276caac09b40))
|
|
119
|
+
* **api:** api update ([#451](https://github.com/runloopai/api-client-python/issues/451)) ([3aa8890](https://github.com/runloopai/api-client-python/commit/3aa88905b80e5436c2f679c9fcb7bceaaeb63a1c))
|
|
120
|
+
* **api:** api update ([#452](https://github.com/runloopai/api-client-python/issues/452)) ([f34e6a0](https://github.com/runloopai/api-client-python/commit/f34e6a04169ca59f11d8f460ac4fc5b8fc1670c6))
|
|
121
|
+
* **api:** api update ([#456](https://github.com/runloopai/api-client-python/issues/456)) ([1c4457e](https://github.com/runloopai/api-client-python/commit/1c4457e187d1da307c4c64b2f64163ca39701c6b))
|
|
122
|
+
* **api:** api update ([#457](https://github.com/runloopai/api-client-python/issues/457)) ([3944caf](https://github.com/runloopai/api-client-python/commit/3944cafae35ed8dfd25cdf81cfb11bb63030ab10))
|
|
123
|
+
* **api:** api update ([#458](https://github.com/runloopai/api-client-python/issues/458)) ([2051057](https://github.com/runloopai/api-client-python/commit/205105792548c8474155710cef59c767d85dc5ff))
|
|
124
|
+
* **api:** api update ([#459](https://github.com/runloopai/api-client-python/issues/459)) ([f994f2b](https://github.com/runloopai/api-client-python/commit/f994f2b220959c64f2e2e0b3a7a5376626cd9f46))
|
|
125
|
+
* **api:** api update ([#461](https://github.com/runloopai/api-client-python/issues/461)) ([9916c69](https://github.com/runloopai/api-client-python/commit/9916c699871deb17032a42c2206b6b7eaef2422a))
|
|
126
|
+
* **api:** api update ([#462](https://github.com/runloopai/api-client-python/issues/462)) ([12db42c](https://github.com/runloopai/api-client-python/commit/12db42c33402d6dbb3ed6f58275e81f9fec7df6d))
|
|
127
|
+
* **api:** api update ([#463](https://github.com/runloopai/api-client-python/issues/463)) ([2b96a69](https://github.com/runloopai/api-client-python/commit/2b96a691a4316974fb0189fea7bcb4a5e83b7100))
|
|
128
|
+
* **api:** api update ([#464](https://github.com/runloopai/api-client-python/issues/464)) ([8befd9c](https://github.com/runloopai/api-client-python/commit/8befd9ca3ded2c1612ce6c0afe45ea5ca19abf60))
|
|
129
|
+
* **api:** api update ([#465](https://github.com/runloopai/api-client-python/issues/465)) ([13a2b7c](https://github.com/runloopai/api-client-python/commit/13a2b7c97f790b84f2d0c17d661deaea1d2c385d))
|
|
130
|
+
* **api:** api update ([#466](https://github.com/runloopai/api-client-python/issues/466)) ([32022e6](https://github.com/runloopai/api-client-python/commit/32022e691ffaf8ff4f329ba11ca442e034702deb))
|
|
131
|
+
* **api:** api update ([#467](https://github.com/runloopai/api-client-python/issues/467)) ([b54bcda](https://github.com/runloopai/api-client-python/commit/b54bcda08049b79fb6119883de75bd7b7577b178))
|
|
132
|
+
* **api:** api update ([#468](https://github.com/runloopai/api-client-python/issues/468)) ([c63ccbb](https://github.com/runloopai/api-client-python/commit/c63ccbb10bec2469147480608a1f8b85884c0a84))
|
|
133
|
+
* **api:** api update ([#469](https://github.com/runloopai/api-client-python/issues/469)) ([e360b33](https://github.com/runloopai/api-client-python/commit/e360b330e21ff2d5f40245fec4abbcc9c855984b))
|
|
134
|
+
* **api:** api update ([#470](https://github.com/runloopai/api-client-python/issues/470)) ([4d451be](https://github.com/runloopai/api-client-python/commit/4d451be9763d647a65e3b808a5df2c4bb558c2e4))
|
|
135
|
+
* **api:** api update ([#471](https://github.com/runloopai/api-client-python/issues/471)) ([00b4736](https://github.com/runloopai/api-client-python/commit/00b4736f593efd87110ce4f281e44b9573b6e88d))
|
|
136
|
+
* **api:** api update ([#472](https://github.com/runloopai/api-client-python/issues/472)) ([b3bb5a3](https://github.com/runloopai/api-client-python/commit/b3bb5a3a006b40c066ba7288b9f9f5d7ad650ed0))
|
|
137
|
+
* **api:** api update ([#473](https://github.com/runloopai/api-client-python/issues/473)) ([0ddbcd9](https://github.com/runloopai/api-client-python/commit/0ddbcd9f332326c4210302d457445eef85ad337c))
|
|
138
|
+
* **api:** api update ([#474](https://github.com/runloopai/api-client-python/issues/474)) ([bebafe7](https://github.com/runloopai/api-client-python/commit/bebafe76afd82928ba0b9b9904598ecf5664d698))
|
|
139
|
+
* **api:** api update ([#475](https://github.com/runloopai/api-client-python/issues/475)) ([493d9a5](https://github.com/runloopai/api-client-python/commit/493d9a5bc8c2116e7a028c7dd39b178a2c51640b))
|
|
140
|
+
* **api:** api update ([#476](https://github.com/runloopai/api-client-python/issues/476)) ([8a8c550](https://github.com/runloopai/api-client-python/commit/8a8c550238f0ecc3ab93773abfd37d28c631b9c3))
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
### Chores
|
|
144
|
+
|
|
145
|
+
* add missing isclass check ([#478](https://github.com/runloopai/api-client-python/issues/478)) ([1b477a3](https://github.com/runloopai/api-client-python/commit/1b477a378a9ea74c52c97c5e4741dc67ee96d409))
|
|
146
|
+
* **internal:** add support for TypeAliasType ([#430](https://github.com/runloopai/api-client-python/issues/430)) ([7c4be68](https://github.com/runloopai/api-client-python/commit/7c4be683074bf86d8caca25190508de59b855362))
|
|
147
|
+
* **internal:** bump pyright ([#429](https://github.com/runloopai/api-client-python/issues/429)) ([5546e05](https://github.com/runloopai/api-client-python/commit/5546e05bcb6a1f9b14a611dac0c954303429ad4a))
|
|
148
|
+
* **internal:** codegen related update ([#368](https://github.com/runloopai/api-client-python/issues/368)) ([6bbac9d](https://github.com/runloopai/api-client-python/commit/6bbac9dcd9cace70ade900d5e3261b2c4608cb31))
|
|
149
|
+
* **internal:** codegen related update ([#439](https://github.com/runloopai/api-client-python/issues/439)) ([0ea26b1](https://github.com/runloopai/api-client-python/commit/0ea26b1244c4b857b479acda101661981fac0d46))
|
|
150
|
+
* **internal:** codegen related update ([#453](https://github.com/runloopai/api-client-python/issues/453)) ([947ffa2](https://github.com/runloopai/api-client-python/commit/947ffa210c0d28bb2c2a900054043ede50a51afb))
|
|
151
|
+
* **internal:** codegen related update ([#454](https://github.com/runloopai/api-client-python/issues/454)) ([72127cd](https://github.com/runloopai/api-client-python/commit/72127cdedf2ad79beb513d2d5d0b9aeec6d60c39))
|
|
152
|
+
* **internal:** codegen related update ([#477](https://github.com/runloopai/api-client-python/issues/477)) ([648039b](https://github.com/runloopai/api-client-python/commit/648039bc42b0c39867408c204fd9e78b2bb3e1a9))
|
|
153
|
+
* **internal:** fix some typos ([#460](https://github.com/runloopai/api-client-python/issues/460)) ([1c17f0c](https://github.com/runloopai/api-client-python/commit/1c17f0c3f1fe28ec92c942ef1356c7a28a54a545))
|
|
154
|
+
* make the `Omit` type public ([#373](https://github.com/runloopai/api-client-python/issues/373)) ([1ec1400](https://github.com/runloopai/api-client-python/commit/1ec1400baa00a62d2e3cbe616423653be3d28f22))
|
|
155
|
+
* updates ([#479](https://github.com/runloopai/api-client-python/issues/479)) ([55b7d1d](https://github.com/runloopai/api-client-python/commit/55b7d1dd63c9e363328528a6412bd15d68d39885))
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
### Documentation
|
|
159
|
+
|
|
160
|
+
* **readme:** example snippet for client context manager ([#455](https://github.com/runloopai/api-client-python/issues/455)) ([8f57943](https://github.com/runloopai/api-client-python/commit/8f579438f9a3648049c29b264fa1afe0659f274b))
|
|
161
|
+
|
|
3
162
|
## 0.11.0 (2024-11-28)
|
|
4
163
|
|
|
5
164
|
Full Changelog: [v0.10.0...v0.11.0](https://github.com/runloopai/api-client-python/compare/v0.10.0...v0.11.0)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Copyright
|
|
1
|
+
Copyright 2025 runloop
|
|
2
2
|
|
|
3
3
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
4
4
|
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: runloop_api_client
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.13.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
|
|
7
7
|
Author-email: Runloop <support@runloop.ai>
|
|
8
|
-
License: MIT
|
|
8
|
+
License-Expression: MIT
|
|
9
|
+
License-File: LICENSE
|
|
9
10
|
Classifier: Intended Audience :: Developers
|
|
10
11
|
Classifier: License :: OSI Approved :: MIT License
|
|
11
12
|
Classifier: Operating System :: MacOS
|
|
@@ -26,7 +27,7 @@ Requires-Dist: distro<2,>=1.7.0
|
|
|
26
27
|
Requires-Dist: httpx<1,>=0.23.0
|
|
27
28
|
Requires-Dist: pydantic<3,>=1.9.0
|
|
28
29
|
Requires-Dist: sniffio
|
|
29
|
-
Requires-Dist: typing-extensions<5,>=4.
|
|
30
|
+
Requires-Dist: typing-extensions<5,>=4.10
|
|
30
31
|
Description-Content-Type: text/markdown
|
|
31
32
|
|
|
32
33
|
# Runloop Python API library
|
|
@@ -104,6 +105,69 @@ Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typ
|
|
|
104
105
|
|
|
105
106
|
Typed requests and responses provide autocomplete and documentation within your editor. If you would like to see type errors in VS Code to help catch bugs earlier, set `python.analysis.typeCheckingMode` to `basic`.
|
|
106
107
|
|
|
108
|
+
## Pagination
|
|
109
|
+
|
|
110
|
+
List methods in the Runloop API are paginated.
|
|
111
|
+
|
|
112
|
+
This library provides auto-paginating iterators with each list response, so you do not have to request successive pages manually:
|
|
113
|
+
|
|
114
|
+
```python
|
|
115
|
+
from runloop_api_client import Runloop
|
|
116
|
+
|
|
117
|
+
client = Runloop()
|
|
118
|
+
|
|
119
|
+
all_devboxes = []
|
|
120
|
+
# Automatically fetches more pages as needed.
|
|
121
|
+
for devbox in client.devboxes.list():
|
|
122
|
+
# Do something with devbox here
|
|
123
|
+
all_devboxes.append(devbox)
|
|
124
|
+
print(all_devboxes)
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Or, asynchronously:
|
|
128
|
+
|
|
129
|
+
```python
|
|
130
|
+
import asyncio
|
|
131
|
+
from runloop_api_client import AsyncRunloop
|
|
132
|
+
|
|
133
|
+
client = AsyncRunloop()
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
async def main() -> None:
|
|
137
|
+
all_devboxes = []
|
|
138
|
+
# Iterate through items across all pages, issuing requests as needed.
|
|
139
|
+
async for devbox in client.devboxes.list():
|
|
140
|
+
all_devboxes.append(devbox)
|
|
141
|
+
print(all_devboxes)
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
asyncio.run(main())
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
Alternatively, you can use the `.has_next_page()`, `.next_page_info()`, or `.get_next_page()` methods for more granular control working with pages:
|
|
148
|
+
|
|
149
|
+
```python
|
|
150
|
+
first_page = await client.devboxes.list()
|
|
151
|
+
if first_page.has_next_page():
|
|
152
|
+
print(f"will fetch next page using these details: {first_page.next_page_info()}")
|
|
153
|
+
next_page = await first_page.get_next_page()
|
|
154
|
+
print(f"number of items we just fetched: {len(next_page.devboxes)}")
|
|
155
|
+
|
|
156
|
+
# Remove `await` for non-async usage.
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Or just work directly with the returned data:
|
|
160
|
+
|
|
161
|
+
```python
|
|
162
|
+
first_page = await client.devboxes.list()
|
|
163
|
+
|
|
164
|
+
print(f"next page cursor: {first_page.starting_after}") # => "next page cursor: ..."
|
|
165
|
+
for devbox in first_page.devboxes:
|
|
166
|
+
print(devbox.id)
|
|
167
|
+
|
|
168
|
+
# Remove `await` for non-async usage.
|
|
169
|
+
```
|
|
170
|
+
|
|
107
171
|
## Handling errors
|
|
108
172
|
|
|
109
173
|
When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `runloop_api_client.APIConnectionError` is raised.
|
|
@@ -132,7 +196,7 @@ except runloop_api_client.APIStatusError as e:
|
|
|
132
196
|
print(e.response)
|
|
133
197
|
```
|
|
134
198
|
|
|
135
|
-
Error codes are as
|
|
199
|
+
Error codes are as follows:
|
|
136
200
|
|
|
137
201
|
| Status Code | Error Type |
|
|
138
202
|
| ----------- | -------------------------- |
|
|
@@ -263,8 +327,7 @@ If you need to access undocumented endpoints, params, or response properties, th
|
|
|
263
327
|
#### Undocumented endpoints
|
|
264
328
|
|
|
265
329
|
To make requests to undocumented endpoints, you can make requests using `client.get`, `client.post`, and other
|
|
266
|
-
http verbs. Options on the client will be respected (such as retries)
|
|
267
|
-
request.
|
|
330
|
+
http verbs. Options on the client will be respected (such as retries) when making this request.
|
|
268
331
|
|
|
269
332
|
```py
|
|
270
333
|
import httpx
|
|
@@ -293,18 +356,19 @@ can also get all the extra fields on the Pydantic model as a dict with
|
|
|
293
356
|
|
|
294
357
|
You can directly override the [httpx client](https://www.python-httpx.org/api/#client) to customize it for your use case, including:
|
|
295
358
|
|
|
296
|
-
- Support for proxies
|
|
297
|
-
- Custom transports
|
|
359
|
+
- Support for [proxies](https://www.python-httpx.org/advanced/proxies/)
|
|
360
|
+
- Custom [transports](https://www.python-httpx.org/advanced/transports/)
|
|
298
361
|
- Additional [advanced](https://www.python-httpx.org/advanced/clients/) functionality
|
|
299
362
|
|
|
300
363
|
```python
|
|
364
|
+
import httpx
|
|
301
365
|
from runloop_api_client import Runloop, DefaultHttpxClient
|
|
302
366
|
|
|
303
367
|
client = Runloop(
|
|
304
368
|
# Or use the `RUNLOOP_BASE_URL` env var
|
|
305
369
|
base_url="http://my.test.server.example.com:8083",
|
|
306
370
|
http_client=DefaultHttpxClient(
|
|
307
|
-
|
|
371
|
+
proxy="http://my.test.proxy.example.com",
|
|
308
372
|
transport=httpx.HTTPTransport(local_address="0.0.0.0"),
|
|
309
373
|
),
|
|
310
374
|
)
|
|
@@ -320,12 +384,22 @@ client.with_options(http_client=DefaultHttpxClient(...))
|
|
|
320
384
|
|
|
321
385
|
By default the library closes underlying HTTP connections whenever the client is [garbage collected](https://docs.python.org/3/reference/datamodel.html#object.__del__). You can manually close the client using the `.close()` method if desired, or with a context manager that closes when exiting.
|
|
322
386
|
|
|
387
|
+
```py
|
|
388
|
+
from runloop_api_client import Runloop
|
|
389
|
+
|
|
390
|
+
with Runloop() as client:
|
|
391
|
+
# make requests here
|
|
392
|
+
...
|
|
393
|
+
|
|
394
|
+
# HTTP client is now closed
|
|
395
|
+
```
|
|
396
|
+
|
|
323
397
|
## Versioning
|
|
324
398
|
|
|
325
399
|
This package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions, though certain backwards-incompatible changes may be released as minor versions:
|
|
326
400
|
|
|
327
401
|
1. Changes that only affect static types, without breaking runtime behavior.
|
|
328
|
-
2. Changes to library internals which are technically public but not intended or documented for external use. _(Please open a GitHub issue to let us know if you are relying on such internals)_
|
|
402
|
+
2. Changes to library internals which are technically public but not intended or documented for external use. _(Please open a GitHub issue to let us know if you are relying on such internals.)_
|
|
329
403
|
3. Changes that we do not expect to impact the vast majority of users in practice.
|
|
330
404
|
|
|
331
405
|
We take backwards-compatibility seriously and work hard to ensure you can rely on a smooth upgrade experience.
|
|
@@ -73,6 +73,69 @@ Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typ
|
|
|
73
73
|
|
|
74
74
|
Typed requests and responses provide autocomplete and documentation within your editor. If you would like to see type errors in VS Code to help catch bugs earlier, set `python.analysis.typeCheckingMode` to `basic`.
|
|
75
75
|
|
|
76
|
+
## Pagination
|
|
77
|
+
|
|
78
|
+
List methods in the Runloop API are paginated.
|
|
79
|
+
|
|
80
|
+
This library provides auto-paginating iterators with each list response, so you do not have to request successive pages manually:
|
|
81
|
+
|
|
82
|
+
```python
|
|
83
|
+
from runloop_api_client import Runloop
|
|
84
|
+
|
|
85
|
+
client = Runloop()
|
|
86
|
+
|
|
87
|
+
all_devboxes = []
|
|
88
|
+
# Automatically fetches more pages as needed.
|
|
89
|
+
for devbox in client.devboxes.list():
|
|
90
|
+
# Do something with devbox here
|
|
91
|
+
all_devboxes.append(devbox)
|
|
92
|
+
print(all_devboxes)
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
Or, asynchronously:
|
|
96
|
+
|
|
97
|
+
```python
|
|
98
|
+
import asyncio
|
|
99
|
+
from runloop_api_client import AsyncRunloop
|
|
100
|
+
|
|
101
|
+
client = AsyncRunloop()
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
async def main() -> None:
|
|
105
|
+
all_devboxes = []
|
|
106
|
+
# Iterate through items across all pages, issuing requests as needed.
|
|
107
|
+
async for devbox in client.devboxes.list():
|
|
108
|
+
all_devboxes.append(devbox)
|
|
109
|
+
print(all_devboxes)
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
asyncio.run(main())
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Alternatively, you can use the `.has_next_page()`, `.next_page_info()`, or `.get_next_page()` methods for more granular control working with pages:
|
|
116
|
+
|
|
117
|
+
```python
|
|
118
|
+
first_page = await client.devboxes.list()
|
|
119
|
+
if first_page.has_next_page():
|
|
120
|
+
print(f"will fetch next page using these details: {first_page.next_page_info()}")
|
|
121
|
+
next_page = await first_page.get_next_page()
|
|
122
|
+
print(f"number of items we just fetched: {len(next_page.devboxes)}")
|
|
123
|
+
|
|
124
|
+
# Remove `await` for non-async usage.
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Or just work directly with the returned data:
|
|
128
|
+
|
|
129
|
+
```python
|
|
130
|
+
first_page = await client.devboxes.list()
|
|
131
|
+
|
|
132
|
+
print(f"next page cursor: {first_page.starting_after}") # => "next page cursor: ..."
|
|
133
|
+
for devbox in first_page.devboxes:
|
|
134
|
+
print(devbox.id)
|
|
135
|
+
|
|
136
|
+
# Remove `await` for non-async usage.
|
|
137
|
+
```
|
|
138
|
+
|
|
76
139
|
## Handling errors
|
|
77
140
|
|
|
78
141
|
When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `runloop_api_client.APIConnectionError` is raised.
|
|
@@ -101,7 +164,7 @@ except runloop_api_client.APIStatusError as e:
|
|
|
101
164
|
print(e.response)
|
|
102
165
|
```
|
|
103
166
|
|
|
104
|
-
Error codes are as
|
|
167
|
+
Error codes are as follows:
|
|
105
168
|
|
|
106
169
|
| Status Code | Error Type |
|
|
107
170
|
| ----------- | -------------------------- |
|
|
@@ -232,8 +295,7 @@ If you need to access undocumented endpoints, params, or response properties, th
|
|
|
232
295
|
#### Undocumented endpoints
|
|
233
296
|
|
|
234
297
|
To make requests to undocumented endpoints, you can make requests using `client.get`, `client.post`, and other
|
|
235
|
-
http verbs. Options on the client will be respected (such as retries)
|
|
236
|
-
request.
|
|
298
|
+
http verbs. Options on the client will be respected (such as retries) when making this request.
|
|
237
299
|
|
|
238
300
|
```py
|
|
239
301
|
import httpx
|
|
@@ -262,18 +324,19 @@ can also get all the extra fields on the Pydantic model as a dict with
|
|
|
262
324
|
|
|
263
325
|
You can directly override the [httpx client](https://www.python-httpx.org/api/#client) to customize it for your use case, including:
|
|
264
326
|
|
|
265
|
-
- Support for proxies
|
|
266
|
-
- Custom transports
|
|
327
|
+
- Support for [proxies](https://www.python-httpx.org/advanced/proxies/)
|
|
328
|
+
- Custom [transports](https://www.python-httpx.org/advanced/transports/)
|
|
267
329
|
- Additional [advanced](https://www.python-httpx.org/advanced/clients/) functionality
|
|
268
330
|
|
|
269
331
|
```python
|
|
332
|
+
import httpx
|
|
270
333
|
from runloop_api_client import Runloop, DefaultHttpxClient
|
|
271
334
|
|
|
272
335
|
client = Runloop(
|
|
273
336
|
# Or use the `RUNLOOP_BASE_URL` env var
|
|
274
337
|
base_url="http://my.test.server.example.com:8083",
|
|
275
338
|
http_client=DefaultHttpxClient(
|
|
276
|
-
|
|
339
|
+
proxy="http://my.test.proxy.example.com",
|
|
277
340
|
transport=httpx.HTTPTransport(local_address="0.0.0.0"),
|
|
278
341
|
),
|
|
279
342
|
)
|
|
@@ -289,12 +352,22 @@ client.with_options(http_client=DefaultHttpxClient(...))
|
|
|
289
352
|
|
|
290
353
|
By default the library closes underlying HTTP connections whenever the client is [garbage collected](https://docs.python.org/3/reference/datamodel.html#object.__del__). You can manually close the client using the `.close()` method if desired, or with a context manager that closes when exiting.
|
|
291
354
|
|
|
355
|
+
```py
|
|
356
|
+
from runloop_api_client import Runloop
|
|
357
|
+
|
|
358
|
+
with Runloop() as client:
|
|
359
|
+
# make requests here
|
|
360
|
+
...
|
|
361
|
+
|
|
362
|
+
# HTTP client is now closed
|
|
363
|
+
```
|
|
364
|
+
|
|
292
365
|
## Versioning
|
|
293
366
|
|
|
294
367
|
This package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions, though certain backwards-incompatible changes may be released as minor versions:
|
|
295
368
|
|
|
296
369
|
1. Changes that only affect static types, without breaking runtime behavior.
|
|
297
|
-
2. Changes to library internals which are technically public but not intended or documented for external use. _(Please open a GitHub issue to let us know if you are relying on such internals)_
|
|
370
|
+
2. Changes to library internals which are technically public but not intended or documented for external use. _(Please open a GitHub issue to let us know if you are relying on such internals.)_
|
|
298
371
|
3. Changes that we do not expect to impact the vast majority of users in practice.
|
|
299
372
|
|
|
300
373
|
We take backwards-compatibility seriously and work hard to ensure you can rely on a smooth upgrade experience.
|