openfeature-sdk-sorbet 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c15c80725be63842d38491ff9c0addddcf29d063a191eadb44fe957e059ab520
4
- data.tar.gz: 7a263495564db2fee7cb4805d82458ee70951a30ebe15bb470f205c97c32b529
3
+ metadata.gz: c618b9b2a1026874a45d03ea989183343bb2653a0de5184d510ba37b37d7abfe
4
+ data.tar.gz: 6573830336c85fb9c4bc66a3903dde8745947b510d45d145e040f4f5592d9eaa
5
5
  SHA512:
6
- metadata.gz: 6cb5f8413afe5a94866d456e841fabc092c09058d0117df0847e33111cd1020b313f45c5ad512200f19e463557369eca2a846f6eb0b28b6e4f8c7fff898ce1e7
7
- data.tar.gz: 6279c0be67ad089ee53201d451cf6349cc976e59d016c850a1d74711a47bc890aad6ba5e11ff92ec343c8277555a81834bf238d7a487275db33cd224400272e1
6
+ metadata.gz: 02a81d4faa83f8915aa40f6b23aa8261746ef3d3df0ad4155d5a56a12aad98f81fc5a58b7c874e62253e7e43b92d92980b8adf307fd39fce02140e609598a7bd
7
+ data.tar.gz: 3572884d4efb1813c9388534758ebca4791c1f00c1682e8edaa0fb337d1f327be4efd4df1ccd51f7954f23095d6de13ed7818fc065eb143b3a9f62e165d1118e
data/.rubocop.yml CHANGED
@@ -10,7 +10,7 @@ require:
10
10
 
11
11
  AllCops:
12
12
  NewCops: enable
13
- TargetRubyVersion: 3.1
13
+ TargetRubyVersion: 3.0
14
14
  Exclude:
15
15
  - sorbet/**/*.rbi
16
16
 
data/CHANGELOG.md CHANGED
@@ -6,6 +6,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.4.0] - 2024-02-21
10
+
11
+ ### Changed
12
+
13
+ - Set minimum Ruby version back to 3.0.
14
+
15
+ ## [0.3.1] - 2024-01-26
16
+
17
+ ### Changed
18
+
19
+ - Loosened underlying `Hash` type for evaluation context.
20
+
21
+ ### Fixed
22
+
23
+ - Fixed issue where `MultipleSourceProvider` was not passing context to each internal provider.
24
+
9
25
  ## [0.3.0] - 2024-01-24
10
26
 
11
27
  ### Added
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- openfeature-sdk-sorbet (0.3.0)
4
+ openfeature-sdk-sorbet (0.4.0)
5
5
  sorbet-runtime (~> 0.5)
6
6
  sorbet-struct-comparable (~> 1.3)
7
7
  zeitwerk (~> 2.6)
@@ -64,14 +64,14 @@ GEM
64
64
  rubocop-sorbet (0.7.6)
65
65
  rubocop (>= 0.90.0)
66
66
  ruby-progressbar (1.13.0)
67
- sorbet (0.5.11218)
68
- sorbet-static (= 0.5.11218)
69
- sorbet-runtime (0.5.11218)
70
- sorbet-static (0.5.11218-universal-darwin)
71
- sorbet-static (0.5.11218-x86_64-linux)
72
- sorbet-static-and-runtime (0.5.11218)
73
- sorbet (= 0.5.11218)
74
- sorbet-runtime (= 0.5.11218)
67
+ sorbet (0.5.11219)
68
+ sorbet-static (= 0.5.11219)
69
+ sorbet-runtime (0.5.11219)
70
+ sorbet-static (0.5.11219-universal-darwin)
71
+ sorbet-static (0.5.11219-x86_64-linux)
72
+ sorbet-static-and-runtime (0.5.11219)
73
+ sorbet (= 0.5.11219)
74
+ sorbet-runtime (= 0.5.11219)
75
75
  sorbet-struct-comparable (1.3.0)
76
76
  sorbet-runtime (>= 0.5)
77
77
  spoom (1.2.1)
@@ -79,7 +79,7 @@ GEM
79
79
  sorbet-runtime (>= 0.5.9204)
80
80
  thor (>= 0.19.2)
