Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
437 commits
Select commit Hold shift + click to select a range
7de3d5d
codegen metadata
stainless-app[bot] Dec 12, 2025
54e32da
codegen metadata
stainless-app[bot] Dec 12, 2025
51ee352
codegen metadata
stainless-app[bot] Dec 12, 2025
7d98128
codegen metadata
stainless-app[bot] Dec 12, 2025
3482ff0
codegen metadata
stainless-app[bot] Dec 12, 2025
329a9fa
codegen metadata
stainless-app[bot] Dec 12, 2025
261cfd8
codegen metadata
stainless-app[bot] Dec 12, 2025
3162f3b
codegen metadata
stainless-app[bot] Dec 12, 2025
6692a8f
codegen metadata
stainless-app[bot] Dec 12, 2025
721a4b9
codegen metadata
stainless-app[bot] Dec 12, 2025
4ac31c6
codegen metadata
stainless-app[bot] Dec 12, 2025
43bf554
codegen metadata
stainless-app[bot] Dec 12, 2025
53177ca
codegen metadata
stainless-app[bot] Dec 12, 2025
a22331f
codegen metadata
stainless-app[bot] Dec 12, 2025
42d7c51
codegen metadata
stainless-app[bot] Dec 12, 2025
3714b87
codegen metadata
stainless-app[bot] Dec 12, 2025
eaae6f2
codegen metadata
stainless-app[bot] Dec 13, 2025
2dfbccb
codegen metadata
stainless-app[bot] Dec 13, 2025
6c2288b
codegen metadata
stainless-app[bot] Dec 13, 2025
4c06b4b
codegen metadata
stainless-app[bot] Dec 13, 2025
6587eb6
codegen metadata
stainless-app[bot] Dec 13, 2025
3e3eba7
codegen metadata
stainless-app[bot] Dec 13, 2025
bd7e2cb
codegen metadata
stainless-app[bot] Dec 13, 2025
88ef910
codegen metadata
stainless-app[bot] Dec 13, 2025
f8fa9ee
codegen metadata
stainless-app[bot] Dec 13, 2025
1ab84e8
codegen metadata
stainless-app[bot] Dec 13, 2025
a17046b
codegen metadata
stainless-app[bot] Dec 13, 2025
4112fa3
codegen metadata
stainless-app[bot] Dec 13, 2025
0e125ad
codegen metadata
stainless-app[bot] Dec 13, 2025
9848608
codegen metadata
stainless-app[bot] Dec 13, 2025
de3dba7
codegen metadata
stainless-app[bot] Dec 13, 2025
6c7d083
codegen metadata
stainless-app[bot] Dec 13, 2025
a4a6cbf
codegen metadata
stainless-app[bot] Dec 13, 2025
52b72e9
codegen metadata
stainless-app[bot] Dec 13, 2025
be021c7
codegen metadata
stainless-app[bot] Dec 13, 2025
145c0fc
codegen metadata
stainless-app[bot] Dec 14, 2025
de5cc78
codegen metadata
stainless-app[bot] Dec 14, 2025
e6b9f69
codegen metadata
stainless-app[bot] Dec 14, 2025
8260f23
codegen metadata
stainless-app[bot] Dec 14, 2025
4357980
codegen metadata
stainless-app[bot] Dec 14, 2025
1be7215
codegen metadata
stainless-app[bot] Dec 14, 2025
0159f8d
codegen metadata
stainless-app[bot] Dec 14, 2025
a311d21
codegen metadata
stainless-app[bot] Dec 14, 2025
f379a39
codegen metadata
stainless-app[bot] Dec 14, 2025
dab5f96
codegen metadata
stainless-app[bot] Dec 14, 2025
6d1bb2b
codegen metadata
stainless-app[bot] Dec 14, 2025
8a920ba
codegen metadata
stainless-app[bot] Dec 14, 2025
e387f6a
codegen metadata
stainless-app[bot] Dec 14, 2025
381690b
codegen metadata
stainless-app[bot] Dec 14, 2025
c113ec1
codegen metadata
stainless-app[bot] Dec 14, 2025
84e8168
codegen metadata
stainless-app[bot] Dec 14, 2025
5389581
codegen metadata
stainless-app[bot] Dec 14, 2025
407f901
codegen metadata
stainless-app[bot] Dec 15, 2025
e8cca4e
codegen metadata
stainless-app[bot] Dec 15, 2025
126ab88
codegen metadata
stainless-app[bot] Dec 15, 2025
5f0772b
codegen metadata
stainless-app[bot] Dec 15, 2025
7ef8054
codegen metadata
stainless-app[bot] Dec 15, 2025
fcd7384
codegen metadata
stainless-app[bot] Dec 15, 2025
13b0a2a
codegen metadata
stainless-app[bot] Dec 15, 2025
901a474
codegen metadata
stainless-app[bot] Dec 15, 2025
12b5b2f
codegen metadata
stainless-app[bot] Dec 15, 2025
9342bfd
codegen metadata
stainless-app[bot] Dec 15, 2025
20b45e5
codegen metadata
stainless-app[bot] Dec 15, 2025
f19b790
codegen metadata
stainless-app[bot] Dec 15, 2025
0a45f95
codegen metadata
stainless-app[bot] Dec 15, 2025
871e49b
codegen metadata
stainless-app[bot] Dec 15, 2025
bd19ef8
codegen metadata
stainless-app[bot] Dec 15, 2025
d1a2cae
codegen metadata
stainless-app[bot] Dec 15, 2025
19e8d3b
codegen metadata
stainless-app[bot] Dec 15, 2025
99df51e
codegen metadata
stainless-app[bot] Dec 16, 2025
2082015
codegen metadata
stainless-app[bot] Dec 16, 2025
0a186bc
codegen metadata
stainless-app[bot] Dec 16, 2025
1281b97
codegen metadata
stainless-app[bot] Dec 16, 2025
aa164b1
chore(internal): add missing files argument to base client
stainless-app[bot] Dec 16, 2025
651117c
codegen metadata
stainless-app[bot] Dec 16, 2025
69b7955
codegen metadata
stainless-app[bot] Dec 16, 2025
a67f81e
codegen metadata
stainless-app[bot] Dec 16, 2025
f00f7e1
codegen metadata
stainless-app[bot] Dec 16, 2025
eb78696
codegen metadata
stainless-app[bot] Dec 16, 2025
7081519
codegen metadata
stainless-app[bot] Dec 16, 2025
0fb9617
codegen metadata
stainless-app[bot] Dec 16, 2025
ec0f163
codegen metadata
stainless-app[bot] Dec 16, 2025
50a7158
codegen metadata
stainless-app[bot] Dec 16, 2025
b272ffc
codegen metadata
stainless-app[bot] Dec 16, 2025
02834e3
codegen metadata
stainless-app[bot] Dec 16, 2025
faac318
codegen metadata
stainless-app[bot] Dec 16, 2025
7b5ecfa
codegen metadata
stainless-app[bot] Dec 16, 2025
7f7bfba
codegen metadata
stainless-app[bot] Dec 16, 2025
d4ac32d
codegen metadata
stainless-app[bot] Dec 16, 2025
14f1a2e
codegen metadata
stainless-app[bot] Dec 16, 2025
5806618
codegen metadata
stainless-app[bot] Dec 16, 2025
0765ac3
codegen metadata
stainless-app[bot] Dec 17, 2025
43b167f
codegen metadata
stainless-app[bot] Dec 17, 2025
2402015
codegen metadata
stainless-app[bot] Dec 17, 2025
f852cb2
codegen metadata
stainless-app[bot] Dec 17, 2025
19df223
chore: speedup initial import
stainless-app[bot] Dec 17, 2025
ce3921d
refactor(internal): switch from rye to uv
stainless-app[bot] Dec 17, 2025
a8d2e8e
codegen metadata
stainless-app[bot] Dec 17, 2025
adc3b1f
codegen metadata
stainless-app[bot] Dec 17, 2025
2f5faf4
codegen metadata
stainless-app[bot] Dec 17, 2025
2477156
codegen metadata
stainless-app[bot] Dec 17, 2025
7e94533
codegen metadata
stainless-app[bot] Dec 17, 2025
3918001
codegen metadata
stainless-app[bot] Dec 17, 2025
bf3c17d
codegen metadata
stainless-app[bot] Dec 17, 2025
923358c
codegen metadata
stainless-app[bot] Dec 17, 2025
dba6919
codegen metadata
stainless-app[bot] Dec 17, 2025
dacc496
codegen metadata
stainless-app[bot] Dec 17, 2025
5a29e76
codegen metadata
stainless-app[bot] Dec 17, 2025
36cde0e
codegen metadata
stainless-app[bot] Dec 17, 2025
747dbf1
codegen metadata
stainless-app[bot] Dec 17, 2025
0c87cdc
codegen metadata
stainless-app[bot] Dec 17, 2025
6b1a651
codegen metadata
stainless-app[bot] Dec 17, 2025
f5d9a16
codegen metadata
stainless-app[bot] Dec 18, 2025
ea48cea
codegen metadata
stainless-app[bot] Dec 18, 2025
9e50f5f
codegen metadata
stainless-app[bot] Dec 18, 2025
8e68b11
fix: use async_to_httpx_files in patch method
stainless-app[bot] Dec 18, 2025
38fc410
codegen metadata
stainless-app[bot] Dec 18, 2025
78e3055
codegen metadata
stainless-app[bot] Dec 18, 2025
7a20958
codegen metadata
stainless-app[bot] Dec 18, 2025
6907bc0
codegen metadata
stainless-app[bot] Dec 18, 2025
f6de465
codegen metadata
stainless-app[bot] Dec 18, 2025
381a926
codegen metadata
stainless-app[bot] Dec 18, 2025
b2308f7
codegen metadata
stainless-app[bot] Dec 18, 2025
d2b3b99
codegen metadata
stainless-app[bot] Dec 18, 2025
cafa19e
codegen metadata
stainless-app[bot] Dec 18, 2025
654b0da
codegen metadata
stainless-app[bot] Dec 18, 2025
f14928a
codegen metadata
stainless-app[bot] Dec 18, 2025
9f91638
codegen metadata
stainless-app[bot] Dec 18, 2025
ee06ccb
codegen metadata
stainless-app[bot] Dec 18, 2025
194aa0c
codegen metadata
stainless-app[bot] Dec 18, 2025
6c6333e
codegen metadata
stainless-app[bot] Dec 18, 2025
66624f7
codegen metadata
stainless-app[bot] Dec 18, 2025
afce90a
codegen metadata
stainless-app[bot] Dec 19, 2025
86fed69
codegen metadata
stainless-app[bot] Dec 19, 2025
4dcf2ea
codegen metadata
stainless-app[bot] Dec 19, 2025
ecb483a
codegen metadata
stainless-app[bot] Dec 19, 2025
3ed4ea9
chore(internal): add `--fix` argument to lint script
stainless-app[bot] Dec 19, 2025
e860d8e
codegen metadata
stainless-app[bot] Dec 19, 2025
e378de5
codegen metadata
stainless-app[bot] Dec 19, 2025
5962a01
codegen metadata
stainless-app[bot] Dec 19, 2025
665277f
codegen metadata
stainless-app[bot] Dec 19, 2025
0397e5c
codegen metadata
stainless-app[bot] Dec 19, 2025
31b1237
codegen metadata
stainless-app[bot] Dec 19, 2025
77036f4
codegen metadata
stainless-app[bot] Dec 19, 2025
106a9ee
codegen metadata
stainless-app[bot] Dec 19, 2025
9b9cd3f
codegen metadata
stainless-app[bot] Dec 19, 2025
cd2c094
codegen metadata
stainless-app[bot] Dec 19, 2025
ae2f16a
codegen metadata
stainless-app[bot] Dec 19, 2025
97220d4
codegen metadata
stainless-app[bot] Dec 19, 2025
4de4d23
codegen metadata
stainless-app[bot] Dec 19, 2025
e02097a
codegen metadata
stainless-app[bot] Dec 19, 2025
7a9b64b
codegen metadata
stainless-app[bot] Dec 19, 2025
6b87b12
codegen metadata
stainless-app[bot] Dec 19, 2025
a54ba62
codegen metadata
stainless-app[bot] Dec 19, 2025
c3e0985
codegen metadata
stainless-app[bot] Dec 19, 2025
320c713
codegen metadata
stainless-app[bot] Dec 19, 2025
675debb
codegen metadata
stainless-app[bot] Dec 20, 2025
b52c455
codegen metadata
stainless-app[bot] Dec 20, 2025
3cd0175
codegen metadata
stainless-app[bot] Dec 20, 2025
00cba37
codegen metadata
stainless-app[bot] Dec 20, 2025
7ecf3a2
codegen metadata
stainless-app[bot] Dec 20, 2025
3f86e21
codegen metadata
stainless-app[bot] Dec 20, 2025
64270a3
codegen metadata
stainless-app[bot] Dec 20, 2025
1de7211
codegen metadata
stainless-app[bot] Dec 20, 2025
a134b63
codegen metadata
stainless-app[bot] Dec 20, 2025
529c9e5
codegen metadata
stainless-app[bot] Dec 20, 2025
d58af95
codegen metadata
stainless-app[bot] Dec 20, 2025
4687be1
codegen metadata
stainless-app[bot] Dec 20, 2025
74c9d31
codegen metadata
stainless-app[bot] Dec 20, 2025
8f506d7
codegen metadata
stainless-app[bot] Dec 20, 2025
12f9676
codegen metadata
stainless-app[bot] Dec 20, 2025
0b94cf8
codegen metadata
stainless-app[bot] Dec 20, 2025
8c691f9
codegen metadata
stainless-app[bot] Dec 20, 2025
68af50c
codegen metadata
stainless-app[bot] Dec 21, 2025
89431a8
codegen metadata
stainless-app[bot] Dec 21, 2025
85f7e70
codegen metadata
stainless-app[bot] Dec 21, 2025
2bb4534
codegen metadata
stainless-app[bot] Dec 21, 2025
d03abb2
codegen metadata
stainless-app[bot] Dec 21, 2025
889859b
codegen metadata
stainless-app[bot] Dec 21, 2025
c2bce8a
codegen metadata
stainless-app[bot] Dec 21, 2025
c736d7d
codegen metadata
stainless-app[bot] Dec 21, 2025
1434be4
codegen metadata
stainless-app[bot] Dec 21, 2025
a46fb40
codegen metadata
stainless-app[bot] Dec 21, 2025
117b6a5
codegen metadata
stainless-app[bot] Dec 21, 2025
091a005
codegen metadata
stainless-app[bot] Dec 21, 2025
a190c0e
codegen metadata
stainless-app[bot] Dec 21, 2025
551c3cb
codegen metadata
stainless-app[bot] Dec 21, 2025
791ba72
codegen metadata
stainless-app[bot] Dec 21, 2025
1736e21
codegen metadata
stainless-app[bot] Dec 21, 2025
1c7bfb4
codegen metadata
stainless-app[bot] Dec 21, 2025
2feb6b9
codegen metadata
stainless-app[bot] Dec 21, 2025
5654f3d
codegen metadata
stainless-app[bot] Dec 21, 2025
86b12b3
codegen metadata
stainless-app[bot] Dec 21, 2025
275638f
codegen metadata
stainless-app[bot] Dec 22, 2025
a82fc5c
codegen metadata
stainless-app[bot] Dec 22, 2025
a8bf1c9
codegen metadata
stainless-app[bot] Dec 22, 2025
6871166
codegen metadata
stainless-app[bot] Dec 22, 2025
865f397
codegen metadata
stainless-app[bot] Dec 22, 2025
464d8cc
codegen metadata
stainless-app[bot] Dec 22, 2025
81c4859
codegen metadata
stainless-app[bot] Dec 22, 2025
3d3f49d
codegen metadata
stainless-app[bot] Dec 22, 2025
5e326e2
codegen metadata
stainless-app[bot] Dec 22, 2025
e8f1d5d
codegen metadata
stainless-app[bot] Dec 22, 2025
fc7e19d
codegen metadata
stainless-app[bot] Dec 22, 2025
d098c46
codegen metadata
stainless-app[bot] Dec 22, 2025
5604a77
codegen metadata
stainless-app[bot] Dec 22, 2025
4c3085b
codegen metadata
stainless-app[bot] Dec 22, 2025
6e3d992
codegen metadata
stainless-app[bot] Dec 22, 2025
510392e
codegen metadata
stainless-app[bot] Dec 22, 2025
bc7a88d
codegen metadata
stainless-app[bot] Dec 22, 2025
40dd659
codegen metadata
stainless-app[bot] Dec 22, 2025
f7690df
codegen metadata
stainless-app[bot] Dec 23, 2025
70373ab
codegen metadata
stainless-app[bot] Dec 23, 2025
7429008
codegen metadata
stainless-app[bot] Dec 23, 2025
6fd4dd6
codegen metadata
stainless-app[bot] Dec 23, 2025
3ddd403
codegen metadata
stainless-app[bot] Dec 23, 2025
67e7a2c
codegen metadata
stainless-app[bot] Dec 23, 2025
61a6a0e
codegen metadata
stainless-app[bot] Dec 23, 2025
991d69e
codegen metadata
stainless-app[bot] Dec 23, 2025
a5cda2d
codegen metadata
stainless-app[bot] Dec 23, 2025
c87841e
codegen metadata
stainless-app[bot] Dec 23, 2025
0f62bf4
codegen metadata
stainless-app[bot] Dec 23, 2025
6e939f3
codegen metadata
stainless-app[bot] Dec 23, 2025
cf105e8
codegen metadata
stainless-app[bot] Dec 23, 2025
1b000b5
codegen metadata
stainless-app[bot] Dec 23, 2025
6d0f4d9
codegen metadata
stainless-app[bot] Dec 23, 2025
daf85bf
codegen metadata
stainless-app[bot] Dec 23, 2025
560bf79
codegen metadata
stainless-app[bot] Dec 23, 2025
d04c85e
codegen metadata
stainless-app[bot] Dec 24, 2025
f25aafc
codegen metadata
stainless-app[bot] Dec 24, 2025
98ed23b
codegen metadata
stainless-app[bot] Dec 24, 2025
b0a7568
codegen metadata
stainless-app[bot] Dec 24, 2025
60ea69d
codegen metadata
stainless-app[bot] Dec 24, 2025
5555891
codegen metadata
stainless-app[bot] Dec 24, 2025
28c2c00
codegen metadata
stainless-app[bot] Dec 24, 2025
6f8ae18
codegen metadata
stainless-app[bot] Dec 24, 2025
4b5b018
codegen metadata
stainless-app[bot] Dec 24, 2025
1d9cbe8
codegen metadata
stainless-app[bot] Dec 24, 2025
a9944e3
codegen metadata
stainless-app[bot] Dec 24, 2025
6a5d178
codegen metadata
stainless-app[bot] Dec 24, 2025
7690fc7
codegen metadata
stainless-app[bot] Dec 24, 2025
81a14a1
codegen metadata
stainless-app[bot] Dec 24, 2025
1979a56
codegen metadata
stainless-app[bot] Dec 24, 2025
b2f4c2d
codegen metadata
stainless-app[bot] Dec 24, 2025
83aa1e3
codegen metadata
stainless-app[bot] Dec 24, 2025
cb96719
codegen metadata
stainless-app[bot] Dec 24, 2025
ff4c877
codegen metadata
stainless-app[bot] Dec 24, 2025
5f5527f
codegen metadata
stainless-app[bot] Dec 24, 2025
d4b603d
codegen metadata
stainless-app[bot] Dec 25, 2025
fcb8de7
release: 0.1.1
stainless-app[bot] Dec 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT}

