pingram 1.0.32 → 1.0.34

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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/lib/pingram/api/account_api.rb +2 -2
  4. data/lib/pingram/api/sub_notifications_api.rb +167 -0
  5. data/lib/pingram/api/user_api.rb +0 -248
  6. data/lib/pingram/api_client.rb +1 -1
  7. data/lib/pingram/client_wrapper.rb +10 -0
  8. data/lib/pingram/models/sub_notification.rb +242 -0
  9. data/lib/pingram/models/sub_notification_put_request.rb +164 -0
  10. data/lib/pingram/models/user_preferences_get_response.rb +222 -0
  11. data/lib/pingram/models/user_preferences_get_response_notifications_inner.rb +227 -0
  12. data/lib/pingram/models/user_preferences_get_response_preferences_inner.rb +249 -0
  13. data/lib/pingram/models/user_preferences_get_response_sub_notifications_inner.rb +216 -0
  14. data/lib/pingram/models/user_preferences_post_request_inner.rb +268 -0
  15. data/lib/pingram/models/user_preferences_post_response_inner.rb +253 -0
  16. data/lib/pingram/models/user_preferences_post_response_inner_channels_states_inner.rb +240 -0
  17. data/lib/pingram/version.rb +1 -1
  18. data/lib/pingram.rb +10 -0
  19. data/vendor/bundle/ruby/3.2.0/cache/io-console-0.9.4.gem +0 -0
  20. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem_make.out +5 -5
  21. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +5 -5
  22. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.9.3 → io-console-0.9.4}/gem_make.out +11 -10
  23. data/vendor/bundle/ruby/3.2.0/{gems/io-console-0.9.3/lib → extensions/x86_64-linux/3.2.0/io-console-0.9.4}/io/console.so +0 -0
  24. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.9.3 → io-console-0.9.4}/mkmf.log +29 -6
  25. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  26. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.5.0/gem_make.out +5 -5
  27. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +5 -5
  28. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +5 -5
  29. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/ext/io/console/Makefile +1 -1
  30. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/ext/io/console/console.c +4 -1
  31. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/ext/io/console/extconf.rb +12 -1
  32. data/vendor/bundle/ruby/3.2.0/{extensions/x86_64-linux/3.2.0/io-console-0.9.3 → gems/io-console-0.9.4/lib}/io/console.so +0 -0
  33. data/vendor/bundle/ruby/3.2.0/specifications/{io-console-0.9.3.gemspec → io-console-0.9.4.gemspec} +3 -3
  34. metadata +28 -18
  35. data/vendor/bundle/ruby/3.2.0/cache/io-console-0.9.3.gem +0 -0
  36. /data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.9.3 → io-console-0.9.4}/gem.build_complete +0 -0
  37. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/.document +0 -0
  38. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/BSDL +0 -0
  39. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/COPYING +0 -0
  40. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/README.md +0 -0
  41. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/ext/io/console/win32_vk.inc +0 -0
  42. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.3 → io-console-0.9.4}/lib/io/console/size.rb +0 -0
