Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
087c121
chore: bump `httpx-aiohttp` version to 0.1.9
stainless-app[bot] Oct 18, 2025
d73de06
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 20, 2025
a43ddc1
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 21, 2025
3e32b23
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 21, 2025
c0b00b1
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 22, 2025
c10159f
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 22, 2025
18f97b1
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 22, 2025
d692016
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 22, 2025
3d5cb8a
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 22, 2025
cb5746f
codegen metadata
stainless-app[bot] Oct 24, 2025
70c5279
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 24, 2025
a695b56
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 27, 2025
9f6b474
fix(client): close streams without requiring full consumption
stainless-app[bot] Oct 30, 2025
4f2685e
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 30, 2025
55ab316
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 30, 2025
196989d
feat(api): updating API spec with latest changes
stainless-app[bot] Oct 30, 2025
ecbcd62
chore(internal/tests): avoid race condition with implicit client cleanup
stainless-app[bot] Oct 31, 2025
bc72806
chore(internal): grammar fix (it's -> its)
stainless-app[bot] Nov 4, 2025
1a07cf8
codegen metadata
stainless-app[bot] Nov 5, 2025
ae0e46a
chore(package): drop Python 3.8 support
stainless-app[bot] Nov 11, 2025
2f9d169
fix: compat with Python 3.14
stainless-app[bot] Nov 11, 2025
d8c138e
fix(compat): update signatures of `model_dump` and `model_dump_json` …
stainless-app[bot] Nov 12, 2025
2d9d45a
feat(api): updating API spec with latest changes
stainless-app[bot] Nov 18, 2025
e76a040
chore: add Python 3.14 classifier and testing
stainless-app[bot] Nov 22, 2025
f9a8088
feat(api): updating API spec with latest changes
stainless-app[bot] Nov 26, 2025
6666820
fix: ensure streams are always closed
stainless-app[bot] Nov 28, 2025
8be1a4c
chore(deps): mypy 1.18.1 has a regression, pin to 1.17
stainless-app[bot] Nov 28, 2025
a430dff
chore: update lockfile
stainless-app[bot] Dec 3, 2025
212ff07
fix(types): allow pyright to infer TypedDict types within SequenceNotStr
stainless-app[bot] Dec 9, 2025
86a8870
chore: add missing docstrings
stainless-app[bot] Dec 9, 2025
8d39fd0
feat(api): updating API spec with latest changes
stainless-app[bot] Dec 12, 2025
9a7d8bd
chore(internal): add missing files argument to base client
stainless-app[bot] Dec 16, 2025
75bc3bf
chore: speedup initial import
stainless-app[bot] Dec 17, 2025
eb4fa2b
fix: use async_to_httpx_files in patch method
stainless-app[bot] Dec 18, 2025
d094255
chore(internal): add `--fix` argument to lint script
stainless-app[bot] Dec 19, 2025
6ca79a6
feat(api): updating API spec with latest changes
stainless-app[bot] Dec 31, 2025
8eccdf9
feat(api): updating API spec with latest changes
stainless-app[bot] Jan 5, 2026
4604c3c
feat(client): add support for binary request streaming
stainless-app[bot] Jan 14, 2026
9c6f869
chore(internal): update `actions/checkout` version
stainless-app[bot] Jan 17, 2026
4b38394
chore(ci): upgrade `actions/github-script`
stainless-app[bot] Jan 24, 2026
025c238
feat(client): add custom JSON encoder for extended type support
stainless-app[bot] Jan 30, 2026
ed9db87
chore(internal): bump dependencies
stainless-app[bot] Feb 10, 2026
388cded
chore(internal): fix lint error on Python 3.14
stainless-app[bot] Feb 12, 2026
66c035d
feat(api): updating API spec with latest changes
stainless-app[bot] Feb 12, 2026
30618d0
chore: format all `api.md` files
stainless-app[bot] Feb 13, 2026
33d7b9f
feat(api): updating API spec with latest changes
stainless-app[bot] Feb 18, 2026
3ab5fb2
codegen metadata
stainless-app[bot] Feb 18, 2026
3334c6f
release: 0.17.0
stainless-app[bot] Feb 19, 2026
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
8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
runs-on: ${{ github.repository == 'stainless-sdks/raindrop-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Install Rye
run: |
Expand All @@ -44,7 +44,7 @@ jobs:
id-token: write
runs-on: ${{ github.repository == 'stainless-sdks/raindrop-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Install Rye
run: |
Expand All @@ -63,7 +63,7 @@ jobs:
- name: Get GitHub OIDC Token
if: github.repository == 'stainless-sdks/raindrop-python'
id: github-oidc
uses: actions/github-script@v6
uses: actions/github-script@v8
with:
script: core.setOutput('github_token', await core.getIDToken());

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

- name: Install Rye
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish-pypi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Install Rye
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-doctor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
if: github.repository == 'LiquidMetal-AI/lm-raindrop-python-sdk' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Check release environment
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.6.43"
".": "0.17.0"
}
8 changes: 4 additions & 4 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 27
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/liquidmetal-ai%2Fraindrop-ed25b942116773db529b434ba4c6abb795db546c2d2a8ee6b6bee0e6365bbcd1.yml
openapi_spec_hash: 62b640c720a402ad73f44dd28e72440c
config_hash: 5f331f84beb1a8b8e9db4088909d4533
configured_endpoints: 36
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/liquidmetal-ai%2Fraindrop-5cf76019d5bb0b47bae031ba30cd289190a9e6a9e0592d0a82b404b5ef7c1d12.yml
openapi_spec_hash: 7f83735738a64d49551a9a4a0b3be1b0
config_hash: 2b17c03801f5ecdac15d3c08fe63b0af
59 changes: 59 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,64 @@
# Changelog

## 0.17.0 (2026-02-19)

Full Changelog: [v0.6.43...v0.17.0](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/compare/v0.6.43...v0.17.0)

### Features

* **api:** updating API spec with latest changes ([33d7b9f](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/33d7b9f2343d1c6ff1c659ede15cd1264a4802cb))
* **api:** updating API spec with latest changes ([66c035d](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/66c035d4bc3b03567135556f3d820177a78dffa7))
* **api:** updating API spec with latest changes ([8eccdf9](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/8eccdf98d50a0dcd0b927bf3512c1945b5483355))
* **api:** updating API spec with latest changes ([6ca79a6](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/6ca79a6059d9b2b04c2b4faac11dac498b81e16d))
* **api:** updating API spec with latest changes ([8d39fd0](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/8d39fd09f5a7d630f3d1a89cf38bbef141fb3698))
* **api:** updating API spec with latest changes ([f9a8088](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/f9a808854115b3623c18c0535c593955caf2e219))
* **api:** updating API spec with latest changes ([2d9d45a](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/2d9d45aa4b9c83d5b0568c97c7d20b8ea79e7ed7))
* **api:** updating API spec with latest changes ([196989d](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/196989d6569e3ffa9ae6b50c8f74dd1bd0fe9177))
* **api:** updating API spec with latest changes ([55ab316](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/55ab316a91254d3efd4b6cfd87aa0ec4cea0e228))
* **api:** updating API spec with latest changes ([4f2685e](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/4f2685ee86f7197e7a1e03579a05835089a75d4a))
* **api:** updating API spec with latest changes ([a695b56](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/a695b564fef2ecafba1e8e89445faeb9518fa3fd))
* **api:** updating API spec with latest changes ([70c5279](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/70c52795c14e0a0eb2a141d12728e3385c4c0fde))
* **api:** updating API spec with latest changes ([3d5cb8a](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/3d5cb8a18075dca829db4c1171929b165e1bb60f))
* **api:** updating API spec with latest changes ([d692016](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/d692016bda5d3877fe71d08e541b9d80b70a03f6))
* **api:** updating API spec with latest changes ([18f97b1](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/18f97b169075c2bbb919a7706acd8b1886885380))
* **api:** updating API spec with latest changes ([c10159f](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/c10159fc93a914c611c623fcfbd7c90f2024edeb))
* **api:** updating API spec with latest changes ([c0b00b1](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/c0b00b1da17be5945e01a74ab86e89efcae37b85))
* **api:** updating API spec with latest changes ([3e32b23](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/3e32b23ed54e80a40059375fd81dddb861399137))
* **api:** updating API spec with latest changes ([a43ddc1](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/a43ddc1b1306fc987e00347ac75a25e518fd8b70))
* **api:** updating API spec with latest changes ([d73de06](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/d73de063b634d5b009a12deddee012ca5eef967b))
* **client:** add custom JSON encoder for extended type support ([025c238](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/025c2380fff511046fb4b94ac4d2611dfb4fffdf))
* **client:** add support for binary request streaming ([4604c3c](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/4604c3cef2ee376ec2907f5e6225f1b5c18958cf))


### Bug Fixes

* **client:** close streams without requiring full consumption ([9f6b474](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/9f6b47440ca3512d710b3eef3c50eda3f4e4aec5))
* compat with Python 3.14 ([2f9d169](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/2f9d16986693ecf91adba5a2f1a769917f29d402))
* **compat:** update signatures of `model_dump` and `model_dump_json` for Pydantic v1 ([d8c138e](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/d8c138e926f23939e859ec758f502e5641c70f15))
* ensure streams are always closed ([6666820](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/666682014e7138336179c607980a337fce213d1a))
* **types:** allow pyright to infer TypedDict types within SequenceNotStr ([212ff07](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/212ff07721b9d4018400a82061976f44343cd0d8))
* use async_to_httpx_files in patch method ([eb4fa2b](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/eb4fa2b0780b0c373c4b43a5c3fbb4d2d1e6de48))


### Chores

* add missing docstrings ([86a8870](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/86a8870d2907c05f0f351b27e4431af04d07e8f7))
* add Python 3.14 classifier and testing ([e76a040](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/e76a0402b9420192c936d95cc1ca3cf02226a638))
* bump `httpx-aiohttp` version to 0.1.9 ([087c121](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/087c121009a3c7bcfe0f51d5e8bb61adaa788ea1))
* **ci:** upgrade `actions/github-script` ([4b38394](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/4b383944561f6c74e6b01d14072fdf06fc5b5fca))
* **deps:** mypy 1.18.1 has a regression, pin to 1.17 ([8be1a4c](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/8be1a4cc833bd4e53051fa122a930f5a79ec5699))
* format all `api.md` files ([30618d0](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/30618d0e67579f30e3458bcc44925f1a2e2d37ac))
* **internal/tests:** avoid race condition with implicit client cleanup ([ecbcd62](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/ecbcd62c4772af8187731015598a016229ac07eb))
* **internal:** add `--fix` argument to lint script ([d094255](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/d0942552d86c89e43563a6d6c845ea53f0646c9e))
* **internal:** add missing files argument to base client ([9a7d8bd](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/9a7d8bdcfd022647afb68313357edfea93ef9b3a))
* **internal:** bump dependencies ([ed9db87](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/ed9db8703dc2a69826c284f4b2cd1c11ce20f036))
* **internal:** fix lint error on Python 3.14 ([388cded](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/388cded2b38f8c115992d0befc492684606795b6))
* **internal:** grammar fix (it's -> its) ([bc72806](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/bc72806b1527391f965f2e70714b134093f20fe4))
* **internal:** update `actions/checkout` version ([9c6f869](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/9c6f8690b61a76323c24148a4f54b6d3744f7c8a))
* **package:** drop Python 3.8 support ([ae0e46a](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/ae0e46a0eb610831100c8d19d289b9201572d60e))
* speedup initial import ([75bc3bf](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/75bc3bfaadb8205b13c21838d9ddd516f8a3b90c))
* update lockfile ([a430dff](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/commit/a430dff85a2bdfe274d583ff386ff380acfe6e0e))

## 0.6.43 (2025-10-16)

Full Changelog: [v0.6.42...v0.6.43](https://github.com/LiquidMetal-AI/lm-raindrop-python-sdk/compare/v0.6.42...v0.6.43)
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright 2025 Raindrop
Copyright 2026 Raindrop

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
64 changes: 54 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<!-- prettier-ignore -->
[![PyPI version](https://img.shields.io/pypi/v/lm-raindrop.svg?label=pypi%20(stable))](https://pypi.org/project/lm-raindrop/)

The Raindrop Python library provides convenient access to the Raindrop REST API from any Python 3.8+
The Raindrop Python library provides convenient access to the Raindrop REST API from any Python 3.9+
application. The library includes type definitions for all request params and response fields,
and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).

Expand All @@ -30,7 +30,13 @@ from raindrop import Raindrop
client = Raindrop()

response = client.query.document_query(
bucket_location={"bucket": {"name": "my-smartbucket"}},
bucket_location={
"bucket": {
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
object_id="document.pdf",
request_id="<YOUR-REQUEST-ID>",
Expand All @@ -56,7 +62,13 @@ client = AsyncRaindrop()

async def main() -> None:
response = await client.query.document_query(
bucket_location={"bucket": {"name": "my-smartbucket"}},
bucket_location={
"bucket": {
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
object_id="document.pdf",
request_id="<YOUR-REQUEST-ID>",
Expand Down Expand Up @@ -93,7 +105,13 @@ async def main() -> None:
http_client=DefaultAioHttpClient(),
) as client:
response = await client.query.document_query(
bucket_location={"bucket": {"name": "my-smartbucket"}},
bucket_location={
"bucket": {
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
object_id="document.pdf",
request_id="<YOUR-REQUEST-ID>",
Expand Down Expand Up @@ -207,7 +225,13 @@ client = Raindrop()

try:
client.query.document_query(
bucket_location={"bucket": {"name": "my-smartbucket"}},
bucket_location={
"bucket": {
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
object_id="document.pdf",
request_id="<YOUR-REQUEST-ID>",
Expand Down Expand Up @@ -255,7 +279,13 @@ client = Raindrop(

# Or, configure per-request:
client.with_options(max_retries=5).query.document_query(
bucket_location={"bucket": {"name": "my-smartbucket"}},
bucket_location={
"bucket": {
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
object_id="document.pdf",
request_id="<YOUR-REQUEST-ID>",
Expand Down Expand Up @@ -283,7 +313,13 @@ client = Raindrop(

# Override per-request:
client.with_options(timeout=5.0).query.document_query(
bucket_location={"bucket": {"name": "my-smartbucket"}},
bucket_location={
"bucket": {
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
object_id="document.pdf",
request_id="<YOUR-REQUEST-ID>",
Expand Down Expand Up @@ -331,7 +367,9 @@ client = Raindrop()
response = client.query.with_raw_response.document_query(
bucket_location={
"bucket": {
"name": "my-smartbucket"
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
Expand All @@ -356,7 +394,13 @@ To stream the response body, use `.with_streaming_response` instead, which requi

```python
with client.query.with_streaming_response.document_query(
bucket_location={"bucket": {"name": "my-smartbucket"}},
bucket_location={
"bucket": {
"name": "my-smartbucket",
"version": "01jxanr45haeswhay4n0q8340y",
"application_name": "my-app",
}
},
input="What are the key points in this document?",
object_id="document.pdf",
request_id="<YOUR-REQUEST-ID>",
Expand Down Expand Up @@ -470,7 +514,7 @@ print(raindrop.__version__)

## Requirements

Python 3.8 or higher.
Python 3.9 or higher.

## Contributing

Expand Down
Loading