pingram 1.0.3 → 1.0.6

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 (464) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +9 -7
  3. data/lib/pingram/api/members_api.rb +10 -10
  4. data/lib/pingram/api/numbers_api.rb +214 -0
  5. data/lib/pingram/api_client.rb +1 -1
  6. data/lib/pingram/client_wrapper.rb +10 -0
  7. data/lib/pingram/models/account_get_response.rb +19 -53
  8. data/lib/pingram/models/auto_join_get_response.rb +16 -16
  9. data/lib/pingram/models/auto_join_post_response.rb +16 -16
  10. data/lib/pingram/models/billing_post_response_body.rb +1 -1
  11. data/lib/pingram/models/get_logs_response_messages_inner.rb +2 -2
  12. data/lib/pingram/models/get_members_response_inner.rb +27 -1
  13. data/lib/pingram/models/list_phone_numbers_response.rb +167 -0
  14. data/lib/pingram/models/list_phone_numbers_response_numbers_inner.rb +202 -0
  15. data/lib/pingram/models/logs_get_response_logs_inner.rb +65 -1
  16. data/lib/pingram/models/order_phone_number_request.rb +166 -0
  17. data/lib/pingram/models/order_phone_number_response.rb +217 -0
  18. data/lib/pingram/models/organization.rb +74 -222
  19. data/lib/pingram/models/phone_verify_confirm_request.rb +190 -0
  20. data/lib/pingram/models/phone_verify_confirm_response.rb +164 -0
  21. data/lib/pingram/models/phone_verify_start_request.rb +190 -0
  22. data/lib/pingram/models/phone_verify_start_response.rb +164 -0
  23. data/lib/pingram/models/search_available_phone_numbers_response.rb +167 -0
  24. data/lib/pingram/models/search_available_phone_numbers_response_numbers_inner.rb +206 -0
  25. data/lib/pingram/models/sender_post_body.rb +2 -0
  26. data/lib/pingram/models/sender_post_body_options.rb +13 -4
  27. data/lib/pingram/models/sender_post_body_options_push.rb +151 -0
  28. data/lib/pingram/models/sender_post_body_sms.rb +15 -5
  29. data/lib/pingram/version.rb +1 -1
  30. data/lib/pingram.rb +12 -0
  31. data/vendor/bundle/ruby/3.2.0/cache/ethon-0.18.0.gem +0 -0
  32. data/vendor/bundle/ruby/3.2.0/cache/ffi-1.17.4-x86_64-linux-gnu.gem +0 -0
  33. data/vendor/bundle/ruby/3.2.0/cache/logger-1.7.0.gem +0 -0
  34. data/vendor/bundle/ruby/3.2.0/cache/parallel-1.28.0.gem +0 -0
  35. data/vendor/bundle/ruby/3.2.0/cache/parser-3.3.11.1.gem +0 -0
  36. data/vendor/bundle/ruby/3.2.0/cache/typhoeus-1.6.0.gem +0 -0
  37. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/byebug/byebug.so +0 -0
  38. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem_make.out +6 -6
  39. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/date_core.so +0 -0
  40. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +6 -6
  41. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/mkmf.log +4 -4
  42. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/gem_make.out +6 -6
  43. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/io/console.so +0 -0
  44. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/mkmf.log +22 -22
  45. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +6 -6
  46. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/jaro_winkler/jaro_winkler_ext.so +0 -0
  47. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.3.1/gem_make.out +6 -6
  48. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.3.1/mkmf.log +7 -7
  49. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.3.1/psych.so +0 -0
  50. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +6 -6
  51. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/racc/cparse.so +0 -0
  52. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +6 -6
  53. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/mkmf.log +2 -2
  54. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/stringio.so +0 -0
  55. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/ext/byebug/Makefile +3 -3
  56. data/vendor/bundle/ruby/3.2.0/gems/byebug-13.0.0/lib/byebug/byebug.so +0 -0
  57. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/Makefile +3 -3
  58. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/lib/date_core.so +0 -0
  59. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/CHANGELOG.md +46 -1
  60. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/README.md +23 -0
  61. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.18.0/ethon.gemspec +37 -0
  62. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/classes.rb +12 -2
  63. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/codes.rb +3 -2
  64. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/options.rb +4 -3
  65. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/callbacks.rb +10 -3
  66. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/informations.rb +3 -0
  67. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/response_callbacks.rb +6 -1
  68. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/loggable.rb +0 -1
  69. data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/version.rb +1 -1
  70. data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/CHANGELOG.md +10 -1
  71. data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/ffi.gemspec +3 -1
  72. data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/3.0/ffi_c.so +0 -0
  73. data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/3.1/ffi_c.so +0 -0
  74. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/3.2/ffi_c.so +0 -0
  75. data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/3.3/ffi_c.so +0 -0
  76. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/3.4/ffi_c.so +0 -0
  77. data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/4.0/ffi_c.so +0 -0
  78. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/version.rb +3 -0
  79. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/ext/io/console/Makefile +3 -3
  80. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/lib/io/console.so +0 -0
  81. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/Makefile +3 -3
  82. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/lib/jaro_winkler/jaro_winkler_ext.so +0 -0
  83. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/.document +4 -0
  84. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/.rdoc_options +3 -0
  85. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/BSDL +22 -0
  86. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/COPYING +56 -0
  87. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/README.md +104 -0
  88. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/errors.rb +9 -0
  89. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/formatter.rb +36 -0
  90. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/log_device.rb +265 -0
  91. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/period.rb +47 -0
  92. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/severity.rb +38 -0
  93. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger/version.rb +5 -0
  94. data/vendor/bundle/ruby/3.2.0/gems/logger-1.7.0/lib/logger.rb +789 -0
  95. data/vendor/bundle/ruby/3.2.0/gems/parallel-1.28.0/lib/parallel/version.rb +4 -0
  96. data/vendor/bundle/ruby/3.2.0/gems/{parallel-1.27.0 → parallel-1.28.0}/lib/parallel.rb +11 -0
  97. data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/current.rb +2 -2
  98. data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/version.rb +1 -1
  99. data/vendor/bundle/ruby/3.2.0/gems/psych-5.3.1/ext/psych/Makefile +3 -3
  100. data/vendor/bundle/ruby/3.2.0/gems/psych-5.3.1/lib/psych.so +0 -0
  101. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse/Makefile +3 -3
  102. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/cparse.so +0 -0
  103. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio/Makefile +3 -3
  104. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/lib/stringio.so +0 -0
  105. data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/CHANGELOG.md +14 -1
  106. data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/README.md +2 -2
  107. data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/version.rb +1 -1
  108. data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/typhoeus.gemspec +1 -1
  109. data/vendor/bundle/ruby/3.2.0/specifications/ethon-0.18.0.gemspec +27 -0
  110. data/vendor/bundle/ruby/3.2.0/specifications/{ffi-1.17.3-x86_64-linux-gnu.gemspec → ffi-1.17.4-x86_64-linux-gnu.gemspec} +2 -2
  111. data/vendor/bundle/ruby/3.2.0/specifications/logger-1.7.0.gemspec +22 -0
  112. data/vendor/bundle/ruby/3.2.0/specifications/{parallel-1.27.0.gemspec → parallel-1.28.0.gemspec} +4 -4
  113. data/vendor/bundle/ruby/3.2.0/specifications/{parser-3.3.10.2.gemspec → parser-3.3.11.1.gemspec} +4 -4
  114. data/vendor/bundle/ruby/3.2.0/specifications/{typhoeus-1.5.0.gemspec → typhoeus-1.6.0.gemspec} +4 -4
  115. metadata +360 -378
  116. data/vendor/bundle/ruby/3.2.0/cache/ethon-0.15.0.gem +0 -0
  117. data/vendor/bundle/ruby/3.2.0/cache/ffi-1.17.3-x86_64-linux-gnu.gem +0 -0
  118. data/vendor/bundle/ruby/3.2.0/cache/parallel-1.27.0.gem +0 -0
  119. data/vendor/bundle/ruby/3.2.0/cache/parser-3.3.10.2.gem +0 -0
  120. data/vendor/bundle/ruby/3.2.0/cache/typhoeus-1.5.0.gem +0 -0
  121. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/.github/workflows/ruby.yml +0 -41
  122. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/.gitignore +0 -8
  123. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/.rspec +0 -3
  124. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/Gemfile +0 -43
  125. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/Guardfile +0 -10
  126. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/Rakefile +0 -40
  127. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/ethon.gemspec +0 -26
  128. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/profile/benchmarks.rb +0 -104
  129. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/profile/memory_leaks.rb +0 -114
  130. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/profile/perf_spec_helper.rb +0 -37
  131. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/profile/support/memory_test_helpers.rb +0 -76
  132. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/profile/support/os_memory_leak_tracker.rb +0 -48
  133. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/profile/support/ruby_object_leak_tracker.rb +0 -49
  134. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/curl_spec.rb +0 -38
  135. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/callbacks_spec.rb +0 -59
  136. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/debug_info_spec.rb +0 -54
  137. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/features_spec.rb +0 -24
  138. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/form_spec.rb +0 -104
  139. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/header_spec.rb +0 -79
  140. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/custom_spec.rb +0 -177
  141. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/delete_spec.rb +0 -21
  142. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/get_spec.rb +0 -126
  143. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/head_spec.rb +0 -80
  144. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/options_spec.rb +0 -51
  145. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/patch_spec.rb +0 -51
  146. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/post_spec.rb +0 -317
  147. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http/put_spec.rb +0 -168
  148. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/http_spec.rb +0 -64
  149. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/informations_spec.rb +0 -120
  150. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/mirror_spec.rb +0 -47
  151. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/operations_spec.rb +0 -268
  152. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/options_spec.rb +0 -193
  153. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/queryable_spec.rb +0 -235
  154. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/response_callbacks_spec.rb +0 -152
  155. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy/util_spec.rb +0 -28
  156. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/easy_spec.rb +0 -203
  157. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/libc_spec.rb +0 -14
  158. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/loggable_spec.rb +0 -22
  159. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/multi/operations_spec.rb +0 -298
  160. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/multi/options_spec.rb +0 -182
  161. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/multi/stack_spec.rb +0 -80
  162. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/ethon/multi_spec.rb +0 -152
  163. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/spec_helper.rb +0 -28
  164. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/support/localhost_server.rb +0 -95
  165. data/vendor/bundle/ruby/3.2.0/gems/ethon-0.15.0/spec/support/server.rb +0 -115
  166. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/3.2/ffi_c.so +0 -0
  167. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/3.4/ffi_c.so +0 -0
  168. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/ffi/version.rb +0 -3
  169. data/vendor/bundle/ruby/3.2.0/gems/parallel-1.27.0/lib/parallel/version.rb +0 -4
  170. data/vendor/bundle/ruby/3.2.0/specifications/ethon-0.15.0.gemspec +0 -24
  171. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/LICENSE +0 -0
  172. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curl.rb +0 -0
  173. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/constants.rb +0 -0
  174. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/form_options.rb +0 -0
  175. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/functions.rb +0 -0
  176. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/infos.rb +0 -0
  177. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/messages.rb +0 -0
  178. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/curls/settings.rb +0 -0
  179. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/debug_info.rb +0 -0
  180. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/features.rb +0 -0
  181. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/form.rb +0 -0
  182. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/header.rb +0 -0
  183. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/actionable.rb +0 -0
  184. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/custom.rb +0 -0
  185. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/delete.rb +0 -0
  186. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/get.rb +0 -0
  187. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/head.rb +0 -0
  188. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/options.rb +0 -0
  189. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/patch.rb +0 -0
  190. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/post.rb +0 -0
  191. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/postable.rb +0 -0
  192. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/put.rb +0 -0
  193. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http/putable.rb +0 -0
  194. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/http.rb +0 -0
  195. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/mirror.rb +0 -0
  196. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/operations.rb +0 -0
  197. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/options.rb +0 -0
  198. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/params.rb +0 -0
  199. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/queryable.rb +0 -0
  200. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy/util.rb +0 -0
  201. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/easy.rb +0 -0
  202. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/ethon_error.rb +0 -0
  203. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/global_init.rb +0 -0
  204. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/invalid_option.rb +0 -0
  205. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/invalid_value.rb +0 -0
  206. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/multi_add.rb +0 -0
  207. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/multi_fdset.rb +0 -0
  208. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/multi_remove.rb +0 -0
  209. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/multi_timeout.rb +0 -0
  210. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors/select.rb +0 -0
  211. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/errors.rb +0 -0
  212. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/libc.rb +0 -0
  213. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/multi/operations.rb +0 -0
  214. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/multi/options.rb +0 -0
  215. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/multi/stack.rb +0 -0
  216. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon/multi.rb +0 -0
  217. /data/vendor/bundle/ruby/3.2.0/gems/{ethon-0.15.0 → ethon-0.18.0}/lib/ethon.rb +0 -0
  218. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/COPYING +0 -0
  219. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/Gemfile +0 -0
  220. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/LICENSE +0 -0
  221. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/LICENSE.SPECS +0 -0
  222. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/README.md +0 -0
  223. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/Rakefile +0 -0
  224. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/Steepfile +0 -0
  225. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/abstract_memory.rb +0 -0
  226. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/autopointer.rb +0 -0
  227. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/buffer.rb +0 -0
  228. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/callback.rb +0 -0
  229. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/compat.rb +0 -0
  230. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/data_converter.rb +0 -0
  231. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/dynamic_library.rb +0 -0
  232. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/enum.rb +0 -0
  233. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/errno.rb +0 -0
  234. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/ffi.rb +0 -0
  235. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/function.rb +0 -0
  236. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/io.rb +0 -0
  237. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/library.rb +0 -0
  238. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/library_path.rb +0 -0
  239. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/managedstruct.rb +0 -0
  240. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/memorypointer.rb +0 -0
  241. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/aarch64-darwin/types.conf +0 -0
  242. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/aarch64-freebsd/types.conf +0 -0
  243. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/aarch64-freebsd12/types.conf +0 -0
  244. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/aarch64-linux/types.conf +0 -0
  245. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/aarch64-openbsd/types.conf +0 -0
  246. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/aarch64-windows/types.conf +0 -0
  247. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/arm-freebsd/types.conf +0 -0
  248. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/arm-freebsd12/types.conf +0 -0
  249. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/arm-linux/types.conf +0 -0
  250. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/hppa1.1-linux/types.conf +0 -0
  251. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/hppa2.0-linux/types.conf +0 -0
  252. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-cygwin/types.conf +0 -0
  253. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-darwin/types.conf +0 -0
  254. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-freebsd/types.conf +0 -0
  255. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-freebsd12/types.conf +0 -0
  256. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-gnu/types.conf +0 -0
  257. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-linux/types.conf +0 -0
  258. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-netbsd/types.conf +0 -0
  259. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-openbsd/types.conf +0 -0
  260. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-solaris/types.conf +0 -0
  261. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/i386-windows/types.conf +0 -0
  262. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/ia64-linux/types.conf +0 -0
  263. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/loongarch64-linux/types.conf +0 -0
  264. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mips-linux/types.conf +0 -0
  265. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mips64-linux/types.conf +0 -0
  266. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mips64el-linux/types.conf +0 -0
  267. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mipsel-linux/types.conf +0 -0
  268. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mipsisa32r6-linux/types.conf +0 -0
  269. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mipsisa32r6el-linux/types.conf +0 -0
  270. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mipsisa64r6-linux/types.conf +0 -0
  271. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/mipsisa64r6el-linux/types.conf +0 -0
  272. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/powerpc-aix/types.conf +0 -0
  273. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/powerpc-darwin/types.conf +0 -0
  274. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/powerpc-linux/types.conf +0 -0
  275. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/powerpc-openbsd/types.conf +0 -0
  276. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/powerpc64-linux/types.conf +0 -0
  277. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/powerpc64le-linux/types.conf +0 -0
  278. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/riscv64-linux/types.conf +0 -0
  279. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/s390-linux/types.conf +0 -0
  280. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/s390x-linux/types.conf +0 -0
  281. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/sparc-linux/types.conf +0 -0
  282. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/sparc-solaris/types.conf +0 -0
  283. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/sparcv9-linux/types.conf +0 -0
  284. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/sparcv9-openbsd/types.conf +0 -0
  285. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/sparcv9-solaris/types.conf +0 -0
  286. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/sw_64-linux/types.conf +0 -0
  287. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-cygwin/types.conf +0 -0
  288. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-darwin/types.conf +0 -0
  289. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-dragonflybsd/types.conf +0 -0
  290. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-freebsd/types.conf +0 -0
  291. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-freebsd12/types.conf +0 -0
  292. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-haiku/types.conf +0 -0
  293. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-linux/types.conf +0 -0
  294. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-msys/types.conf +0 -0
  295. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-netbsd/types.conf +0 -0
  296. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-openbsd/types.conf +0 -0
  297. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-solaris/types.conf +0 -0
  298. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform/x86_64-windows/types.conf +0 -0
  299. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/platform.rb +0 -0
  300. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/pointer.rb +0 -0
  301. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/struct.rb +0 -0
  302. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/struct_by_reference.rb +0 -0
  303. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/struct_layout.rb +0 -0
  304. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/struct_layout_builder.rb +0 -0
  305. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/tools/const_generator.rb +0 -0
  306. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/tools/generator.rb +0 -0
  307. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/tools/generator_task.rb +0 -0
  308. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/tools/struct_generator.rb +0 -0
  309. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/types.rb +0 -0
  310. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/union.rb +0 -0
  311. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi/variadic.rb +0 -0
  312. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/lib/ffi.rb +0 -0
  313. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/getlogin.rb +0 -0
  314. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/getpid.rb +0 -0
  315. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/gettimeofday.rb +0 -0
  316. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/hello.rb +0 -0
  317. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/hello_ractor.rb +0 -0
  318. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/inotify.rb +0 -0
  319. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/pty.rb +0 -0
  320. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/qsort.rb +0 -0
  321. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/samples/qsort_ractor.rb +0 -0
  322. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/abstract_memory.rbs +0 -0
  323. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/auto_pointer.rbs +0 -0
  324. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/buffer.rbs +0 -0
  325. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/data_converter.rbs +0 -0
  326. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/dynamic_library.rbs +0 -0
  327. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/enum.rbs +0 -0
  328. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/errno.rbs +0 -0
  329. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/function.rbs +0 -0
  330. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/library.rbs +0 -0
  331. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/native_type.rbs +0 -0
  332. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/platform.rbs +0 -0
  333. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/pointer.rbs +0 -0
  334. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/struct.rbs +0 -0
  335. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/struct_by_reference.rbs +0 -0
  336. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/struct_by_value.rbs +0 -0
  337. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/struct_layout.rbs +0 -0
  338. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/struct_layout_builder.rbs +0 -0
  339. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi/type.rbs +0 -0
  340. /data/vendor/bundle/ruby/3.2.0/gems/{ffi-1.17.3-x86_64-linux-gnu → ffi-1.17.4-x86_64-linux-gnu}/sig/ffi.rbs +0 -0
  341. /data/vendor/bundle/ruby/3.2.0/gems/{parallel-1.27.0 → parallel-1.28.0}/MIT-LICENSE.txt +0 -0
  342. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/LICENSE.txt +0 -0
  343. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/bin/ruby-parse +0 -0
  344. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/bin/ruby-rewrite +0 -0
  345. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/gauntlet_parser.rb +0 -0
  346. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/all.rb +0 -0
  347. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ast/node.rb +0 -0
  348. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ast/processor.rb +0 -0
  349. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/base.rb +0 -0
  350. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/builders/default.rb +0 -0
  351. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/clobbering_error.rb +0 -0
  352. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/color.rb +0 -0
  353. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/context.rb +0 -0
  354. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/current_arg_stack.rb +0 -0
  355. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/deprecation.rb +0 -0
  356. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/diagnostic/engine.rb +0 -0
  357. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/diagnostic.rb +0 -0
  358. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/lexer/dedenter.rb +0 -0
  359. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/lexer/explanation.rb +0 -0
  360. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/lexer/literal.rb +0 -0
  361. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/lexer/stack_state.rb +0 -0
  362. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/lexer-F0.rb +0 -0
  363. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/lexer-F1.rb +0 -0
  364. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/lexer-strings.rb +0 -0
  365. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/macruby.rb +0 -0
  366. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/max_numparam_stack.rb +0 -0
  367. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/messages.rb +0 -0
  368. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/meta.rb +0 -0
  369. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/rewriter.rb +0 -0
  370. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby18.rb +0 -0
  371. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby19.rb +0 -0
  372. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby20.rb +0 -0
  373. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby21.rb +0 -0
  374. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby22.rb +0 -0
  375. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby23.rb +0 -0
  376. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby24.rb +0 -0
  377. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby25.rb +0 -0
  378. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby26.rb +0 -0
  379. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby27.rb +0 -0
  380. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby30.rb +0 -0
  381. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby31.rb +0 -0
  382. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby32.rb +0 -0
  383. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby33.rb +0 -0
  384. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/ruby34.rb +0 -0
  385. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/rubymotion.rb +0 -0
  386. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/runner/ruby_parse.rb +0 -0
  387. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/runner/ruby_rewrite.rb +0 -0
  388. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/runner.rb +0 -0
  389. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/buffer.rb +0 -0
  390. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/comment/associator.rb +0 -0
  391. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/comment.rb +0 -0
  392. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/collection.rb +0 -0
  393. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/condition.rb +0 -0
  394. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/constant.rb +0 -0
  395. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/definition.rb +0 -0
  396. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/for.rb +0 -0
  397. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/heredoc.rb +0 -0
  398. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/index.rb +0 -0
  399. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/keyword.rb +0 -0
  400. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/method_definition.rb +0 -0
  401. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/objc_kwarg.rb +0 -0
  402. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/operator.rb +0 -0
  403. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/rescue_body.rb +0 -0
  404. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/send.rb +0 -0
  405. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/ternary.rb +0 -0
  406. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map/variable.rb +0 -0
  407. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/map.rb +0 -0
  408. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/range.rb +0 -0
  409. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/rewriter/action.rb +0 -0
  410. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/rewriter.rb +0 -0
  411. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/tree_rewriter/action.rb +0 -0
  412. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/source/tree_rewriter.rb +0 -0
  413. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/static_environment.rb +0 -0
  414. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/syntax_error.rb +0 -0
  415. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/tree_rewriter.rb +0 -0
  416. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/unknown_encoding_in_magic_comment_error.rb +0 -0
  417. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser/variables_stack.rb +0 -0
  418. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/lib/parser.rb +0 -0
  419. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.10.2 → parser-3.3.11.1}/parser.gemspec +0 -0
  420. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/CONTRIBUTING.md +0 -0
  421. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/LICENSE +0 -0
  422. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/UPGRADE.md +0 -0
  423. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/rack/typhoeus/middleware/params_decoder/helper.rb +0 -0
  424. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/rack/typhoeus/middleware/params_decoder.rb +0 -0
  425. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/rack/typhoeus.rb +0 -0
  426. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/adapters/faraday.rb +0 -0
  427. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/cache/dalli.rb +0 -0
  428. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/cache/rails.rb +0 -0
  429. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/cache/redis.rb +0 -0
  430. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/config.rb +0 -0
  431. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/easy_factory.rb +0 -0
  432. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/errors/no_stub.rb +0 -0
  433. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/errors/typhoeus_error.rb +0 -0
  434. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/errors.rb +0 -0
  435. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/expectation.rb +0 -0
  436. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/addable.rb +0 -0
  437. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/before.rb +0 -0
  438. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/block_connection.rb +0 -0
  439. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/cacheable.rb +0 -0
  440. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/memoizable.rb +0 -0
  441. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/queueable.rb +0 -0
  442. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/runnable.rb +0 -0
  443. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra/stubbable.rb +0 -0
  444. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/hydra.rb +0 -0
  445. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/pool.rb +0 -0
  446. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/railtie.rb +0 -0
  447. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/actions.rb +0 -0
  448. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/before.rb +0 -0
  449. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/block_connection.rb +0 -0
  450. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/cacheable.rb +0 -0
  451. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/callbacks.rb +0 -0
  452. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/marshal.rb +0 -0
  453. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/memoizable.rb +0 -0
  454. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/operations.rb +0 -0
  455. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/responseable.rb +0 -0
  456. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/streamable.rb +0 -0
  457. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request/stubbable.rb +0 -0
  458. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/request.rb +0 -0
  459. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/response/cacheable.rb +0 -0
  460. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/response/header.rb +0 -0
  461. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/response/informations.rb +0 -0
  462. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/response/status.rb +0 -0
  463. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus/response.rb +0 -0
  464. /data/vendor/bundle/ruby/3.2.0/gems/{typhoeus-1.5.0 → typhoeus-1.6.0}/lib/typhoeus.rb +0 -0