81
81
  stringio (3.1.0)
82
- tapioca (0.11.17)
82
+ tapioca (0.12.0)
83
83
  bundler (>= 2.2.25)
84
84
  netrc (>= 0.11.0)
85
85
  parallel (>= 1.21.0)
@@ -25,7 +25,7 @@ module OpenFeature
25
25
  end
26
26
  def initialize(provider:, name: nil, evaluation_context: nil, hooks: [])
27
27
  @provider = provider
28
- @client_metadata = T.let(ClientMetadata.new(name:), ClientMetadata)
28
+ @client_metadata = T.let(ClientMetadata.new(name: name), ClientMetadata)
29
29
  @evaluation_context = evaluation_context
30
30
  @hooks = hooks
31
31
  end
@@ -44,10 +44,10 @@ module OpenFeature
44
44
  ).returns(T::Boolean)
45
45
  end
46
46
  def fetch_boolean_value(flag_key:, default_value:, context: nil, options: nil)
47
- evaluated_context = build_context_with_before_hooks(flag_key:, default_value:,
48
- invocation_context: context, options:,
47
+ evaluated_context = build_context_with_before_hooks(flag_key: flag_key, default_value: default_value,
48
+ invocation_context: context, options: options,
49
49
  flag_type: "Boolean")
50
- provider.resolve_boolean_value(flag_key:, default_value:, context: evaluated_context)
50
+ provider.resolve_boolean_value(flag_key: flag_key, default_value: default_value, context: evaluated_context)
51
51
  .value
52
52
  rescue StandardError
53
53
  default_value
@@ -63,14 +63,14 @@ module OpenFeature
63
63
  end
64
64
  def fetch_boolean_details(flag_key:, default_value:, context: nil, options: nil) # rubocop:disable Lint/UnusedMethodArgument
65
65
  details = provider.resolve_boolean_value(
66
- flag_key:,
67
- default_value:,
66
+ flag_key: flag_key,
67
+ default_value: default_value,
68
68
  context: build_context(context)
69
69
  )
70
70
 
71
- EvaluationDetails.from_resolution_details(details, flag_key:)
71
+ EvaluationDetails.from_resolution_details(details, flag_key: flag_key)
72
72
  rescue StandardError => e
73
- EvaluationDetails.from_error(e.message, flag_key:, default_value:)
73
+ EvaluationDetails.from_error(e.message, flag_key: flag_key, default_value: default_value)
74
74
  end
75
75
 
76
76
  sig do
@@ -82,11 +82,11 @@ module OpenFeature
82
82
  ).returns(String)
83
83
  end
84
84
  def fetch_string_value(flag_key:, default_value:, context: nil, options: nil)
85
- evaluated_context = build_context_with_before_hooks(flag_key:, default_value:,
86
- invocation_context: context, options:,
85
+ evaluated_context = build_context_with_before_hooks(flag_key: flag_key, default_value: default_value,
86
+ invocation_context: context, options: options,
87
87
  flag_type: "String")
88
88
  provider
89
- .resolve_string_value(flag_key:, default_value:, context: evaluated_context)
89
+ .resolve_string_value(flag_key: flag_key, default_value: default_value, context: evaluated_context)
90
90
  .value
91
91
  rescue StandardError
92
92
  default_value
@@ -102,14 +102,14 @@ module OpenFeature
102
102
  end
103
103
  def fetch_string_details(flag_key:, default_value:, context: nil, options: nil) # rubocop:disable Lint/UnusedMethodArgument
104
104
  details = provider.resolve_string_value(
105
- flag_key:,
106
- default_value:,
105
+ flag_key: flag_key,
106
+ default_value: default_value,
107
107
  context: build_context(context)
108
108
  )
109
109
 
110
- EvaluationDetails.from_resolution_details(details, flag_key:)
110
+ EvaluationDetails.from_resolution_details(details, flag_key: flag_key)
111
111
  rescue StandardError => e
112
- EvaluationDetails.from_error(e.message, flag_key:, default_value:)
112
+ EvaluationDetails.from_error(e.message, flag_key: flag_key, default_value: default_value)
113
113
  end
114
114
 
115
115
  sig do
@@ -121,11 +121,11 @@ module OpenFeature
121
121
  ).returns(Numeric)
