Skip to content

Commit 7c0d770

Browse files
authored
Merge pull request #118 from steel-dev/release-please--branches--main--changes--next
release: 0.8.0
2 parents 9ce7e90 + a4395fc commit 7c0d770

36 files changed

Lines changed: 1233 additions & 44 deletions

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
.prism.log
2-
.vscode
32
_dev
43

54
__pycache__

.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.7.0"
2+
".": "0.8.0"
33
}

.stats.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 27
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nen-labs%2Fsteel-c74e7376ab152155b24a3f8f21fa43709cbc94b6e8b33a6ed48a23a62f976d1a.yml
3-
openapi_spec_hash: f430c7e1c4f367245df8145df75fb443
4-
config_hash: e88d2c04584e96ef1e76c72156c3c186
1+
configured_endpoints: 33
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nen-labs%2Fsteel-44f289567c281ce445273c28f44fe7ccd44979172c4933bfbfe63bb5f119640c.yml
3+
openapi_spec_hash: 449cf480b2d477ef67ff32992734fb8c
4+
config_hash: 3dda15a7a3da8ba8e97a8ec239cbcb80

.vscode/settings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"python.analysis.importFormat": "relative",
3+
}

CHANGELOG.md

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

3+
## 0.8.0 (2025-08-21)
4+
5+
Full Changelog: [v0.7.0...v0.8.0](https://github.com/steel-dev/steel-python/compare/v0.7.0...v0.8.0)
6+
7+
### Features
8+
9+
* **api:** api update ([49f5992](https://github.com/steel-dev/steel-python/commit/49f59927bd2ba1e9a6e6a1cbef93dd84cbc6eef7))
10+
* **api:** api update ([2055ec7](https://github.com/steel-dev/steel-python/commit/2055ec74b1351d0cd32c2f0b090aea60472bb083))
11+
* **api:** api update ([17e78ce](https://github.com/steel-dev/steel-python/commit/17e78ced5dcc03291fc901db0a709f9163f088e4))
12+
* **api:** api update ([ac8847c](https://github.com/steel-dev/steel-python/commit/ac8847c5159a11f64e07b3dbe6e9734195324dbb))
13+
* **client:** support file upload requests ([f39ab33](https://github.com/steel-dev/steel-python/commit/f39ab33ad139f97dbded281ae95816c46b8067f1))
14+
15+
16+
### Bug Fixes
17+
18+
* **parsing:** ignore empty metadata ([49e1aa7](https://github.com/steel-dev/steel-python/commit/49e1aa7d8c13615fea92180a934a7611f90f2453))
19+
* **parsing:** parse extra field types ([2e73fc7](https://github.com/steel-dev/steel-python/commit/2e73fc78a36fa3045cfd38d7cc3abdc7d9547c8b))
20+
21+
22+
### Chores
23+
24+
* **internal:** fix ruff target version ([b686aa3](https://github.com/steel-dev/steel-python/commit/b686aa3294ca45632e573a9bc567341544f3c4e8))
25+
* **internal:** update comment in script ([fdaf7d9](https://github.com/steel-dev/steel-python/commit/fdaf7d9f40f5b3aaceb39e2017b2ac4677644498))
26+
* **project:** add settings file for vscode ([077b238](https://github.com/steel-dev/steel-python/commit/077b2387b888f5ba82e209ea307e6dd633c39e3c))
27+
* update @stainless-api/prism-cli to v5.15.0 ([b6cb1cd](https://github.com/steel-dev/steel-python/commit/b6cb1cdf5282c29c021a2b7a3b139e613686e8e8))
28+
329
## 0.7.0 (2025-07-12)
430

531
Full Changelog: [v0.6.0...v0.7.0](https://github.com/steel-dev/steel-python/compare/v0.6.0...v0.7.0)

api.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,3 +97,27 @@ Methods:
9797

9898
- <code title="post /v1/sessions/{sessionId}/captchas/solve-image">client.sessions.captchas.<a href="./src/steel/resources/sessions/captchas.py">solve_image</a>(session_id, \*\*<a href="src/steel/types/sessions/captcha_solve_image_params.py">params</a>) -> <a href="./src/steel/types/sessions/captcha_solve_image_response.py">CaptchaSolveImageResponse</a></code>
9999
- <code title="get /v1/sessions/{sessionId}/captchas/status">client.sessions.captchas.<a href="./src/steel/resources/sessions/captchas.py">status</a>(session_id) -> <a href="./src/steel/types/sessions/captcha_status_response.py">CaptchaStatusResponse</a></code>
100+
101+
# Extensions
102+
103+
Types:
104+
105+
```python
106+
from steel.types import (
107+
ExtensionUpdateResponse,
108+
ExtensionListResponse,
109+
ExtensionDeleteResponse,
110+
ExtensionDeleteAllResponse,
111+
ExtensionDownloadResponse,
112+
ExtensionUploadResponse,
113+
)
114+
```
115+
116+
Methods:
117+
118+
- <code title="put /v1/extensions/{extensionId}">client.extensions.<a href="./src/steel/resources/extensions.py">update</a>(extension_id) -> <a href="./src/steel/types/extension_update_response.py">ExtensionUpdateResponse</a></code>
119+
- <code title="get /v1/extensions">client.extensions.<a href="./src/steel/resources/extensions.py">list</a>() -> <a href="./src/steel/types/extension_list_response.py">ExtensionListResponse</a></code>
120+
- <code title="delete /v1/extensions/{extensionId}">client.extensions.<a href="./src/steel/resources/extensions.py">delete</a>(extension_id) -> <a href="./src/steel/types/extension_delete_response.py">ExtensionDeleteResponse</a></code>
121+
- <code title="delete /v1/extensions">client.extensions.<a href="./src/steel/resources/extensions.py">delete_all</a>() -> <a href="./src/steel/types/extension_delete_all_response.py">ExtensionDeleteAllResponse</a></code>
122+
- <code title="get /v1/extensions/{extensionId}">client.extensions.<a href="./src/steel/resources/extensions.py">download</a>(extension_id) -> str</code>
123+
- <code title="post /v1/extensions">client.extensions.<a href="./src/steel/resources/extensions.py">upload</a>() -> <a href="./src/steel/types/extension_upload_response.py">ExtensionUploadResponse</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.7.0"
3+
version = "0.8.0"
44
description = "The official Python library for the steel API"
55
dynamic = ["readme"]
66
license = "Apache-2.0"
@@ -159,7 +159,7 @@ reportPrivateUsage = false
159159
[tool.ruff]
160160
line-length = 120
161161
output-format = "grouped"
162-
target-version = "py37"
162+
target-version = "py38"
163163

164164
[tool.ruff.format]
165165
docstring-code-format = true

scripts/mock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ echo "==> Starting mock server with URL ${URL}"
2121

2222
# Run prism mock on the given spec
2323
if [ "$1" == "--daemon" ]; then
24-
npm exec --package=@stainless-api/prism-cli@5.8.5 -- prism mock "$URL" &> .prism.log &
24+
npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock "$URL" &> .prism.log &
2525

2626
# Wait for server to come online
2727
echo -n "Waiting for server"
@@ -37,5 +37,5 @@ if [ "$1" == "--daemon" ]; then
3737

3838
echo
3939
else
40-
npm exec --package=@stainless-api/prism-cli@5.8.5 -- prism mock "$URL"
40+
npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock "$URL"
4141
fi

scripts/test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ elif ! prism_is_running ; then
4343
echo -e "To run the server, pass in the path or url of your OpenAPI"
4444
echo -e "spec to the prism command:"
4545
echo
46-
echo -e " \$ ${YELLOW}npm exec --package=@stoplight/prism-cli@~5.3.2 -- prism mock path/to/your.openapi.yml${NC}"
46+
echo -e " \$ ${YELLOW}npm exec --package=@stainless-api/prism-cli@5.15.0 -- prism mock path/to/your.openapi.yml${NC}"
4747
echo
4848

4949
exit 1

src/steel/_base_client.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -532,7 +532,10 @@ def _build_request(
532532
is_body_allowed = options.method.lower() != "get"
533533

534534
if is_body_allowed:
535-
kwargs["json"] = json_data if is_given(json_data) else None
535+
if isinstance(json_data, bytes):
536+
kwargs["content"] = json_data
537+
else:
538+
kwargs["json"] = json_data if is_given(json_data) else None
536539
kwargs["files"] = files
537540
else:
538541
headers.pop("Content-Type", None)

0 commit comments

Comments
 (0)