@@ -1,298 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Multi::Operations do
5
- let(:multi) { Ethon::Multi.new }
6
- let(:easy) { Ethon::Easy.new }
7
- let(:pointer) { FFI::MemoryPointer.new(:int) }
8
-
9
- describe "#handle" do
10
- it "returns a pointer" do
11
- expect(multi.handle).to be_a(FFI::Pointer)
12
- end
13
- end
14
-
15
- describe "#running_count" do
16
- context "when hydra has no easy" do
17
- it "returns nil" do
18
- expect(multi.send(:running_count)).to be_nil
19
- end
20
- end
21
-
22
- context "when hydra has easy" do
23
- before do
24
- easy.url = "http://localhost:3001/"
25
- multi.add(easy)
26
- multi.send(:trigger, pointer)
27
- end
28
-
29
- it "returns 1" do
30
- expect(multi.send(:running_count)).to eq(1)
31
- end
32
- end
33
-
34
- context "when hydra has more easys" do
35
- let(:another_easy) { Ethon::Easy.new }
36
-
37
- before do
38
- easy.url = "http://localhost:3001/"
39
- another_easy.url = "http://localhost:3001/"
40
- multi.add(easy)
41
- multi.add(another_easy)
42
- multi.send(:trigger, pointer)
43
- end
44
-
45
- it "returns 2" do
46
- expect(multi.send(:running_count)).to eq(2)
47
- end
48
- end
49
- end
50
-
51
- describe "#get_timeout" do
52
- context "when code ok" do
53
- let(:timeout) { 1 }
54
-
55
- before do
56
- expect(Ethon::Curl).to receive(:multi_timeout).and_return(:ok)
57
- multi.instance_variable_set(:@timeout, double(:read_long => timeout))
58
- end
59
-
60
- it "doesn't raise" do
61
- expect{ multi.send(:get_timeout) }.to_not raise_error
62
- end
63
-
64
- context "when timeout smaller zero" do
65
- let(:timeout) { -1 }
66
-
67
- it "returns 1" do
68
- expect(multi.send(:get_timeout)).to eq(1)
69
- end
70
- end
71
-
72
- context "when timeout bigger or equal zero" do
73
- let(:timeout) { 2 }
74
-
75
- it "returns timeout" do
76
- expect(multi.send(:get_timeout)).to eq(timeout)
77
- end
78
- end
79
- end
80
-
81
- context "when code not ok" do
82
- before { expect(Ethon::Curl).to receive(:multi_timeout).and_return(:not_ok) }
83
-
84
- it "raises MultiTimeout error" do
85
- expect{ multi.send(:get_timeout) }.to raise_error(Ethon::Errors::MultiTimeout)
86
- end
87
- end
88
- end
89
-
90
- describe "#set_fds" do
91
- let(:timeout) { 1 }
92
- let(:max_fd) { 1 }
93
-
94
- context "when code ok" do
95
- before { expect(Ethon::Curl).to receive(:multi_fdset).and_return(:ok) }
96
-
97
- it "doesn't raise" do
98
- expect{ multi.method(:set_fds).call(timeout) }.to_not raise_error
99
- end
100
-
101
- context "when max_fd -1" do
102
- let(:max_fd) { -1 }
103
-
104
- before do
105
- multi.instance_variable_set(:@max_fd, double(:read_int => max_fd))
106
- expect(multi).to receive(:sleep).with(0.001)
107
- end
108
-
109
- it "waits 100ms" do
110
- multi.method(:set_fds).call(timeout)
111
- end
112
- end
113
-
114
- context "when max_fd not -1" do
115
- context "when code smaller zero" do
116
- before { expect(Ethon::Curl).to receive(:select).and_return(-1) }
117
-
118
- it "raises Select error" do
119
- expect{ multi.method(:set_fds).call(timeout) }.to raise_error(Ethon::Errors::Select)
120
- end
121
- end
122
-
123
- context "when code bigger or equal zero" do
124
- before { expect(Ethon::Curl).to receive(:select).and_return(0) }
125
-
126
- it "doesn't raise" do
127
- expect{ multi.method(:set_fds).call(timeout) }.to_not raise_error
128
- end
129
- end
130
- end
131
- end
132
-
133
- context "when code not ok" do
134
- before { expect(Ethon::Curl).to receive(:multi_fdset).and_return(:not_ok) }
135
-
136
- it "raises MultiFdset error" do
137
- expect{ multi.method(:set_fds).call(timeout) }.to raise_error(Ethon::Errors::MultiFdset)
138
- end
139
- end
140
- end
141
-
142
- describe "#perform" do
143
- context "when no easy handles" do
144
- it "returns nil" do
145
- expect(multi.perform).to be_nil
146
- end
147
-
148
- it "logs" do
149
- expect(Ethon.logger).to receive(:debug).twice
150
- multi.perform
151
- end
152
- end
153
-
154
- context "when easy handle" do
155
- before do
156
- easy.url = "http://localhost:3001/"
157
- multi.add(easy)
158
- end
159
-
160
- it "requests" do
161
- multi.perform
162
- end
163
-
164
- it "sets easy" do
165
- multi.perform
166
- expect(easy.response_code).to eq(200)
167
- end
168
- end
169
-
170
- context "when four easy handles" do
171
- let(:easies) do
172
- ary = []
173
- 4.times do
174
- ary << another_easy = Ethon::Easy.new
175
- another_easy.url = "http://localhost:3001/"
176
- end
177
- ary
178
- end
179
-
180
- before do
181
- easies.each { |e| multi.add(e) }
182
- multi.perform
183
- end
184
-
185
- it "sets response codes" do
186
- expect(easies.all?{ |e| e.response_code == 200 }).to be_truthy
187
- end
188
- end
189
- end
190
-
191
- describe "#ongoing?" do
192
- context "when easy_handles" do
193
- before { multi.easy_handles << 1 }
194
-
195
- context "when running_count not greater 0" do
196
- before { multi.instance_variable_set(:@running_count, 0) }
197
-
198
- it "returns true" do
199
- expect(multi.method(:ongoing?).call).to be_truthy
200
- end
201
- end
202
-
203
- context "when running_count greater 0" do
204
- before { multi.instance_variable_set(:@running_count, 1) }
205
-
206
- it "returns true" do
207
- expect(multi.method(:ongoing?).call).to be_truthy
208
- end
209
- end
210
- end
211
-
212
- context "when no easy_handles" do
213
- context "when running_count not greater 0" do
214
- before { multi.instance_variable_set(:@running_count, 0) }
215
-
216
- it "returns false" do
217
- expect(multi.method(:ongoing?).call).to be_falsey
218
- end
219
- end
220
-
221
- context "when running_count greater 0" do
222
- before { multi.instance_variable_set(:@running_count, 1) }
223
-
224
- it "returns true" do
225
- expect(multi.method(:ongoing?).call).to be_truthy
226
- end
227
- end
228
- end
229
- end
230
-
231
- describe "#init_vars" do
232
- it "sets @timeout" do
233
- expect(multi.instance_variable_get(:@timeout)).to be_a(FFI::MemoryPointer)
234
- end
235
-
236
- it "sets @timeval" do
237
- expect(multi.instance_variable_get(:@timeval)).to be_a(Ethon::Curl::Timeval)
238
- end
239
-
240
- it "sets @fd_read" do
241
- expect(multi.instance_variable_get(:@fd_read)).to be_a(Ethon::Curl::FDSet)
242
- end
243
-
244
- it "sets @fd_write" do
245
- expect(multi.instance_variable_get(:@fd_write)).to be_a(Ethon::Curl::FDSet)
246
- end
247
-
248
- it "sets @fd_excep" do
249
- expect(multi.instance_variable_get(:@fd_excep)).to be_a(Ethon::Curl::FDSet)
250
- end
251
-
252
- it "sets @max_fd" do
253
- expect(multi.instance_variable_get(:@max_fd)).to be_a(FFI::MemoryPointer)
254
- end
255
- end
256
-
257
- describe "#reset_fds" do
258
- after { multi.method(:reset_fds).call }
259
-
260
- it "resets @fd_read" do
261
- expect(multi.instance_variable_get(:@fd_read)).to receive(:clear)
262
- end
263
-
264
- it "resets @fd_write" do
265
- expect(multi.instance_variable_get(:@fd_write)).to receive(:clear)
266
- end
267
-
268
- it "resets @fd_excep" do
269
- expect(multi.instance_variable_get(:@fd_excep)).to receive(:clear)
270
- end
271
- end
272
-
273
- describe "#check" do
274
- it { skip("untested") }
275
- end
276
-
277
- describe "#run" do
278
- it { skip("untested") }
279
- end
280
-
281
- describe "#trigger" do
282
- it "calls multi perform" do
283
- expect(Ethon::Curl).to receive(:multi_perform)
284
- multi.send(:trigger, pointer)
285
- end
286
-
287
- it "sets running count" do
288
- multi.instance_variable_set(:@running_count, nil)
289
- multi.send(:trigger, pointer)
290
- expect(multi.instance_variable_get(:@running_count)).to_not be_nil
291
- end
292
-
293
- it "returns multi perform code" do
294
- expect(Ethon::Curl).to receive(:multi_perform).and_return(:ok)
295
- expect(multi.send(:trigger, pointer)).to eq(:ok)
296
- end
297
- end
298
- end
@@ -1,182 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Multi::Options do
5
- let(:multi) { Ethon::Multi.new }
6
-
7
- [
8
- :maxconnects, :pipelining, :socketdata, :socketfunction,
9
- :timerdata, :timerfunction, :max_total_connections
10
- ].each do |name|
11
- describe "#{name}=" do
12
- it "responds_to" do
13
- expect(multi).to respond_to("#{name}=")
14
- end
15
-
16
- it "sets option" do
17
- expect(Ethon::Curl).to receive(:set_option).with(name, anything, anything, anything)
18
- multi.method("#{name}=").call(1)
19
- end
20
- end
21
- end
22
-
23
- context "socket_action mode" do
24
- let(:multi) { Ethon::Multi.new(execution_mode: :socket_action) }
25
-
26
- describe "#socketfunction callbacks" do
27
- it "allows multi_code return values" do
28
- calls = []
29
- multi.socketfunction = proc do |handle, sock, what, userp, socketp|
30
- calls << what
31
- :ok
32
- end
33
-
34
- easy = Ethon::Easy.new
35
- easy.url = "http://localhost:3001/?delay=1"
36
- multi.add(easy)
37
- expect(calls).to eq([])
38
- 5.times do
39
- multi.socket_action
40
- break unless calls.empty?
41
- sleep 0.1
42
- end
43
- expect(calls.last).to eq(:in).or(eq(:out))
44
- multi.delete(easy)
45
- expect(calls.last).to eq(:remove)
46
- end
47
-
48
- it "allows integer return values (compatibility)" do
49
- called = false
50
- multi.socketfunction = proc do |handle, sock, what, userp, socketp|
51
- called = true
52
- 0
53
- end
54
-
55
- easy = Ethon::Easy.new
56
- easy.url = "http://localhost:3001/?delay=1"
57
- multi.add(easy)
58
- 5.times do
59
- multi.socket_action
60
- break if called
61
- sleep 0.1
62
- end
63
- multi.delete(easy)
64
-
65
- expect(called).to be_truthy
66
- end
67
-
68
- it "errors on invalid return codes" do
69
- called = false
70
- multi.socketfunction = proc do |handle, sock, what, userp, socketp|
71
- called = true
72
- "hi"
73
- end
74
-
75
- easy = Ethon::Easy.new
76
- easy.url = "http://localhost:3001/?delay=1"
77
- multi.add(easy)
78
- expect {
79
- 5.times do
80
- multi.socket_action
81
- break if called
82
- sleep 0.1
83
- end
84
- }.to raise_error(ArgumentError)
85
- expect { multi.delete(easy) }.to raise_error(ArgumentError)
86
- end
87
- end
88
-
89
- describe "#timerfunction callbacks" do
90
- it "allows multi_code return values" do
91
- calls = []
92
- multi.timerfunction = proc do |handle, timeout_ms, userp|
93
- calls << timeout_ms
94
- :ok
95
- end
96
-
97
- easy = Ethon::Easy.new
98
- easy.url = "http://localhost:3001/?delay=1"
99
- multi.add(easy)
100
- expect(calls.last).to be >= 0 # adds an immediate timeout
101
-
102
- multi.delete(easy)
103
- expect(calls.last).to eq(-1) # cancels the timer
104
- end
105
-
106
- it "allows integer return values (compatibility)" do
107
- called = false
108
- multi.timerfunction = proc do |handle, timeout_ms, userp|
109
- called = true
110
- 0
111
- end
112
-
113
- easy = Ethon::Easy.new
114
- easy.url = "http://localhost:3001/?delay=1"
115
- multi.add(easy)
116
- multi.socket_action
117
- multi.delete(easy)
118
-
119
- expect(called).to be_truthy
120
- end
121
-
122
- it "errors on invalid return codes" do
123
- called = false
124
- multi.timerfunction = proc do |handle, timeout_ms, userp|
125
- called = true
126
- "hi"
127
- end
128
-
129
- easy = Ethon::Easy.new
130
- easy.url = "http://localhost:3001/?delay=1"
131
- expect { multi.add(easy) }.to raise_error(ArgumentError)
132
- end
133
- end
134
- end
135
-
136
- describe "#value_for" do
137
- context "when option in bool" do
138
- context "when value true" do
139
- let(:value) { true }
140
-
141
- it "returns 1" do
142
- expect(multi.method(:value_for).call(value, :bool)).to eq(1)
143
- end
144
- end
145
-
146
- context "when value false" do
147
- let(:value) { false }
148
-
149
- it "returns 0" do
150
- expect(multi.method(:value_for).call(value, :bool)).to eq(0)
151
- end
152
- end
153
- end
154
-
155
-
156
- context "when value in int" do
157
- let(:value) { "2" }
158
-
159
- it "returns value casted to int" do
160
- expect(multi.method(:value_for).call(value, :int)).to eq(2)
161
- end
162
- end
163
-
164
- context "when value in unspecific_options" do
165
- context "when value a string" do
166
- let(:value) { "www.example.\0com" }
167
-
168
- it "returns zero byte escaped string" do
169
- expect(multi.method(:value_for).call(value, nil)).to eq("www.example.\\0com")
170
- end
171
- end
172
-
173
- context "when value not a string" do
174
- let(:value) { 1 }
175
-
176
- it "returns value" do
177
- expect(multi.method(:value_for).call(value, nil)).to eq(1)
178
- end
179
- end
180
- end
181
- end
182
- end
@@ -1,80 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Multi::Stack do
5
- let(:multi) { Ethon::Multi.new }
6
- let(:easy) { Ethon::Easy.new }
7
-
8
- describe "#add" do
9
- context "when easy already added" do
10
- before { multi.add(easy) }
11
-
12
- it "returns nil" do
13
- expect(multi.add(easy)).to be_nil
14
- end
15
- end
16
-
17
- context "when easy new" do
18
- it "adds easy to multi" do
19
- expect(Ethon::Curl).to receive(:multi_add_handle).and_return(:ok)
20
- multi.add(easy)
21
- end
22
-
23
- it "adds easy to easy_handles" do
24
- multi.add(easy)
25
- expect(multi.easy_handles).to include(easy)
26
- end
27
- end
28
-
29
- context "when multi_add_handle fails" do
30
- it "raises multi add error" do
31
- expect(Ethon::Curl).to receive(:multi_add_handle).and_return(:bad_easy_handle)
32
- expect{ multi.add(easy) }.to raise_error(Ethon::Errors::MultiAdd)
33
- end
34
- end
35
-
36
- context "when multi cleaned up before" do
37
- it "raises multi add error" do
38
- Ethon::Curl.multi_cleanup(multi.handle)
39
- expect{ multi.add(easy) }.to raise_error(Ethon::Errors::MultiAdd)
40
- end
41
- end
42
- end
43
-
44
- describe "#delete" do
45
- context "when easy in easy_handles" do
46
- before { multi.add(easy) }
47
-
48
- it "deletes easy from multi" do
49
- expect(Ethon::Curl).to receive(:multi_remove_handle).and_return(:ok)
50
- multi.delete(easy)
51
- end
52
-
53
- it "deletes easy from easy_handles" do
54
- multi.delete(easy)
55
- expect(multi.easy_handles).to_not include(easy)
56
- end
57
- end
58
-
59
- context "when easy is not in easy_handles" do
60
- it "does nothing" do
61
- expect(Ethon::Curl).to receive(:multi_add_handle).and_return(:ok)
62
- multi.add(easy)
63
- end
64
-
65
- it "adds easy to easy_handles" do
66
- multi.add(easy)
67
- expect(multi.easy_handles).to include(easy)
68
- end
69
- end
70
-
71
- context "when multi_remove_handle fails" do
72
- before { multi.add(easy) }
73
-
74
- it "raises multi remove error" do
75
- expect(Ethon::Curl).to receive(:multi_remove_handle).and_return(:bad_easy_handle)
76
- expect{ multi.delete(easy) }.to raise_error(Ethon::Errors::MultiRemove)
77
- end
78
- end
79
- end
80
- end
@@ -1,152 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Multi do
5
- describe ".new" do
6
- it "inits curl" do
7
- expect(Ethon::Curl).to receive(:init)
8
- Ethon::Multi.new
9
- end
10
-
11
- context "with default options" do
12
- it "allows running #perform with the default execution_mode" do
13
- Ethon::Multi.new.perform
14
- end
15
-
16
- it "refuses to run #socket_action" do
17
- expect { Ethon::Multi.new.socket_action }.to raise_error(ArgumentError)
18
- end
19
- end
20
-
21
- context "when options not empty" do
22
- context "when pipelining is set" do
23
- let(:options) { { :pipelining => true } }
24
-
25
- it "sets pipelining" do
26
- expect_any_instance_of(Ethon::Multi).to receive(:pipelining=).with(true)
27
- Ethon::Multi.new(options)
28
- end
29
- end
30
-
31
- context "when execution_mode option is :socket_action" do
32
- let(:options) { { :execution_mode => :socket_action } }
33
- let(:multi) { Ethon::Multi.new(options) }
34
-
35
- it "refuses to run #perform" do
36
- expect { multi.perform }.to raise_error(ArgumentError)
37
- end
38
-
39
- it "allows running #socket_action" do
40
- multi.socket_action
41
- end
42
- end
43
- end
44
- end
45
-
46
- describe "#socket_action" do
47
- let(:options) { { :execution_mode => :socket_action } }
48
- let(:select_state) { { :readers => [], :writers => [], :timeout => 0 } }
49
- let(:multi) {
50
- multi = Ethon::Multi.new(options)
51
- multi.timerfunction = proc do |handle, timeout_ms, userp|
52
- timeout_ms = nil if timeout_ms == -1
53
- select_state[:timeout] = timeout_ms
54
- :ok
55
- end
56
- multi.socketfunction = proc do |handle, sock, what, userp, socketp|
57
- case what
58
- when :remove
59
- select_state[:readers].delete(sock)
60
- select_state[:writers].delete(sock)
61
- when :in
62
- select_state[:readers].push(sock) unless select_state[:readers].include? sock
63
- select_state[:writers].delete(sock)
64
- when :out
65
- select_state[:readers].delete(sock)
66
- select_state[:writers].push(sock) unless select_state[:writers].include? sock
67
- when :inout
68
- select_state[:readers].push(sock) unless select_state[:readers].include? sock
69
- select_state[:writers].push(sock) unless select_state[:writers].include? sock
70
- else
71
- raise ArgumentError, "invalid value for 'what' in socketfunction callback"
72
- end
73
- :ok
74
- end
75
- multi
76
- }
77
-
78
- def fds_to_ios(fds)
79
- fds.map do |fd|
80
- IO.for_fd(fd).tap { |io| io.autoclose = false }
81
- end
82
- end
83
-
84
- def perform_socket_action_until_complete
85
- multi.socket_action # start things off
86
-
87
- while multi.ongoing?
88
- readers, writers, _ = IO.select(
89
- fds_to_ios(select_state[:readers]),
90
- fds_to_ios(select_state[:writers]),
91
- [],
92
- select_state[:timeout]
93
- )
94
-
95
- to_notify = Hash.new { |hash, key| hash[key] = [] }
96
- unless readers.nil?
97
- readers.each do |reader|
98
- to_notify[reader] << :in
99
- end
100
- end
101
- unless writers.nil?
102
- writers.each do |writer|
103
- to_notify[writer] << :out
104
- end
105
- end
106
-
107
- to_notify.each do |io, readiness|
108
- multi.socket_action(io, readiness)
109
- end
110
-
111
- # if we didn't have anything to notify, then we timed out
112
- multi.socket_action if to_notify.empty?
113
- end
114
- ensure
115
- multi.easy_handles.dup.each do |h|
116
- multi.delete(h)
117
- end
118
- end
119
-
120
- it "supports an end-to-end request" do
121
- easy = Ethon::Easy.new
122
- easy.url = "http://localhost:3001/"
123
- multi.add(easy)
124
-
125
- perform_socket_action_until_complete
126
-
127
- expect(multi.ongoing?).to eq(false)
128
- end
129
-
130
- it "supports multiple concurrent requests" do
131
- handles = []
132
- 10.times do
133
- easy = Ethon::Easy.new
134
- easy.url = "http://localhost:3001/?delay=1"
135
- multi.add(easy)
136
- handles << easy
137
- end
138
-
139
- start = Time.now
140
- perform_socket_action_until_complete
141
- duration = Time.now - start
142
-
143
- # these should have happened concurrently
144
- expect(duration).to be < 2
145
- expect(multi.ongoing?).to eq(false)
146
-
147
- handles.each do |handle|
148
- expect(handle.response_code).to eq(200)
149
- end
150
- end
151
- end
152
- end