122
122
  end
123
123
  def fetch_number_value(flag_key:, default_value:, context: nil, options: nil)
124
- evaluated_context = build_context_with_before_hooks(flag_key:, default_value:,
125
- invocation_context: context, options:,
124
+ evaluated_context = build_context_with_before_hooks(flag_key: flag_key, default_value: default_value,
125
+ invocation_context: context, options: options,
126
126
  flag_type: "Number")
127
127
  provider
128
- .resolve_number_value(flag_key:, default_value:, context: evaluated_context)
128
+ .resolve_number_value(flag_key: flag_key, default_value: default_value, context: evaluated_context)
129
129
  .value
130
130
  rescue StandardError
131
131
  default_value
@@ -141,14 +141,14 @@ module OpenFeature
141
141
  end
142
142
  def fetch_number_details(flag_key:, default_value:, context: nil, options: nil) # rubocop:disable Lint/UnusedMethodArgument
143
143
  details = provider.resolve_number_value(
144
- flag_key:,
145
- default_value:,
144
+ flag_key: flag_key,
145
+ default_value: default_value,
146
146
  context: build_context(context)
147
147
  )
148
148
 
149
- EvaluationDetails.from_resolution_details(details, flag_key:)
149
+ EvaluationDetails.from_resolution_details(details, flag_key: flag_key)
150
150
  rescue StandardError => e
151
- EvaluationDetails.from_error(e.message, flag_key:, default_value:)
151
+ EvaluationDetails.from_error(e.message, flag_key: flag_key, default_value: default_value)
152
152
  end
153
153
 
154
154
  sig do
@@ -160,11 +160,11 @@ module OpenFeature
160
160
  ).returns(Integer)
161
161
  end
162
162
  def fetch_integer_value(flag_key:, default_value:, context: nil, options: nil)
163
- evaluated_context = build_context_with_before_hooks(flag_key:, default_value:,
164
- invocation_context: context, options:,
163
+ evaluated_context = build_context_with_before_hooks(flag_key: flag_key, default_value: default_value,
164
+ invocation_context: context, options: options,
165
165
  flag_type: "Integer")
166
166
  provider
167
- .resolve_number_value(flag_key:, default_value:, context: evaluated_context)
167
+ .resolve_number_value(flag_key: flag_key, default_value: default_value, context: evaluated_context)
168
168
  .value
169
169
  .to_i
170
170
  rescue StandardError
@@ -180,11 +180,11 @@ module OpenFeature
180
180
  ).returns(Float)
181
181
  end
182
182
  def fetch_float_value(flag_key:, default_value:, context: nil, options: nil)
183
- evaluated_context = build_context_with_before_hooks(flag_key:, default_value:,
184
- invocation_context: context, options:,
183
+ evaluated_context = build_context_with_before_hooks(flag_key: flag_key, default_value: default_value,
184
+ invocation_context: context, options: options,
185
185
  flag_type: "Float")
186
186
  provider
187
- .resolve_number_value(flag_key:, default_value:, context: evaluated_context)
187
+ .resolve_number_value(flag_key: flag_key, default_value: default_value, context: evaluated_context)
188
188
  .value
189
189
  .to_f
190
190
  rescue StandardError
@@ -200,11 +200,11 @@ module OpenFeature
200
200
  ).returns(Structure)
201
201
  end
202
202
  def fetch_structure_value(flag_key:, default_value:, context: nil, options: nil)
