Skip to content

v0.17.0

Pre-release
Pre-release

Choose a tag to compare

@dgellow dgellow released this 06 Apr 14:53
6b3854a

0.17.0 (2026-04-06)

Features

  • api: add invoices endpoint (e3dc36b)
  • client: add custom JSON encoder for extended type support (c3b5654)
  • client: add support for binary request streaming (9fab813)
  • client: support file upload requests (c30571f)
  • improve future compat with pydantic v3 (34c4771)
  • internal: implement indices array format for query and form serialization (ca40ea2)
  • types: replace List[str] with SequenceNotStr in params (2feea72)

Bug Fixes

  • avoid newer type syntax (97a6bd0)
  • client: close streams without requiring full consumption (07565f4)
  • compat with Python 3.14 (6d9dced)
  • compat: update signatures of model_dump and model_dump_json for Pydantic v1 (04fe99a)
  • deps: bump minimum typing-extensions version (6fed404)
  • do not set headers with default to omit (c12f85d)
  • docs: fix mcp installation instructions for remote servers (838a057)
  • ensure streams are always closed (ad6ecbb)
  • pydantic: do not pass by_alias unless set (5bc0723)
  • sanitize endpoint path params (c336747)
  • types: allow pyright to infer TypedDict types within SequenceNotStr (94805b4)
  • use async_to_httpx_files in patch method (01b63cf)

Chores

  • add missing docstrings (87e6c26)
  • bump httpx-aiohttp version to 0.1.9 (5873278)
  • ci: skip lint on metadata-only changes (1b39b39)
  • ci: skip uploading artifacts on stainless-internal branches (7a402a1)
  • ci: upgrade actions/github-script (1259c91)
  • deps: mypy 1.18.1 has a regression, pin to 1.17 (9bd7727)
  • do not install brew dependencies in ./scripts/bootstrap by default (9b57d88)
  • format all api.md files (70e6bf5)
  • internal/tests: avoid race condition with implicit client cleanup (ea1f00b)
  • internal: add --fix argument to lint script (5176747)
  • internal: add missing files argument to base client (6cd26b3)
  • internal: add request options to SSE classes (e98ec3c)
  • internal: add Sequence related utils (b2efcd8)
  • internal: bump dependencies (b1b4293)
  • internal: change ci workflow machines (66e396d)
  • internal: codegen related update (adc4ebe)
  • internal: codegen related update (51fe70f)
  • internal: detect missing future annotations with ruff (8bb696e)
  • internal: fix lint error on Python 3.14 (402a3bc)
  • internal: fix ruff target version (f17e091)
  • internal: grammar fix (it's -> its) (43b245e)
  • internal: make test_proxy_environment_variables more resilient (a0ffa26)
  • internal: make test_proxy_environment_variables more resilient to env (2231274)
  • internal: move mypy configurations to pyproject.toml file (98f6e39)
  • internal: tweak CI branches (512d5e8)
  • internal: update actions/checkout version (84f9a41)
  • internal: update comment in script (01e1f9c)
  • internal: update gitignore (f61bc0d)
  • internal: update jsonl tests (be21d08)
  • internal: update pydantic dependency (8a90b34)
  • internal: update pyright exclude list (eac3ee9)
  • internal: update test skipping reason (d722eee)
  • package: drop Python 3.8 support (5e082f8)
  • project: add settings file for vscode (f239a0a)
  • speedup initial import (44cc4f8)
  • test: do not count install time for mock server timeout (5ccf216)
  • tests: bump steady to v0.19.4 (b7db238)
  • tests: bump steady to v0.19.5 (c23276a)
  • tests: bump steady to v0.19.6 (408cbed)
  • tests: bump steady to v0.19.7 (7d2195a)
  • tests: bump steady to v0.20.1 (88c428e)
  • tests: bump steady to v0.20.2 (b649c85)
  • tests: simplify get_platform test (28154a0)
  • types: change optional parameter type from NotGiven to Omit (8296334)
  • update @stainless-api/prism-cli to v5.15.0 (5820c96)
  • update github action (7eb64fb)
  • update lockfile (ebfe54a)
  • update mock server docs (fefe4a4)

Documentation

  • prominently feature MCP server setup in root SDK readmes (06e0b8f)

Refactors

  • tests: switch from prism to steady (57556cd)
  • types: use extra_items from PEP 728 (8f9357f)