Skip to content

Commit 541d5c7

Browse files
authored
Merge pull request #132 from steel-dev/release-please--branches--main--changes--next
release: 0.17.0
2 parents fd15843 + 1da6957 commit 541d5c7

25 files changed

+243
-83
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,18 @@ jobs:
6161
run: rye build
6262

6363
- name: Get GitHub OIDC Token
64-
if: github.repository == 'stainless-sdks/steel-python'
64+
if: |-
65+
github.repository == 'stainless-sdks/steel-python' &&
66+
!startsWith(github.ref, 'refs/heads/stl/')
6567
id: github-oidc
6668
uses: actions/github-script@v8
6769
with:
6870
script: core.setOutput('github_token', await core.getIDToken());
6971

7072
- name: Upload tarball
71-
if: github.repository == 'stainless-sdks/steel-python'
73+
if: |-
74+
github.repository == 'stainless-sdks/steel-python' &&
75+
!startsWith(github.ref, 'refs/heads/stl/')
7276
env:
7377
URL: https://pkg.stainless.com/s
7478
AUTH: ${{ steps.github-oidc.outputs.github_token }}

.release-please-manifest.json

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

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 39
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nen-labs%2Fsteel-45efcdf3e5ccffb6e94a86be505b24b7b4ff05d8f1a2978c2a281729af68cb82.yml
3-
openapi_spec_hash: 9a7724672b05d44888d67b6ed0ffc7ca
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nen-labs%2Fsteel-f51ce05f6128dcdd6b500492869910d3a43737c66d0bc13c3f2e67f42362605c.yml
3+
openapi_spec_hash: c573fb6f26d5fb14eaf92e0a107323ec
44
config_hash: dce4dea59023b0a00890fa654fbfffb4

CHANGELOG.md

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