@@ -0,0 +1,240 @@
1
+ =begin
2
+ #Pingram
3
+
4
+ #Internal API for notification delivery and management
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Pingram
17
+ class UserPreferencesPOSTResponseInnerChannelsStatesInner < ApiModelBase
18
+ attr_accessor :channel
19
+
20
+ attr_accessor :state
21
+
22
+ attr_accessor :delivery
23
+
24
+ class EnumAttributeValidator
25
+ attr_reader :datatype
26
+ attr_reader :allowable_values
27
+
28
+ def initialize(datatype, allowable_values)
29
+ @allowable_values = allowable_values.map do |value|
30
+ case datatype.to_s
31
+ when /Integer/i
32
+ value.to_i
33
+ when /Float/i
34
+ value.to_f
35
+ else
36
+ value
37
+ end
38
+ end
39
+ end
40
+
41
+ def valid?(value)
42
+ !value || allowable_values.include?(value)
43
+ end
44
+ end
45
+
46
+ # Attribute mapping from ruby-style variable name to JSON key.
47
+ def self.attribute_map
48
+ {
49
+ :'channel' => :'channel',
50
+ :'state' => :'state',
51
+ :'delivery' => :'delivery'
52
+ }
53
+ end
54
+
55
+ # Returns attribute mapping this model knows about
56
+ def self.acceptable_attribute_map
57
+ attribute_map
58
+ end
59
+
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ acceptable_attribute_map.values
63
+ end
64
+
65
+ # Attribute type mapping.
66
+ def self.openapi_types
67
+ {
68
+ :'channel' => :'ChannelsEnum',
69
+ :'state' => :'Boolean',
70
+ :'delivery' => :'String'
71
+ }
72
+ end
73
+
74
+ # List of attributes with nullable: true
75
+ def self.openapi_nullable
76
+ Set.new([
77
+ ])
78
+ end
79
+
80
+ # Initializes the object
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ def initialize(attributes = {})
83
+ if (!attributes.is_a?(Hash))
84
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::UserPreferencesPOSTResponseInnerChannelsStatesInner` initialize method"
85
+ end
86
+
87
+ # check to see if the attribute exists and convert string to symbol for hash key
88
+ acceptable_attribute_map = self.class.acceptable_attribute_map
89
+ attributes = attributes.each_with_object({}) { |(k, v), h|
90
+ if (!acceptable_attribute_map.key?(k.to_sym))
91
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::UserPreferencesPOSTResponseInnerChannelsStatesInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
92
+ end
93
+ h[k.to_sym] = v
94
+ }
95
+
96
+ if attributes.key?(:'channel')
97
+ self.channel = attributes[:'channel']
98
+ else
99
+ self.channel = nil
100
+ end
101
+
102
+ if attributes.key?(:'state')
103
+ self.state = attributes[:'state']
104
+ else
105
+ self.state = nil
106
+ end
107
+
108
+ if attributes.key?(:'delivery')
109
+ self.delivery = attributes[:'delivery']
110
+ else
111
+ self.delivery = nil
112
+ end
113
+ end
114
+
115
+ # Show invalid properties with the reasons. Usually used together with valid?
116
+ # @return Array for valid properties with the reasons
117
+ def list_invalid_properties
118
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
119
+ invalid_properties = Array.new
120
+ if @channel.nil?
121
+ invalid_properties.push('invalid value for "channel", channel cannot be nil.')
122
+ end
123
+
124
+ if @state.nil?
125
+ invalid_properties.push('invalid value for "state", state cannot be nil.')
126
+ end
127
+
128
+ if @delivery.nil?
129
+ invalid_properties.push('invalid value for "delivery", delivery cannot be nil.')
130
+ end
131
+
132
+ invalid_properties
133
+ end
134
+
135
+ # Check to see if the all the properties in the model are valid
136
+ # @return true if the model is valid
137
+ def valid?
138
+ warn '[DEPRECATED] the `valid?` method is obsolete'
139
+ return false if @channel.nil?
140
+ return false if @state.nil?
141
+ return false if @delivery.nil?
142
+ delivery_validator = EnumAttributeValidator.new('String', ["off", "instant", "hourly", "daily", "weekly", "monthly"])
143
+ return false unless delivery_validator.valid?(@delivery)
144
+ true
145
+ end
146
+
147
+ # Custom attribute writer method with validation
148
+ # @param [Object] channel Value to be assigned
149
+ def channel=(channel)
150
+ if channel.nil?
151
+ fail ArgumentError, 'channel cannot be nil'
152
+ end
153
+
154
+ @channel = channel
155
+ end
156
+
157
+ # Custom attribute writer method with validation
158
+ # @param [Object] state Value to be assigned
159
+ def state=(state)
160
+ if state.nil?
161
+ fail ArgumentError, 'state cannot be nil'
162
+ end
163
+
164
+ @state = state
165
+ end
166
+
167
+ # Custom attribute writer method checking allowed values (enum).
168
+ # @param [Object] delivery Object to be assigned
169
+ def delivery=(delivery)
170
+ validator = EnumAttributeValidator.new('String', ["off", "instant", "hourly", "daily", "weekly", "monthly"])
171
+ unless validator.valid?(delivery)
172
+ fail ArgumentError, "invalid value for \"delivery\", must be one of #{validator.allowable_values}."
173
+ end
174
+ @delivery = delivery
175
+ end
176
+
177
+ # Checks equality by comparing each attribute.
178
+ # @param [Object] Object to be compared
179
+ def ==(o)
180
+ return true if self.equal?(o)
181
+ self.class == o.class &&
182
+ channel == o.channel &&
183
+ state == o.state &&
184
+ delivery == o.delivery
185
+ end
186
+
187
+ # @see the `==` method
188
+ # @param [Object] Object to be compared
189
+ def eql?(o)
190
+ self == o
191
+ end
192
+
193
+ # Calculates hash code according to all attributes.
194
+ # @return [Integer] Hash code
195
+ def hash
196
+ [channel, state, delivery].hash
197
+ end
198
+
199
+ # Builds the object from hash
200
+ # @param [Hash] attributes Model attributes in the form of hash
201
+ # @return [Object] Returns the model itself
202
+ def self.build_from_hash(attributes)
203
+ return nil unless attributes.is_a?(Hash)
204
+ attributes = attributes.transform_keys(&:to_sym)
205
+ transformed_hash = {}
206
+ openapi_types.each_pair do |key, type|
207
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
208
+ transformed_hash["#{key}"] = nil
209
+ elsif type =~ /\AArray<(.*)>/i
210
+ # check to ensure the input is an array given that the attribute
211
+ # is documented as an array but the input is not
212
+ if attributes[attribute_map[key]].is_a?(Array)
213
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
214
+ end
215
+ elsif !attributes[attribute_map[key]].nil?
216
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
217
+ end
218
+ end
219
+ new(transformed_hash)
220
+ end
221
+
222
+ # Returns the object in the form of hash
223
+ # @return [Hash] Returns the object in the form of hash
224
+ def to_hash
225
+ hash = {}
226
+ self.class.attribute_map.each_pair do |attr, param|
227
+ value = self.send(attr)
228
+ if value.nil?
229
+ is_nullable = self.class.openapi_nullable.include?(attr)
230
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
231
+ end
232
+
233
+ hash[param] = _to_hash(value)
234
+ end
235
+ hash
236
+ end
237
+
238
+ end
239
+
240
+ end
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Pingram
14
- VERSION = '1.0.32'
14
+ VERSION = '1.0.34'
15
15
  end
data/lib/pingram.rb CHANGED
@@ -269,6 +269,8 @@ require 'pingram/models/sender_post_body_web_push'
269
269
  require 'pingram/models/sender_post_response'
270
270
  require 'pingram/models/set_default_template_request'
271
271
  require 'pingram/models/slack_interactivity_response'
272
+ require 'pingram/models/sub_notification'
273
+ require 'pingram/models/sub_notification_put_request'
272
274
  require 'pingram/models/success_response'
273
275
  require 'pingram/models/supabase_configure_request'
274
276
  require 'pingram/models/supabase_configure_response'
@@ -298,6 +300,13 @@ require 'pingram/models/update_broadcast_request'
298
300
  require 'pingram/models/update_voice_agent_request'
299
301
  require 'pingram/models/update_voice_agent_response'
300
302
  require 'pingram/models/user'
303
+ require 'pingram/models/user_preferences_get_response'
304
+ require 'pingram/models/user_preferences_get_response_notifications_inner'
305
+ require 'pingram/models/user_preferences_get_response_preferences_inner'
306
+ require 'pingram/models/user_preferences_get_response_sub_notifications_inner'
307
+ require 'pingram/models/user_preferences_post_request_inner'
308
+ require 'pingram/models/user_preferences_post_response_inner'
309
+ require 'pingram/models/user_preferences_post_response_inner_channels_states_inner'
301
310
  require 'pingram/models/user_suppression_delete_response'
302
311
  require 'pingram/models/voice_browser_call_request'
303
312
  require 'pingram/models/voice_browser_call_response'
@@ -332,6 +341,7 @@ require 'pingram/api/profile_api'
332
341
  require 'pingram/api/registrations_api'
333
342
  require 'pingram/api/sender_api'
334
343
  require 'pingram/api/sms_api'
344
+ require 'pingram/api/sub_notifications_api'
335
345
  require 'pingram/api/templates_api'
336
346
  require 'pingram/api/types_api'
337
347
  require 'pingram/api/user_api'
@@ -3,10 +3,10 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
6
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-2j8ed sitelibdir\=./.gem.20260916-2343-2j8ed clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-2j5rrj sitelibdir\=./.gem.20260923-2452-2j5rrj clean
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
9
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-2j8ed sitelibdir\=./.gem.20260916-2343-2j8ed
9
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-2j5rrj sitelibdir\=./.gem.20260923-2452-2j5rrj
10
10
  compiling breakpoint.c
11
11
  compiling byebug.c
12
12
  byebug.c: In function ‘check_started’:
@@ -35,8 +35,8 @@ compiling threads.c
35
35
  linking shared-object byebug/byebug.so
36
36
 
37
37
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
38
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-2j8ed sitelibdir\=./.gem.20260916-2343-2j8ed install
39
- /usr/bin/install -c -m 0755 byebug.so ./.gem.20260916-2343-2j8ed/byebug
38
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-2j5rrj sitelibdir\=./.gem.20260923-2452-2j5rrj install
39
+ /usr/bin/install -c -m 0755 byebug.so ./.gem.20260923-2452-2j5rrj/byebug
40
40
 
41
41
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug
42
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-2j8ed sitelibdir\=./.gem.20260916-2343-2j8ed clean
42
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-2j5rrj sitelibdir\=./.gem.20260923-2452-2j5rrj clean
@@ -6,10 +6,10 @@ checking for altzone in time.h with -Werror... no
6
6
  creating Makefile
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
9
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-ml1awc sitelibdir\=./.gem.20260916-2343-ml1awc clean
9
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-gbxbnr sitelibdir\=./.gem.20260923-2452-gbxbnr clean
10
10
 
11
11
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
12
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-ml1awc sitelibdir\=./.gem.20260916-2343-ml1awc
12
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-gbxbnr sitelibdir\=./.gem.20260923-2452-gbxbnr
13
13
  compiling date_core.c
14
14
  compiling date_parse.c
15
15
  compiling date_strftime.c
@@ -17,8 +17,8 @@ compiling date_strptime.c
17
17
  linking shared-object date_core.so
18
18
 
19
19
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
20
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-ml1awc sitelibdir\=./.gem.20260916-2343-ml1awc install
21
- /usr/bin/install -c -m 0755 date_core.so ./.gem.20260916-2343-ml1awc
20
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-gbxbnr sitelibdir\=./.gem.20260923-2452-gbxbnr install
21
+ /usr/bin/install -c -m 0755 date_core.so ./.gem.20260923-2452-gbxbnr
22
22
 
23
23
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date
24
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-ml1awc sitelibdir\=./.gem.20260916-2343-ml1awc clean
24
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-gbxbnr sitelibdir\=./.gem.20260923-2452-gbxbnr clean
@@ -1,4 +1,4 @@
1
- current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console
1
+ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console
2
2
  /opt/hostedtoolcache/Ruby/3.2.11/x64/bin/ruby extconf.rb
3
3
  checking for rb_interned_str_cstr()... yes
4
4
  checking for rb_ractor_local_storage_value_newkey()... yes
@@ -13,21 +13,22 @@ checking for HAVE_RUBY_FIBER_SCHEDULER_H... yes
13
13
  checking for rb_category_warn()... yes
14
14
  checking for RB_WARN_CATEGORY_DEPRECATED... yes
15
15
  checking for ttyname_r()... yes
16
+ checking for type of ttyname_r()... int
16
17
  checking for rb_prepend_module()... yes
17
18
  checking for gperf... no
18
19
  creating Makefile
19
20
 
20
- current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console
21
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-tja4yy sitelibdir\=./.gem.20260916-2343-tja4yy clean
21
+ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console
22
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-6dn0i1 sitelibdir\=./.gem.20260923-2452-6dn0i1 clean
22
23
 
23
- current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console
24
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-tja4yy sitelibdir\=./.gem.20260916-2343-tja4yy
24
+ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console
25
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-6dn0i1 sitelibdir\=./.gem.20260923-2452-6dn0i1
25
26
  compiling console.c
26
27
  linking shared-object io/console.so
27
28
 
28
- current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console
29
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-tja4yy sitelibdir\=./.gem.20260916-2343-tja4yy install
30
- /usr/bin/install -c -m 0755 console.so ./.gem.20260916-2343-tja4yy/io
29
+ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console
30
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-6dn0i1 sitelibdir\=./.gem.20260923-2452-6dn0i1 install
31
+ /usr/bin/install -c -m 0755 console.so ./.gem.20260923-2452-6dn0i1/io
31
32
 
32
- current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console
33
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-tja4yy sitelibdir\=./.gem.20260916-2343-tja4yy clean
33
+ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console
34
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-6dn0i1 sitelibdir\=./.gem.20260923-2452-6dn0i1 clean
@@ -143,8 +143,8 @@ checked program was:
143
143
  /* end */
144
144
 
145
145
  LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
146
- /usr/bin/ld: /tmp/ccxwuxGY.o: in function `t':
147
- /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_path'
146
+ /usr/bin/ld: /tmp/ccxb4JJS.o: in function `t':
147
+ /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_path'
148
148
  collect2: error: ld returned 1 exit status
149
149
  checked program was:
150
150
  /* begin */
@@ -203,8 +203,8 @@ checked program was:
203
203
  /* end */
204
204
 
205
205
  LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
206
- /usr/bin/ld: /tmp/ccu0dDNW.o: in function `t':
207
- /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_closed_p'
206
+ /usr/bin/ld: /tmp/ccCpA0dY.o: in function `t':
207
+ /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_closed_p'
208
208
  collect2: error: ld returned 1 exit status
209
209
  checked program was:
210
210
  /* begin */
@@ -263,8 +263,8 @@ checked program was:
263
263
  /* end */
264
264
 
265
265
  LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
266
- /usr/bin/ld: /tmp/cc2RP0CC.o: in function `t':
267
- /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.3/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_open_descriptor'
266
+ /usr/bin/ld: /tmp/cc292UEq.o: in function `t':
267
+ /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/ext/io/console/conftest.c:17:(.text+0xb): undefined reference to `rb_io_open_descriptor'
268
268
  collect2: error: ld returned 1 exit status
