Skip to content

Commit d85117a

Browse files
release: 1.23.3 (#812)
Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com> Co-authored-by: tode-rl <tony@runloop.ai>
1 parent c04f867 commit d85117a

16 files changed

Lines changed: 28 additions & 452 deletions

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "1.23.2"
2+
".": "1.23.3"
33
}

.stats.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 120
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai/runloop-8f05915b107d49f4a50f2d83abfa1d7233a685f1d85e02465a218fa5acb55ddd.yml
3-
openapi_spec_hash: 905fa27970b4b7201184df9c63eba3b9
4-
config_hash: ed1fdd7c9f0a25647e16b602bad4ff2e
1+
configured_endpoints: 119
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai/runloop-99b4be5cc4cd6f2e1cfd71d5a9ec5409dd9293fe6084833da76f178010bfdcab.yml
3+
openapi_spec_hash: 4760825b37e131da53c88bf893b60937
4+
config_hash: 9f32651e6269089b5d6c33594b992232

CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,26 @@
11
# Changelog
22

3+
## 1.23.3 (2026-07-10)
4+
5+
Full Changelog: [v1.23.2...v1.23.3](https://github.com/runloopai/api-client-python/compare/v1.23.2...v1.23.3)
6+
7+
### Bug Fixes
8+
9+
* **blueprints:** remove create_from_inspection endpoint ([fa8a630](https://github.com/runloopai/api-client-python/commit/fa8a630e348147eb6c3c0a0b2f8c7fc325ad6d1f))
10+
* **devbox:** remove stale repo_connection_id helper arg ([#813](https://github.com/runloopai/api-client-python/issues/813)) ([4b5a933](https://github.com/runloopai/api-client-python/commit/4b5a933b2ebefcf160015ee64ab8ec9d7fd9c5e5))
11+
* retry polling on HTTP/2 GOAWAY connection errors ([#817](https://github.com/runloopai/api-client-python/issues/817)) ([b0cc07c](https://github.com/runloopai/api-client-python/commit/b0cc07c35a3bd5796e9fe26df50d90981d54fec9))
12+
* update test script to work without lsof on CI ([#798](https://github.com/runloopai/api-client-python/issues/798)) ([50507eb](https://github.com/runloopai/api-client-python/commit/50507eba5537386e9af72ba3e2629cfac89c2391))
13+
14+
15+
### Chores
16+
17+
* **devbox:** cap forwarded long-poll timeout and add client read margin ([#818](https://github.com/runloopai/api-client-python/issues/818)) ([c04f867](https://github.com/runloopai/api-client-python/commit/c04f867543c8ef0f2328c3235f9a26965dda2432))
18+
19+
20+
### Documentation
21+
22+
* add agent PR guidance ([#814](https://github.com/runloopai/api-client-python/issues/814)) ([3c483bd](https://github.com/runloopai/api-client-python/commit/3c483bdfd46b48afe2b0f2e68d9f4326f980414a))
23+
324
## 1.23.2 (2026-06-09)
425

526
Full Changelog: [v1.23.1...v1.23.2](https://github.com/runloopai/api-client-python/compare/v1.23.1...v1.23.2)

api.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -174,14 +174,12 @@ Types:
174174

175175
```python
176176
from runloop_api_client.types import (
177-
BlueprintBuildFromInspectionParameters,
178177
BlueprintBuildLog,
179178
BlueprintBuildLogsListView,
180179
BlueprintBuildParameters,
181180
BlueprintListView,
182181
BlueprintPreviewView,
183182
BlueprintView,
184-
InspectionSource,
185183
)
186184
```
187185

@@ -192,7 +190,6 @@ Methods:
192190
- <code title="get /v1/blueprints/{id}">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/blueprint_view.py">BlueprintView</a></code>
193191
- <code title="get /v1/blueprints">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">list</a>(\*\*<a href="src/runloop_api_client/types/blueprint_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/blueprint_view.py">SyncBlueprintsCursorIDPage[BlueprintView]</a></code>
194192
- <code title="post /v1/blueprints/{id}/delete">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">delete</a>(id) -> object</code>
195-
- <code title="post /v1/blueprints/create_from_inspection">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">create_from_inspection</a>(\*\*<a href="src/runloop_api_client/types/blueprint_create_from_inspection_params.py">params</a>) -> <a href="./src/runloop_api_client/types/blueprint_view.py">BlueprintView</a></code>
196193
- <code title="get /v1/blueprints/list_public">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">list_public</a>(\*\*<a href="src/runloop_api_client/types/blueprint_list_public_params.py">params</a>) -> <a href="./src/runloop_api_client/types/blueprint_view.py">SyncBlueprintsCursorIDPage[BlueprintView]</a></code>
197194
- <code title="get /v1/blueprints/{id}/logs">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">logs</a>(id) -> <a href="./src/runloop_api_client/types/blueprint_build_logs_list_view.py">BlueprintBuildLogsListView</a></code>
198195
- <code title="post /v1/blueprints/preview">client.blueprints.<a href="./src/runloop_api_client/resources/blueprints.py">preview</a>(\*\*<a href="src/runloop_api_client/types/blueprint_preview_params.py">params</a>) -> <a href="./src/runloop_api_client/types/blueprint_preview_view.py">BlueprintPreviewView</a></code>

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "runloop_api_client"
3-
version = "1.23.2"
3+
version = "1.23.3"
44
description = "The official Python library for the runloop API"
55
dynamic = ["readme"]
66
license = "MIT"

src/runloop_api_client/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

33
__title__ = "runloop_api_client"
4-
__version__ = "1.23.2" # x-release-please-version
4+
__version__ = "1.23.3" # x-release-please-version

src/runloop_api_client/resources/blueprints.py

Lines changed: 0 additions & 178 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
blueprint_create_params,
1313
blueprint_preview_params,
1414
blueprint_list_public_params,
15-
blueprint_create_from_inspection_params,
1615
)
1716
from .._types import NOT_GIVEN, Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
1817
from .._utils import is_given, path_template, maybe_transform, async_maybe_transform
@@ -33,7 +32,6 @@
3332
from .._utils._validation import ValidationNotification
3433
from ..types.blueprint_view import BlueprintView
3534
from ..types.blueprint_preview_view import BlueprintPreviewView
36-
from ..types.inspection_source_param import InspectionSourceParam
3735
from ..types.blueprint_build_logs_list_view import BlueprintBuildLogsListView
3836
from ..types.shared_params.launch_parameters import LaunchParameters
3937
from ..types.shared_params.code_mount_parameters import CodeMountParameters
@@ -499,88 +497,6 @@ def delete(
499497
cast_to=object,
500498
)
501499

502-
def create_from_inspection(
503-
self,
504-
*,
505-
inspection_source: InspectionSourceParam,
506-
name: str,
507-
file_mounts: Optional[Dict[str, str]] | Omit = omit,
508-
launch_parameters: Optional[LaunchParameters] | Omit = omit,
509-
metadata: Optional[Dict[str, str]] | Omit = omit,
510-
network_policy_id: Optional[str] | Omit = omit,
511-
secrets: Optional[Dict[str, str]] | Omit = omit,
512-
system_setup_commands: Optional[SequenceNotStr[str]] | Omit = omit,
513-
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
514-
# The extra values given here take precedence over values defined on the client or passed to this method.
515-
extra_headers: Headers | None = None,
516-
extra_query: Query | None = None,
517-
extra_body: Body | None = None,
518-
timeout: float | httpx.Timeout | None | NotGiven = not_given,
519-
idempotency_key: str | None = None,
520-
) -> BlueprintView:
521-
"""
522-
Starts build of custom defined container Blueprint using a RepositoryConnection
523-
Inspection as a source container specification.
524-
525-
Args:
526-
inspection_source: (Optional) Use a RepositoryInspection a source of a Blueprint build. The
527-
Dockerfile will be automatically created based on the RepositoryInspection
528-
contents.
529-
530-
name: Name of the Blueprint.
531-
532-
file_mounts: (Optional) Map of paths and file contents to write before setup.
533-
534-
launch_parameters: LaunchParameters enable you to customize the resources available to your Devbox
535-
as well as the environment set up that should be completed before the Devbox is
536-
marked as 'running'.
537-
538-
metadata: (Optional) User defined metadata for the Blueprint.
539-
540-
network_policy_id: (Optional) ID of the network policy to apply during blueprint build. This
541-
restricts network access during the build process.
542-
543-
secrets: (Optional) Map of mount IDs/environment variable names to secret names. Secrets
544-
can be used as environment variables in system_setup_commands. Example:
545-
{"GITHUB_TOKEN": "gh_secret"} makes 'gh_secret' available as GITHUB_TOKEN.
546-
547-
system_setup_commands: A list of commands to run to set up your system.
548-
549-
extra_headers: Send extra headers
550-
551-
extra_query: Add additional query parameters to the request
552-
553-
extra_body: Add additional JSON properties to the request
554-
555-
timeout: Override the client-level default timeout for this request, in seconds
556-
557-
idempotency_key: Specify a custom idempotency key for this request
558-
"""
559-
return self._post(
560-
"/v1/blueprints/create_from_inspection",
561-
body=maybe_transform(
562-
{
563-
"inspection_source": inspection_source,
564-
"name": name,
565-
"file_mounts": file_mounts,
566-
"launch_parameters": launch_parameters,
567-
"metadata": metadata,
568-
"network_policy_id": network_policy_id,
569-
"secrets": secrets,
570-
"system_setup_commands": system_setup_commands,
571-
},
572-
blueprint_create_from_inspection_params.BlueprintCreateFromInspectionParams,
573-
),
574-
options=make_request_options(
575-
extra_headers=extra_headers,
576-
extra_query=extra_query,
577-
extra_body=extra_body,
578-
timeout=timeout,
579-
idempotency_key=idempotency_key,
580-
),
581-
cast_to=BlueprintView,
582-
)
583-
584500
def list_public(
585501
self,
586502
*,
@@ -1186,88 +1102,6 @@ async def delete(
11861102
cast_to=object,
11871103
)
11881104

1189-
async def create_from_inspection(
1190-
self,
1191-
*,
1192-
inspection_source: InspectionSourceParam,
1193-
name: str,
1194-
file_mounts: Optional[Dict[str, str]] | Omit = omit,
1195-
launch_parameters: Optional[LaunchParameters] | Omit = omit,
1196-
metadata: Optional[Dict[str, str]] | Omit = omit,
1197-
network_policy_id: Optional[str] | Omit = omit,
1198-
secrets: Optional[Dict[str, str]] | Omit = omit,
1199-
system_setup_commands: Optional[SequenceNotStr[str]] | Omit = omit,
1200-
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1201-
# The extra values given here take precedence over values defined on the client or passed to this method.
1202-
extra_headers: Headers | None = None,
1203-
extra_query: Query | None = None,
1204-
extra_body: Body | None = None,
1205-
timeout: float | httpx.Timeout | None | NotGiven = not_given,
1206-
idempotency_key: str | None = None,
1207-
) -> BlueprintView:
1208-
"""
1209-
Starts build of custom defined container Blueprint using a RepositoryConnection
1210-
Inspection as a source container specification.
1211-
1212-
Args:
1213-
inspection_source: (Optional) Use a RepositoryInspection a source of a Blueprint build. The
1214-
Dockerfile will be automatically created based on the RepositoryInspection
1215-
contents.
1216-
1217-
name: Name of the Blueprint.
1218-
1219-
file_mounts: (Optional) Map of paths and file contents to write before setup.
1220-
1221-
launch_parameters: LaunchParameters enable you to customize the resources available to your Devbox
1222-
as well as the environment set up that should be completed before the Devbox is
1223-
marked as 'running'.
1224-
1225-
metadata: (Optional) User defined metadata for the Blueprint.
1226-
1227-
network_policy_id: (Optional) ID of the network policy to apply during blueprint build. This
1228-
restricts network access during the build process.
1229-
1230-
secrets: (Optional) Map of mount IDs/environment variable names to secret names. Secrets
1231-
can be used as environment variables in system_setup_commands. Example:
1232-
{"GITHUB_TOKEN": "gh_secret"} makes 'gh_secret' available as GITHUB_TOKEN.
1233-
1234-
system_setup_commands: A list of commands to run to set up your system.
1235-
1236-
extra_headers: Send extra headers
1237-
1238-
extra_query: Add additional query parameters to the request
1239-
1240-
extra_body: Add additional JSON properties to the request
1241-
1242-
timeout: Override the client-level default timeout for this request, in seconds
1243-
1244-
idempotency_key: Specify a custom idempotency key for this request
1245-
"""
1246-
return await self._post(
1247-
"/v1/blueprints/create_from_inspection",
1248-
body=await async_maybe_transform(
1249-
{
1250-
"inspection_source": inspection_source,
1251-
"name": name,
1252-
"file_mounts": file_mounts,
1253-
"launch_parameters": launch_parameters,
1254-
"metadata": metadata,
1255-
"network_policy_id": network_policy_id,
1256-
"secrets": secrets,
1257-
"system_setup_commands": system_setup_commands,
1258-
},
1259-
blueprint_create_from_inspection_params.BlueprintCreateFromInspectionParams,
1260-
),
1261-
options=make_request_options(
1262-
extra_headers=extra_headers,
1263-
extra_query=extra_query,
1264-
extra_body=extra_body,
1265-
timeout=timeout,
1266-
idempotency_key=idempotency_key,
1267-
),
1268-
cast_to=BlueprintView,
1269-
)
1270-
12711105
def list_public(
12721106
self,
12731107
*,
@@ -1494,9 +1328,6 @@ def __init__(self, blueprints: BlueprintsResource) -> None:
14941328
self.delete = to_raw_response_wrapper(
14951329
blueprints.delete,
14961330
)
1497-
self.create_from_inspection = to_raw_response_wrapper(
1498-
blueprints.create_from_inspection,
1499-
)
15001331
self.list_public = to_raw_response_wrapper(
15011332
blueprints.list_public,
15021333
)
@@ -1526,9 +1357,6 @@ def __init__(self, blueprints: AsyncBlueprintsResource) -> None:
15261357
self.delete = async_to_raw_response_wrapper(
15271358
blueprints.delete,
15281359
)
1529-
self.create_from_inspection = async_to_raw_response_wrapper(
1530-
blueprints.create_from_inspection,
1531-
)
15321360
self.list_public = async_to_raw_response_wrapper(
15331361
blueprints.list_public,
15341362
)
@@ -1558,9 +1386,6 @@ def __init__(self, blueprints: BlueprintsResource) -> None:
15581386
self.delete = to_streamed_response_wrapper(
15591387
blueprints.delete,
15601388
)
1561-
self.create_from_inspection = to_streamed_response_wrapper(
1562-
blueprints.create_from_inspection,
1563-
)
15641389
self.list_public = to_streamed_response_wrapper(
15651390
blueprints.list_public,
15661391
)
@@ -1590,9 +1415,6 @@ def __init__(self, blueprints: AsyncBlueprintsResource) -> None:
15901415
self.delete = async_to_streamed_response_wrapper(
15911416
blueprints.delete,
15921417
)
1593-
self.create_from_inspection = async_to_streamed_response_wrapper(
1594-
blueprints.create_from_inspection,
1595-
)
15961418
self.list_public = async_to_streamed_response_wrapper(
15971419
blueprints.list_public,
15981420
)

src/runloop_api_client/resources/devboxes/devboxes.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,6 @@ def create(
175175
metadata: Optional[Dict[str, str]] | Omit = omit,
176176
mounts: Optional[Iterable[Mount]] | Omit = omit,
177177
name: Optional[str] | Omit = omit,
178-
repo_connection_id: Optional[str] | Omit = omit,
179178
secrets: Optional[Dict[str, str]] | Omit = omit,
180179
snapshot_id: Optional[str] | Omit = omit,
181180
tunnel: Optional[devbox_create_params.Tunnel] | Omit = omit,
@@ -236,8 +235,6 @@ def create(
236235
237236
name: (Optional) A user specified name to give the Devbox.
238237
239-
repo_connection_id: Repository connection id the devbox should source its base image from.
240-
241238
secrets: (Optional) Map of environment variable names to secret names. The secret values
242239
will be securely injected as environment variables in the Devbox. Example:
243240
{"DB_PASS": "DATABASE_PASSWORD"} sets environment variable 'DB_PASS' to the
@@ -275,7 +272,6 @@ def create(
275272
"metadata": metadata,
276273
"mounts": mounts,
277274
"name": name,
278-
"repo_connection_id": repo_connection_id,
279275
"secrets": secrets,
280276
"snapshot_id": snapshot_id,
281277
"tunnel": tunnel,
@@ -472,7 +468,6 @@ def create_and_await_running(
472468
mounts: Optional[Iterable[Mount]] | Omit = omit,
473469
name: Optional[str] | Omit = omit,
474470
polling_config: PollingConfig | None = None,
475-
repo_connection_id: Optional[str] | Omit = omit,
476471
secrets: Optional[Dict[str, str]] | Omit = omit,
477472
snapshot_id: Optional[str] | Omit = omit,
478473
tunnel: Optional[devbox_create_params.Tunnel] | Omit = omit,
@@ -513,7 +508,6 @@ def create_and_await_running(
513508
metadata=metadata,
514509
mounts=mounts,
515510
name=name,
516-
repo_connection_id=repo_connection_id,
517511
secrets=secrets,
518512
snapshot_id=snapshot_id,
519513
tunnel=tunnel,
@@ -1853,7 +1847,6 @@ async def create(
18531847
metadata: Optional[Dict[str, str]] | Omit = omit,
18541848
mounts: Optional[Iterable[Mount]] | Omit = omit,
18551849
name: Optional[str] | Omit = omit,
1856-
repo_connection_id: Optional[str] | Omit = omit,
18571850
secrets: Optional[Dict[str, str]] | Omit = omit,
18581851
snapshot_id: Optional[str] | Omit = omit,
18591852
tunnel: Optional[devbox_create_params.Tunnel] | Omit = omit,
@@ -1914,8 +1907,6 @@ async def create(
19141907
19151908
name: (Optional) A user specified name to give the Devbox.
19161909
1917-
repo_connection_id: Repository connection id the devbox should source its base image from.
1918-
19191910
secrets: (Optional) Map of environment variable names to secret names. The secret values
19201911
will be securely injected as environment variables in the Devbox. Example:
19211912
{"DB_PASS": "DATABASE_PASSWORD"} sets environment variable 'DB_PASS' to the
@@ -1953,7 +1944,6 @@ async def create(
19531944
"metadata": metadata,
19541945
"mounts": mounts,
19551946
"name": name,
1956-
"repo_connection_id": repo_connection_id,
19571947
"secrets": secrets,
19581948
"snapshot_id": snapshot_id,
19591949
"tunnel": tunnel,
@@ -2019,7 +2009,6 @@ async def create_and_await_running(
20192009
mounts: Optional[Iterable[Mount]] | Omit = omit,
20202010
name: Optional[str] | Omit = omit,
20212011
polling_config: PollingConfig | None = None,
2022-
repo_connection_id: Optional[str] | Omit = omit,
20232012
secrets: Optional[Dict[str, str]] | Omit = omit,
20242013
snapshot_id: Optional[str] | Omit = omit,
20252014
tunnel: Optional[devbox_create_params.Tunnel] | Omit = omit,
@@ -2061,7 +2050,6 @@ async def create_and_await_running(
20612050
metadata=metadata,
20622051
mounts=mounts,
20632052
name=name,
2064-
repo_connection_id=repo_connection_id,
20652053
secrets=secrets,
20662054
snapshot_id=snapshot_id,
20672055
tunnel=tunnel,

0 commit comments

Comments
 (0)