USER vscode

RUN curl -sSf https://rye.astral.sh/get | RYE_VERSION="0.44.0" RYE_INSTALL_OPTION="--yes" bash
ENV PATH=/home/vscode/.rye/shims:$PATH
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/

RUN echo "[[ -d .venv ]] && source .venv/bin/activate || export PATH=\$PATH" >> /home/vscode/.bashrc
4 changes: 2 additions & 2 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"context": ".."
},

"postStartCommand": "rye sync --all-features",
"postStartCommand": "uv sync --all-extras",

"customizations": {
"vscode": {
Expand All @@ -20,7 +20,7 @@
"python.defaultInterpreterPath": ".venv/bin/python",
"python.typeChecking": "basic",
"terminal.integrated.env.linux": {
"PATH": "/home/vscode/.rye/shims:${env:PATH}"
"PATH": "${env:PATH}"
}
}
}
Expand Down
39 changes: 15 additions & 24 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,13 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Install Rye
run: |
curl -sSf https://rye.astral.sh/get | bash
echo "$HOME/.rye/shims" >> $GITHUB_PATH
env:
RYE_VERSION: '0.44.0'
RYE_INSTALL_OPTION: '--yes'
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
version: '0.9.13'

- name: Install dependencies
run: rye sync --all-features
run: uv sync --all-extras