269
269
  checked program was:
270
270
  /* begin */
@@ -435,6 +435,29 @@ checked program was:
435
435
 
436
436
  --------------------
437
437
 
438
+ checking for type of ttyname_r()... -------------------- int
439
+
440
+ LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
441
+ checked program was:
442
+ /* begin */
443
+ 1: #include "ruby.h"
444
+ 2:
445
+ 3: #include <unistd.h>
446
+ 4:
447
+ 5: int t(void) {char name[1024]; return ttyname_r(0, name, sizeof(name)) % 1024;}
448
+ 6: int main(int argc, char **argv)
449
+ 7: {
450
+ 8: if (argc > 1000000) {
451
+ 9: int (* volatile tp)(void)=(int (*)(void))&t;
452
+ 10: printf("%d", (*tp)());
453
+ 11: }
454
+ 12:
455
+ 13: return !!argv[argc];
456
+ 14: }
457
+ /* end */
458
+
459
+ --------------------
460
+
438
461
  have_func: checking for rb_prepend_module()... -------------------- yes
439
462
 
440
463
  LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.2.11/x64/lib "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.2.11/x64/include/ruby-3.2.0 -I. -DENABLE_PATH_CHECK=0 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.2.11/x64/lib -lruby -lm -lpthread -lc"
@@ -3,10 +3,10 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
6
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-khyqp5 sitelibdir\=./.gem.20260916-2343-khyqp5 clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-f8mba3 sitelibdir\=./.gem.20260923-2452-f8mba3 clean
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
9
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-khyqp5 sitelibdir\=./.gem.20260916-2343-khyqp5
9
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-f8mba3 sitelibdir\=./.gem.20260923-2452-f8mba3
10
10
  compiling adj_matrix.c
