diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 51acdaa4e..8ea07c9a4 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.37.0" + ".": "0.38.0" } \ No newline at end of file diff --git a/.stats.yml b/.stats.yml index cb2817919..2c30b1fb9 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 86 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-141cac5a78c04271425090df61bb3f19446c1c065ae66a5b7a6329c53628aafa.yml -openapi_spec_hash: 2380917eddc78d715847c7ef6bfa3b4a +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-4cd38d2f4180cc9bd949f182a221d6221c44e7e0ec1ddc110dd7677ba822b51a.yml +openapi_spec_hash: e186fd7fd5f09ba496f0b7bb87365f3b config_hash: 5b50498887b4fdca175b8377a9cb675f diff --git a/CHANGELOG.md b/CHANGELOG.md index e80b2e50a..79a1540ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.38.0 (2025-06-04) + +Full Changelog: [v0.37.0...v0.38.0](https://github.com/runloopai/api-client-python/compare/v0.37.0...v0.38.0) + +### Features + +* **api:** api update ([ecb87bd](https://github.com/runloopai/api-client-python/commit/ecb87bdf471fffd90e742ff3021859eb3e94db8c)) + ## 0.37.0 (2025-06-04) Full Changelog: [v0.36.0...v0.37.0](https://github.com/runloopai/api-client-python/compare/v0.36.0...v0.37.0) diff --git a/pyproject.toml b/pyproject.toml index 5ea158891..4583fb652 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "runloop_api_client" -version = "0.37.0" +version = "0.38.0" description = "The official Python library for the runloop API" dynamic = ["readme"] license = "MIT" diff --git a/src/runloop_api_client/_version.py b/src/runloop_api_client/_version.py index 5eea31e80..700ae89d1 100644 --- a/src/runloop_api_client/_version.py +++ b/src/runloop_api_client/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "runloop_api_client" -__version__ = "0.37.0" # x-release-please-version +__version__ = "0.38.0" # x-release-please-version diff --git a/src/runloop_api_client/resources/benchmarks/runs.py b/src/runloop_api_client/resources/benchmarks/runs.py index 5735a5aa6..ce86a527c 100644 --- a/src/runloop_api_client/resources/benchmarks/runs.py +++ b/src/runloop_api_client/resources/benchmarks/runs.py @@ -2,6 +2,8 @@ from __future__ import annotations +from typing_extensions import Literal + import httpx from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven @@ -213,6 +215,8 @@ def list_scenario_runs( *, limit: int | NotGiven = NOT_GIVEN, starting_after: str | NotGiven = NOT_GIVEN, + state: Literal["running", "scoring", "scored", "completed", "canceled", "timeout", "failed"] + | NotGiven = NOT_GIVEN, # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. # The extra values given here take precedence over values defined on the client or passed to this method. extra_headers: Headers | None = None, @@ -228,6 +232,8 @@ def list_scenario_runs( starting_after: Load the next page of data starting after the item with the given ID. + state: Filter by Scenario Run state + extra_headers: Send extra headers extra_query: Add additional query parameters to the request @@ -250,6 +256,7 @@ def list_scenario_runs( { "limit": limit, "starting_after": starting_after, + "state": state, }, run_list_scenario_runs_params.RunListScenarioRunsParams, ), @@ -448,6 +455,8 @@ def list_scenario_runs( *, limit: int | NotGiven = NOT_GIVEN, starting_after: str | NotGiven = NOT_GIVEN, + state: Literal["running", "scoring", "scored", "completed", "canceled", "timeout", "failed"] + | NotGiven = NOT_GIVEN, # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. # The extra values given here take precedence over values defined on the client or passed to this method. extra_headers: Headers | None = None, @@ -463,6 +472,8 @@ def list_scenario_runs( starting_after: Load the next page of data starting after the item with the given ID. + state: Filter by Scenario Run state + extra_headers: Send extra headers extra_query: Add additional query parameters to the request @@ -485,6 +496,7 @@ def list_scenario_runs( { "limit": limit, "starting_after": starting_after, + "state": state, }, run_list_scenario_runs_params.RunListScenarioRunsParams, ), diff --git a/src/runloop_api_client/types/benchmarks/run_list_scenario_runs_params.py b/src/runloop_api_client/types/benchmarks/run_list_scenario_runs_params.py index b001bd54e..241df1a1f 100644 --- a/src/runloop_api_client/types/benchmarks/run_list_scenario_runs_params.py +++ b/src/runloop_api_client/types/benchmarks/run_list_scenario_runs_params.py @@ -2,7 +2,7 @@ from __future__ import annotations -from typing_extensions import TypedDict +from typing_extensions import Literal, TypedDict __all__ = ["RunListScenarioRunsParams"] @@ -13,3 +13,6 @@ class RunListScenarioRunsParams(TypedDict, total=False): starting_after: str """Load the next page of data starting after the item with the given ID.""" + + state: Literal["running", "scoring", "scored", "completed", "canceled", "timeout", "failed"] + """Filter by Scenario Run state""" diff --git a/tests/api_resources/benchmarks/test_runs.py b/tests/api_resources/benchmarks/test_runs.py index a9a54ed76..03db357df 100644 --- a/tests/api_resources/benchmarks/test_runs.py +++ b/tests/api_resources/benchmarks/test_runs.py @@ -179,6 +179,7 @@ def test_method_list_scenario_runs_with_all_params(self, client: Runloop) -> Non id="id", limit=0, starting_after="starting_after", + state="running", ) assert_matches_type(SyncBenchmarkRunsCursorIDPage[ScenarioRunView], run, path=["response"]) @@ -378,6 +379,7 @@ async def test_method_list_scenario_runs_with_all_params(self, async_client: Asy id="id", limit=0, starting_after="starting_after", + state="running", ) assert_matches_type(AsyncBenchmarkRunsCursorIDPage[ScenarioRunView], run, path=["response"])