- name: Run lints
run: ./scripts/lint
Expand All @@ -46,19 +43,16 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Install Rye
run: |
curl -sSf https://rye.astral.sh/get | bash
echo "$HOME/.rye/shims" >> $GITHUB_PATH
env:
RYE_VERSION: '0.44.0'
RYE_INSTALL_OPTION: '--yes'
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
version: '0.9.13'

- name: Install dependencies
run: rye sync --all-features
run: uv sync --all-extras

- name: Run build
run: rye build
run: uv build

- name: Get GitHub OIDC Token
if: github.repository == 'stainless-sdks/tembo-python'
Expand All @@ -83,13 +77,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Install Rye
run: |
curl -sSf https://rye.astral.sh/get | bash
echo "$HOME/.rye/shims" >> $GITHUB_PATH
env:
RYE_VERSION: '0.44.0'
RYE_INSTALL_OPTION: '--yes'
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
version: '0.9.13'

- name: Bootstrap
run: ./scripts/bootstrap
Expand Down
11 changes: 4 additions & 7 deletions .github/workflows/publish-pypi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Install Rye
run: |
curl -sSf https://rye.astral.sh/get | bash
echo "$HOME/.rye/shims" >> $GITHUB_PATH
env:
RYE_VERSION: '0.44.0'
RYE_INSTALL_OPTION: '--yes'
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
version: '0.9.13'