11
11
  adj_matrix.c: In function ‘adj_matrix_default’:
12
12
  adj_matrix.c:82:12: warning: old-style function definition [-Wold-style-definition]
@@ -22,8 +22,8 @@ compiling jaro_winkler.c
22
22
  linking shared-object jaro_winkler/jaro_winkler_ext.so
23
23
 
24
24
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
25
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-khyqp5 sitelibdir\=./.gem.20260916-2343-khyqp5 install
26
- /usr/bin/install -c -m 0755 jaro_winkler_ext.so ./.gem.20260916-2343-khyqp5/jaro_winkler
25
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-f8mba3 sitelibdir\=./.gem.20260923-2452-f8mba3 install
26
+ /usr/bin/install -c -m 0755 jaro_winkler_ext.so ./.gem.20260923-2452-f8mba3/jaro_winkler
27
27
 
28
28
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler
29
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-khyqp5 sitelibdir\=./.gem.20260916-2343-khyqp5 clean
29
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-f8mba3 sitelibdir\=./.gem.20260923-2452-f8mba3 clean
@@ -3,13 +3,13 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
6
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-g5ei89 sitelibdir\=./.gem.20260916-2343-g5ei89 clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-9ngndu sitelibdir\=./.gem.20260923-2452-9ngndu clean
7
7
  cd libyaml && make clean