203
- evaluated_context = build_context_with_before_hooks(flag_key:, default_value:,
204
- invocation_context: context, options:,
203
+ evaluated_context = build_context_with_before_hooks(flag_key: flag_key, default_value: default_value,
204
+ invocation_context: context, options: options,
205
205
  flag_type: "Structure")
206
206
  provider
207
- .resolve_structure_value(flag_key:, default_value:, context: evaluated_context)
207
+ .resolve_structure_value(flag_key: flag_key, default_value: default_value, context: evaluated_context)
208
208
  .value
209
209
  rescue StandardError
210
210
  default_value
@@ -220,14 +220,14 @@ module OpenFeature
220
220
  end
221
221
  def fetch_structure_details(flag_key:, default_value:, context: nil, options: nil) # rubocop:disable Lint/UnusedMethodArgument
222
222
  details = provider.resolve_structure_value(
223
- flag_key:,
224
- default_value:,
223
+ flag_key: flag_key,
224
+ default_value: default_value,
225
225
  context: build_context(context)
226
226
  )
227
227
 
228
- EvaluationDetails.from_resolution_details(details, flag_key:)
228
+ EvaluationDetails.from_resolution_details(details, flag_key: flag_key)
229
229
  rescue StandardError => e
230
- EvaluationDetails.from_error(e.message, flag_key:, default_value:)
230
+ EvaluationDetails.from_error(e.message, flag_key: flag_key, default_value: default_value)
231
231
  end
232
232
 
233
233
  private
@@ -245,8 +245,8 @@ module OpenFeature
245
245
  ).returns(EvaluationContext)
246
246
  end
247
247
  def build_context_with_before_hooks(flag_key:, default_value:, invocation_context:, options:, flag_type:)
248
- hook_context = build_hook_context(flag_key:, default_value:,
249
- invocation_context:, flag_type:)
248
+ hook_context = build_hook_context(flag_key: flag_key, default_value: default_value,
249
+ invocation_context: invocation_context, flag_type: flag_type)
250
250
  OpenFeature::Hook::BeforeHook.call(hooks: build_hooks(options), context: hook_context,
251
251
  hints: {})
252
252
  end
@@ -271,9 +271,9 @@ module OpenFeature
271
271
  end
272
272
  def build_hook_context(flag_key:, default_value:, invocation_context:, flag_type:)
273
273
  evaluation_context = build_context(invocation_context) || OpenFeature::EvaluationContext.new
274
- HookContext.new(flag_key:, default_value:,
275
- evaluation_context:, flag_type:,
276
- client_metadata:, provider_metadata: provider.metadata)
274
+ HookContext.new(flag_key: flag_key, default_value: default_value,
275
+ evaluation_context: evaluation_context, flag_type: flag_type,
276
+ client_metadata: client_metadata, provider_metadata: provider.metadata)
277
277
  end
278
278
 
279
279
  sig { params(invocation_context: T.nilable(EvaluationContext)).returns(T.nilable(EvaluationContext)) }
@@ -281,7 +281,7 @@ module OpenFeature
281
281
  EvaluationContextBuilder.new.call(
282
282
  global_context: OpenFeature.configuration.evaluation_context,
283
283
  client_context: evaluation_context,
284
- invocation_context:
284
+ invocation_context: invocation_context
285
285
  )
286
286
  end
287
287
  end
@@ -11,30 +11,28 @@ module OpenFeature
11
11
 
12
12
  include T::Struct::ActsAsComparable
13
13
 
14
- FieldValueType = T.type_alias { T.any(T::Boolean, String, Numeric, DateTime, Structure) }
15
-
16
14
  const :targeting_key, T.nilable(String), default: nil
17
- const :fields, T::Hash[String, FieldValueType], default: {}
15
+ const :fields, T::Hash[T.untyped, T.untyped], default: {}
18
16
 
19
17
  sig { params(method_name: Symbol).returns(T::Boolean) }
20
18
  def respond_to_missing?(method_name)
21
19
  fields.key?(method_name.to_s)
22
20
  end
23
21
 
24
- sig { params(method_name: Symbol).returns(T.nilable(FieldValueType)) }
22
+ sig { params(method_name: Symbol).returns(T.untyped) }
25
23
  def method_missing(method_name)
26
24
  fields.fetch(method_name.to_s, nil)
27
25
  end
28
26
 
29
- sig { params(key: String, value: FieldValueType).returns(EvaluationContext) }
27
+ sig { params(key: String, value: T.untyped).returns(EvaluationContext) }
30
28
  def add_field(key, value)
31
29
  EvaluationContext.new(
32
- targeting_key:,
30
+ targeting_key: targeting_key,
33
31
  fields: fields.merge({ key => value })
34
32
  )
35
33
  end
36
34
 
37
- sig { returns(T::Hash[String, FieldValueType]) }
35
+ sig { returns(T::Hash[T.untyped, T.untyped]) }
38
36
  def to_h