3+
## 0.17.0 (2026-03-16)
4+
5+
Full Changelog: [v0.16.0...v0.17.0](https://github.com/steel-dev/steel-python/compare/v0.16.0...v0.17.0)
6+
7+
### Features
8+
9+
* **api:** api update ([b341bdb](https://github.com/steel-dev/steel-python/commit/b341bdb0c251b50c85d862b77bb23df08562186b))
10+
* **api:** api update ([bfcb31e](https://github.com/steel-dev/steel-python/commit/bfcb31ebdff79c4115bc2bb6c4f7e0c48a55f469))
11+
* **api:** api update ([20160d0](https://github.com/steel-dev/steel-python/commit/20160d01b7660dc2b3856a2069d3fe3bde7ad2c0))
12+
13+
14+
### Chores
15+
16+
* **ci:** skip uploading artifacts on stainless-internal branches ([54e6339](https://github.com/steel-dev/steel-python/commit/54e6339015586e3ffe196c459385cbc2dd6eb94a))
17+
* format all `api.md` files ([99ec714](https://github.com/steel-dev/steel-python/commit/99ec714917e3375108409099c28ce0a8efc2171e))
18+
* **internal:** add request options to SSE classes ([5e72d8e](https://github.com/steel-dev/steel-python/commit/5e72d8e76a7e017a7611d87d3b49a1d7e25cd21e))
19+
* **internal:** bump dependencies ([d04a927](https://github.com/steel-dev/steel-python/commit/d04a92742a449ee597cc68b2312e90a835f9e8b2))
20+
* **internal:** fix lint error on Python 3.14 ([5bfdbc9](https://github.com/steel-dev/steel-python/commit/5bfdbc994392efd19eb97b366113416dddb4eb69))
21+
* **internal:** make `test_proxy_environment_variables` more resilient ([2e233ea](https://github.com/steel-dev/steel-python/commit/2e233ea37507adb2f05b4419ef0e8fd1932f6ba4))
22+
* **internal:** make `test_proxy_environment_variables` more resilient to env ([8b312f4](https://github.com/steel-dev/steel-python/commit/8b312f41858a4abf129a5e5da1ed75d5cddffe16))
23+
* **test:** do not count install time for mock server timeout ([faf3551](https://github.com/steel-dev/steel-python/commit/faf3551f91a527bada3b902550742dca0668d91f))
24+
* update mock server docs ([98b44de](https://github.com/steel-dev/steel-python/commit/98b44de2a1a0eb2f17878fe3d01a2b45d5d0ded5))
25+
* update placeholder string ([3af093a](https://github.com/steel-dev/steel-python/commit/3af093a33381b2436287bdeb87ff0b3e0f997385))
26+
327
## 0.16.0 (2026-02-06)
428

529
Full Changelog: [v0.15.0...v0.16.0](https://github.com/steel-dev/steel-python/compare/v0.15.0...v0.16.0)

CONTRIBUTING.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,7 @@ $ pip install ./path-to-wheel-file.whl
8888
Most tests require you to [set up a mock server](https://github.com/stoplightio/prism) against the OpenAPI spec to run the tests.
8989

9090
```sh
91-
# you will need npm installed
92-
$ npx prism mock path/to/your/openapi.yml
91+
$ ./scripts/mock
9392
```
9493

9594
```sh

api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ Methods:
7171
- <code title="get /v1/sessions">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">list</a>(\*\*<a href="src/steel/types/session_list_params.py">params</a>) -> SyncSessionsCursor[Session]</code>
7272
- <code title="post /v1/sessions/{sessionId}/computer">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">computer</a>(session_id, \*\*<a href="src/steel/types/session_computer_params.py">params</a>) -> <a href="./src/steel/types/session_computer_response.py">SessionComputerResponse</a></code>
7373
- <code title="get /v1/sessions/{id}/context">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">context</a>(id) -> <a href="./src/steel/types/session_context.py">SessionContext</a></code>
74-
- <code title="get /v1/sessions/{id}/events">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">events</a>(id) -> <a href="./src/steel/types/session_events_response.py">SessionEventsResponse</a></code>
74+
- <code title="get /v1/sessions/{id}/events">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">events</a>(id, \*\*<a href="src/steel/types/session_events_params.py">params</a>) -> <a href="./src/steel/types/session_events_response.py">SessionEventsResponse</a></code>
7575
- <code title="get /v1/sessions/{id}/live-details">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">live_details</a>(id) -> <a href="./src/steel/types/session_live_details_response.py">SessionLiveDetailsResponse</a></code>
7676
- <code title="post /v1/sessions/{id}/release">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">release</a>(id) -> <a href="./src/steel/types/session_release_response.py">SessionReleaseResponse</a></code>
7777
- <code title="post /v1/sessions/release">client.sessions.<a href="./src/steel/resources/sessions/sessions.py">release_all</a>() -> <a href="./src/steel/types/session_release_all_response.py">SessionReleaseAllResponse</a></code>

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "steel-sdk"
3-
version = "0.16.0"
3+
version = "0.17.0"
44
description = "The official Python library for the steel API"
55
dynamic = ["readme"]
66
license = "Apache-2.0"
@@ -69,7 +69,7 @@ format = { chain = [
6969
# run formatting again to fix any inconsistencies when imports are stripped
7070
"format:ruff",
7171
]}
72-
"format:docs" = "python scripts/utils/ruffen-docs.py README.md api.md"
72+
"format:docs" = "bash -c 'python scripts/utils/ruffen-docs.py README.md $(find . -type f -name api.md)'"
7373
"format:ruff" = "ruff format"
7474

7575
"lint" = { chain = [

requirements-dev.lock

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212
-e file:.
1313
aiohappyeyeballs==2.6.1
1414
# via aiohttp
15-
aiohttp==3.13.2
15+
aiohttp==3.13.3
1616
# via httpx-aiohttp
1717
# via steel-sdk
1818
aiosignal==1.4.0
1919
# via aiohttp
2020
annotated-types==0.7.0
2121
# via pydantic
22-
anyio==4.12.0
22+
anyio==4.12.1
2323
# via httpx
2424
# via steel-sdk
2525
argcomplete==3.6.3
@@ -31,7 +31,7 @@ attrs==25.4.0
3131
# via nox
3232
backports-asyncio-runner==1.2.0
3333
# via pytest-asyncio
34-
certifi==2025.11.12
34+
certifi==2026.1.4
3535
# via httpcore
3636
# via httpx
3737
colorlog==6.10.1
@@ -61,15 +61,15 @@ httpx==0.28.1
6161
# via httpx-aiohttp
6262
# via respx
6363
# via steel-sdk
64-
httpx-aiohttp==0.1.9
64+
httpx-aiohttp==0.1.12
6565
# via steel-sdk
6666
humanize==4.13.0
6767
# via nox
6868
idna==3.11
6969
# via anyio
7070
# via httpx
7171
# via yarl
72-
importlib-metadata==8.7.0
72+
importlib-metadata==8.7.1
7373
iniconfig==2.1.0
7474
# via pytest
7575
markdown-it-py==3.0.0
@@ -82,14 +82,14 @@ multidict==6.7.0
8282
mypy==1.17.0
8383
mypy-extensions==1.1.0
8484
# via mypy
85-
nodeenv==1.9.1
85+
nodeenv==1.10.0
8686
# via pyright
8787
nox==2025.11.12
8888
packaging==25.0
8989
# via dependency-groups
9090
# via nox
9191
# via pytest
92-
pathspec==0.12.1
92+
pathspec==1.0.3
9393
# via mypy
9494
platformdirs==4.4.0
9595
# via virtualenv
@@ -115,13 +115,13 @@ python-dateutil==2.9.0.post0
115115
# via time-machine
116116
respx==0.22.0
117117
rich==14.2.0
118-
ruff==0.14.7
118+
ruff==0.14.13
119119
six==1.17.0
120120
# via python-dateutil
121121
sniffio==1.3.1
122122
# via steel-sdk
123123
time-machine==2.19.0
124-
tomli==2.3.0
124+
tomli==2.4.0
125125
# via dependency-groups
126126
# via mypy
127127
# via nox
@@ -141,7 +141,7 @@ typing-extensions==4.15.0
141141
# via virtualenv
142142
typing-inspection==0.4.2
143143
# via pydantic
144-
virtualenv==20.35.4
144+
virtualenv==20.36.1
145145
# via nox
146146
yarl==1.22.0
147147
# via aiohttp

requirements.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,21 @@
1212
-e file:.
1313
aiohappyeyeballs==2.6.1
1414
# via aiohttp
15-
aiohttp==3.13.2
15+
aiohttp==3.13.3
1616
# via httpx-aiohttp
1717
# via steel-sdk
1818
aiosignal==1.4.0
1919
# via aiohttp
2020
annotated-types==0.7.0
2121
# via pydantic
22-
anyio==4.12.0
22+
anyio==4.12.1
2323
# via httpx
2424
# via steel-sdk
2525
async-timeout==5.0.1
2626
# via aiohttp
2727
attrs==25.4.0
2828
# via aiohttp
29-
certifi==2025.11.12
29+
certifi==2026.1.4
3030
# via httpcore
3131
# via httpx
3232
distro==1.9.0
@@ -43,7 +43,7 @@ httpcore==1.0.9
4343
httpx==0.28.1
4444
# via httpx-aiohttp
4545
# via steel-sdk
46-
httpx-aiohttp==0.1.9
46+
httpx-aiohttp==0.1.12
4747
# via steel-sdk
4848
idna==3.11
4949
# via anyio

scripts/mock

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,22 @@ echo "==> Starting mock server with URL ${URL}"
2121

2222
# Run prism mock on the given spec
2323
if [ "$1" == "--daemon" ]; then
24+
# Pre-install the package so the download doesn't eat into the startup timeout
25+
npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism --version
26+
2427
npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock "$URL" &> .prism.log &
2528

26-
# Wait for server to come online
29+
# Wait for server to come online (max 30s)
2730
echo -n "Waiting for server"
31+
attempts=0
2832
while ! grep -q "✖ fatal\|Prism is listening" ".prism.log" ; do
33+
attempts=$((attempts + 1))
34+
if [ "$attempts" -ge 300 ]; then
35+
echo
36+
echo "Timed out waiting for Prism server to start"
37+
cat .prism.log
38+
exit 1
39+
fi
2940
echo -n "."
3041
sleep 0.1
3142
done

0 commit comments

Comments
 (0)