8
8
  /bin/sh: 1: cd: can't cd to libyaml
9
9
  make: [Makefile:283: clean-so] Error 2 (ignored)
10
10
 
11
11
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
12
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-g5ei89 sitelibdir\=./.gem.20260916-2343-g5ei89
12
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-9ngndu sitelibdir\=./.gem.20260923-2452-9ngndu
13
13
  compiling psych.c
14
14
  compiling psych_emitter.c
15
15
  compiling psych_parser.c
@@ -18,11 +18,11 @@ compiling psych_yaml_tree.c
18
18
  linking shared-object psych.so
19
19
 
20
20
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
21
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-g5ei89 sitelibdir\=./.gem.20260916-2343-g5ei89 install
22
- /usr/bin/install -c -m 0755 psych.so ./.gem.20260916-2343-g5ei89
21
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-9ngndu sitelibdir\=./.gem.20260923-2452-9ngndu install
22
+ /usr/bin/install -c -m 0755 psych.so ./.gem.20260923-2452-9ngndu
23
23
 
24
24
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/psych-5.5.0/ext/psych
25
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-g5ei89 sitelibdir\=./.gem.20260916-2343-g5ei89 clean
25
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-9ngndu sitelibdir\=./.gem.20260923-2452-9ngndu clean
26
26
  cd libyaml && make clean
