Skip to content

Commit d75b83d

Browse files
authored
Merge pull request #78 from reductoai/release-please--branches--main--changes--next
release: 0.17.0
2 parents 0679913 + f5fe84b commit d75b83d

55 files changed

Lines changed: 1099 additions & 333 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
runs-on: ${{ github.repository == 'stainless-sdks/reductoai-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
2020
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
2121
steps:
22-
- uses: actions/checkout@v4
22+
- uses: actions/checkout@v6
2323

2424
- name: Install Rye
2525
run: |
@@ -44,7 +44,7 @@ jobs:
4444
id-token: write
4545
runs-on: ${{ github.repository == 'stainless-sdks/reductoai-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
4646
steps:
47-
- uses: actions/checkout@v4
47+
- uses: actions/checkout@v6
4848

4949
- name: Install Rye
5050
run: |
@@ -63,7 +63,7 @@ jobs:
6363
- name: Get GitHub OIDC Token
6464
if: github.repository == 'stainless-sdks/reductoai-python'
6565
id: github-oidc
66-
uses: actions/github-script@v6
66+
uses: actions/github-script@v8
6767
with:
6868
script: core.setOutput('github_token', await core.getIDToken());
6969

@@ -81,7 +81,7 @@ jobs:
8181
runs-on: ${{ github.repository == 'stainless-sdks/reductoai-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
8282
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
8383
steps:
84-
- uses: actions/checkout@v4
84+
- uses: actions/checkout@v6
8585

8686
- name: Install Rye
8787
run: |

.github/workflows/publish-pypi.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
runs-on: ubuntu-latest
1515

1616
steps:
17-
- uses: actions/checkout@v4
17+
- uses: actions/checkout@v6
1818

1919
- name: Install Rye
2020
run: |

.github/workflows/release-doctor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
if: github.repository == 'reductoai/reducto-python-sdk' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')
1313

1414
steps:
15-
- uses: actions/checkout@v4
15+
- uses: actions/checkout@v6
1616

1717
- name: Check release environment
1818
run: |

.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: 16
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/reducto%2Freductoai-f27dc0ffe1a494f38e2542dc7e2c56090aab4192876534765c1740670e4c4084.yml
3-
openapi_spec_hash: 0d0fb546942f7f9fa52de7ecd53cf0ea
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/reducto%2Freductoai-dc64d7db65a659c9e2f149d97c6422d64050ef9b5d24a042e84cc8748e6d67b7.yml
3+
openapi_spec_hash: f89983d4bf3498a5f160dc5bca401cde
44
config_hash: 12c16025a3b7554fa6377191d68b1903

CHANGELOG.md

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

3+
## 0.17.0 (2026-03-02)
4+
5+
Full Changelog: [v0.16.0...v0.17.0](https://github.com/reductoai/reducto-python-sdk/compare/v0.16.0...v0.17.0)
6+
7+
### Features
8+
9+
* **api:** api update ([5567990](https://github.com/reductoai/reducto-python-sdk/commit/556799061384a308984304555b864243cf672041))
10+
* **api:** api update ([8a7bfc1](https://github.com/reductoai/reducto-python-sdk/commit/8a7bfc129867ce49dfd58afe32e8ab721fc8ea32))
11+
* **api:** api update ([08de79c](https://github.com/reductoai/reducto-python-sdk/commit/08de79c93c0ff17a41a47ba27be7f1616e431f36))
12+
* **api:** api update ([8d8e23a](https://github.com/reductoai/reducto-python-sdk/commit/8d8e23a7cd027817edd8e25334f6346626a8d20c))
13+
* **api:** api update ([f55689c](https://github.com/reductoai/reducto-python-sdk/commit/f55689cd19c699d2aabbf0154bfea4e02a2ce389))
14+
* **api:** api update ([99a4d13](https://github.com/reductoai/reducto-python-sdk/commit/99a4d13c0f5adb600acee1fe97fc1c183d78cfab))
15+
* **api:** api update ([9abbcc8](https://github.com/reductoai/reducto-python-sdk/commit/9abbcc80e876b1e45140a3126e2a772806b61cd9))
16+
* **api:** api update ([aa7e9ca](https://github.com/reductoai/reducto-python-sdk/commit/aa7e9ca54a1f3892366a0582a31379738e74d132))
17+
* **api:** api update ([7b56b3e](https://github.com/reductoai/reducto-python-sdk/commit/7b56b3e5c38c80d344dd8cdff67800062523ba08))
18+
* **api:** api update ([6759351](https://github.com/reductoai/reducto-python-sdk/commit/67593515da9b22521874a8166126e5fbe2d97c9b))
19+
* **api:** api update ([e589627](https://github.com/reductoai/reducto-python-sdk/commit/e58962711b6f219f48d6481228337244eb3fd020))
20+
* **api:** api update ([5a09c7a](https://github.com/reductoai/reducto-python-sdk/commit/5a09c7a046f0452cfa01cbdc3681c8ff04db7c76))
21+
* **api:** api update ([237ee65](https://github.com/reductoai/reducto-python-sdk/commit/237ee65be58ef28aa3dd1f79942b6670811cedca))
22+
* **api:** api update ([3233b72](https://github.com/reductoai/reducto-python-sdk/commit/3233b72f57774b02f3793f9b8c4f43508eae442a))
23+
* **client:** add custom JSON encoder for extended type support ([1638d63](https://github.com/reductoai/reducto-python-sdk/commit/1638d632d573ee982c16ba74591dcc693fdbac35))
24+
* **client:** add support for binary request streaming ([a6ba082](https://github.com/reductoai/reducto-python-sdk/commit/a6ba082caa1be83e09f7ff58adea2c1420d90568))
25+
26+
27+
### Chores
28+
29+
* **ci:** upgrade `actions/github-script` ([a0ef8aa](https://github.com/reductoai/reducto-python-sdk/commit/a0ef8aabd0d360a684c45f61b2badf7f44ab4399))
30+
* format all `api.md` files ([bda2dd2](https://github.com/reductoai/reducto-python-sdk/commit/bda2dd2b86d7ad2af19a5ccf84a40e473159f01a))
31+
* **internal:** add request options to SSE classes ([d1a1143](https://github.com/reductoai/reducto-python-sdk/commit/d1a1143e6da73b3756f690e7f0104f1c636721cf))
32+
* **internal:** bump dependencies ([60979b5](https://github.com/reductoai/reducto-python-sdk/commit/60979b5e75abc9b5632ac6d105251d3be7b7f15e))
33+
* **internal:** fix lint error on Python 3.14 ([5be7a43](https://github.com/reductoai/reducto-python-sdk/commit/5be7a434eb1b7d1917d8b6ca53122bcfb4a0c947))
34+
* **internal:** make `test_proxy_environment_variables` more resilient ([f8c15f3](https://github.com/reductoai/reducto-python-sdk/commit/f8c15f3f3d20775615faf971680146fcaffe9ce1))
35+
* **internal:** make `test_proxy_environment_variables` more resilient to env ([75914f0](https://github.com/reductoai/reducto-python-sdk/commit/75914f0f368e5ac11f31b0de3850440e5101d544))
36+
* **internal:** remove mock server code ([a0cd0a0](https://github.com/reductoai/reducto-python-sdk/commit/a0cd0a04d81d7500fb74862878aed6dc677b8fa8))
37+
* **internal:** update `actions/checkout` version ([356433d](https://github.com/reductoai/reducto-python-sdk/commit/356433dcf618021381aec84229ffe5547b84f40e))
38+
* update mock server docs ([63aef54](https://github.com/reductoai/reducto-python-sdk/commit/63aef54bd216cb1f6d600cdae28082abe7cd5b31))
39+
340
## 0.16.0 (2026-01-02)
441

542
Full Changelog: [v0.15.0...v0.16.0](https://github.com/reductoai/reducto-python-sdk/compare/v0.15.0...v0.16.0)

CONTRIBUTING.md

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,6 @@ $ pip install ./path-to-wheel-file.whl
8585

8686
## Running tests
8787

88-
Most tests require you to [set up a mock server](https://github.com/stoplightio/prism) against the OpenAPI spec to run the tests.
89-
90-
```sh
91-
# you will need npm installed
92-
$ npx prism mock path/to/your/openapi.yml
93-
```
94-
9588
```sh
9689
$ ./scripts/test
9790
```

api.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,15 @@ from reducto.types import (
4444

4545
# Reducto
4646

47+
Types:
48+
49+
```python
50+
from reducto.types import APIVersionResponse
51+
```
52+
4753
Methods:
4854

49-
- <code title="get /version">client.<a href="./src/reducto/_client.py">api_version</a>() -> object</code>
55+
- <code title="get /version">client.<a href="./src/reducto/_client.py">api_version</a>() -> str</code>
5056
- <code title="post /upload">client.<a href="./src/reducto/_client.py">upload</a>(\*\*<a href="src/reducto/types/client_upload_params.py">params</a>) -> <a href="./src/reducto/types/shared/upload.py">Upload</a></code>
5157

5258
# Job

pyproject.toml

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

7676
"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 reductoai
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 reductoai
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 reductoai
6363
# via respx
64-
httpx-aiohttp==0.1.9
64+
httpx-aiohttp==0.1.12
6565
# via reductoai
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 reductoai
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

0 commit comments

Comments
 (0)