- name: Publish to PyPI
run: |
Expand Down
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.1.0"
".": "0.1.1"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 5
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/tembo%2Ftembo-833e9d5936e1442e3b9cdb6c7c1e1c4e90066976e786917282269cba1c8fb9c5.yml
openapi_spec_hash: bf0ab47c38a590abffb11253febd76db
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/tembo%2Ftembo-4d41bdd3c7cc37ddb8d45163fd74bdefb19ce888f529c3193f6f372319c34793.yml
openapi_spec_hash: 5edfab5ad2ca0af90a5e5c111bc87200
config_hash: 8fba1d45a848bce88e9564ab8a960838
2 changes: 1 addition & 1 deletion Brewfile
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
brew "rye"
brew "uv"

20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
# Changelog

## 0.1.1 (2025-12-25)

Full Changelog: [v0.1.0...v0.1.1](https://github.com/tembo/sdk-python/compare/v0.1.0...v0.1.1)

### Bug Fixes

* use async_to_httpx_files in patch method ([8e68b11](https://github.com/tembo/sdk-python/commit/8e68b11eabbba28505f65095a510f0a2d5fc7ab1))


### Chores

* **internal:** add `--fix` argument to lint script ([3ed4ea9](https://github.com/tembo/sdk-python/commit/3ed4ea92fcfc85554da48563f0f15438a40a76e8))
* **internal:** add missing files argument to base client ([aa164b1](https://github.com/tembo/sdk-python/commit/aa164b15d7cefdb3fe035fd9ba128e1e6e6df6b4))
* speedup initial import ([19df223](https://github.com/tembo/sdk-python/commit/19df223a93dee6ee37f683bb6dd2c483559e200a))


### Refactors

* **internal:** switch from rye to uv ([ce3921d](https://github.com/tembo/sdk-python/commit/ce3921dbadd12dd2ff18a0b3ac5a51fd25eba573))

## 0.1.0 (2025-11-30)

Full Changelog: [v0.0.1...v0.1.0](https://github.com/tembo/sdk-python/compare/v0.0.1...v0.1.0)
Expand Down
22 changes: 11 additions & 11 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,32 @@
## Setting up the environment

### With Rye
### With `uv`

We use [Rye](https://rye.astral.sh/) to manage dependencies because it will automatically provision a Python environment with the expected Python version. To set it up, run:
We use [uv](https://docs.astral.sh/uv/) to manage dependencies because it will automatically provision a Python environment with the expected Python version. To set it up, run:

```sh
$ ./scripts/bootstrap
```

Or [install Rye manually](https://rye.astral.sh/guide/installation/) and run:
Or [install uv manually](https://docs.astral.sh/uv/getting-started/installation/) and run:

```sh
$ rye sync --all-features
$ uv sync --all-extras
```

You can then run scripts using `rye run python script.py` or by activating the virtual environment:
You can then run scripts using `uv run python script.py` or by manually activating the virtual environment:

```sh
# Activate the virtual environment - https://docs.python.org/3/library/venv.html#how-venvs-work
# manually activate - https://docs.python.org/3/library/venv.html#how-venvs-work
$ source .venv/bin/activate

# now you can omit the `rye run` prefix
# now you can omit the `uv run` prefix
$ python script.py
```

### Without Rye
### Without `uv`

Alternatively if you don't want to install `Rye`, you can stick with the standard `pip` setup by ensuring you have the Python version specified in `.python-version`, create a virtual environment however you desire and then install dependencies using this command:
Alternatively if you don't want to install `uv`, you can stick with the standard `pip` setup by ensuring you have the Python version specified in `.python-version`, create a virtual environment however you desire and then install dependencies using this command:

```sh
$ pip install -r requirements-dev.lock
Expand All @@ -45,7 +45,7 @@ All files in the `examples/` directory are not modified by the generator and can
```py
# add an example to examples/<your-example>.py

#!/usr/bin/env -S rye run python
#!/usr/bin/env -S uv run python
```

Expand All @@ -72,7 +72,7 @@ Building this package will create two files in the `dist/` directory, a `.tar.gz
To create a distributable version of the library, all you have to do is run this command:

```sh
$ rye build
$ uv build
# or
$ python -m build
```
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,14 +79,15 @@ pip install tembo-sdk-python[aiohttp]
Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:

```python
import os
import asyncio
from tembo import DefaultAioHttpClient
from tembo import AsyncTembo


async def main() -> None:
async with AsyncTembo(
api_key="My API Key",
api_key=os.environ.get("TEMBO_API_KEY"), # This is the default and can be omitted
http_client=DefaultAioHttpClient(),
) as client:
task = await client.task.create()
Expand Down
5 changes: 3 additions & 2 deletions bin/publish-pypi
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/usr/bin/env bash

set -eux
rm -rf dist
mkdir -p dist
rye build --clean
rye publish --yes --token=$PYPI_TOKEN
uv build
uv publish --token=$PYPI_TOKEN
9 changes: 0 additions & 9 deletions noxfile.py

This file was deleted.

68 changes: 28 additions & 40 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,20 +1,22 @@
[project]
name = "tembo-sdk-python"
version = "0.1.0"
version = "0.1.1"
description = "The official Python library for the tembo API"
dynamic = ["readme"]
license = "Apache-2.0"
authors = [
{ name = "Tembo", email = "darren@tembo.io" },
]

dependencies = [
"httpx>=0.23.0, <1",
"pydantic>=1.9.0, <3",
"typing-extensions>=4.10, <5",
"anyio>=3.5.0, <5",
"distro>=1.7.0, <2",
"sniffio",
"httpx>=0.23.0, <1",
"pydantic>=1.9.0, <3",
"typing-extensions>=4.10, <5",
"anyio>=3.5.0, <5",
"distro>=1.7.0, <2",
"sniffio",
]

requires-python = ">= 3.9"
classifiers = [
"Typing :: Typed",
Expand All @@ -41,52 +43,38 @@ Repository = "https://github.com/tembo/sdk-python"
[project.optional-dependencies]
aiohttp = ["aiohttp", "httpx_aiohttp>=0.1.9"]

[tool.rye]
[tool.uv]
managed = true
# version pins are in requirements-dev.lock
dev-dependencies = [
required-version = ">=0.9"
conflicts = [
[
{ group = "pydantic-v1" },
{ group = "pydantic-v2" },
],
]

[dependency-groups]
# version pins are in uv.lock
dev = [
"pyright==1.1.399",
"mypy==1.17",
"respx",
"pytest",
"pytest-asyncio",
"ruff",
"time-machine",
"nox",
"dirty-equals>=0.6.0",
"importlib-metadata>=6.7.0",
"rich>=13.7.1",
"pytest-xdist>=3.6.1",
]

[tool.rye.scripts]
format = { chain = [
"format:ruff",
"format:docs",
"fix:ruff",
# run formatting again to fix any inconsistencies when imports are stripped
"format:ruff",
]}
"format:docs" = "python scripts/utils/ruffen-docs.py README.md api.md"
"format:ruff" = "ruff format"

"lint" = { chain = [
"check:ruff",
"typecheck",
"check:importable",
]}
"check:ruff" = "ruff check ."
"fix:ruff" = "ruff check --fix ."

"check:importable" = "python -c 'import tembo'"

typecheck = { chain = [
"typecheck:pyright",
"typecheck:mypy"
]}
"typecheck:pyright" = "pyright"
"typecheck:verify-types" = "pyright --verifytypes tembo --ignoreexternal"
"typecheck:mypy" = "mypy ."
pydantic-v1 = [
"pydantic>=1.9.0,<2",
]
pydantic-v2 = [
"pydantic~=2.0 ; python_full_version < '3.14'",
"pydantic~=2.12 ; python_full_version >= '3.14'",
]

[build-system]
requires = ["hatchling==1.26.3", "hatch-fancy-pypi-readme"]
Expand Down
Loading