39
37
  targeting_key.nil? ? fields : fields.merge("targeting_key" => targeting_key)
40
38
  end
@@ -25,7 +25,7 @@ module OpenFeature
25
25
  sig { params(details: ResolutionDetails[SelfValue], flag_key: String).returns(EvaluationDetails[SelfValue]) }
26
26
  def from_resolution_details(details, flag_key:)
27
27
  EvaluationDetails.new(
28
- flag_key:,
28
+ flag_key: flag_key,
29
29
  value: details.value,
30
30
  error_code: details.error_code,
31
31
  error_message: details.error_message,
@@ -44,7 +44,7 @@ module OpenFeature
44
44
  end
45
45
  def from_error(error_message, flag_key:, default_value:)
46
46
  EvaluationDetails.new(
47
- flag_key:,
47
+ flag_key: flag_key,
48
48
  value: default_value,
49
49
  error_code: ErrorCode::General,
50
50
  error_message: "Provider raised error: #{error_message}",
@@ -35,7 +35,7 @@ module OpenFeature
35
35
  hooks.before.reduce(context.evaluation_context) do |evaluation_context, hook|
36
36
  hook.call(
37
37
  context: context.with_new_evaluation_context(evaluation_context),
38
- hints:
38
+ hints: hints
39
39
  )
40
40
  end
41
41
  )
@@ -22,9 +22,9 @@ module OpenFeature
22
22
  # Needed as opposed to .with due to https://sorbet.org/docs/tstruct#from_hash-gotchas
23
23
  sig { params(new_context: EvaluationContext).returns(HookContext[Value]) }
24
24
  def with_new_evaluation_context(new_context)
25
- OpenFeature::HookContext.new(flag_key:, flag_type:, default_value:,
26
- evaluation_context: new_context, client_metadata:,
27
- provider_metadata:)
25
+ OpenFeature::HookContext.new(flag_key: flag_key, flag_type: flag_type, default_value: default_value,
26
+ evaluation_context: new_context, client_metadata: client_metadata,
27
+ provider_metadata: provider_metadata)
28
28
  end
29
29
  end
30
30
  end
@@ -28,7 +28,7 @@ module OpenFeature
28
28
 
29
29
  sig { override.params(context: EvaluationContext).void }
30
30
  def init(context:)
31
- providers.each { |provider| provider.init(context:) }
31
+ providers.each { |provider| provider.init(context: context) }
32
32
  @status = if providers.all? { |provider| provider.status == ProviderStatus::Ready }
33
33
  ProviderStatus::Ready
34
34
  else
@@ -53,8 +53,8 @@ module OpenFeature
53
53
  .returns(ResolutionDetails[T::Boolean])
54
54
  end
55
55
  def resolve_boolean_value(flag_key:, default_value:, context: nil)
56
- resolve_from_sources(default_value:) do |provider|
57
- provider.resolve_boolean_value(flag_key:, default_value:)
56
+ resolve_from_sources(default_value: default_value) do |provider|
57
+ provider.resolve_boolean_value(flag_key: flag_key, default_value: default_value, context: context)
58
58
  end
59
59
  end
60
60
 
@@ -68,8 +68,8 @@ module OpenFeature
68
68
  .returns(ResolutionDetails[Numeric])
69
69
  end
70
70
  def resolve_number_value(flag_key:, default_value:, context: nil)
71
- resolve_from_sources(default_value:) do |provider|
72
- provider.resolve_number_value(flag_key:, default_value:)
71
+ resolve_from_sources(default_value: default_value) do |provider|
72
+ provider.resolve_number_value(flag_key: flag_key, default_value: default_value, context: context)
73
73
  end
74
74
  end
75
75
 
@@ -83,8 +83,8 @@ module OpenFeature
83
83
  .returns(ResolutionDetails[Structure])
84
84
  end
85
85
  def resolve_structure_value(flag_key:, default_value:, context: nil)
86
- resolve_from_sources(default_value:) do |provider|
87
- provider.resolve_structure_value(flag_key:, default_value:)
86
+ resolve_from_sources(default_value: default_value) do |provider|
87
+ provider.resolve_structure_value(flag_key: flag_key, default_value: default_value, context: context)
88
88
  end
89
89
  end
90
90
 
@@ -98,8 +98,8 @@ module OpenFeature
98
98
  .returns(ResolutionDetails[String])
99
99
  end
100
100
  def resolve_string_value(flag_key:, default_value:, context: nil)
101
- resolve_from_sources(default_value:) do |provider|
102
- provider.resolve_string_value(flag_key:, default_value:)
101
+ resolve_from_sources(default_value: default_value) do |provider|
102
+ provider.resolve_string_value(flag_key: flag_key, default_value: default_value, context: context)
103
103
  end
104
104
  end
105
105
 
data/lib/open_feature.rb CHANGED
@@ -44,8 +44,8 @@ module OpenFeature
44
44
  def create_client(name: nil, evaluation_context: nil, hooks: nil)
45
45
  Client.new(
46
46
  provider: configuration.provider,
47
- name:,
48
- evaluation_context:,
47
+ name: name,
48
+ evaluation_context: evaluation_context,
49
49
  hooks: Array(hooks)
50
50
  )
51
51
  end
@@ -1820,7 +1820,7 @@ class RBI::Rewriters::Merge::Conflict < ::T::Struct
1820
1820
  def to_s; end
1821
1821
 
1822
1822
  class << self
1823
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1823
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1824
1824
  def inherited(s); end
1825
1825
  end
1826
1826
  end
@@ -2037,7 +2037,7 @@ class RBI::Rewriters::RemoveKnownDefinitions::Operation < ::T::Struct
2037
2037
  def to_s; end
2038
2038
 
2039
2039
  class << self
2040
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
2040
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
2041
2041
  def inherited(s); end
2042
2042
  end
2043
2043
  end
@@ -2670,7 +2670,7 @@ class RBI::Tree < ::RBI::NodeWithComments
2670
2670
  sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
2671
2671
  def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
2672
2672
 
2673
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#38
2673
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#38
2674
2674
  sig do
2675
2675
  params(
2676
2676
  name: ::String,
@@ -2680,19 +2680,19 @@ class RBI::Tree < ::RBI::NodeWithComments
2680
2680
  end
2681
2681
  def create_class(name, superclass_name: T.unsafe(nil), &block); end
2682
2682
 
2683
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#45
2683
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#45
2684
2684
  sig { params(name: ::String, value: ::String).void }
2685
2685
  def create_constant(name, value:); end
2686
2686
 
2687
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#55
2687
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#55
2688
2688
  sig { params(name: ::String).void }
2689
2689
  def create_extend(name); end
2690
2690
 
2691
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#50
2691
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#50
2692
2692
  sig { params(name: ::String).void }
2693
2693
  def create_include(name); end
2694
2694
 
2695
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#89
2695
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#89
2696
2696
  sig do
2697
2697
  params(
2698
2698
  name: ::String,
@@ -2705,19 +2705,19 @@ class RBI::Tree < ::RBI::NodeWithComments
2705
2705
  end
2706
2706
  def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end
2707
2707
 
2708
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#60
2708
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#60
2709
2709
  sig { params(name: ::String).void }
2710
2710
  def create_mixes_in_class_methods(name); end
2711
2711
 
2712
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#25
2712
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#25
2713
2713
  sig { params(name: ::String, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
2714
2714
  def create_module(name, &block); end
2715
2715
 
2716
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#9
2716
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#9
2717
2717
  sig { params(constant: ::Module, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
2718
2718
  def create_path(constant, &block); end
2719
2719
 
2720
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#74
2720
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#74
2721
2721
  sig do
2722
2722
  params(
2723
2723
  name: ::String,
@@ -2779,11 +2779,11 @@ class RBI::Tree < ::RBI::NodeWithComments
2779
2779
 
2780
2780
  private
2781
2781
 
2782
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#116
2782
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#116
2783
2783
  sig { params(node: ::RBI::Node).returns(::RBI::Node) }
2784
2784
  def create_node(node); end
2785
2785
 
2786
- # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#111
2786
+ # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#111
2787
2787
  sig { returns(T::Hash[::String, ::RBI::Node]) }
2788
2788
  def nodes_cache; end
2789
2789
  end
@@ -926,7 +926,7 @@ class Spoom::Coverage::D3::ColorPalette < ::T::Struct
926
926
  prop :strong, ::String
927
927
 
928
928
  class << self
929
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
929
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
930
930
  def inherited(s); end
931
931
  end
932
932
  end
@@ -1266,7 +1266,7 @@ class Spoom::Coverage::Snapshot < ::T::Struct
1266
1266
  sig { params(obj: T::Hash[::String, T.untyped]).returns(::Spoom::Coverage::Snapshot) }
1267
1267
  def from_obj(obj); end
1268
1268
 
1269
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1269
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1270
1270
  def inherited(s); end
1271
1271
  end
1272
1272
  end
@@ -1333,7 +1333,7 @@ class Spoom::ExecResult < ::T::Struct
1333
1333
  def to_s; end
1334
1334
 
1335
1335
  class << self
1336
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1336
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1337
1337
  def inherited(s); end
1338
1338
  end
1339
1339
  end
@@ -1527,7 +1527,7 @@ class Spoom::FileTree::Node < ::T::Struct
1527
1527
  def path; end
1528
1528
 
1529
1529
  class << self
1530
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1530
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1531
1531
  def inherited(s); end
1532
1532
  end
1533
1533
  end
@@ -1593,7 +1593,7 @@ class Spoom::Git::Commit < ::T::Struct
1593
1593
  def timestamp; end
1594
1594
 
1595
1595
  class << self
1596
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1596
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1597
1597
  def inherited(s); end
1598
1598
 
1599
1599
  # Parse a line formated as `%h %at` into a `Commit`
@@ -1705,7 +1705,7 @@ class Spoom::LSP::Diagnostic < ::T::Struct
1705
1705
  sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Diagnostic) }
1706
1706
  def from_json(json); end
1707
1707
 
1708
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1708
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1709
1709
  def inherited(s); end
1710
1710
  end
1711
1711
  end
@@ -1738,7 +1738,7 @@ class Spoom::LSP::DocumentSymbol < ::T::Struct
1738
1738
  sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::DocumentSymbol) }
1739
1739
  def from_json(json); end
1740
1740
 
1741
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1741
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1742
1742
  def inherited(s); end
1743
1743
  end
1744
1744
  end
@@ -1796,7 +1796,7 @@ class Spoom::LSP::Hover < ::T::Struct
1796
1796
  sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Hover) }
1797
1797
  def from_json(json); end
1798
1798
 
1799
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1799
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1800
1800
  def inherited(s); end
1801
1801
  end
1802
1802
  end
@@ -1821,7 +1821,7 @@ class Spoom::LSP::Location < ::T::Struct
1821
1821
  sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Location) }
