Skip to content

Commit db3b667

Browse files
chore: error fields are now mutable in keeping with rest of SDK (#15)
1 parent c2a48b0 commit db3b667

File tree

9 files changed

+96
-32
lines changed

9 files changed

+96
-32
lines changed

lib/openai/cursor_page.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ module OpenAI
3030
class CursorPage
3131
include OpenAI::BasePage
3232

33-
# @return [Array<Object>]
33+
# @return [Array<Object>, nil]
3434
attr_accessor :data
3535

3636
# @return [Boolean]

lib/openai/errors.rb

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,30 +4,30 @@ module OpenAI
44
class Error < StandardError
55
# @!parse
66
# # @return [StandardError, nil]
7-
# attr_reader :cause
7+
# attr_accessor :cause
88
end
99

1010
class ConversionError < OpenAI::Error
1111
end
1212

1313
class APIError < OpenAI::Error
1414
# @return [URI::Generic]
15-
attr_reader :url
15+
attr_accessor :url
1616

1717
# @return [Integer, nil]
18-
attr_reader :status
18+
attr_accessor :status
1919

2020
# @return [Object, nil]
21-
attr_reader :body
21+
attr_accessor :body
2222

2323
# @return [String, nil]
24-
attr_reader :code
24+
attr_accessor :code
2525

2626
# @return [String, nil]
27-
attr_reader :param
27+
attr_accessor :param
2828

2929
# @return [String, nil]
30-
attr_reader :type
30+
attr_accessor :type
3131

3232
# @api private
3333
#
@@ -50,23 +50,23 @@ def initialize(url:, status: nil, body: nil, request: nil, response: nil, messag
5050
class APIConnectionError < OpenAI::APIError
5151
# @!parse
5252
# # @return [nil]
53-
# attr_reader :status
53+
# attr_accessor :status
5454

5555
# @!parse
5656
# # @return [nil]
57-
# attr_reader :body
57+
# attr_accessor :body
5858

5959
# @!parse
6060
# # @return [nil]
61-
# attr_reader :code
61+
# attr_accessor :code
6262

6363
# @!parse
6464
# # @return [nil]
65-
# attr_reader :param
65+
# attr_accessor :param
6666

6767
# @!parse
6868
# # @return [nil]
69-
# attr_reader :type
69+
# attr_accessor :type
7070

7171
# @api private
7272
#
@@ -147,19 +147,19 @@ def self.for(url:, status:, body:, request:, response:, message: nil)
147147

148148
# @!parse
149149
# # @return [Integer]
150-
# attr_reader :status
150+
# attr_accessor :status
151151

152152
# @!parse
153153
# # @return [String, nil]
154-
# attr_reader :code
154+
# attr_accessor :code
155155

156156
# @!parse
157157
# # @return [String, nil]
158-
# attr_reader :param
158+
# attr_accessor :param
159159

160160
# @!parse
161161
# # @return [String, nil]
162-
# attr_reader :type
162+
# attr_accessor :type
163163

164164
# @api private
165165
#

lib/openai/page.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ module OpenAI
3030
class Page
3131
include OpenAI::BasePage
3232

33-
# @return [Array<Object>]
33+
# @return [Array<Object>, nil]
3434
attr_accessor :data
3535

3636
# @return [String]
@@ -53,7 +53,7 @@ def initialize(client:, req:, headers:, page_data:)
5353
end
5454

5555
case page_data
56-
in {object: String | nil => object}
56+
in {object: String => object}
5757
@object = object
5858
else
5959
end

rbi/lib/openai/cursor_page.rbi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ module OpenAI
66

77
Elem = type_member
88

9-
sig { returns(T::Array[Elem]) }
9+
sig { returns(T.nilable(T::Array[Elem])) }
1010
def data
1111
end
1212

13-
sig { params(_: T::Array[Elem]).returns(T::Array[Elem]) }
13+
sig { params(_: T.nilable(T::Array[Elem])).returns(T.nilable(T::Array[Elem])) }
1414
def data=(_)
1515
end
1616

rbi/lib/openai/errors.rbi

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ module OpenAI
55
sig { returns(T.nilable(StandardError)) }
66
def cause
77
end
8+
9+
sig { params(_: T.nilable(StandardError)).returns(T.nilable(StandardError)) }
10+
def cause=(_)
11+
end
812
end
913

1014
class ConversionError < OpenAI::Error
@@ -15,26 +19,50 @@ module OpenAI
1519
def url
1620
end
1721

22+
sig { params(_: URI::Generic).returns(URI::Generic) }
23+
def url=(_)
24+
end
25+
1826
sig { returns(T.nilable(Integer)) }
1927
def status
2028
end
2129

30+
sig { params(_: T.nilable(Integer)).returns(T.nilable(Integer)) }
31+
def status=(_)
32+
end
33+
2234
sig { returns(T.nilable(T.anything)) }
2335
def body
2436
end
2537

38+
sig { params(_: T.nilable(T.anything)).returns(T.nilable(T.anything)) }
39+
def body=(_)
40+
end
41+
2642
sig { returns(T.nilable(String)) }
2743
def code
2844
end
2945

46+
sig { params(_: T.nilable(String)).returns(T.nilable(String)) }
47+
def code=(_)
48+
end
49+
3050
sig { returns(T.nilable(String)) }
3151
def param
3252
end
3353

54+
sig { params(_: T.nilable(String)).returns(T.nilable(String)) }
55+
def param=(_)
56+
end
57+
3458
sig { returns(T.nilable(String)) }
3559
def type
3660
end
3761

62+
sig { params(_: T.nilable(String)).returns(T.nilable(String)) }
63+
def type=(_)
64+
end
65+
3866
# @api private
3967
sig do
4068
params(
@@ -56,22 +84,42 @@ module OpenAI
5684
def status
5785
end
5886

87+
sig { params(_: NilClass).void }
88+
def status=(_)
89+
end
90+
5991
sig { void }
6092
def body
6193
end
6294

95+
sig { params(_: NilClass).void }
96+
def body=(_)
97+
end
98+
6399
sig { void }
64100
def code
65101
end
66102

103+
sig { params(_: NilClass).void }
104+
def code=(_)
105+
end
106+
67107
sig { void }
68108
def param
69109
end
70110

111+
sig { params(_: NilClass).void }
112+
def param=(_)
113+
end
114+
71115
sig { void }
72116
def type
73117
end
74118

119+
sig { params(_: NilClass).void }
120+
def type=(_)
121+
end
122+
75123
# @api private
76124
sig do
77125
params(
@@ -125,18 +173,34 @@ module OpenAI
125173
def status
126174
end
127175

176+
sig { params(_: Integer).returns(Integer) }
177+
def status=(_)
178+
end
179+
128180
sig { returns(T.nilable(String)) }
129181
def code
130182
end
131183

184+
sig { params(_: T.nilable(String)).returns(T.nilable(String)) }
185+
def code=(_)
186+
end
187+
132188
sig { returns(T.nilable(String)) }
133189
def param
134190
end
135191

192+
sig { params(_: T.nilable(String)).returns(T.nilable(String)) }
193+
def param=(_)
194+
end
195+
136196
sig { returns(T.nilable(String)) }
137197
def type
138198
end
139199

200+
sig { params(_: T.nilable(String)).returns(T.nilable(String)) }
201+
def type=(_)
202+
end
203+
140204
# @api private
141205
sig do
142206
params(

rbi/lib/openai/page.rbi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ module OpenAI
66

77
Elem = type_member
88

9-
sig { returns(T::Array[Elem]) }
9+
sig { returns(T.nilable(T::Array[Elem])) }
1010
def data
1111
end
1212

13-
sig { params(_: T::Array[Elem]).returns(T::Array[Elem]) }
13+
sig { params(_: T.nilable(T::Array[Elem])).returns(T.nilable(T::Array[Elem])) }
1414
def data=(_)
1515
end
1616

sig/openai/cursor_page.rbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ module OpenAI
22
class CursorPage[Elem]
33
include OpenAI::BasePage[Elem]
44

5-
attr_accessor data: ::Array[Elem]
5+
attr_accessor data: ::Array[Elem]?
66

77
attr_accessor has_more: bool
88
end

sig/openai/errors.rbs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
module OpenAI
22
class Error < StandardError
3-
attr_reader cause: StandardError?
3+
attr_accessor cause: StandardError?
44
end
55

66
class ConversionError < OpenAI::Error
77
end
88

99
class APIError < OpenAI::Error
10-
attr_reader url: URI::Generic
10+
attr_accessor url: URI::Generic
1111

12-
attr_reader status: Integer?
12+
attr_accessor status: Integer?
1313

14-
attr_reader body: top?
14+
attr_accessor body: top?
1515

16-
attr_reader code: String?
16+
attr_accessor code: String?
1717

18-
attr_reader param: String?
18+
attr_accessor param: String?
1919

20-
attr_reader type: String?
20+
attr_accessor type: String?
2121

2222
def initialize: (
2323
url: URI::Generic,

sig/openai/page.rbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ module OpenAI
22
class Page[Elem]
33
include OpenAI::BasePage[Elem]
44

5-
attr_accessor data: ::Array[Elem]
5+
attr_accessor data: ::Array[Elem]?
66

77
attr_accessor object: String
88
end

0 commit comments

Comments
 (0)