Skip to content

Latest commit

 

History

History
1342 lines (779 loc) · 85.9 KB

File metadata and controls

1342 lines (779 loc) · 85.9 KB

Changelog

0.59.0 (2026-04-14)

Full Changelog: v0.58.0...v0.59.0

Features

  • api: Add detail to InputFileContent (b747a16)
  • api: add OAuthErrorCode type (643311e)

Documentation

0.58.0 (2026-04-08)

Full Changelog: v0.57.0...v0.58.0

Features

  • api: add phase field to conversations message model (a5dc6f8)
  • api: add WEB_SEARCH_CALL_RESULTS to ResponseIncludable enum (a556507)
  • client: add support for short-lived tokens (#1311) (a86d3bc)

Bug Fixes

  • align path encoding with RFC 3986 section 3.3 (8058a6d)
  • api: remove web_search_call.results from ResponseIncludable enum (2861387)
  • internal: correct multipart form field name encoding (683d14b)
  • multipart encoding for file arrays (755b444)
  • variable name typo (6b333a4)

Chores

  • ci: support opting out of skipping builds on metadata-only commits (1b6ddfa)
  • tests: bump steady to v0.20.1 (952ea68)
  • tests: bump steady to v0.20.2 (615427b)

Documentation

  • api: update file parameter descriptions in vector_stores (260e754)

0.57.0 (2026-03-25)

Full Changelog: v0.56.0...v0.57.0

Features

  • api: add keys field to computer action types (bd5c423)

Bug Fixes

  • api: align SDK response types with expanded item schemas (9aaf1f2)
  • types: make type field required in ResponseInputMessageItem (246318f)

Chores

  • ci: skip lint on metadata-only changes (0281bf9)
  • internal: update gitignore (1708a02)
  • tests: bump steady to v0.19.4 (8cb70d7)
  • tests: bump steady to v0.19.5 (b662b68)
  • tests: bump steady to v0.19.6 (6f82a97)
  • tests: bump steady to v0.19.7 (73c4eb8)

Refactors

  • tests: switch from prism to steady (9907cd8)

0.56.0 (2026-03-17)

Full Changelog: v0.55.0...v0.56.0

Features

  • api: 5.4 nano and mini model slugs (ce7f09d)
  • api: add /v1/videos endpoint support to batch create params (7a661eb)
  • api: add defer_loading field to namespace_tool function (2f3b9b7)
  • api: add in/nin operators to ComparisonFilter (70c8bf5)

Chores

  • internal: tweak CI branches (1a5054f)

0.55.0 (2026-03-13)

Full Changelog: v0.54.0...v0.55.0

Features

0.54.0 (2026-03-13)

Full Changelog: v0.53.0...v0.54.0

Features

  • api: api update (235124c)
  • api: manual updates (d1ee93f)
  • api: manual updates (8f13ded)
  • api: sora api improvements: character api, video extensions/edits, higher resolution exports. (58a8c4d)
  • client: add webhook support (3a2425f)

Chores

  • internal: codegen related update (2100fc4)

0.53.0 (2026-03-05)

Full Changelog: v0.52.0...v0.53.0

Features

  • api: The GA ComputerTool now uses the CompuerTool class. The 'computer_use_preview' tool is moved to ComputerUsePreview (154455d)

0.52.0 (2026-03-05)

Full Changelog: v0.51.0...v0.52.0

Features

  • api: gpt-5.4, tool search tool, and new computer tool (8cdcde5)
  • api: remove phase from EasyInputMessage/ResponseOutputMessage, prompt_cache_key from compact (f603ff1)

Bug Fixes

  • api: internal schema fixes (261ed6a)
  • api: manual updates (4f10197)
  • api: readd phase (a78d02b)
  • properly mock time in ruby ci tests (b554a8b)

Chores

  • internal: codegen related update (3f6d5be)
  • internal: codegen related update (356b20b)
  • internal: reduce warnings (c13a8a3)

0.51.0 (2026-02-24)

Full Changelog: v0.50.0...v0.51.0

Features

Bug Fixes

0.50.0 (2026-02-24)

Full Changelog: v0.49.1...v0.50.0

Features

  • api: add gpt-realtime-1.5 and gpt-audio-1.5 models to realtime session (23a0d24)

0.49.1 (2026-02-23)

Full Changelog: v0.49.0...v0.49.1

Bug Fixes

Chores

  • update mock server docs (4ab9773)

Documentation

  • api: add batch size limit to vector_stores file_batch_create_params (f8f915b)
  • api: add length limit to safety_identifier in chat/responses (f76fd6f)
  • api: enhance method descriptions and return value docs across resources (6ac3366)

0.49.0 (2026-02-13)

Full Changelog: v0.48.0...v0.49.0

Features

  • api: container network_policy and skills (0bad2bd)

Documentation

0.48.0 (2026-02-10)

Full Changelog: v0.47.0...v0.48.0

Features

  • api: support for images in batch api (fc847f5)

0.47.0 (2026-02-10)

Full Changelog: v0.46.0...v0.47.0

Features

  • api: skills and hosted shell (cf841cd)

0.46.0 (2026-02-08)

Full Changelog: v0.45.0...v0.46.0

Features

  • api: responses context_management (d954f15)

Bug Fixes

  • client: loosen json header parsing (8b7f68c)

0.45.0 (2026-02-04)

Full Changelog: v0.44.0...v0.45.0

Features

  • api: add shell_call_output status field (b235617)
  • api: image generation actions for responses; ResponseFunctionCallArgumentsDoneEvent.name (da359de)

Bug Fixes

  • client: always add content-length to post body, even when empty (b6faa94)
  • client: undo change to web search Find action (e10a7dd)
  • client: update type for find_in_page action (dd727fa)

Chores

  • client: improve example values (3c8e152)
  • docs: remove www prefix (6ef56a3)

0.44.0 (2026-01-27)

Full Changelog: v0.43.0...v0.44.0

Features

Bug Fixes

  • api: mark assistants as deprecated (5baf7da)

Chores

  • internal: update actions/checkout version (78251bd)

0.43.0 (2026-01-09)

Full Changelog: v0.42.0...v0.43.0

Features

  • api: add new Response completed_at prop (c32e1c2)

Chores

  • add ci tests for ruby 4 compatibility #235 (#236) (1aa0d7a)
  • internal: codegen related update (ef23de3)
  • internal: use different example values for some enums (8b6c4ad)
  • move cgi into dependencies for ruby 4 (bd9c798)

0.42.0 (2025-12-19)

Full Changelog: v0.41.0...v0.42.0

Bug Fixes

  • issue where json.parse errors when receiving HTTP 204 with nobody (7984c03)
  • rebuild (52b19e9)

0.41.0 (2025-12-16)

Full Changelog: v0.40.0...v0.41.0

Features

Bug Fixes

  • api: manual updates for ruby build (c142813)
  • calling break out of streams should be instantaneous (7fc53db)

0.40.0 (2025-12-13)

Full Changelog: v0.39.0...v0.40.0

Features

  • api: api update (a4115ea)
  • api: fix grader input list, add dated slugs for sora-2 (bedec43)

0.39.0 (2025-12-11)

Full Changelog: v0.38.0...v0.39.0

Features

Bug Fixes

  • Create new responses with previous_response_id (#869) (b14e2aa)

0.38.0 (2025-12-08)

Full Changelog: v0.37.0...v0.38.0

Features

  • api: make model required for the responses/compact endpoint (94ad657)

0.37.0 (2025-12-04)

Full Changelog: v0.36.1...v0.37.0

Features

  • api: gpt-5.1-codex-max and responses/compact (17f7eda)

Chores

  • add "base64" as a dependency for newer ruby versions (#868) (b7be495)
  • explicitly require "base64" gem (4be5941)

0.36.1 (2025-11-17)

Full Changelog: v0.36.0...v0.36.1

Bug Fixes

  • api: align types of input items / output items for typescript (b593643)

0.36.0 (2025-11-13)

Full Changelog: v0.35.2...v0.36.0

Features

0.35.2 (2025-11-05)

Full Changelog: v0.35.1...v0.35.2

Bug Fixes

  • better thread safety via early initializing SSL store during HTTP client creation (e7d9a3d)
  • schema generation (#862) (2c9b91a)

0.35.1 (2025-11-04)

Full Changelog: v0.35.0...v0.35.1

Bug Fixes

  • api: fix nullability of logprobs (adead66)

0.35.0 (2025-11-03)

Full Changelog: v0.34.1...v0.35.0

Features

  • api: Realtime API token_limits, Hybrid searching ranking options (f7f04ea)
  • api: remove InputAudio from ResponseInputContent (e8f5e9f)
  • handle thread interrupts in the core HTTP client (92e26d0)

Bug Fixes

  • api: docs updates (88a4a35)
  • text and tools use mutually exclusive issue (#855) (7d93874)

Chores

  • add license information to the gemspec file (#222) (90d3c4a)
  • client: send user-agent header (3a850a9)
  • internal: codegen related update (f6b9f90)

0.34.1 (2025-10-20)

Full Changelog: v0.34.0...v0.34.1

Bug Fixes

  • api: fix discriminator propertyName for ResponseFormatJsonSchema (e7bacfb)

0.34.0 (2025-10-20)

Full Changelog: v0.33.0...v0.34.0

Features

  • api: Add responses.input_tokens.count (4c3f064)

Bug Fixes

  • api: internal openapi updates (1fbce8c)

0.33.0 (2025-10-17)

Full Changelog: v0.32.0...v0.33.0

Features

0.32.0 (2025-10-16)

Full Changelog: v0.31.0...v0.32.0

Features

  • api: Add support for gpt-4o-transcribe-diarize on audio/transcriptions endpoint (b31bd7f)

Bug Fixes

  • absolutely qualified uris should always override the default (14fdff8)
  • should not reuse buffers for IO.copy_stream interop (8f33de1)

0.31.0 (2025-10-10)

Full Changelog: v0.30.0...v0.31.0

Features

  • api: comparison filter in/not in (ac3e58b)

Chores

  • ignore linter error for tests having large collections (90c4440)
  • simplify model references (d18c5af)

0.30.0 (2025-10-06)

Full Changelog: v0.29.0...v0.30.0

Features

  • api: dev day 2025 launches (98a56b4)

0.29.0 (2025-10-02)

Full Changelog: v0.28.1...v0.29.0

Features

  • api: add support for realtime calls (2c89d20)

0.28.1 (2025-10-01)

Full Changelog: v0.28.0...v0.28.1

Bug Fixes

  • api: add status, approval_request_id to MCP tool call (51622d0)

0.28.0 (2025-09-30)

Full Changelog: v0.27.1...v0.28.0

⚠ BREAKING CHANGES

  • api: ResponseFunctionToolCallOutputItem.output and ResponseCustomToolCallOutput.output now return string | Array<ResponseInputText | ResponseInputImage | ResponseInputFile> instead of string only. This may break existing callsites that assume output is always a string.

Features

  • api: Support images and files for function call outputs in responses, BatchUsage (904348a)

Bug Fixes

  • coroutine leaks from connection pool (7f0b3cd)

0.27.1 (2025-09-29)

Full Changelog: v0.27.0...v0.27.1

Bug Fixes

  • always send filename=... for multipart requests where a file is expected (99849fd)

0.27.0 (2025-09-26)

Full Changelog: v0.26.0...v0.27.0

Features

Bug Fixes

  • internal: use null byte as file separator in the fast formatting script (151ffe1)
  • shorten multipart boundary sep to less than RFC specificed max length (d7770d1)

Performance Improvements

Chores

  • allow fast-format to use bsd sed as well (66ac913)

0.26.0 (2025-09-23)

Full Changelog: v0.25.1...v0.26.0

Features

0.25.1 (2025-09-22)

Full Changelog: v0.25.0...v0.25.1

Bug Fixes

Chores

  • api: openapi updates for conversations (ce76a59)
  • do not install brew dependencies in ./scripts/bootstrap by default (3afa532)
  • improve example values (ad9a444)

0.25.0 (2025-09-19)

Full Changelog: v0.24.0...v0.25.0

Features

  • api: add reasoning_text (48073e9)

0.24.0 (2025-09-17)

Full Changelog: v0.23.3...v0.24.0

Features

  • api: type updates for conversations, reasoning_effort and results for evals (ee17642)
  • expose response headers for both streams and errors (a158fd6)

0.23.3 (2025-09-15)

Full Changelog: v0.23.2...v0.23.3

Chores

  • api: docs and spec refactoring (81ccb86)

0.23.2 (2025-09-11)

Full Changelog: v0.23.1...v0.23.2

Chores

  • api: Minor docs and type updates for realtime (ccef982)

0.23.1 (2025-09-10)

Full Changelog: v0.23.0...v0.23.1

Chores

  • api: fix realtime GA types (342f8d9)

0.23.0 (2025-09-08)

Full Changelog: v0.22.1...v0.23.0

Features

  • api: ship the RealtimeGA API shape (6c59e2c)

0.22.1 (2025-09-05)

Full Changelog: v0.22.0...v0.22.1

Bug Fixes

  • internal: oops had a bad test merge in (#824) (d3a0ae8)
  • use APIStatusError.for instead of APIError.for in stream.rb (#194) (275e19b)
  • use correct error class when raising errors from within streams (271d805)

0.22.0 (2025-09-03)

Full Changelog: v0.21.1...v0.22.0

Features

  • api: Add gpt-realtime models (8e6de5f)

0.21.1 (2025-09-02)

Full Changelog: v0.21.0...v0.21.1

Chores

  • api: manual updates for ResponseInputAudio (7768f86)

0.21.0 (2025-09-02)

Full Changelog: v0.20.0...v0.21.0

Features

  • api: realtime API updates (a8ab6ab)

Bug Fixes

  • correctly raise errors encountered during streaming (766c6c6)

0.20.0 (2025-08-26)

Full Changelog: v0.19.0...v0.20.0

Features

  • api: add web search filters (3b84ccf)

Chores

  • add example for using openai-ruby with Azure OpenAI (#185) (9a9338f)
  • add json schema comment for rubocop.yml (1f85c0d)
  • annotate structured output parsed responses with response_only (#814) (320b726)

0.19.0 (2025-08-21)

Full Changelog: v0.18.1...v0.19.0

Features

  • api: Add connectors support for MCP tool (469dbe2)
  • api: adding support for /v1/conversations to the API (54d4fe7)

Bug Fixes

  • bump sorbet version and fix new type errors from the breaking change (147f0a4)
  • do note check stainless api key during release creation (#813) (afab147)

Chores

  • internal/ci: setup breaking change detection (f6a214c)

0.18.1 (2025-08-19)

Full Changelog: v0.18.0...v0.18.1

Chores

  • api: accurately represent shape for verbosity on Chat Completions (a19cd00)

0.18.0 (2025-08-15)

Full Changelog: v0.17.1...v0.18.0

⚠ BREAKING CHANGES

  • structured output desc should go on array items not array itself (#799)

Features

  • api: add new text parameters, expiration options (f318432)

Bug Fixes

  • structured output desc should go on array items not array itself (#799) (ff507d0)

Chores

  • internal: update test skipping reason (c815703)

0.17.1 (2025-08-09)

Full Changelog: v0.17.0...v0.17.1

Chores

  • collect metadata from type DSL (d63cb9e)
  • internal: update comment in script (a08be47)

0.17.0 (2025-08-08)

Full Changelog: v0.16.0...v0.17.0

Features

  • api: adds GPT-5 and new API features: platform.openai.com/docs/guides/gpt-5 (068a381)
  • api: manual updates (1d79621)

Bug Fixes

  • client: dont try to parse if content is missing (#770) (7f8f2d3)
  • client: fix verbosity parameter location in Responses (a6b7ae8)
  • internal: fix rbi error (803f20b)
  • respones: undo accidently deleted fields (#177) (90a7c3a)
  • responses: remove incorrect verbosity param (127e2d1)

Chores

  • internal: increase visibility of internal helper method (eddbcda)
  • update @stainless-api/prism-cli to v5.15.0 (aaa7d89)

0.16.0 (2025-07-30)

Full Changelog: v0.15.0...v0.16.0

Features

  • add output_text method for non-streaming responses (#757) (50cf119)
  • api: manual updates (e9fa8a0)

Bug Fixes

  • internal: ensure sorbet test always runs serially (0601061)
  • provide parsed outputs for resumed streams (#756) (82254f9)
  • union definition re-using (#760) (3046c28)

Chores

  • extract reused JSON schema references even in unions (#761) (e17d3bf)
  • internal: refactor variable name (#762) (7e15b07)
  • update contribute.md (b4a0297)

0.15.0 (2025-07-21)

Full Changelog: v0.14.0...v0.15.0

Features

Bug Fixes

  • internal: tests should use normalized property names (801e9c2)

Chores

  • api: event shapes more accurate (29f32ce)

0.14.0 (2025-07-16)

Full Changelog: v0.13.1...v0.14.0

Features

0.13.1 (2025-07-15)

Full Changelog: v0.13.0...v0.13.1

Bug Fixes

  • ensure openapi refs are correctly linked (#746) (ea3fccd)

Chores

  • api: update realtime specs, build config (8ccc35e)

0.13.0 (2025-07-10)

Full Changelog: v0.12.0...v0.13.0

Features

  • api: add file_url, fix event ID (9b8919d)

0.12.0 (2025-07-03)

Full Changelog: v0.11.0...v0.12.0

Features

  • ensure partial jsons in structured ouput are handled gracefully (#740) (5deec70)
  • responses streaming helpers (#721) (c2f4270)

Chores

  • ci: only run for pushes and fork pull requests (97538e2)
  • internal: allow streams to also be unwrapped on a per-row basis (49bdadf)
  • internal: minor refactoring of json helpers (#744) (f13edee)

0.11.0 (2025-06-26)

Full Changelog: v0.10.0...v0.11.0

Features

  • api: webhook and deep research support (6228400)

Bug Fixes

  • ci: release-doctor — report correct token name (c12c991)

Chores

  • api: remove unsupported property (1073c3a)
  • client: throw specific errors (0cf937e)
  • docs: update README to include links to docs on Webhooks (2d8f23e)

0.10.0 (2025-06-23)

Full Changelog: v0.9.0...v0.10.0

Features

  • api: make model and inputs not required to create response (2087fb5)
  • api: update api shapes for usage and code interpreter (733ebfb)

Bug Fixes

  • internal: fix: should publish to ruby gems when a release is created (aebd8eb)
  • issue where we cannot mutate arrays on base model derivatives (266d072)

Chores

  • allow more free formatted json response input (#726) (69fb0af)

0.9.0 (2025-06-17)

Full Changelog: v0.8.0...v0.9.0

Features

  • api: add reusable prompt IDs (72e35ad)
  • api: manual updates (a4bcab7)

Chores

  • ci: enable for pull requests (e8dfcf9)
  • ci: link to correct github repo (7b34316)

Documentation

0.8.0 (2025-06-10)

Full Changelog: v0.7.0...v0.8.0

Features

  • api: Add o3-pro model IDs (025845a)

0.7.0 (2025-06-09)

Full Changelog: v0.6.0...v0.7.0

Features

  • api: Add tools and structured outputs to evals (6ee3392)

Bug Fixes

  • default content-type for text in multi-part formdata uploads should be text/plain (105cf47)
  • tool parameter mapping for chat completions (#156) (5999b9f)
  • tool parameter mapping for responses (#704) (ac8bf11)

0.6.0 (2025-06-03)

Full Changelog: v0.5.1...v0.6.0

Features

  • api: add new realtime and audio models, realtime session options (315f0b0)

Bug Fixes

  • to_sorbet_type should not return branded types (4a1f14b)

Chores

0.5.1 (2025-06-02)

Full Changelog: v0.5.0...v0.5.1

Bug Fixes

  • api: Fix evals and code interpreter interfaces (24a9100)

0.5.0 (2025-05-29)

Full Changelog: v0.4.1...v0.5.0

Features

  • api: Config update for pakrym-stream-param (214e516)

Bug Fixes

  • client: return binary content from get /containers/{container_id}/files/{file_id}/content (2b7122a)
  • sorbet types for enums, and make tapioca detection ignore tapioca dsl (0e24b3e)

Chores

  • deprecate Assistants API (4ce7530)

0.4.1 (2025-05-23)

Full Changelog: v0.4.0-beta.1...v0.4.1

Bug Fixes

  • prevent rubocop from mangling === to is_a? check (c3a61c9)

0.4.0-beta.1 (2025-05-23)

Full Changelog: v0.1.0-beta.2...v0.4.0-beta.1

Features

  • structured output for responses API (text) (#688) (282ec24)
  • structured output for responses API (tools) (#691) (5e524ea)

Chores

  • internal: fix release workflows (e1b31a6)
  • internal: version bump (b2dd8dd)
  • update README for public release (#145) (64e3849)

0.1.0-beta.2 (2025-05-22)

Full Changelog: v0.1.0-beta.1...v0.1.0-beta.2

Features

  • api: add container endpoint (8be52a2)
  • api: further updates for evals API (ae7a8b8)
  • api: new API tools (9105b8b)
  • api: new streaming helpers for background responses (91a278e)
  • api: Updating Assistants and Evals API schemas (690b6a7)
  • RBI type defs for structured output (#684) (00b25bd)

Bug Fixes

  • correctly instantiate sorbet type aliases for enums and unions (15a2b2b)
  • structured output union decorations (05b69d1)

Chores

  • disable sorbet typecheck for WIP sorbet annotations in examples (#678) (a340356)
  • docs: grammar improvements (c4ef024)
  • force utf-8 locale via RUBYOPT when formatting (746abf4)
  • internal: version bump (b35ea63)
  • refine Yard and Sorbet types and ensure linting is turned on for examples (a16dd00)
  • use fully qualified names for yard annotations and rbs aliases (26db76d)
  • use sorbet union aliases where available (600f499)

Documentation

  • grammar improvements (15511fc)
  • grammar improvements in README.md (d43db56)

0.1.0-beta.1 (2025-05-16)

Full Changelog: v0.1.0-alpha.5...v0.1.0-beta.1

Features

  • api: add image sizes, reasoning encryption (c4565ed)
  • api: Add reinforcement fine-tuning api support (65834c6)
  • api: adding new image model support (641f4eb)
  • api: manual updates (c4989d6)
  • bump default connection pool size limit to minimum of 99 (3fc0971)
  • expose base client options as read only attributes (1d53fee)
  • expose recursive #to_h conversion (734833c)
  • initial structured outputs support (#565) (a613a39)
  • support sorbet aliases at the runtime (0ef168a)
  • support specifying content-type with FilePart class (ece942c)
  • support webmock for testing (9e1a0f1)

Bug Fixes

  • ensure gem release is unaffected by renaming (513acd8)
  • fix workflow syntax (b5d45ce)
  • internal: ensure formatting always uses c.utf-8 locale (3d51f78)
  • internal: fix formatting script for macos (6784709)
  • JSON.fast_generate is deprecated (591fdf0)
  • make a typo for FilePart.content (c78ea0f)

Chores

  • add generator safe directory (5c9767e)
  • always check if current page is empty in next_page? (8e8464e)
  • broadly detect json family of content-type headers (77f7239)
  • bump minimum supported Ruby version to 3.2 (41ce053)
  • ci: add timeout thresholds for CI jobs (6fba7b2)
  • ci: only use depot for staging repos (57a10b0)
  • ci: run on more branches and use depot runners (0ae14a8)
  • consistently use string in examples, even for enums (cec4b05)
  • ensure examples have busybox compat shebangs (7720dca)
  • explicitly mark apis public under Internal module (ca0d841)
  • fix misc linting / minor issues (918ac6b)
  • internal: annotate request options with type aliases in sorbet (4918836)
  • internal: codegen related update (139a140)
  • internal: codegen related update (ebf0cae)
  • internal: codegen related update (71cf48f)
  • internal: codegen related update (f3fc915)
  • internal: improve response envelope unwrap functionality (a05d2c5)
  • internal: minor type annotation improvements (67b0e35)
  • internal: remove unnecessary rbi/lib folder (df9e099)
  • internal: touch up formatting (d3c5587)
  • internal: version bump (ef2a5d4)
  • loosen rubocop rules that don't always make sense (4244f89)
  • migrate away from deprecated JSON#fast_generate (3be700f)
  • more accurate type annotations and aliases (04b111d)
  • re-export top level models under library namespace (8c5e78a)
  • remove Gemfile.lock (2306cb4)
  • remove Gemfile.lock during bootstrap (c248f15)
  • reorganize type aliases (1815c45)
  • revert ignoring Gemfile.lock (9a2827b)
  • show truncated parameter docs in yard (bf84473)
  • validate request option coercion correctness (c5b4f52)

Documentation

  • fix out of place README snippet (39d155f)
  • illustrate environmental defaults for auth variables (7d8ee4f)
  • readme: fix typo (a6c7609)
  • rewrite much of README.md for readability (f3c721e)

0.1.0-alpha.5 (2025-04-18)

Full Changelog: v0.1.0-alpha.4...v0.1.0-alpha.5

Features

  • implement #hash for data containers (924fcb4)

Bug Fixes

  • always send idempotency header when specified as a request option (548bfaf)
  • client: send correct HTTP path (896142a)

Chores

  • documentation improvements (ff43d73)
  • internal: configure releases (7eb9185)
  • internal: contribute.md and contributor QoL improvements (d060adf)
  • make sorbet enums easier to read (7c03213)
  • refine #inspect and #to_s for model classes (84308a6)
  • simplify yard annotations by removing most @!parse directives (16ec2e3)
  • update README with recommended editor plugins (c745aef)
  • update readme with temporary install instructions (8a79cc0)
  • use @!method instead of @!parse for virtual method type definitions (b5fba2e)

0.1.0-alpha.4 (2025-04-16)

Full Changelog: v0.1.0-alpha.3...v0.1.0-alpha.4

⚠ BREAKING CHANGES

  • bump min supported ruby version to 3.1 (oldest non-EOL) (#93)
  • remove top level type aliases to relocated classes (#91)
  • use descriptive prefixes for enum names that start with otherwise illegal identifiers (#89)

Features

  • add reference links in yard (#79) (98262c8)
  • add stubs documenting coming soon streaming helpers (d455e9b)
  • allow all valid JSON types to be encoded (#102) (5f5ee8b)
  • api: Add evalapi to sdk (#113) (230bbfd)
  • api: add o3 and o4-mini model IDs (4d3d4b7)
  • api: adding gpt-4.1 family of model IDs (b4183d5)
  • api: manual updates (#116) (aef32b1)
  • api: manual updates (#83) (33c9252)
  • api: manual updates (#84) (4755fff)
  • api: manual updates (#88) (2db2fb6)
  • api: manual updates (#92) (5b6d96e)
  • bump min supported ruby version to 3.1 (oldest non-EOL) (#93) (5c4feaa)
  • client: enable setting base URL from environment variable (b9da54b)
  • example code snippets (67c590b)
  • implement to_json for base model (#86) (f333c1c)
  • link response models to their methods in yard doc (#81) (0f4332a)
  • remove top level type aliases to relocated classes (#91) (4588640)
  • support query, header, and body params that have identical names (#101) (f70c567)
  • support solargraph generics (#96) (80829ad)
  • use Pathname alongside raw IO handles for file uploads (#119) (8728785)

Bug Fixes

  • converter should transform stringio into string where applicable (#104) (c2f3c12)
  • inaccuracies in the README.md (7d42afa)
  • internal: update release-please to use ruby strategy for README.md (#123) (27f89a9)
  • pre-release version string should match ruby, not semver conventions (#95) (18c01b1)
  • raise connection error for errors that result from HTTP transports (#120) (d7d7a54)
  • use descriptive prefixes for enum names that start with otherwise illegal identifiers (#89) (647efa0)

Chores

  • add README docs for using solargraph when installing gem from git (#118) (368c337)
  • always fold up method bodies in sorbet type definitions (#108) (1967acc)
  • attempt to clean up underlying transport when streams are GC'd (#117) (4a43313)
  • demonstrate how to make undocumented requests in README (#94) (fbd8130)
  • do not use literals for version in type definitions (#97) (57bc1e7)
  • docs/README tweaks (#570) (ccbf6a2)
  • document LSP support in read me (#100) (1a0a335)
  • easier to read examples in README.md (#111) (2435ef5)
  • ensure readme.md is bumped when release please updates versions (#122) (0431cff)
  • extract error classes into own module (#87) (a8595ff)
  • fix readme typo (#125) (f329b13)
  • improve yard docs readability (#80) (76cf765)
  • internal: always run post-processing when formatting when syntax_tree (15fff97)
  • internal: expand CI branch coverage (#124) (5e73790)
  • internal: fix examples (#114) (8abe02b)
  • internal: loosen internal type restrictions (35babf9)
  • internal: minor touch ups on sdk internals (1d828d1)
  • internal: misc small improvements (#105) (fa32836)
  • internal: more concise handling of parameter naming conflicts (#110) (a6c4233)
  • internal: mostly README touch ups (eaf6038)
  • internal: protect SSE parsing pipeline from broken UTF-8 characters (334b99e)
  • internal: reduce CI branch coverage (0737020)
  • internal: rubocop rules (#107) (036211d)
  • internal: run rubocop linter in parallel (#106) (bc4e591)
  • internal: skip broken test (#115) (1e39fe5)
  • internal: version bump (#78) (2126d20)
  • loosen const and integer coercion rules (#121) (c95e3d8)
  • make client tests look prettier (#112) (5d78108)
  • make internal types pretty print (655a382)
  • misc sdk polish (#99) (bedd502)
  • move private classes into internal module (#90) (9c96bde)
  • order client variables by "importance" (#85) (03c5192)
  • relax sorbet enum parameters to allow String in addition to Symbol (#82) (5ddeea8)
  • rename confusing Type::BooleanModel to Type::Boolean (#103) (d98024f)
  • simplify internal utils (#98) (7c09129)
  • touch up readme sorbet example (b4d1d9e)
  • update yard comment formatting (#109) (8d9ee28)
  • workaround build errors (42a052c)

Documentation

  • update documentation links to be more uniform (e6d53dc)

0.1.0-alpha.3 (2025-04-01)

Full Changelog: v0.1.0-alpha.2...v0.1.0-alpha.3

⚠ BREAKING CHANGES

  • use tagged enums in sorbet type definitions (#49)
  • support for item in stream style iteration on Streams (#44)
  • model: base model should recursively store coerced base models (#29)

Features

  • api: add get /chat/completions endpoint (4570a0f)
  • api: add get /responses/{response_id}/input_items endpoint (7eaee28)
  • api: new models for TTS, STT, + new audio features for Realtime (#46) (56c2a3f)
  • api: o1-pro now available through the API (#43) (e158e7e)
  • collapse anonymous enum into unions (#54) (9fc4185)
  • consistently accept AnyHash types in parameter positions in sorbet (#57) (adf7232)
  • internal: converter interface should recurse without schema (#68) (2c67222)
  • prevent tapioca from introspecting the gem internals (#56) (09df54b)
  • support for item in stream style iteration on Streams (#44) (517cf73)
  • use tagged enums in sorbet type definitions (#49) (c0a0340)

Bug Fixes

  • api: correct some Responses types (#30) (51b4d37)
  • client: remove duplicate types (#47) (d26429c)
  • label optional keyword arguments in *.rbs type definitions (#41) (fe7be91)
  • missing union constants in rbs and rbi type definitions (#28) (8a1a86e)
  • model: base model should recursively store coerced base models (#29) (ab2daf1)
  • pages should be able to accept non-converter models (#60) (ca44472)
  • path interpolation template strings (#77) (f1eec93)
  • resolve tapioca derived sorbet errors (#45) (f155158)
  • sorbet class aliases are not type aliases (#40) (871fcd5)
  • switch to github compatible markdown engine (#73) (5ea2f1a)
  • type names (acb2ad3)
  • types: improve responses type names (#34) (a82dc6f)
  • yard example tag formatting (#53) (f9282fc)

Chores

  • BaseModel fields that are BaseModel typed should also accept Hash (#52) (aab09b2)
  • add [@yieldparam](https://github.com/yieldparam) to yard doc (#36) (aa0519b)
  • add example directory (#39) (c62326d)
  • add hash of OpenAPI spec/config inputs to .stats.yml (6bd0b48)
  • add type annotations for enum and union member listing methods (#55) (a2be966)
  • api: updates to supported Voice IDs (#64) (6c42664)
  • disable dangerous rubocop auto correct rule (#62) (f34ac80)
  • disable overloads in *.rbs definitions for readable LSP errors (#42) (2364f78)
  • disable unnecessary linter rules for sorbet manifests (#35) (cf2f693)
  • document Client's concurrency capability (#33) (9b08fb0)
  • fix misc rubocop errors (#74) (40315e6)
  • ignore some spurious linter warnings and formatting changes (#31) (e376e31)
  • internal: add sorbet config for SDK local development (#38) (f8cb16b)
  • internal: bugfix (#51) (0967a13)
  • internal: codegen related update (#27) (83ac858)
  • internal: minor refactoring of utils (#67) (47f9f49)
  • internal: version bump (#26) (b9dde82)
  • more accurate type annotations for SDK internals (#71) (2071dd2)
  • more aggressive tapioca detection logic for skipping compiler introspection (#65) (1da15be)
  • more readable output when tests fail (#63) (c3cfea9)
  • re-order assignment lines to make unions easier to read (#66) (50f6e5e)
  • recursively accept AnyHash for BaseModels in arrays and hashes (#58) (92f1cba)
  • reduce verbosity in type declarations (#61) (9517e27)
  • relocate internal modules (#70) (350fe34)
  • Remove deprecated/unused remote spec feature (e2bffd6)
  • remove unnecessary & confusing module (#69) (c0ea470)
  • support binary responses (#76) (1b19e9b)
  • switch to prettier looking sorbet annotations (#59) (0ab5871)
  • update readme (#72) (21ed2b6)
  • use fully qualified name in sorbet README example (#75) (273a784)
  • use multi-line formatting style for really long lines (#37) (acb95ee)

0.1.0-alpha.2 (2025-03-18)

Full Changelog: v0.1.0-alpha.1...v0.1.0-alpha.2

Features

Bug Fixes

  • enums should not unnecessarily convert non-members to symbol type (#23) (05294a7)

Chores

  • add most doc strings to rbi type definitions (#12) (f711649)
  • do not label modules as abstract (#22) (bad4ec9)
  • document union variants in yard doc (#16) (3ffacfe)
  • ensure doc strings for rbi method arguments (#13) (2c59996)
  • error fields are now mutable in keeping with rest of SDK (#15) (0e30eb7)
  • internal: remove CI condition (#18) (db07e59)
  • mark non-inheritable SDK internal classes as final (#19) (ed33b6b)
  • sdk client internal refactoring (#21) (927e252)
  • sdk internal updates (#9) (7673bb0)
  • slightly more consistent type definition layout (#17) (1e4b557)
  • touch up sdk usage examples (#14) (7219d46)
  • use generics instead of overloading for sorbet type definitions (#20) (a279382)

0.1.0-alpha.1 (2025-03-13)

Full Changelog: v0.0.1-alpha.0...v0.1.0-alpha.1

Features

Bug Fixes

  • enums should only coerce matching symbols into strings (#3) (0f4c842)

Chores

  • improve documentation (d9ce7ce)
  • improve rbi typedef for page classes (#6) (3450adf)
  • internal: remove extra empty newlines (#7) (8ce4f87)
  • more accurate generic params for stream classes (#8) (c83ab37)
  • refactor BasePage to have initializer (#5) (43e80fa)
  • remove stale thread local checks (#4) (69e8be8)