1822
1822
  def from_json(json); end
1823
1823
 
1824
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1824
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1825
1825
  def inherited(s); end
1826
1826
  end
1827
1827
  end
@@ -1888,7 +1888,7 @@ class Spoom::LSP::Position < ::T::Struct
1888
1888
  sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Position) }
1889
1889
  def from_json(json); end
1890
1890
 
1891
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1891
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1892
1892
  def inherited(s); end
1893
1893
  end
1894
1894
  end
@@ -1926,7 +1926,7 @@ class Spoom::LSP::Range < ::T::Struct
1926
1926
  sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Range) }
1927
1927
  def from_json(json); end
1928
1928
 
1929
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1929
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1930
1930
  def inherited(s); end
1931
1931
  end
1932
1932
  end
@@ -1996,7 +1996,7 @@ class Spoom::LSP::SignatureHelp < ::T::Struct
1996
1996
  sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::SignatureHelp) }
1997
1997
  def from_json(json); end
1998
1998
 
1999
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1999
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
2000
2000
  def inherited(s); end
2001
2001
  end
2002
2002
  end
@@ -204,7 +204,7 @@ class RBI::TypedParam < ::T::Struct
204
204
  const :type, ::String
205
205
 
206
206
  class << self
207
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
207
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
208
208
  def inherited(s); end