27
27
  /bin/sh: 1: cd: can't cd to libyaml
28
28
  make: [Makefile:283: clean-so] Error 2 (ignored)
@@ -3,16 +3,16 @@ current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/v
3
3
  creating Makefile
4
4
 
5
5
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
6
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-dzf07z sitelibdir\=./.gem.20260916-2343-dzf07z clean
6
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-d6iu5 sitelibdir\=./.gem.20260923-2452-d6iu5 clean
7
7
 
8
8
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
9
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-dzf07z sitelibdir\=./.gem.20260916-2343-dzf07z
9
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-d6iu5 sitelibdir\=./.gem.20260923-2452-d6iu5
10
10
  compiling cparse.c
11
11
  linking shared-object racc/cparse.so
12
12
 
13
13
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
14
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-dzf07z sitelibdir\=./.gem.20260916-2343-dzf07z install
15
- /usr/bin/install -c -m 0755 cparse.so ./.gem.20260916-2343-dzf07z/racc
14
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-d6iu5 sitelibdir\=./.gem.20260923-2452-d6iu5 install
15
+ /usr/bin/install -c -m 0755 cparse.so ./.gem.20260923-2452-d6iu5/racc
16
16
 
17
17
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse
18
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-dzf07z sitelibdir\=./.gem.20260916-2343-dzf07z clean
18
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-d6iu5 sitelibdir\=./.gem.20260923-2452-d6iu5 clean
@@ -4,16 +4,16 @@ checking for rb_io_mode_t in ruby/io.h... no
4
4
  creating Makefile
