Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file modified .devcontainer/Dockerfile
100644 → 100755
Empty file.
Empty file modified .devcontainer/devcontainer.json
100644 → 100755
Empty file.
Empty file modified .github/workflows/ci.yml
100644 → 100755
Empty file.
Empty file modified .github/workflows/publish-pypi.yml
100644 → 100755
Empty file.
Empty file modified .github/workflows/release-doctor.yml
100644 → 100755
Empty file.
Empty file modified .gitignore
100644 → 100755
Empty file.
Empty file modified .python-version
100644 → 100755
Empty file.
2 changes: 1 addition & 1 deletion .release-please-manifest.json
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.1.0-alpha.14"
".": "0.1.0-alpha.15"
}
4 changes: 2 additions & 2 deletions .stats.yml
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
configured_endpoints: 23
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-ccdd2f1f86705a3cc4e40bc294ca94e0e761f22bc8487955fc2a663c046688b5.yml
configured_endpoints: 24
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-2085d09cb7954db9bd300c0d93f1f08e25b69906011c0d65e899951880372ef1.yml
Empty file modified Brewfile
100644 → 100755
Empty file.
23 changes: 23 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,28 @@
# Changelog

## 0.1.0-alpha.15 (2024-08-23)

Full Changelog: [v0.1.0-alpha.14...v0.1.0-alpha.15](https://github.com/runloopai/api-client-python/compare/v0.1.0-alpha.14...v0.1.0-alpha.15)

### Features

* **api:** manual updates ([#117](https://github.com/runloopai/api-client-python/issues/117)) ([5222c74](https://github.com/runloopai/api-client-python/commit/5222c7462dae22befa4cbfe000635660c0b72070))
* **api:** manual updates ([#118](https://github.com/runloopai/api-client-python/issues/118)) ([2801d62](https://github.com/runloopai/api-client-python/commit/2801d62df46e79a9054a4c32453b46436362aa2c))
* **api:** OpenAPI spec update via Stainless API ([#106](https://github.com/runloopai/api-client-python/issues/106)) ([977e845](https://github.com/runloopai/api-client-python/commit/977e845bb31245f85aa00e1c0bdd091ed81967df))
* **api:** OpenAPI spec update via Stainless API ([#110](https://github.com/runloopai/api-client-python/issues/110)) ([dc0bc88](https://github.com/runloopai/api-client-python/commit/dc0bc888d147dce2619d0e0f38897bd1df4372e6))
* **api:** OpenAPI spec update via Stainless API ([#111](https://github.com/runloopai/api-client-python/issues/111)) ([82a1581](https://github.com/runloopai/api-client-python/commit/82a158114880b0d416ae4e9660926151daf1a60f))
* **api:** OpenAPI spec update via Stainless API ([#112](https://github.com/runloopai/api-client-python/issues/112)) ([cfddae4](https://github.com/runloopai/api-client-python/commit/cfddae44be11039af98c8d6f570990351c552d9d))
* **api:** OpenAPI spec update via Stainless API ([#113](https://github.com/runloopai/api-client-python/issues/113)) ([23d90e8](https://github.com/runloopai/api-client-python/commit/23d90e8d22775abcaf90e44fa7b9dc112d6d36ad))
* **api:** OpenAPI spec update via Stainless API ([#114](https://github.com/runloopai/api-client-python/issues/114)) ([f754530](https://github.com/runloopai/api-client-python/commit/f7545300ecc975f555178729c987fa506d8c0dde))
* **api:** OpenAPI spec update via Stainless API ([#115](https://github.com/runloopai/api-client-python/issues/115)) ([b5200de](https://github.com/runloopai/api-client-python/commit/b5200dedec44c8785daf06cb1acfa3b6909d8361))
* **api:** OpenAPI spec update via Stainless API ([#120](https://github.com/runloopai/api-client-python/issues/120)) ([e432b64](https://github.com/runloopai/api-client-python/commit/e432b64ee28bf061878cba1bf76285d847cd3ce7))


### Chores

* **ci:** also run pydantic v1 tests ([#109](https://github.com/runloopai/api-client-python/issues/109)) ([23009f0](https://github.com/runloopai/api-client-python/commit/23009f032c59a5ab216c7602cabfe63253dd33b5))
* **client:** fix parsing union responses when non-json is returned ([#108](https://github.com/runloopai/api-client-python/issues/108)) ([9133e9b](https://github.com/runloopai/api-client-python/commit/9133e9b87be8d363742b08f2f829699657982a6e))

## 0.1.0-alpha.14 (2024-08-16)

Full Changelog: [v0.1.0-alpha.13...v0.1.0-alpha.14](https://github.com/runloopai/api-client-python/compare/v0.1.0-alpha.13...v0.1.0-alpha.14)
Expand Down
Empty file modified CONTRIBUTING.md
100644 → 100755
Empty file.
Empty file modified LICENSE
100644 → 100755
Empty file.
2 changes: 1 addition & 1 deletion README.md
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ Error codes are as followed:

### Retries

Certain errors are automatically retried 0 times by default, with a short exponential backoff.
Certain errors are automatically retried 2 times by default, with a short exponential backoff.
Connection errors (for example, due to a network connectivity problem), 408 Request Timeout, 409 Conflict,
429 Rate Limit, and >=500 Internal errors are all retried by default.

Expand Down
Empty file modified SECURITY.md
100644 → 100755
Empty file.
26 changes: 23 additions & 3 deletions api.md
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -49,9 +49,11 @@ Types:

```python
from runloop_api_client.types import (
DevboxAsyncExecutionDetailView,
DevboxExecutionDetailView,
DevboxListView,
DevboxView,
DevboxCreateSSHKeyResponse,
DevboxReadFileContentsResponse,
DevboxUploadFileResponse,
)
Expand All @@ -62,12 +64,13 @@ Methods:
- <code title="post /v1/devboxes">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">create</a>(\*\*<a href="src/runloop_api_client/types/devbox_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_view.py">DevboxView</a></code>
- <code title="get /v1/devboxes/{id}">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/devbox_view.py">DevboxView</a></code>
- <code title="get /v1/devboxes">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">list</a>(\*\*<a href="src/runloop_api_client/types/devbox_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_list_view.py">DevboxListView</a></code>
- <code title="post /v1/devboxes/{id}/execute_sync">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">execute_sync</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_execute_sync_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
- <code title="post /v1/devboxes/{id}/read_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">read_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_read_file_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
- <code title="post /v1/devboxes/{id}/create_ssh_key">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">create_ssh_key</a>(id) -> <a href="./src/runloop_api_client/types/devbox_create_ssh_key_response.py">DevboxCreateSSHKeyResponse</a></code>
- <code title="post /v1/devboxes/{id}/executions/execute_async">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">execute_async</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_execute_async_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devboxes/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
- <code title="post /v1/devboxes/{id}/execute_sync">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">execute_sync</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_execute_sync_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devboxes/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
- <code title="post /v1/devboxes/{id}/read_file_contents">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">read_file_contents</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_read_file_contents_params.py">params</a>) -> str</code>
- <code title="post /v1/devboxes/{id}/shutdown">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">shutdown</a>(id) -> <a href="./src/runloop_api_client/types/devbox_view.py">DevboxView</a></code>
- <code title="post /v1/devboxes/{id}/upload_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">upload_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_upload_file_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_upload_file_response.py">object</a></code>
- <code title="post /v1/devboxes/{id}/write_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">write_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_write_file_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>
- <code title="post /v1/devboxes/{id}/write_file">client.devboxes.<a href="./src/runloop_api_client/resources/devboxes/devboxes.py">write_file</a>(id, \*\*<a href="src/runloop_api_client/types/devbox_write_file_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devboxes/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>

## Logs

Expand All @@ -81,6 +84,23 @@ Methods:

- <code title="get /v1/devboxes/{id}/logs">client.devboxes.logs.<a href="./src/runloop_api_client/resources/devboxes/logs.py">list</a>(id) -> <a href="./src/runloop_api_client/types/devboxes/devbox_logs_list_view.py">DevboxLogsListView</a></code>

## Executions

Types:

```python
from runloop_api_client.types.devboxes import (
DevboxAsyncExecutionDetailView,
DevboxExecutionDetailView,
DevboxLogsListView,
)
```

Methods:

- <code title="post /v1/devboxes/{id}/executions/execute_async">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">execute_async</a>(id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_execute_async_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devboxes/devbox_async_execution_detail_view.py">DevboxAsyncExecutionDetailView</a></code>
- <code title="post /v1/devboxes/{id}/execute_sync">client.devboxes.executions.<a href="./src/runloop_api_client/resources/devboxes/executions.py">execute_sync</a>(id, \*\*<a href="src/runloop_api_client/types/devboxes/execution_execute_sync_params.py">params</a>) -> <a href="./src/runloop_api_client/types/devboxes/devbox_execution_detail_view.py">DevboxExecutionDetailView</a></code>

# Functions

Types:
Expand Down
Empty file modified bin/check-release-environment
100644 → 100755
Empty file.
Empty file modified examples/.keep
100644 → 100755
Empty file.
Empty file modified mypy.ini
100644 → 100755
Empty file.
Empty file modified noxfile.py
100644 → 100755
Empty file.
2 changes: 1 addition & 1 deletion pyproject.toml
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "runloop_api_client"
version = "0.1.0-alpha.14"
version = "0.1.0-alpha.15"
description = "The official Python library for the runloop API"
dynamic = ["readme"]
license = "MIT"
Expand Down
Empty file modified release-please-config.json
100644 → 100755
Empty file.
Empty file modified requirements-dev.lock
100644 → 100755
Empty file.
Empty file modified requirements.lock
100644 → 100755
Empty file.
3 changes: 3 additions & 0 deletions scripts/test
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,6 @@ fi

echo "==> Running tests"
rye run pytest "$@"

echo "==> Running Pydantic v1 tests"
rye run nox -s test-pydantic-v1 -- "$@"
Empty file modified scripts/utils/ruffen-docs.py
100644 → 100755
Empty file.
Empty file modified src/runloop/lib/.keep
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/__init__.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_base_client.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_client.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_compat.py
100644 → 100755
Empty file.
6 changes: 3 additions & 3 deletions src/runloop_api_client/_constants.py
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

# default timeout is 1 minute
DEFAULT_TIMEOUT = httpx.Timeout(timeout=60.0, connect=5.0)
DEFAULT_MAX_RETRIES = 0
DEFAULT_MAX_RETRIES = 2
DEFAULT_CONNECTION_LIMITS = httpx.Limits(max_connections=100, max_keepalive_connections=20)

INITIAL_RETRY_DELAY = 1.0
MAX_RETRY_DELAY = 5.0
INITIAL_RETRY_DELAY = 0.5
MAX_RETRY_DELAY = 8.0
Empty file modified src/runloop_api_client/_exceptions.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_files.py
100644 → 100755
Empty file.
2 changes: 2 additions & 0 deletions src/runloop_api_client/_models.py
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -380,6 +380,8 @@ def is_basemodel(type_: type) -> bool:

def is_basemodel_type(type_: type) -> TypeGuard[type[BaseModel] | type[GenericModel]]:
origin = get_origin(type_) or type_
if not inspect.isclass(origin):
return False
return issubclass(origin, BaseModel) or issubclass(origin, GenericModel)


Expand Down
Empty file modified src/runloop_api_client/_qs.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_resource.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_response.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_streaming.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_types.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/__init__.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_logs.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_proxy.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_reflection.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_streams.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_sync.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_transform.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_typing.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/_utils/_utils.py
100644 → 100755
Empty file.
2 changes: 1 addition & 1 deletion src/runloop_api_client/_version.py
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

__title__ = "runloop_api_client"
__version__ = "0.1.0-alpha.14" # x-release-please-version
__version__ = "0.1.0-alpha.15" # x-release-please-version
Empty file modified src/runloop_api_client/lib/.keep
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/py.typed
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/resources/__init__.py
100644 → 100755
Empty file.
Empty file modified src/runloop_api_client/resources/blueprints.py
100644 → 100755
Empty file.
Loading