209
209
  end
210
210
  end
@@ -1121,7 +1121,7 @@ class Tapioca::ConfigHelper::ConfigError < ::T::Struct
1121
1121
  const :message_parts, T::Array[::Tapioca::ConfigHelper::ConfigErrorMessagePart]
1122
1122
 
1123
1123
  class << self
1124
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1124
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1125
1125
  def inherited(s); end
1126
1126
  end
1127
1127
  end
@@ -1132,7 +1132,7 @@ class Tapioca::ConfigHelper::ConfigErrorMessagePart < ::T::Struct
1132
1132
  const :colors, T::Array[::Symbol]
1133
1133
 
1134
1134
  class << self
1135
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1135
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
1136
1136
  def inherited(s); end
1137
1137
  end
1138
1138
  end
@@ -1688,13 +1688,16 @@ end
1688
1688
 
1689
1689
  # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#7
1690
1690
  class Tapioca::Gem::Listeners::SorbetProps < ::Tapioca::Gem::Listeners::Base
1691
+ include ::Tapioca::SorbetHelper
1692
+ include ::Tapioca::RBIHelper
1693
+
1691
1694
  private
1692
1695
 
1693
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#32
1696
+ # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#33
1694
1697
  sig { override.params(event: ::Tapioca::Gem::NodeAdded).returns(T::Boolean) }