5
5
 
6
6
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
7
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-hbx02c sitelibdir\=./.gem.20260916-2343-hbx02c clean
7
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-8w1if7 sitelibdir\=./.gem.20260923-2452-8w1if7 clean
8
8
 
9
9
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
10
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-hbx02c sitelibdir\=./.gem.20260916-2343-hbx02c
10
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-8w1if7 sitelibdir\=./.gem.20260923-2452-8w1if7
11
11
  compiling stringio.c
12
12
  linking shared-object stringio.so
13
13
 
14
14
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
15
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-hbx02c sitelibdir\=./.gem.20260916-2343-hbx02c install
16
- /usr/bin/install -c -m 0755 stringio.so ./.gem.20260916-2343-hbx02c
15
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-8w1if7 sitelibdir\=./.gem.20260923-2452-8w1if7 install
16
+ /usr/bin/install -c -m 0755 stringio.so ./.gem.20260923-2452-8w1if7
17
17
 
18
18
  current directory: /home/runner/work/serverless/serverless/sdks/ruby/generated/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio
19
- make DESTDIR\= sitearchdir\=./.gem.20260916-2343-hbx02c sitelibdir\=./.gem.20260916-2343-hbx02c clean
19
+ make DESTDIR\= sitearchdir\=./.gem.20260923-2452-8w1if7 sitelibdir\=./.gem.20260923-2452-8w1if7 clean
@@ -88,7 +88,7 @@ CCDLFLAGS = -fPIC
88
88
  CFLAGS = $(CCDLFLAGS) $(cflags) -fPIC $(ARCH_FLAG)
89
89
  INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
90
90
  DEFS =
