openai 0.75.0 → 0.76.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8f37ed6a1d2d71172c0518b0084e33f43eccb810d556234a8a94a6b2436fe481
4
- data.tar.gz: 4e5d4364cf54131f78c0d7ed39b699a55b4b87a9354a5ea46336157afdf097ff
3
+ metadata.gz: cab767061478241e5accb3482ec747785aff81c5b375a726d9e90d7d28401e88
4
+ data.tar.gz: 8d127b01f66be6a38f85530c93d7c33f8abf4f3b61d5750080f7f1308dbfa46b
5
5
  SHA512:
6
- metadata.gz: 38784a4f8a73c2d4c0d1126e6f88d47649879f18835c24a6c2411efcca52cbc84211cfbb19e45524aca10c3c9951f1b7ee8fa736d16811325577e791e85ed3ef
7
- data.tar.gz: a391891d80016f08701d8906cf3800adf32ca3966af91eec7636fe59884edaf46532056a40cfffb66a56f6138c264efd2f7e15d5b6cf2b0f64ace1ead0d56dc7
6
+ metadata.gz: e0a6982a093b6263fd2484b2ee50c9b3d712a0548015cda1b6401157fddef8ae802a9fc6a4b2fbfdea8e2e37ad6f8173500f9b97884008690fc2a8ced51cddbd
7
+ data.tar.gz: 9688ca923096844c3c6cd4205d448f7c06474214562cf28af350471e1ed8a726694960dd8733de94a9249bd86d0da4b06c3f52cdbe3ac5fcc1bdae6dd77890c2
data/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.76.0 (2026-07-31)
4
+
5
+ Full Changelog: [v0.75.0...v0.76.0](https://github.com/openai/openai-ruby/compare/v0.75.0...v0.76.0)
6
+
7
+ ### Features
8
+
9
+ * require Ruby 3.3 or newer ([#322](https://github.com/openai/openai-ruby/issues/322)) ([f40aef1](https://github.com/openai/openai-ruby/commit/f40aef1892a4ebafaf4c254522dbf12f3c04ba78))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * preserve generic Linux ffi lock entry ([#323](https://github.com/openai/openai-ruby/issues/323)) ([491eacb](https://github.com/openai/openai-ruby/commit/491eacbe59aa77586731a7929f487a4dcd6f7113))
15
+
3
16
  ## 0.75.0 (2026-07-31)
4
17
 
5
18
  Full Changelog: [v0.74.0...v0.75.0](https://github.com/openai/openai-ruby/compare/v0.74.0...v0.75.0)
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # OpenAI Ruby API library
2
2
 
3
- The OpenAI Ruby library provides convenient access to the OpenAI REST API from any Ruby 3.2.0+ application. It ships with comprehensive types & docstrings in Yard, RBS, and RBI – [see below](https://github.com/openai/openai-ruby#Sorbet) for usage with Sorbet. The standard library's `net/http` is used as the HTTP transport, with connection pooling via the `connection_pool` gem.
3
+ The OpenAI Ruby library provides convenient access to the OpenAI REST API from any Ruby 3.3.0+ application. It ships with comprehensive types & docstrings in Yard, RBS, and RBI – [see below](https://github.com/openai/openai-ruby#Sorbet) for usage with Sorbet. The standard library's `net/http` is used as the HTTP transport, with connection pooling via the `connection_pool` gem.
4
4
 
5
5
  ## Documentation
6
6
 
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "openai", "~> 0.75.0"
18
+ gem "openai", "~> 0.76.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -80,7 +80,7 @@ end
80
80
 
81
81
  ### File uploads
82
82
 
83
- Request parameters that correspond to file uploads can be passed as raw contents, a [`Pathname`](https://rubyapi.org/3.2/o/pathname) instance, [`StringIO`](https://rubyapi.org/3.2/o/stringio), or more.
83
+ Request parameters that correspond to file uploads can be passed as raw contents, a [`Pathname`](https://rubyapi.org/3.3/o/pathname) instance, [`StringIO`](https://rubyapi.org/3.3/o/stringio), or more.
84
84
 
85
85
  ```ruby
86
86
  require "pathname"
@@ -633,13 +633,14 @@ openai.chat.completions.create(
633
633
 
634
634
  ## Versioning
635
635
 
636
- This package follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions. As the library is in initial development and has a major version of `0`, APIs may change at any time.
637
-
638
- This package considers improvements to the (non-runtime) `*.rbi` and `*.rbs` type definitions to be non-breaking changes.
636
+ This package follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html). See the [versioning policy](VERSIONING.md) for how releases, breaking changes, Ruby support, dependencies, and type definitions are managed.
639
637
 
640
638
  ## Requirements
641
639
 
642
- Ruby 3.2.0 or higher.
640
+ Ruby 3.3.0 or higher.
641
+
642
+ Ruby 3.2 users can continue using v0.75.x, the final compatible release line.
643
+ This line will not receive separate maintenance.
643
644
 
644
645
  ## Contributing
645
646
 
data/VERSIONING.md ADDED
@@ -0,0 +1,77 @@
1
+ # Versioning policy
2
+
3
+ The OpenAI Ruby SDK follows [Semantic Versioning](https://semver.org/). This
4
+ policy covers the public gem API, supported Ruby runtimes, dependencies, and
5
+ type definitions.
6
+
7
+ ## Gem releases
8
+
9
+ | Change | While the gem is `0.x` | After `1.0` |
10
+ | --- | --- | --- |
11
+ | Backwards-compatible bug or security fix | Patch | Patch |
12
+ | Additive endpoint, optional argument, response field, or public type | Minor | Minor |
13
+ | Higher minimum Ruby version | Minor | Major by default |
14
+ | Other user-visible breaking change | Minor, with migration guidance | Major |
15
+
16
+ Breaking changes include removing or renaming public behavior and incompatible
17
+ changes to required arguments, return types, exception families,
18
+ serialization, retries, or authentication. A dependency upgrade follows the
19
+ same rule: its version number does not determine the SDK release; its effect on
20
+ SDK users does.
21
+
22
+ Corrections to non-runtime RBI or RBS definitions are normally patches. Use a
23
+ minor release when a type-only change is likely to create substantial new type
24
+ errors for users.
25
+
26
+ Security may require an accelerated breaking release, but an incompatible
27
+ change is never shipped as a routine patch.
28
+
29
+ ## Ruby support
30
+
31
+ The SDK supports released CRuby versions that are in Ruby Core's normal or
32
+ security maintenance phases. An EOL Ruby may receive up to six months of grace
33
+ only through an explicit SDK and Security exception. See [Ruby maintenance
34
+ branches](https://www.ruby-lang.org/en/downloads/branches/) for the upstream
35
+ lifecycle.
36
+
37
+ The current supported versions are Ruby 3.3, 3.4, and 4.0. The authoritative
38
+ minimum is `required_ruby_version` in `openai.gemspec`.
39
+
40
+ When the minimum Ruby version changes:
41
+
42
+ 1. Ship the change in the release category defined above, never in a patch.
43
+ 2. Name the final compatible gem release line in the README and release notes.
44
+ 3. Keep old releases available, without promising fixes or backports.
45
+ 4. Test every supported Ruby minor and verify the built gem rejects the old
46
+ runtime while installing on the new minimum.
47
+
48
+ CRuby is the supported implementation and its CI jobs are blocking. JRuby and
49
+ TruffleRuby are best effort until each has an explicitly owned compatibility
50
+ matrix and support decision.
51
+
52
+ ## Dependencies
53
+
54
+ - Keep the runtime dependency graph small and framework-neutral.
55
+ - Declare standard-library components that are distributed as independent gems.
56
+ - Prefer minimum or open-ended requirements. Add upper bounds only for known
57
+ incompatibilities.
58
+ - Test the minimum and latest resolvable dependency sets when practical.
59
+ - Keep framework and transport integrations optional or in separate gems when
60
+ adding them to the core gem would expand its compatibility surface.
61
+
62
+ ## Maintaining the policy
63
+
64
+ The Ruby version settings serve different purposes:
65
+
66
+ - `openai.gemspec` declares the customer support floor.
67
+ - `.rubocop.yml` targets the syntax of the oldest supported Ruby minor.
68
+ - The CI matrix tests every supported Ruby minor.
69
+ - `.ruby-version` pins the latest patch of the newest supported Ruby for local
70
+ development; it is not the customer support floor.
71
+ - Routine lint, package, and release jobs use the newest supported Ruby minor.
72
+
73
+ After each annual Ruby release, add the new minor to CI and move routine
74
+ development jobs to it once the suite is green. Around each March/April Ruby
75
+ EOL window, explicitly decide whether to raise the customer floor. A floor
76
+ increase must update the gemspec, README, RuboCop target, CI matrix, and release
77
+ notes together; automation must not make that decision by itself.
@@ -9,7 +9,7 @@ module OpenAI
9
9
  #
10
10
  # This module provides a base implementation for streaming responses in the SDK.
11
11
  #
12
- # @see https://rubyapi.org/3.2/o/enumerable
12
+ # @see https://rubyapi.org/3.3/o/enumerable
13
13
  module BaseStream
14
14
  include Enumerable
15
15
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module OpenAI
4
- VERSION = "0.75.0"
4
+ VERSION = "0.76.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.75.0
4
+ version: 0.76.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAI
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2026-07-31 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: base64
@@ -52,17 +51,18 @@ dependencies:
52
51
  - - ">="
53
52
  - !ruby/object:Gem::Version
54
53
  version: '0'
55
- description:
56
54
  email: support@openai.com
57
55
  executables: []
58
56
  extensions: []
59
57
  extra_rdoc_files:
60
58
  - README.md
59
+ - VERSIONING.md
61
60
  files:
62
61
  - ".ignore"
63
62
  - CHANGELOG.md
64
63
  - README.md
65
64
  - SECURITY.md
65
+ - VERSIONING.md
66
66
  - lib/openai.rb
67
67
  - lib/openai/auth/subject_token_provider.rb
68
68
  - lib/openai/auth/subject_token_providers/azure_managed_identity_token_provider.rb
@@ -3734,7 +3734,6 @@ metadata:
3734
3734
  homepage_uri: https://gemdocs.org/gems/openai
3735
3735
  source_code_uri: https://github.com/openai/openai-ruby
3736
3736
  rubygems_mfa_required: 'true'
3737
- post_install_message:
3738
3737
  rdoc_options: []
3739
3738
  require_paths:
3740
3739
  - lib
@@ -3742,15 +3741,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
3742
3741
  requirements:
3743
3742
  - - ">="
3744
3743
  - !ruby/object:Gem::Version
3745
- version: 3.2.0
3744
+ version: 3.3.0
3746
3745
  required_rubygems_version: !ruby/object:Gem::Requirement
3747
3746
  requirements:
3748
3747
  - - ">="
3749
3748
  - !ruby/object:Gem::Version
3750
3749
  version: '0'
3751
3750
  requirements: []
3752
- rubygems_version: 3.4.19
3753
- signing_key:
3751
+ rubygems_version: 4.0.16
3754
3752
  specification_version: 4
3755
3753
  summary: Ruby library to access the OpenAI API
3756
3754
  test_files: []