1695
1698
  def ignore?(event); end
1696
1699
 
1697
- # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#13
1700
+ # source://tapioca//lib/tapioca/gem/listeners/sorbet_props.rb#14
1698
1701
  sig { override.params(event: ::Tapioca::Gem::ScopeNodeAdded).void }
1699
1702
  def on_scope(event); end
1700
1703
  end
@@ -2429,7 +2432,7 @@ class Tapioca::Loaders::Loader
2429
2432
  # @param engine [T.class_of(Rails::Engine)]
2430
2433
  # @return [Array<String>]
2431
2434
  #
2432
- # source://sorbet-runtime/0.5.11218/lib/types/private/methods/_methods.rb#252
2435
+ # source://sorbet-runtime/0.5.11219/lib/types/private/methods/_methods.rb#252
2433
2436
  def eager_load_paths(*args, **_arg1, &blk); end
2434
2437
 
2435
2438
  # source://tapioca//lib/tapioca/loaders/loader.rb#198
@@ -3337,7 +3340,7 @@ module Tapioca::Static::SymbolLoader
3337
3340
 
3338
3341
  # @return [Array<T.class_of(Rails::Engine)>]
3339
3342
  #
3340
- # source://sorbet-runtime/0.5.11218/lib/types/private/methods/_methods.rb#252
3343
+ # source://sorbet-runtime/0.5.11219/lib/types/private/methods/_methods.rb#252
3341
3344
  def engines(*args, **_arg1, &blk); end
3342
3345
 
3343
3346
  # source://tapioca//lib/tapioca/static/symbol_loader.rb#82
@@ -381,7 +381,7 @@ class YARDSorbet::TStructProp < ::T::Struct
381
381
  const :types, T::Array[::String]
382
382
 
383
383
  class << self
384
- # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
384
+ # source://sorbet-runtime/0.5.11219/lib/types/struct.rb#13
385
385
  def inherited(s); end
386
386
  end
387
387
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openfeature-sdk-sorbet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Max VelDink
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-01-24 00:00:00.000000000 Z
11
+ date: 2024-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sorbet-runtime
@@ -120,7 +120,7 @@ files:
120
120
  - sorbet/rbi/gems/sorbet-struct-comparable@1.3.0.rbi
121
121
  - sorbet/rbi/gems/spoom@1.2.1.rbi
122
122
  - sorbet/rbi/gems/stringio@3.1.0.rbi
123
- - sorbet/rbi/gems/tapioca@0.11.17.rbi
123
+ - sorbet/rbi/gems/tapioca@0.12.0.rbi
124
124
  - sorbet/rbi/gems/thor@1.3.0.rbi
125
125
  - sorbet/rbi/gems/unicode-display_width@2.5.0.rbi
126
126
  - sorbet/rbi/gems/yard-sorbet@0.8.1.rbi
@@ -145,7 +145,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
145
145
  requirements:
146
146
  - - ">="
147
147
  - !ruby/object:Gem::Version
148
- version: '3.1'
148
+ version: '3.0'
149
149
  required_rubygems_version: !ruby/object:Gem::Requirement
150
150
  requirements:
151
151
  - - ">="