91
- CPPFLAGS = -DHAVE_RB_INTERNED_STR_CSTR -DHAVE_RB_RACTOR_LOCAL_STORAGE_VALUE_NEWKEY -DHAVE_RB_IO_DESCRIPTOR -DHAVE_TERMIOS_H -DHAVE_CFMAKERAW -DHAVE_SYS_IOCTL_H -DHAVE_RB_IO_WAIT=1 -DHAVE_RB_CATEGORY_WARN -DHAVE_CONST_RB_WARN_CATEGORY_DEPRECATED -DHAVE_TTYNAME_R -DHAVE_RB_PREPEND_MODULE -DENABLE_PATH_CHECK=0 $(DEFS) $(cppflags)
91
+ CPPFLAGS = -DHAVE_RB_INTERNED_STR_CSTR -DHAVE_RB_RACTOR_LOCAL_STORAGE_VALUE_NEWKEY -DHAVE_RB_IO_DESCRIPTOR -DHAVE_TERMIOS_H -DHAVE_CFMAKERAW -DHAVE_SYS_IOCTL_H -DHAVE_RB_IO_WAIT=1 -DHAVE_RB_CATEGORY_WARN -DHAVE_CONST_RB_WARN_CATEGORY_DEPRECATED -DHAVE_TTYNAME_R -DTTYNAME_R_RETURNS_INT -DHAVE_RB_PREPEND_MODULE -DENABLE_PATH_CHECK=0 $(DEFS) $(cppflags)
92
92
  CXXFLAGS = $(CCDLFLAGS) $(ARCH_FLAG)
93
93
  ldflags = -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed
94
94
  dldflags = -Wl,--compress-debug-sections=zlib
@@ -4,7 +4,7 @@
4
4
  */
5
5
 
6
6
  static const char *const
7
- IO_CONSOLE_VERSION = "0.9.3";
7
+ IO_CONSOLE_VERSION = "0.9.4";
8
8
 
9
9
  #include "ruby.h"
10
10
  #include "ruby/io.h"
@@ -2314,6 +2314,9 @@ console_ttyname(VALUE io)
2314
2314
  return rb_usascii_str_new_lit("con");
2315
2315
  # elif defined HAVE_TTYNAME_R
2316
2316
  {
2317
+ # ifdef TTYNAME_R_RETURNS_CHAR_P
2318
+ # define ttyname_r(fd, name, size) (ttyname_r(fd, name, size) == NULL ? errno : 0)
2319
+ # endif
2317
2320
  char termname[1024], *tn = termname;
2318
2321
  size_t size = sizeof(termname);
2319
2322
  int e;
@@ -50,7 +50,18 @@ when true
50
50
  end
51
51
  have_func("rb_category_warn")
52
52
  have_const("RB_WARN_CATEGORY_DEPRECATED")
53
- win32 or have_func("ttyname_r") or have_func("ttyname")
53
+ unless win32
54
+ if have_func("ttyname_r")
55
+ ret = checking_for("type of ttyname_r()", "%s") {try_link(<<~C) ? "int" : "char *"}
56
+ #{cpp_include %<unistd.h>}
57
+ int t(void) {char name[1024]; return ttyname_r(0, name, sizeof(name)) % 1024;}
58
+ #{MAIN_DOES_NOTHING('t')}
59
+ C
60
+ $defs << "-DTTYNAME_R_RETURNS_#{ret.tr_cpp}"
61
+ else
62
+ have_func("ttyname")
63
+ end
64
+ end
54
65
  have_func("rb_prepend_module") # not exported by TruffleRuby
55
66
  vk_tool = find_executable("gperf")
56
67
  create_makefile("io/console") {|conf|
@@ -1,16 +1,16 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: io-console 0.9.3 ruby lib
2
+ # stub: io-console 0.9.4 ruby lib
3
3
  # stub: ext/io/console/extconf.rb
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "io-console".freeze
7
- s.version = "0.9.3"
7
+ s.version = "0.9.4"
8
8
 
9
9
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
10
10
  s.metadata = { "changelog_uri" => "https://github.com/ruby/io-console/releases", "source_code_url" => "https://github.com/ruby/io-console" } if s.respond_to? :metadata=
11
11
  s.require_paths = ["lib".freeze]
12
12
  s.authors = ["Nobu Nakada".freeze]
13
- s.date = "2026-09-14"
13
+ s.date = "2026-09-17"
14
14
  s.description = "add console capabilities to IO instances.".freeze
15
15
  s.email = "nobu@ruby-lang.org".freeze
16
16
  s.extensions = ["ext/io/console/extconf.rb".freeze]