cybrid_api_id_ruby 0.129.1137 → 0.129.1138

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 (713) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +10 -42
  3. data/README.md +22 -13
  4. data/cybrid_api_id_ruby.gemspec +10 -4
  5. data/docs/BankApplicationsIdpApi.md +20 -20
  6. data/docs/CustomerTokensIdpApi.md +4 -4
  7. data/docs/OrganizationApplicationsIdpApi.md +20 -20
  8. data/docs/UsersIdpApi.md +20 -20
  9. data/lib/cybrid_api_id_ruby/api/bank_applications_idp_api.rb +12 -12
  10. data/lib/cybrid_api_id_ruby/api/customer_tokens_idp_api.rb +4 -4
  11. data/lib/cybrid_api_id_ruby/api/organization_applications_idp_api.rb +12 -12
  12. data/lib/cybrid_api_id_ruby/api/users_idp_api.rb +12 -12
  13. data/lib/cybrid_api_id_ruby/api_client.rb +82 -104
  14. data/lib/cybrid_api_id_ruby/api_error.rb +3 -2
  15. data/lib/cybrid_api_id_ruby/configuration.rb +76 -60
  16. data/lib/cybrid_api_id_ruby/models/application_idp_model.rb +25 -20
  17. data/lib/cybrid_api_id_ruby/models/application_list_idp_model.rb +23 -20
  18. data/lib/cybrid_api_id_ruby/models/application_with_secret_idp_model.rb +28 -22
  19. data/lib/cybrid_api_id_ruby/models/customer_token_idp_model.rb +15 -20
  20. data/lib/cybrid_api_id_ruby/models/error_response_idp_model.rb +21 -20
  21. data/lib/cybrid_api_id_ruby/models/patch_application_idp_model.rb +21 -22
  22. data/lib/cybrid_api_id_ruby/models/patch_user_idp_model.rb +17 -20
  23. data/lib/cybrid_api_id_ruby/models/post_bank_application_idp_model.rb +23 -22
  24. data/lib/cybrid_api_id_ruby/models/post_customer_token_idp_model.rb +19 -20
  25. data/lib/cybrid_api_id_ruby/models/post_organization_application_idp_model.rb +17 -20
  26. data/lib/cybrid_api_id_ruby/models/post_user_idp_model.rb +17 -20
  27. data/lib/cybrid_api_id_ruby/models/user_idp_model.rb +33 -26
  28. data/lib/cybrid_api_id_ruby/models/user_list_idp_model.rb +23 -20
  29. data/lib/cybrid_api_id_ruby/version.rb +3 -3
  30. data/lib/cybrid_api_id_ruby.rb +2 -3
  31. data/spec/api/bank_applications_idp_api_spec.rb +7 -7
  32. data/spec/api/customer_tokens_idp_api_spec.rb +3 -3
  33. data/spec/api/organization_applications_idp_api_spec.rb +7 -7
  34. data/spec/api/users_idp_api_spec.rb +7 -7
  35. data/spec/models/application_idp_model_spec.rb +11 -9
  36. data/spec/models/application_list_idp_model_spec.rb +9 -7
  37. data/spec/models/application_with_secret_idp_model_spec.rb +12 -10
  38. data/spec/models/customer_token_idp_model_spec.rb +6 -4
  39. data/spec/models/error_response_idp_model_spec.rb +8 -6
  40. data/spec/models/patch_application_idp_model_spec.rb +7 -5
  41. data/spec/models/patch_user_idp_model_spec.rb +6 -4
  42. data/spec/models/post_bank_application_idp_model_spec.rb +8 -6
  43. data/spec/models/post_customer_token_idp_model_spec.rb +7 -5
  44. data/spec/models/post_organization_application_idp_model_spec.rb +7 -5
  45. data/spec/models/post_user_idp_model_spec.rb +7 -5
  46. data/spec/models/user_idp_model_spec.rb +12 -10
  47. data/spec/models/user_list_idp_model_spec.rb +9 -7
  48. data/spec/spec_helper.rb +2 -2
  49. data/vendor/bundle/ruby/4.0.0/cache/http-2-1.2.3.gem +0 -0
  50. data/vendor/bundle/ruby/4.0.0/cache/httpx-1.8.4.gem +0 -0
  51. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/byebug-13.0.0/gem_make.out +5 -5
  52. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/date-3.5.1/gem_make.out +5 -5
  53. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/io-console-0.9.4/gem_make.out +5 -5
  54. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  55. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/psych-5.5.0/gem_make.out +5 -5
  56. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/racc-1.8.1/gem_make.out +5 -5
  57. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/stringio-3.2.0/gem_make.out +5 -5
  58. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/LICENSE +21 -0
  59. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/README.md +298 -0
  60. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/base64.rb +45 -0
  61. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/client.rb +82 -0
  62. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/connection.rb +882 -0
  63. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/emitter.rb +40 -0
  64. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/error.rb +67 -0
  65. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/extensions.rb +84 -0
  66. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/flow_buffer.rb +173 -0
  67. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/framer.rb +510 -0
  68. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/header/compressor.rb +156 -0
  69. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/header/decompressor.rb +133 -0
  70. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/header/encoding_context.rb +313 -0
  71. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/header/huffman.rb +326 -0
  72. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/header/huffman_statemachine.rb +274 -0
  73. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/header.rb +35 -0
  74. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/server.rb +160 -0
  75. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/settings.rb +58 -0
  76. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/stream.rb +695 -0
  77. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2/version.rb +5 -0
  78. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/lib/http/2.rb +20 -0
  79. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/2.rbs +154 -0
  80. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/client.rbs +11 -0
  81. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/connection.rbs +102 -0
  82. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/emitter.rbs +11 -0
  83. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/error.rbs +35 -0
  84. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/extensions.rbs +15 -0
  85. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/flow_buffer.rbs +23 -0
  86. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/frame_buffer.rbs +17 -0
  87. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/framer.rbs +64 -0
  88. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/header/compressor.rbs +30 -0
  89. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/header/decompressor.rbs +25 -0
  90. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/header/encoding_context.rbs +56 -0
  91. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/header/huffman.rbs +27 -0
  92. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/header.rbs +30 -0
  93. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/server.rbs +14 -0
  94. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/settings.rbs +71 -0
  95. data/vendor/bundle/ruby/4.0.0/gems/http-2-1.2.3/sig/stream.rbs +93 -0
  96. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/LICENSE.txt +191 -0
  97. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/README.md +164 -0
  98. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_0_1.md +7 -0
  99. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_0_2.md +9 -0
  100. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_0_3.md +9 -0
  101. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_0_4.md +7 -0
  102. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_0_5.md +5 -0
  103. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_10_0.md +66 -0
  104. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_10_1.md +37 -0
  105. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_10_2.md +5 -0
  106. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_11_0.md +74 -0
  107. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_11_1.md +5 -0
  108. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_11_2.md +5 -0
  109. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_11_3.md +5 -0
  110. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_12_0.md +55 -0
  111. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_13_0.md +58 -0
  112. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_13_1.md +5 -0
  113. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_13_2.md +9 -0
  114. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_14_0.md +79 -0
  115. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_14_1.md +7 -0
  116. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_14_2.md +6 -0
  117. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_14_3.md +5 -0
  118. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_14_4.md +5 -0
  119. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_14_5.md +11 -0
  120. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_15_0.md +53 -0
  121. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_15_1.md +8 -0
  122. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_15_2.md +9 -0
  123. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_15_3.md +5 -0
  124. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_15_4.md +5 -0
  125. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_16_0.md +93 -0
  126. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_16_1.md +5 -0
  127. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_17_0.md +49 -0
  128. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_0.md +69 -0
  129. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_1.md +12 -0
  130. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_2.md +10 -0
  131. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_3.md +7 -0
  132. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_4.md +14 -0
  133. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_5.md +10 -0
  134. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_6.md +5 -0
  135. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_18_7.md +5 -0
  136. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_0.md +39 -0
  137. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_1.md +5 -0
  138. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_2.md +7 -0
  139. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_3.md +6 -0
  140. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_4.md +14 -0
  141. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_5.md +13 -0
  142. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_6.md +5 -0
  143. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_7.md +5 -0
  144. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_19_8.md +5 -0
  145. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_1_0.md +9 -0
  146. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_20_0.md +36 -0
  147. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_20_1.md +5 -0
  148. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_20_2.md +7 -0
  149. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_20_3.md +6 -0
  150. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_20_4.md +17 -0
  151. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_20_5.md +3 -0
  152. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_21_0.md +96 -0
  153. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_21_1.md +12 -0
  154. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_22_0.md +13 -0
  155. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_22_1.md +11 -0
  156. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_22_2.md +5 -0
  157. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_22_3.md +55 -0
  158. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_22_4.md +6 -0
  159. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_22_5.md +6 -0
  160. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_23_0.md +42 -0
  161. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_23_1.md +5 -0
  162. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_23_2.md +5 -0
  163. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_23_3.md +6 -0
  164. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_23_4.md +5 -0
  165. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_0.md +48 -0
  166. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_1.md +12 -0
  167. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_2.md +12 -0
  168. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_3.md +12 -0
  169. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_4.md +18 -0
  170. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_5.md +6 -0
  171. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_6.md +5 -0
  172. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_24_7.md +10 -0
  173. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_2_0.md +5 -0
  174. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_2_1.md +16 -0
  175. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_3_0.md +12 -0
  176. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_3_1.md +6 -0
  177. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_4_0.md +51 -0
  178. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_4_1.md +3 -0
  179. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_5_0.md +15 -0
  180. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_5_1.md +14 -0
  181. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_0.md +5 -0
  182. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_1.md +6 -0
  183. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_2.md +6 -0
  184. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_3.md +13 -0
  185. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_4.md +21 -0
  186. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_5.md +22 -0
  187. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_6.md +19 -0
  188. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_6_7.md +5 -0
  189. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_7_0.md +46 -0
  190. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_8_0.md +27 -0
  191. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_8_1.md +8 -0
  192. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_8_2.md +7 -0
  193. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/0_9_0.md +38 -0
  194. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_0_0.md +60 -0
  195. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_0_1.md +5 -0
  196. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_0_2.md +7 -0
  197. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_1_0.md +32 -0
  198. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_1_1.md +17 -0
  199. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_1_2.md +12 -0
  200. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_1_3.md +18 -0
  201. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_1_4.md +6 -0
  202. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_1_5.md +12 -0
  203. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_2_0.md +49 -0
  204. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_2_1.md +6 -0
  205. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_2_2.md +10 -0
  206. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_2_3.md +16 -0
  207. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_2_4.md +8 -0
  208. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_2_5.md +7 -0
  209. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_2_6.md +13 -0
  210. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_3_0.md +18 -0
  211. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_3_1.md +17 -0
  212. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_3_2.md +6 -0
  213. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_3_3.md +5 -0
  214. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_3_4.md +6 -0
  215. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_4_0.md +43 -0
  216. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_4_1.md +19 -0
  217. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_4_2.md +20 -0
  218. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_4_3.md +11 -0
  219. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_4_4.md +14 -0
  220. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_5_0.md +126 -0
  221. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_5_1.md +6 -0
  222. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_6_0.md +50 -0
  223. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_6_1.md +17 -0
  224. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_6_2.md +11 -0
  225. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_6_3.md +47 -0
  226. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_0.md +149 -0
  227. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_1.md +20 -0
  228. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_2.md +6 -0
  229. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_3.md +29 -0
  230. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_4.md +42 -0
  231. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_5.md +10 -0
  232. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_6.md +24 -0
  233. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_7.md +17 -0
  234. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_7_8.md +5 -0
  235. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_8_0.md +100 -0
  236. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_8_1.md +27 -0
  237. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_8_2.md +30 -0
  238. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_8_3.md +9 -0
  239. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/doc/release_notes/1_8_4.md +13 -0
  240. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/adapters/datadog.rb +343 -0
  241. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/adapters/faraday.rb +293 -0
  242. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/adapters/sentry.rb +121 -0
  243. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/adapters/webmock.rb +190 -0
  244. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/altsvc.rb +167 -0
  245. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/base64.rb +27 -0
  246. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/buffer.rb +66 -0
  247. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/callbacks.rb +35 -0
  248. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/chainable.rb +106 -0
  249. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/connection/http1.rb +416 -0
  250. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/connection/http2.rb +601 -0
  251. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/connection.rb +1196 -0
  252. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/domain_name.rb +145 -0
  253. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/errors.rb +121 -0
  254. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/extensions.rb +45 -0
  255. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/headers.rb +176 -0
  256. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/io/ssl.rb +184 -0
  257. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/io/tcp.rb +262 -0
  258. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/io/udp.rb +62 -0
  259. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/io/unix.rb +75 -0
  260. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/io.rb +11 -0
  261. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/loggable.rb +75 -0
  262. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/options.rb +616 -0
  263. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/parser/http1.rb +202 -0
  264. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/auth/basic.rb +20 -0
  265. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/auth/digest.rb +149 -0
  266. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/auth/ntlm.rb +35 -0
  267. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/auth/socks5.rb +22 -0
  268. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/auth.rb +225 -0
  269. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/aws_sdk_authentication.rb +110 -0
  270. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/aws_sigv4.rb +239 -0
  271. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/basic_auth.rb +29 -0
  272. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/brotli.rb +78 -0
  273. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/cache/file_store.rb +141 -0
  274. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/cache/store.rb +33 -0
  275. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/cache.rb +221 -0
  276. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/callbacks.rb +153 -0
  277. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/circuit_breaker/circuit.rb +101 -0
  278. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/circuit_breaker/circuit_store.rb +53 -0
  279. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/circuit_breaker.rb +147 -0
  280. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/content_digest.rb +204 -0
  281. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/cookies/cookie.rb +197 -0
  282. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/cookies/jar.rb +170 -0
  283. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/cookies/set_cookie_parser.rb +143 -0
  284. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/cookies.rb +111 -0
  285. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/digest_auth.rb +72 -0
  286. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/expect.rb +150 -0
  287. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/fiber_concurrency.rb +279 -0
  288. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/follow_redirects.rb +265 -0
  289. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/grpc/call.rb +63 -0
  290. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/grpc/grpc_encoding.rb +90 -0
  291. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/grpc/message.rb +55 -0
  292. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/grpc.rb +282 -0
  293. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/h2c.rb +117 -0
  294. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/internal_telemetry.rb +107 -0
  295. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/ntlm_auth.rb +64 -0
  296. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/ntlm_v2_auth.rb +92 -0
  297. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/oauth.rb +336 -0
  298. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/persistent.rb +111 -0
  299. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/proxy/http.rb +236 -0
  300. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/proxy/socks4.rb +135 -0
  301. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/proxy/socks5.rb +194 -0
  302. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/proxy/ssh.rb +94 -0
  303. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/proxy.rb +370 -0
  304. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/push_promise.rb +81 -0
  305. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/query.rb +35 -0
  306. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/rate_limiter.rb +60 -0
  307. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/response_cache.rb +268 -0
  308. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/retries.rb +299 -0
  309. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/server_sent_events.rb +158 -0
  310. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/ssrf_filter.rb +161 -0
  311. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/stream.rb +238 -0
  312. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/stream_bidi.rb +410 -0
  313. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/tracing.rb +156 -0
  314. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/upgrade/h2.rb +54 -0
  315. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/upgrade.rb +86 -0
  316. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/webdav.rb +86 -0
  317. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/plugins/xml.rb +76 -0
  318. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/pmatch_extensions.rb +33 -0
  319. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/pool.rb +231 -0
  320. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/punycode.rb +22 -0
  321. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/request/body.rb +161 -0
  322. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/request.rb +387 -0
  323. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/cache/base.rb +129 -0
  324. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/cache/file.rb +56 -0
  325. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/cache/memory.rb +42 -0
  326. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/cache.rb +18 -0
  327. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/entry.rb +30 -0
  328. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/https.rb +326 -0
  329. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/multi.rb +84 -0
  330. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/native.rb +603 -0
  331. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/resolver.rb +213 -0
  332. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver/system.rb +284 -0
  333. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/resolver.rb +111 -0
  334. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/response/body.rb +246 -0
  335. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/response/buffer.rb +115 -0
  336. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/response.rb +331 -0
  337. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/selector.rb +327 -0
  338. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/session.rb +605 -0
  339. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/session_extensions.rb +30 -0
  340. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/timers.rb +134 -0
  341. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/body.rb +43 -0
  342. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/chunker.rb +115 -0
  343. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/deflate.rb +42 -0
  344. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/form.rb +68 -0
  345. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/gzip.rb +76 -0
  346. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/json.rb +70 -0
  347. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/multipart/decoder.rb +141 -0
  348. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/multipart/encoder.rb +120 -0
  349. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/multipart/mime_type_detector.rb +78 -0
  350. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/multipart/part.rb +35 -0
  351. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/multipart.rb +39 -0
  352. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/utils/body_reader.rb +45 -0
  353. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder/utils/deflater.rb +73 -0
  354. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/transcoder.rb +89 -0
  355. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/utils.rb +88 -0
  356. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx/version.rb +5 -0
  357. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/lib/httpx.rb +66 -0
  358. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/altsvc.rbs +41 -0
  359. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/buffer.rbs +27 -0
  360. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/callbacks.rbs +15 -0
  361. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/chainable.rbs +59 -0
  362. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/connection/http1.rbs +89 -0
  363. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/connection/http2.rbs +140 -0
  364. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/connection.rbs +199 -0
  365. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/domain_name.rbs +17 -0
  366. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/errors.rbs +75 -0
  367. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/headers.rbs +49 -0
  368. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/httpx.rbs +29 -0
  369. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/io/ssl.rbs +33 -0
  370. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/io/tcp.rbs +74 -0
  371. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/io/udp.rbs +25 -0
  372. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/io/unix.rbs +26 -0
  373. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/io.rbs +3 -0
  374. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/loggable.rbs +29 -0
  375. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/options.rbs +232 -0
  376. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/parser/http1.rbs +61 -0
  377. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/auth/basic.rbs +17 -0
  378. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/auth/digest.rbs +31 -0
  379. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/auth/ntlm.rbs +22 -0
  380. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/auth/socks5.rbs +18 -0
  381. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/auth.rbs +59 -0
  382. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/aws_sdk_authentication.rbs +43 -0
  383. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/aws_sigv4.rbs +78 -0
  384. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/basic_auth.rbs +15 -0
  385. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/brotli.rbs +27 -0
  386. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/cache/file_store.rbs +21 -0
  387. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/cache/store.rbs +13 -0
  388. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/cache.rbs +69 -0
  389. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/callbacks.rbs +41 -0
  390. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/circuit_breaker.rbs +71 -0
  391. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/compression.rbs +57 -0
  392. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/content_digest.rbs +51 -0
  393. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/cookies/cookie.rbs +56 -0
  394. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/cookies/jar.rbs +37 -0
  395. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/cookies/set_cookie_parser.rbs +22 -0
  396. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/cookies.rbs +30 -0
  397. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/digest_auth.rbs +19 -0
  398. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/expect.rbs +34 -0
  399. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/fiber_concurrency.rbs +61 -0
  400. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/follow_redirects.rbs +47 -0
  401. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/grpc/call.rbs +23 -0
  402. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/grpc/grpc_encoding.rbs +37 -0
  403. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/grpc/message.rbs +17 -0
  404. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/grpc.rbs +65 -0
  405. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/h2c.rbs +27 -0
  406. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/ntlm_auth.rbs +21 -0
  407. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/ntlm_v2_auth.rbs +36 -0
  408. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/oauth.rbs +97 -0
  409. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/persistent.rbs +21 -0
  410. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/proxy/http.rbs +32 -0
  411. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/proxy/socks4.rbs +41 -0
  412. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/proxy/socks5.rbs +49 -0
  413. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/proxy/ssh.rbs +18 -0
  414. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/proxy.rbs +71 -0
  415. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/push_promise.rbs +23 -0
  416. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/query.rbs +18 -0
  417. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/rate_limiter.rbs +15 -0
  418. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/response_cache.rbs +67 -0
  419. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/retries.rbs +80 -0
  420. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/server_sent_events.rbs +45 -0
  421. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/ssrf_filter.rbs +30 -0
  422. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/stream.rbs +64 -0
  423. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/stream_bidi.rbs +67 -0
  424. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/tracing.rbs +41 -0
  425. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/upgrade/h2.rbs +9 -0
  426. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/upgrade.rbs +29 -0
  427. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/webdav.rbs +23 -0
  428. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/plugins/xml.rbs +37 -0
  429. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/pool.rbs +51 -0
  430. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/punycode.rbs +5 -0
  431. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/request/body.rbs +34 -0
  432. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/request.rbs +99 -0
  433. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/cache/base.rbs +28 -0
  434. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/cache/file.rbs +13 -0
  435. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/cache/memory.rbs +13 -0
  436. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/cache.rbs +16 -0
  437. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/entry.rbs +13 -0
  438. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/https.rbs +71 -0
  439. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/multi.rbs +31 -0
  440. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/native.rbs +76 -0
  441. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/resolver.rbs +65 -0
  442. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver/system.rbs +37 -0
  443. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/resolver.rbs +36 -0
  444. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/response/body.rbs +52 -0
  445. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/response/buffer.rbs +23 -0
  446. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/response.rbs +109 -0
  447. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/selector.rbs +80 -0
  448. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/session.rbs +104 -0
  449. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/timers.rbs +58 -0
  450. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/body.rbs +24 -0
  451. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/chunker.rbs +49 -0
  452. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/deflate.rbs +12 -0
  453. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/form.rbs +34 -0
  454. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/gzip.rbs +28 -0
  455. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/json.rbs +28 -0
  456. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/multipart.rbs +108 -0
  457. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/utils/body_reader.rbs +15 -0
  458. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder/utils/deflater.rbs +30 -0
  459. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/transcoder.rbs +47 -0
  460. data/vendor/bundle/ruby/4.0.0/gems/httpx-1.8.4/sig/utils.rbs +21 -0
  461. data/vendor/bundle/ruby/4.0.0/specifications/http-2-1.2.3.gemspec +22 -0
  462. data/vendor/bundle/ruby/4.0.0/specifications/httpx-1.8.4.gemspec +28 -0
  463. metadata +426 -258
  464. data/docs/ApplicationWithSecretAllOfIdpModel.md +0 -18
  465. data/lib/cybrid_api_id_ruby/models/application_with_secret_all_of_idp_model.rb +0 -225
  466. data/spec/api_client_spec.rb +0 -226
  467. data/spec/configuration_spec.rb +0 -42
  468. data/spec/models/application_with_secret_all_of_idp_model_spec.rb +0 -34
  469. data/vendor/bundle/ruby/4.0.0/cache/ethon-0.18.0.gem +0 -0
  470. data/vendor/bundle/ruby/4.0.0/cache/ffi-1.17.4-x86_64-linux-gnu.gem +0 -0
  471. data/vendor/bundle/ruby/4.0.0/cache/typhoeus-1.6.0.gem +0 -0
  472. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/CHANGELOG.md +0 -417
  473. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/LICENSE +0 -20
  474. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/README.md +0 -118
  475. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/ethon.gemspec +0 -37
  476. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curl.rb +0 -90
  477. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/classes.rb +0 -65
  478. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/codes.rb +0 -123
  479. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/constants.rb +0 -80
  480. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/form_options.rb +0 -37
  481. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/functions.rb +0 -58
  482. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/infos.rb +0 -151
  483. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/messages.rb +0 -19
  484. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/options.rb +0 -503
  485. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/curls/settings.rb +0 -12
  486. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/callbacks.rb +0 -155
  487. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/debug_info.rb +0 -47
  488. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/features.rb +0 -31
  489. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/form.rb +0 -107
  490. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/header.rb +0 -61
  491. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/actionable.rb +0 -157
  492. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/custom.rb +0 -29
  493. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/delete.rb +0 -25
  494. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/get.rb +0 -24
  495. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/head.rb +0 -24
  496. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/options.rb +0 -24
  497. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/patch.rb +0 -24
  498. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/post.rb +0 -26
  499. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/postable.rb +0 -32
  500. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/put.rb +0 -27
  501. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http/putable.rb +0 -25
  502. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/http.rb +0 -68
  503. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/informations.rb +0 -116
  504. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/mirror.rb +0 -36
  505. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/operations.rb +0 -64
  506. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/options.rb +0 -50
  507. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/params.rb +0 -29
  508. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/queryable.rb +0 -154
  509. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/response_callbacks.rb +0 -136
  510. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy/util.rb +0 -28
  511. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/easy.rb +0 -315
  512. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/ethon_error.rb +0 -9
  513. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/global_init.rb +0 -13
  514. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/invalid_option.rb +0 -13
  515. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/invalid_value.rb +0 -13
  516. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/multi_add.rb +0 -12
  517. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/multi_fdset.rb +0 -12
  518. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/multi_remove.rb +0 -12
  519. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/multi_timeout.rb +0 -13
  520. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors/select.rb +0 -13
  521. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/errors.rb +0 -17
  522. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/libc.rb +0 -21
  523. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/loggable.rb +0 -58
  524. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/multi/operations.rb +0 -228
  525. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/multi/options.rb +0 -117
  526. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/multi/stack.rb +0 -49
  527. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/multi.rb +0 -126
  528. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon/version.rb +0 -6
  529. data/vendor/bundle/ruby/4.0.0/gems/ethon-0.18.0/lib/ethon.rb +0 -36
  530. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/CHANGELOG.md +0 -507
  531. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/COPYING +0 -49
  532. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/Gemfile +0 -26
  533. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/LICENSE +0 -24
  534. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/LICENSE.SPECS +0 -22
  535. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/README.md +0 -138
  536. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/Rakefile +0 -209
  537. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/Steepfile +0 -8
  538. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/ffi.gemspec +0 -43
  539. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/3.0/ffi_c.so +0 -0
  540. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/3.1/ffi_c.so +0 -0
  541. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/3.2/ffi_c.so +0 -0
  542. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/3.3/ffi_c.so +0 -0
  543. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/3.4/ffi_c.so +0 -0
  544. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/4.0/ffi_c.so +0 -0
  545. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/abstract_memory.rb +0 -44
  546. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/autopointer.rb +0 -186
  547. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/buffer.rb +0 -4
  548. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/callback.rb +0 -4
  549. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/compat.rb +0 -54
  550. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/data_converter.rb +0 -67
  551. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/dynamic_library.rb +0 -118
  552. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/enum.rb +0 -302
  553. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/errno.rb +0 -43
  554. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/ffi.rb +0 -109
  555. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/function.rb +0 -94
  556. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/io.rb +0 -62
  557. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/library.rb +0 -592
  558. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/library_path.rb +0 -109
  559. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/managedstruct.rb +0 -84
  560. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/memorypointer.rb +0 -1
  561. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/aarch64-darwin/types.conf +0 -130
  562. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/aarch64-freebsd/types.conf +0 -128
  563. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/aarch64-freebsd12/types.conf +0 -181
  564. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/aarch64-linux/types.conf +0 -175
  565. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/aarch64-openbsd/types.conf +0 -134
  566. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/aarch64-windows/types.conf +0 -52
  567. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/arm-freebsd/types.conf +0 -152
  568. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/arm-freebsd12/types.conf +0 -152
  569. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/arm-linux/types.conf +0 -132
  570. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/hppa1.1-linux/types.conf +0 -178
  571. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/hppa2.0-linux/types.conf +0 -178
  572. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-cygwin/types.conf +0 -3
  573. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-darwin/types.conf +0 -100
  574. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-freebsd/types.conf +0 -152
  575. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-freebsd12/types.conf +0 -152
  576. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-gnu/types.conf +0 -107
  577. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-linux/types.conf +0 -103
  578. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-netbsd/types.conf +0 -126
  579. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-openbsd/types.conf +0 -128
  580. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-solaris/types.conf +0 -122
  581. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/i386-windows/types.conf +0 -52
  582. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/ia64-linux/types.conf +0 -104
  583. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/loongarch64-linux/types.conf +0 -141
  584. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mips-linux/types.conf +0 -102
  585. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mips64-linux/types.conf +0 -104
  586. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mips64el-linux/types.conf +0 -104
  587. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mipsel-linux/types.conf +0 -102
  588. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mipsisa32r6-linux/types.conf +0 -102
  589. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mipsisa32r6el-linux/types.conf +0 -102
  590. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mipsisa64r6-linux/types.conf +0 -104
  591. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/mipsisa64r6el-linux/types.conf +0 -104
  592. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/powerpc-aix/types.conf +0 -180
  593. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/powerpc-darwin/types.conf +0 -100
  594. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/powerpc-linux/types.conf +0 -130
  595. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/powerpc-openbsd/types.conf +0 -156
  596. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/powerpc64-linux/types.conf +0 -104
  597. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/powerpc64le-linux/types.conf +0 -100
  598. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/riscv64-linux/types.conf +0 -104
  599. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/s390-linux/types.conf +0 -102
  600. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/s390x-linux/types.conf +0 -102
  601. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/sparc-linux/types.conf +0 -102
  602. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/sparc-solaris/types.conf +0 -128
  603. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/sparcv9-linux/types.conf +0 -102
  604. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/sparcv9-openbsd/types.conf +0 -156
  605. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/sparcv9-solaris/types.conf +0 -128
  606. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/sw_64-linux/types.conf +0 -141
  607. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-cygwin/types.conf +0 -3
  608. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-darwin/types.conf +0 -130
  609. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-dragonflybsd/types.conf +0 -130
  610. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-freebsd/types.conf +0 -128
  611. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-freebsd12/types.conf +0 -158
  612. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-haiku/types.conf +0 -117
  613. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-linux/types.conf +0 -132
  614. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-msys/types.conf +0 -119
  615. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-netbsd/types.conf +0 -128
  616. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-openbsd/types.conf +0 -134
  617. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-solaris/types.conf +0 -122
  618. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform/x86_64-windows/types.conf +0 -52
  619. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/platform.rb +0 -187
  620. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/pointer.rb +0 -167
  621. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/struct.rb +0 -317
  622. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/struct_by_reference.rb +0 -72
  623. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/struct_layout.rb +0 -96
  624. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/struct_layout_builder.rb +0 -227
  625. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/tools/const_generator.rb +0 -232
  626. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/tools/generator.rb +0 -105
  627. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/tools/generator_task.rb +0 -32
  628. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/tools/struct_generator.rb +0 -195
  629. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/types.rb +0 -222
  630. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/union.rb +0 -43
  631. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/variadic.rb +0 -80
  632. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi/version.rb +0 -3
  633. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/lib/ffi.rb +0 -27
  634. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/getlogin.rb +0 -8
  635. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/getpid.rb +0 -8
  636. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/gettimeofday.rb +0 -18
  637. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/hello.rb +0 -8
  638. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/hello_ractor.rb +0 -19
  639. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/inotify.rb +0 -60
  640. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/pty.rb +0 -75
  641. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/qsort.rb +0 -20
  642. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/samples/qsort_ractor.rb +0 -36
  643. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/abstract_memory.rbs +0 -165
  644. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/auto_pointer.rbs +0 -26
  645. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/buffer.rbs +0 -18
  646. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/data_converter.rbs +0 -10
  647. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/dynamic_library.rbs +0 -9
  648. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/enum.rbs +0 -38
  649. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/errno.rbs +0 -8
  650. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/function.rbs +0 -39
  651. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/library.rbs +0 -42
  652. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/native_type.rbs +0 -86
  653. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/platform.rbs +0 -49
  654. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/pointer.rbs +0 -42
  655. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/struct.rbs +0 -76
  656. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/struct_by_reference.rbs +0 -11
  657. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/struct_by_value.rbs +0 -7
  658. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/struct_layout.rbs +0 -9
  659. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/struct_layout_builder.rbs +0 -5
  660. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi/type.rbs +0 -39
  661. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.4-x86_64-linux-gnu/sig/ffi.rbs +0 -29
  662. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/CHANGELOG.md +0 -465
  663. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/CONTRIBUTING.md +0 -20
  664. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/LICENSE +0 -22
  665. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/README.md +0 -588
  666. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/UPGRADE.md +0 -55
  667. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/rack/typhoeus/middleware/params_decoder/helper.rb +0 -76
  668. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/rack/typhoeus/middleware/params_decoder.rb +0 -57
  669. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/rack/typhoeus.rb +0 -1
  670. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/adapters/faraday.rb +0 -180
  671. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/cache/dalli.rb +0 -28
  672. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/cache/rails.rb +0 -28
  673. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/cache/redis.rb +0 -35
  674. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/config.rb +0 -85
  675. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/easy_factory.rb +0 -206
  676. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/errors/no_stub.rb +0 -12
  677. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/errors/typhoeus_error.rb +0 -8
  678. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/errors.rb +0 -9
  679. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/expectation.rb +0 -219
  680. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/addable.rb +0 -23
  681. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/before.rb +0 -31
  682. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/block_connection.rb +0 -35
  683. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/cacheable.rb +0 -15
  684. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/memoizable.rb +0 -56
  685. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/queueable.rb +0 -83
  686. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/runnable.rb +0 -19
  687. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra/stubbable.rb +0 -28
  688. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/hydra.rb +0 -95
  689. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/pool.rb +0 -70
  690. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/railtie.rb +0 -12
  691. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/actions.rb +0 -125
  692. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/before.rb +0 -30
  693. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/block_connection.rb +0 -52
  694. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/cacheable.rb +0 -38
  695. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/callbacks.rb +0 -151
  696. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/marshal.rb +0 -22
  697. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/memoizable.rb +0 -38
  698. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/operations.rb +0 -40
  699. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/responseable.rb +0 -29
  700. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/streamable.rb +0 -34
  701. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request/stubbable.rb +0 -30
  702. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/request.rb +0 -223
  703. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/response/cacheable.rb +0 -14
  704. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/response/header.rb +0 -105
  705. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/response/informations.rb +0 -305
  706. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/response/status.rb +0 -106
  707. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/response.rb +0 -68
  708. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus/version.rb +0 -5
  709. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/lib/typhoeus.rb +0 -143
  710. data/vendor/bundle/ruby/4.0.0/gems/typhoeus-1.6.0/typhoeus.gemspec +0 -35
  711. data/vendor/bundle/ruby/4.0.0/specifications/ethon-0.18.0.gemspec +0 -27
  712. data/vendor/bundle/ruby/4.0.0/specifications/ffi-1.17.4-x86_64-linux-gnu.gemspec +0 -24
  713. data/vendor/bundle/ruby/4.0.0/specifications/typhoeus-1.6.0.gemspec +0 -26
@@ -0,0 +1,1196 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "resolv"
4
+ require "forwardable"
5
+ require "httpx/io"
6
+ require "httpx/buffer"
7
+
8
+ module HTTPX
9
+ # The Connection can be watched for IO events.
10
+ #
11
+ # It contains the +io+ object to read/write from, and knows what to do when it can.
12
+ #
13
+ # It defers connecting until absolutely necessary. Connection should be triggered from
14
+ # the IO selector (until then, any request will be queued).
15
+ #
16
+ # A connection boots up its parser after connection is established. All pending requests
17
+ # will be redirected there after connection.
18
+ #
19
+ # A connection can be prevented from closing by the parser, that is, if there are pending
20
+ # requests. This will signal that the connection was prematurely closed, due to a possible
21
+ # number of conditions:
22
+ #
23
+ # * Remote peer closed the connection ("Connection: close");
24
+ # * Remote peer doesn't support pipelining;
25
+ #
26
+ # A connection may also route requests for a different host for which the +io+ was connected
27
+ # to, provided that the IP is the same and the port and scheme as well. This will allow to
28
+ # share the same socket to send HTTP/2 requests to different hosts.
29
+ #
30
+ class Connection
31
+ extend Forwardable
32
+ include Loggable
33
+ include Callbacks
34
+
35
+ using URIExtensions
36
+
37
+ def_delegator :@write_buffer, :empty?
38
+
39
+ attr_reader :type, :io, :origin, :origins, :state, :pending, :options, :ssl_session, :sibling,
40
+ :read_buffer, :write_buffer
41
+
42
+ attr_writer :current_selector
43
+
44
+ attr_accessor :current_session, :family
45
+
46
+ protected :ssl_session, :sibling, :read_buffer, :write_buffer
47
+
48
+ def initialize(uri, options)
49
+ @current_session = @current_selector = @max_concurrent_requests =
50
+ @parser = @sibling = @coalesced_connection = @altsvc_connection =
51
+ @callbacks = @ping_timer = @family =
52
+ @io = @ssl_session = @timeout = @connected_at = @response_received_at = nil
53
+
54
+ @exhausted = @cloned = @main_sibling =
55
+ # variable used to gate against a potential endless loop where the peer continuously closes the connection with
56
+ # GOAWAY frames without ever processing a request.
57
+ @previously_exhausted_with_error = false
58
+
59
+ @options = Options.new(options)
60
+ @type = initialize_type(uri, @options)
61
+ @origins = [uri.origin]
62
+ @origin = Utils.to_uri(uri.origin)
63
+ @window_size = @options.window_size
64
+ @read_buffer = Buffer.new(@options.buffer_size)
65
+ @write_buffer = Buffer.new(@options.buffer_size)
66
+ @pending = []
67
+ @inflight = 0
68
+ @keep_alive_timeout = @options.timeout[:keep_alive_timeout]
69
+ @no_more_requests_counter = 0
70
+
71
+ if @options.io
72
+ # if there's an already open IO, get its
73
+ # peer address, and force-initiate the parser
74
+ transition(:already_open)
75
+ @io = build_socket
76
+ parser
77
+ else
78
+ transition(:idle)
79
+ end
80
+ self.addresses = @options.addresses if @options.addresses
81
+ end
82
+
83
+ # dupped initialization
84
+ def initialize_dup(orig)
85
+ super
86
+ @callbacks = @parser = @sibling = @coalesced_connection = @altsvc_connection = nil
87
+ @origins = orig.origins.dup
88
+ @read_buffer = orig.read_buffer.dup
89
+ @write_buffer = orig.write_buffer.dup
90
+ @inflight = 0
91
+ @pending = []
92
+ transition(:idle)
93
+
94
+ if @io
95
+ # initialize new IO object with the same set of addresses
96
+ addresses = @io.addresses
97
+ @io = nil
98
+ self.addresses = addresses
99
+ end
100
+
101
+ return unless @current_session && @current_selector
102
+
103
+ @current_session.pin(self, @current_selector)
104
+ end
105
+
106
+ def peer
107
+ @origin
108
+ end
109
+
110
+ # this is a semi-private method, to be used by the resolver
111
+ # to initiate the io object.
112
+ def addresses=(addrs)
113
+ if @io
114
+ @io.add_addresses(addrs)
115
+ else
116
+ @io = build_socket(addrs)
117
+ end
118
+ end
119
+
120
+ def addresses
121
+ @io && @io.addresses
122
+ end
123
+
124
+ def addresses?
125
+ @io && @io.addresses?
126
+ end
127
+
128
+ def match?(uri, options)
129
+ return false if !used? && (@state == :closing || @state == :closed)
130
+
131
+ @origins.include?(uri.origin) &&
132
+ # if there is more than one origin to match, it means that this connection
133
+ # was the result of coalescing. To prevent blind trust in the case where the
134
+ # origin came from an ORIGIN frame, we're going to verify the hostname with the
135
+ # SSL certificate
136
+ (@origins.size == 1 || @origin == uri.origin || (@io.is_a?(SSL) && @io.verify_hostname(uri.host))) &&
137
+ @options.connection_options_match?(options)
138
+ end
139
+
140
+ def mergeable?(connection)
141
+ return false if @state == :closing || @state == :closed || !@io
142
+
143
+ return false unless connection.addresses
144
+
145
+ (
146
+ (open? && @origin == connection.origin) ||
147
+ !(@io.addresses & (connection.addresses || [])).empty?
148
+ ) && @options.connection_options_match?(connection.options)
149
+ end
150
+
151
+ # coalesces +self+ into +connection+.
152
+ def coalesce!(connection)
153
+ @coalesced_connection = connection
154
+
155
+ close_sibling
156
+ connection.merge(self)
157
+ end
158
+
159
+ def coalesced?
160
+ @coalesced_connection
161
+ end
162
+
163
+ # coalescable connections need to be mergeable!
164
+ # but internally, #mergeable? is called before #coalescable?
165
+ def coalescable?(connection)
166
+ if @io.protocol == "h2" &&
167
+ @origin.scheme == "https" &&
168
+ connection.origin.scheme == "https" &&
169
+ @io.can_verify_peer?
170
+ @io.verify_hostname(connection.origin.host)
171
+ else
172
+ @origin == connection.origin
173
+ end
174
+ end
175
+
176
+ def merge(connection)
177
+ @origins |= connection.instance_variable_get(:@origins)
178
+ if @ssl_session.nil? && (ssl_session = connection.ssl_session)
179
+ @ssl_session = ssl_session
180
+ # the socket only needs the merged session if it can still resume it,
181
+ # i.e. if TLS hasn't been negotiated yet.
182
+ @io.ssl_session = ssl_session if @io.is_a?(SSL) && !@io.connected?
183
+ end
184
+ connection.purge_pending do |req|
185
+ req.transition(:idle)
186
+ send(req)
187
+ end
188
+ end
189
+
190
+ def purge_pending(&block)
191
+ if @parser
192
+ pending = @parser.pending
193
+ @inflight -= pending.size
194
+ pending.reject! do |req|
195
+ block.call(req)
196
+ true
197
+ end
198
+ end
199
+ @pending.reject! do |req|
200
+ block.call(req)
201
+ true
202
+ end
203
+ end
204
+
205
+ def io_connected?
206
+ return @coalesced_connection.io_connected? if @coalesced_connection
207
+
208
+ @io && @io.state == :connected
209
+ end
210
+
211
+ def connecting?
212
+ @state == :idle
213
+ end
214
+
215
+ def inflight?
216
+ @parser && (
217
+ # parser may be dealing with other requests (possibly started from a different fiber)
218
+ !@parser.empty? ||
219
+ # connection may be doing connection termination handshake
220
+ !@write_buffer.empty?
221
+ )
222
+ end
223
+
224
+ def interests
225
+ # connecting
226
+ if connecting?
227
+ connect
228
+
229
+ return @io.interests if connecting?
230
+ end
231
+
232
+ return @parser.interests if @parser
233
+
234
+ nil
235
+ rescue Error => e
236
+ on_error(e)
237
+ nil
238
+ end
239
+
240
+ def to_io
241
+ @io.to_io
242
+ end
243
+
244
+ def call
245
+ case @state
246
+ when :idle
247
+ return if no_more_requests?
248
+
249
+ connect
250
+
251
+ # when opening the tcp or ssl socket fails
252
+ return if @state == :closed
253
+
254
+ consume
255
+ when :closed
256
+ return if no_more_requests?
257
+
258
+ # there are pending requests to send, restart the state machine.
259
+ idling
260
+
261
+ # @fiber-switch-guard
262
+ # fiber may have switch after ensuring that @io is closed.
263
+ return unless @state == :idle
264
+
265
+ call
266
+ when :closing
267
+ consume
268
+ transition(:closed)
269
+
270
+ # @fiber-switch-guard
271
+ # fiber may have switch while closing @io.
272
+ return if @state == :closed &&
273
+ # only remain here if there are pending requests.
274
+ @pending.empty?
275
+
276
+ call
277
+ when :open
278
+ consume
279
+ end
280
+ nil
281
+ rescue Errno::ECONNRESET,
282
+ Errno::EINVAL,
283
+ SocketError,
284
+ IOError,
285
+ TLSError => e
286
+ @write_buffer.clear
287
+ on_io_error(e)
288
+ rescue Error => e
289
+ @write_buffer.clear
290
+ on_error(e)
291
+ rescue Exception => e # rubocop:disable Lint/RescueException
292
+ force_close(true)
293
+ raise e
294
+ end
295
+
296
+ def initial_call
297
+ call
298
+ end
299
+
300
+ def close
301
+ transition(:active) if @state == :inactive
302
+
303
+ @parser.close if @parser
304
+ end
305
+
306
+ def terminate
307
+ case @state
308
+ when :idle
309
+ purge_after_closed
310
+
311
+ # @fiber-switch-guard
312
+ if @io.can_disconnect? && @pending.empty?
313
+ disconnect
314
+ return
315
+ end
316
+ when :closed
317
+ @connected_at = nil
318
+ end
319
+
320
+ close
321
+ end
322
+
323
+ # bypasses state machine rules while setting the connection in the
324
+ # :closed state.
325
+ def force_close(delete_pending = false)
326
+ force_purge
327
+ return unless @state == :closed
328
+
329
+ if delete_pending
330
+ @pending.clear
331
+ elsif (parser = @parser)
332
+ enqueue_pending_requests_from_parser(parser)
333
+ end
334
+
335
+ return unless @pending.empty?
336
+
337
+ disconnect
338
+ emit(:force_closed, delete_pending)
339
+ end
340
+
341
+ # bypasses the state machine to force closing of connections still connecting.
342
+ # **only** used for Happy Eyeballs v2.
343
+ def force_reset(cloned = false)
344
+ @state = :closing
345
+ @cloned = cloned
346
+ transition(:closed)
347
+ end
348
+
349
+ def reset
350
+ return if @state == :closing || @state == :closed
351
+
352
+ # do not reset a connection which may have restarted back to :idle, such when the parser resets
353
+ # (example: HTTP/1 parser disabling pipelining)
354
+ return if @state == :idle && @pending.any?
355
+
356
+ if @ping_timer
357
+ @ping_timer.cancel
358
+ @ping_timer = nil
359
+ end
360
+
361
+ parser = @parser
362
+
363
+ if parser && parser.respond_to?(:max_concurrent_requests)
364
+ # if connection being reset has at some downgraded the number of concurrent
365
+ # requests, such as in the case where an attempt to use HTTP/1 pipelining failed,
366
+ # keep that information around.
367
+ @max_concurrent_requests = parser.max_concurrent_requests
368
+ end
369
+
370
+ transition(:closing)
371
+ transition(:closed)
372
+ end
373
+
374
+ def send(request)
375
+ return @coalesced_connection.send(request) if @coalesced_connection
376
+
377
+ if @parser && !@write_buffer.full?
378
+ if @response_received_at && @keep_alive_timeout &&
379
+ Utils.elapsed_time(@response_received_at) > @keep_alive_timeout
380
+ # when pushing a request into an existing connection, we have to check whether there
381
+ # is the possibility that the connection might have extended the keep alive timeout.
382
+ # for such cases, we want to ping for availability before deciding to shovel requests.
383
+ log(level: 3) { "keep alive timeout expired, pinging connection..." }
384
+ @pending << request
385
+ transition(:active) if @state == :inactive
386
+ request.ping!
387
+ ping(request)
388
+ return
389
+ end
390
+
391
+ send_request_to_parser(request)
392
+ else
393
+ @pending << request
394
+ end
395
+ end
396
+
397
+ def timeout
398
+ return if @state == :closed || @state == :inactive
399
+
400
+ return @timeout if @timeout
401
+
402
+ return @options.timeout[:connect_timeout] if @state == :idle
403
+
404
+ @options.timeout[:operation_timeout]
405
+ end
406
+
407
+ def idling
408
+ purge_after_closed
409
+
410
+ return unless @state == :closed
411
+
412
+ @write_buffer.clear
413
+ transition(:idle)
414
+ return unless @parser
415
+
416
+ enqueue_pending_requests_from_parser(parser)
417
+ @parser = nil
418
+ end
419
+
420
+ def used?
421
+ @connected_at
422
+ end
423
+
424
+ def deactivate
425
+ transition(:inactive)
426
+ end
427
+
428
+ def open?
429
+ @state == :open || @state == :inactive
430
+ end
431
+
432
+ def handle_socket_timeout(interval)
433
+ error = OperationTimeoutError.new(interval, "timed out while waiting on select")
434
+ error.set_backtrace(caller)
435
+ on_error(error)
436
+ end
437
+
438
+ def sibling=(connection)
439
+ @sibling = connection
440
+
441
+ return unless connection
442
+
443
+ @main_sibling = connection.sibling.nil?
444
+
445
+ return unless @main_sibling
446
+
447
+ connection.sibling = self
448
+ end
449
+
450
+ def handle_connect_error(error)
451
+ return on_error(error) unless @sibling && @sibling.connecting?
452
+
453
+ @sibling.merge(self)
454
+
455
+ force_reset(true)
456
+ end
457
+
458
+ # disconnects from the current session it's attached to
459
+ def disconnect
460
+ return if @exhausted # it'll reset
461
+
462
+ return unless (current_session = @current_session) && (current_selector = @current_selector)
463
+
464
+ @current_session = @current_selector = nil
465
+
466
+ current_session.deselect_connection(self, current_selector, @cloned)
467
+ end
468
+
469
+ def on_connect_error(e)
470
+ # connect errors, exit gracefully
471
+ error = ConnectionError.new(e.message)
472
+ error.set_backtrace(e.backtrace)
473
+ handle_connect_error(error) if connecting?
474
+ force_close
475
+ end
476
+
477
+ def on_io_error(e)
478
+ on_error(e)
479
+
480
+ # do not force close if parser resets the connection.
481
+ # can happen i.e. when HTTP/1.1 pipelining is disabled.
482
+ return if @state == :idle && @pending.any?
483
+
484
+ force_close(true)
485
+ end
486
+
487
+ def on_error(error, request = nil)
488
+ if error.is_a?(OperationTimeoutError)
489
+
490
+ # inactive connections do not contribute to the select loop, therefore
491
+ # they should not fail due to such errors.
492
+ return if @state == :inactive
493
+
494
+ if @timeout
495
+ @timeout -= error.timeout
496
+ return unless @timeout <= 0
497
+
498
+ @timeout = nil
499
+ end
500
+
501
+ error = error.to_connection_error if connecting?
502
+ end
503
+ handle_error(error, request)
504
+ reset
505
+ end
506
+
507
+ # simplecov:disable
508
+ def inspect
509
+ "#<#{self.class}:#{object_id} " \
510
+ "@origin=#{@origin} " \
511
+ "@state=#{@state} " \
512
+ "@pending=#{@pending.size} " \
513
+ "@io=#{@io}>"
514
+ end
515
+ # simplecov:enable
516
+
517
+ private
518
+
519
+ def connect
520
+ transition(:open)
521
+ end
522
+
523
+ def consume
524
+ return unless @io
525
+
526
+ catch(:called) do
527
+ epiped = false
528
+ loop do
529
+ # connection may have
530
+ return if @state == :idle
531
+
532
+ parser.consume
533
+
534
+ # we exit if there's no more requests to process
535
+ #
536
+ # this condition takes into account:
537
+ #
538
+ # * the number of pending requests
539
+ # * the number of inflight requests
540
+ # * whether the write buffer has bytes (i.e. for close handshake)
541
+ if no_more_requests? && @write_buffer.empty?
542
+ no_more_requests_loop_check if @parser && @parser.pending.any?
543
+
544
+ # terminate if an altsvc connection has been established
545
+ terminate if @altsvc_connection
546
+
547
+ return
548
+ end
549
+
550
+ @timeout = @current_timeout
551
+
552
+ read_drained = false
553
+ write_drained = nil
554
+
555
+ #
556
+ # tight read loop.
557
+ #
558
+ # read as much of the socket as possible.
559
+ #
560
+ # this tight loop reads all the data it can from the socket and pipes it to
561
+ # its parser.
562
+ #
563
+ loop do
564
+ siz = @io.read(@window_size, @read_buffer)
565
+ log(level: 3, color: :cyan) { "IO READ: #{siz} bytes... (wsize: #{@window_size}, rbuffer: #{@read_buffer.bytesize})" }
566
+ unless siz
567
+ @write_buffer.clear
568
+
569
+ ex = EOFError.new("descriptor closed")
570
+ ex.set_backtrace(caller)
571
+ on_error(ex)
572
+ return
573
+ end
574
+
575
+ # socket has been drained. mark and exit the read loop.
576
+ if siz.zero?
577
+ read_drained = @read_buffer.empty?
578
+ epiped = false
579
+ break
580
+ end
581
+
582
+ parser << @read_buffer.to_s
583
+
584
+ # continue reading if possible.
585
+ break if interests == :w && !epiped
586
+
587
+ # exit the read loop if connection is preparing to be closed
588
+ break if @state == :closing || @state == :closed
589
+
590
+ # exit #consume altogether if all outstanding requests have been dealt with
591
+ if no_more_requests? && @write_buffer.empty? # rubocop:disable Style/Next
592
+ no_more_requests_loop_check if @parser && @parser.pending.any?
593
+
594
+ # terminate if an altsvc connection has been established
595
+ terminate if @altsvc_connection
596
+
597
+ return
598
+ end
599
+ end unless ((ints = interests).nil? || ints == :w || @state == :closing) && !epiped
600
+
601
+ #
602
+ # tight write loop.
603
+ #
604
+ # flush as many bytes as the sockets allow.
605
+ #
606
+ loop do
607
+ # buffer has been drained, mark and exit the write loop.
608
+ if @write_buffer.empty?
609
+ # we only mark as drained on the first loop
610
+ write_drained = write_drained.nil? && @inflight.positive?
611
+
612
+ break
613
+ end
614
+
615
+ begin
616
+ siz = @io.write(@write_buffer)
617
+ rescue Errno::EPIPE
618
+ # this can happen if we still have bytes in the buffer to send to the server, but
619
+ # the server wants to respond immediately with some message, or an error. An example is
620
+ # when one's uploading a big file to an unintended endpoint, and the server stops the
621
+ # consumption, and responds immediately with an authorization of even method not allowed error.
622
+ # at this point, we have to let the connection switch to read-mode.
623
+ log(level: 2) { "pipe broken, could not flush buffer..." }
624
+ epiped = true
625
+ read_drained = false
626
+ break
627
+ end
628
+ log(level: 3, color: :cyan) { "IO WRITE: #{siz} bytes..." }
629
+ unless siz
630
+ @write_buffer.clear
631
+
632
+ ex = EOFError.new("descriptor closed")
633
+ ex.set_backtrace(caller)
634
+ on_error(ex)
635
+ return
636
+ end
637
+
638
+ # socket closed for writing. mark and exit the write loop.
639
+ if siz.zero?
640
+ write_drained = !@write_buffer.empty?
641
+ break
642
+ end
643
+
644
+ # exit write loop if marked to consume from peer, or is closing.
645
+ break if interests == :r || @state == :closing || @state == :closed
646
+
647
+ write_drained = false
648
+ end unless (ints = interests) == :r
649
+
650
+ send_pending if @state == :open
651
+
652
+ # return if socket is drained
653
+ next unless (ints != :r || read_drained) && (ints != :w || write_drained)
654
+
655
+ # gotta go back to the event loop. It happens when:
656
+ #
657
+ # * the socket is drained of bytes or it's not the interest of the conn to read;
658
+ # * theres nothing more to write, or it's not in the interest of the conn to write;
659
+ log(level: 3) { "(#{ints}): WAITING FOR EVENTS..." }
660
+ return
661
+ end
662
+ end
663
+ end
664
+
665
+ def send_pending
666
+ while !@write_buffer.full? && (request = @pending.shift)
667
+ send_request_to_parser(request)
668
+ end
669
+ end
670
+
671
+ def parser
672
+ @parser ||= build_parser
673
+ end
674
+
675
+ def send_request_to_parser(request)
676
+ @inflight += 1
677
+ request.peer_address = @io.ip && @io.ip.address
678
+ set_request_timeouts(request)
679
+
680
+ parser.send(request)
681
+
682
+ return unless @state == :inactive
683
+
684
+ transition(:active)
685
+ # mark request as ping, as this inactive connection may have been
686
+ # closed by the server, and we don't want that to influence retry
687
+ # bookkeeping.
688
+ request.ping!
689
+ end
690
+
691
+ def enqueue_pending_requests_from_parser(parser)
692
+ parser.reset_requests # move sequential requests back to pending queue.
693
+ parser_pending_requests = parser.pending
694
+
695
+ return if parser_pending_requests.empty?
696
+
697
+ # the connection will be reused, so parser requests must come
698
+ # back to the pending list before the parser is reset.
699
+ @inflight -= parser_pending_requests.size
700
+ @pending.unshift(*parser_pending_requests)
701
+
702
+ parser.pending.clear
703
+ end
704
+
705
+ def build_parser(protocol = @io.protocol)
706
+ parser = parser_type(protocol).new(@write_buffer, @options)
707
+ set_parser_callbacks(parser)
708
+ parser.max_concurrent_requests = @max_concurrent_requests if @max_concurrent_requests && parser.respond_to?(:max_concurrent_requests=)
709
+ parser
710
+ end
711
+
712
+ def set_parser_callbacks(parser)
713
+ parser.on(:response) do |request, response|
714
+ AltSvc.emit(request, response) do |alt_origin, origin, alt_params|
715
+ build_altsvc_connection(alt_origin, origin, alt_params)
716
+ end
717
+ @previously_exhausted_with_error = false
718
+ @response_received_at = Utils.now
719
+ @no_more_requests_counter = 0
720
+ @inflight -= 1
721
+ response.finish!
722
+ request.emit_response(response)
723
+ end
724
+ parser.on(:altsvc) do |alt_origin, origin, alt_params|
725
+ build_altsvc_connection(alt_origin, origin, alt_params)
726
+ end
727
+
728
+ parser.on(:pong, &method(:pong))
729
+
730
+ parser.on(:promise) do |request, stream|
731
+ request.emit(:promise, parser, stream)
732
+ end
733
+ parser.on(:exhausted) do |error|
734
+ enqueue_pending_requests_from_parser(parser)
735
+
736
+ if error
737
+ if @previously_exhausted_with_error
738
+ @previously_exhausted_with_error = false
739
+ on_error(error)
740
+ next
741
+ else
742
+ @previously_exhausted_with_error = true
743
+ end
744
+ end
745
+
746
+ @exhausted = true
747
+ parser.close
748
+
749
+ # @fiber-switch-guard
750
+ # fiber may have switched while closing @io, check whether still in the exhausted loop.
751
+ next unless @exhausted
752
+
753
+ idling
754
+
755
+ @exhausted = false
756
+ end
757
+ parser.on(:origin) do |origin|
758
+ @origins |= [origin]
759
+ end
760
+ parser.on(:close) do
761
+ reset
762
+ end
763
+ parser.on(:close_handshake) do
764
+ consume unless @state == :closed
765
+ end
766
+ parser.on(:reset) do
767
+ enqueue_pending_requests_from_parser(parser)
768
+
769
+ reset
770
+
771
+ next unless @state == :closed
772
+
773
+ # :reset event only fired in http/1.1, so this guarantees
774
+ # that the connection will be closed here.
775
+ idling unless @pending.empty?
776
+ end
777
+ parser.on(:current_timeout) do
778
+ @current_timeout = @timeout = parser.timeout
779
+ end
780
+ parser.on(:timeout) do |tout|
781
+ @timeout = tout
782
+ end
783
+ parser.on(:error) do |request, error|
784
+ case error
785
+ when :http_1_1_required
786
+ current_session = @current_session
787
+ current_selector = @current_selector
788
+ parser.close
789
+
790
+ other_connection = current_session.find_connection(@origin, current_selector,
791
+ @options.merge(ssl: { alpn_protocols: %w[http/1.1] }))
792
+ other_connection.merge(self)
793
+ request.transition(:idle)
794
+ other_connection.send(request)
795
+ next
796
+ when OperationTimeoutError
797
+ # request level timeouts should take precedence
798
+ next unless request.active_timeouts.empty?
799
+ end
800
+
801
+ @inflight -= 1
802
+ response = ErrorResponse.new(request, error)
803
+ request.response = response
804
+ request.emit_response(response)
805
+ end
806
+ end
807
+
808
+ def transition(nextstate)
809
+ handle_transition(nextstate)
810
+ rescue Errno::ECONNABORTED,
811
+ Errno::ECONNREFUSED,
812
+ Errno::ECONNRESET,
813
+ Errno::EADDRNOTAVAIL,
814
+ Errno::EHOSTUNREACH,
815
+ Errno::ENETUNREACH,
816
+ Errno::EHOSTDOWN,
817
+ Errno::ENETDOWN,
818
+ Errno::EINVAL,
819
+ Errno::EPIPE,
820
+ Errno::ENOENT,
821
+ SocketError,
822
+ IOError => e
823
+ on_connect_error(e)
824
+ rescue TLSError,
825
+ Errno::ETIMEDOUT,
826
+ ::HTTP2::Error::ProtocolError,
827
+ ::HTTP2::Error::HandshakeError => e
828
+ # connect errors, exit gracefully
829
+ handle_error(e)
830
+ handle_connect_error(e) if connecting?
831
+ force_close
832
+ end
833
+
834
+ def handle_transition(nextstate)
835
+ case nextstate
836
+ when :idle
837
+ @timeout = @current_timeout = @options.timeout[:connect_timeout]
838
+
839
+ @connected_at = @response_received_at = nil
840
+ when :open
841
+ return if @state == :closed
842
+
843
+ @io.connect
844
+ close_sibling if @io.state == :connected
845
+
846
+ return unless @io.connected?
847
+
848
+ @connected_at = Utils.now
849
+
850
+ send_pending
851
+
852
+ @timeout = @current_timeout = parser.timeout
853
+ emit(:open)
854
+ when :inactive
855
+ return unless @state == :open
856
+
857
+ # @type ivar @parser: HTTP1 | HTTP2
858
+
859
+ # do not deactivate connection in use
860
+ return if @inflight.positive? || @parser.waiting_for_ping?
861
+ when :closing
862
+ return unless connecting? || @state == :open
863
+ when :closed
864
+ return unless @state == :closing
865
+ return unless @write_buffer.empty?
866
+
867
+ purge_after_closed
868
+
869
+ # @fiber-switch-guard
870
+ return unless @state == :closing && (@io.nil? || @io.can_disconnect?)
871
+ when :already_open
872
+ nextstate = :open
873
+ # the first check for given io readiness must still use a timeout.
874
+ # connect is the reasonable choice in such a case.
875
+ @timeout = @options.timeout[:connect_timeout]
876
+ send_pending
877
+ when :active
878
+ return unless @state == :inactive
879
+
880
+ nextstate = :open
881
+
882
+ # activate
883
+ @current_session.select_connection(self, @current_selector)
884
+ end
885
+ log(level: 3) { "#{@state} -> #{nextstate}" }
886
+ @state = nextstate
887
+ # post state change
888
+ case nextstate
889
+ when :inactive
890
+ disconnect
891
+ when :closing
892
+ return if @write_buffer.empty?
893
+
894
+ # try flushing termination handshakes
895
+ consume
896
+ @write_buffer.clear
897
+ when :closed
898
+ # TODO: should this raise an error instead?
899
+ return unless @pending.empty?
900
+
901
+ disconnect
902
+ end
903
+ end
904
+
905
+ def force_purge
906
+ return if @state == :closed
907
+
908
+ @state = :closed
909
+ @write_buffer.clear
910
+ begin
911
+ purge_after_closed
912
+ rescue IOError
913
+ # may be raised when closing the socket.
914
+ # due to connection reuse / fiber scheduling, it may
915
+ # have been reopened, to bail out in that case.
916
+ end
917
+ end
918
+
919
+ def close_sibling
920
+ sibling = @sibling
921
+
922
+ return unless sibling
923
+
924
+ if sibling.io_connected?
925
+ reset
926
+ # TODO: transition connection to closed
927
+ end
928
+
929
+ unless sibling.state == :closed
930
+ merge(sibling) unless @main_sibling
931
+ sibling.force_reset(true)
932
+ end
933
+
934
+ @sibling = nil
935
+ end
936
+
937
+ def purge_after_closed
938
+ if @io
939
+ @io.close
940
+
941
+ # @fiber-switch-guard
942
+ # due to fiber scheduler, multiple fibers may be listening on the same connection
943
+ # and moving the state machine forward; in such cases, when the control flow reaches
944
+ # this line, the io object may not be closed anymore.
945
+ return unless @io&.can_disconnect?
946
+ end
947
+ @read_buffer.clear
948
+ @timeout = nil
949
+ end
950
+
951
+ def initialize_type(uri, options)
952
+ options.transport || begin
953
+ case uri.scheme
954
+ when "http"
955
+ "tcp"
956
+ when "https"
957
+ "ssl"
958
+ else
959
+ raise UnsupportedSchemeError, "#{uri}: #{uri.scheme}: unsupported URI scheme"
960
+ end
961
+ end
962
+ end
963
+
964
+ # returns an HTTPX::Connection for the negotiated Alternative Service (or none).
965
+ def build_altsvc_connection(alt_origin, origin, alt_params)
966
+ return if @altsvc_connection
967
+
968
+ # do not allow security downgrades on altsvc negotiation
969
+ return if @origin.scheme == "https" && alt_origin.scheme != "https"
970
+
971
+ altsvc = AltSvc.cached_altsvc_set(origin, alt_params.merge("origin" => alt_origin))
972
+
973
+ # altsvc already exists, somehow it wasn't advertised, probably noop
974
+ return unless altsvc
975
+
976
+ alt_options = @options.merge(ssl: @options.ssl.merge(hostname: URI(origin).host))
977
+
978
+ connection = @current_session.find_connection(alt_origin, @current_selector, alt_options)
979
+
980
+ # advertised altsvc is the same origin being used, ignore
981
+ return if connection == self
982
+
983
+ connection.extend(AltSvc::ConnectionMixin) unless connection.is_a?(AltSvc::ConnectionMixin)
984
+
985
+ @altsvc_connection = connection
986
+
987
+ log(level: 1) { "#{origin}: alt-svc connection##{connection.object_id} established to #{alt_origin}" }
988
+
989
+ connection.merge(self)
990
+ rescue UnsupportedSchemeError
991
+ altsvc["noop"] = true
992
+ nil
993
+ end
994
+
995
+ def build_socket(addrs = nil)
996
+ case @type
997
+ when "tcp"
998
+ TCP.new(peer, addrs, @options)
999
+ when "ssl"
1000
+ SSL.new(peer, addrs, @options) do |sock|
1001
+ sock.ssl_session = @ssl_session
1002
+ sock.session_new_cb do |sess|
1003
+ @ssl_session = sess
1004
+
1005
+ sock.ssl_session = sess
1006
+ end
1007
+ end
1008
+ when "unix"
1009
+ path = Array(addrs).first
1010
+
1011
+ path = String(path) if path
1012
+
1013
+ UNIX.new(peer, path, @options)
1014
+ else
1015
+ raise Error, "unsupported transport (#{@type})"
1016
+ end
1017
+ end
1018
+
1019
+ def ping(_request)
1020
+ return if parser.waiting_for_ping?
1021
+
1022
+ parser.ping
1023
+
1024
+ return unless parser.waiting_for_ping?
1025
+
1026
+ ping_timeout = @options.timeout[:ping_timeout]
1027
+
1028
+ @ping_timer = @current_selector.after(ping_timeout) do
1029
+ log(level: 3) { "ping timeout expired..." }
1030
+ error = PingTimeoutError.new(ping_timeout, "Timed out after #{ping_timeout} seconds")
1031
+ on_error(error)
1032
+ end
1033
+
1034
+ call
1035
+ end
1036
+
1037
+ def pong
1038
+ @ping_timer.cancel
1039
+ @ping_timer = nil
1040
+ @response_received_at = Utils.now
1041
+ @no_more_requests_counter = 0
1042
+ send_pending
1043
+ end
1044
+
1045
+ def no_more_requests_loop_check
1046
+ log(level: 3) { "NO MORE REQUESTS..." }
1047
+ @no_more_requests_counter += 1
1048
+
1049
+ return if @no_more_requests_counter < 50
1050
+
1051
+ raise Error, "connection corrupted, aborted after looping for a while, " \
1052
+ "please report this https://gitlab.com/os85/httpx/-/work_items " \
1053
+ "along with debug logs"
1054
+ end
1055
+
1056
+ # true when there are no more pending nor inflight (in parser) requests
1057
+ def no_more_requests?
1058
+ @pending.empty? && @inflight.zero?
1059
+ end
1060
+
1061
+ # recover internal state and emit all relevant error responses when +error+ was raised.
1062
+ # this takes an optiona +request+ which may have already been handled and can be opted out
1063
+ # in the state recovery process.
1064
+ def handle_error(error, request = nil)
1065
+ if request
1066
+ @inflight -= 1
1067
+ response = ErrorResponse.new(request, error)
1068
+ request.response = response
1069
+ request.emit_response(response)
1070
+ end
1071
+
1072
+ pending = @pending
1073
+ if (parser = @parser) && parser.respond_to?(:handle_error)
1074
+ # parser.handle_error may disconnect the connection
1075
+ pending = @pending.dup
1076
+ @pending = []
1077
+
1078
+ parser.handle_error(error, request)
1079
+ end
1080
+
1081
+ while (req = pending.shift)
1082
+ next if request && req == request
1083
+
1084
+ resp = ErrorResponse.new(req, error)
1085
+ req.response = resp
1086
+ req.emit_response(resp)
1087
+ end
1088
+ end
1089
+
1090
+ def set_request_timeouts(request)
1091
+ request.connection = self
1092
+ set_request_write_timeout(request)
1093
+ set_request_read_timeout(request)
1094
+ set_request_request_timeout(request)
1095
+ set_request_total_request_timeout(request)
1096
+ end
1097
+
1098
+ def set_request_read_timeout(request)
1099
+ read_timeout = request.read_timeout
1100
+
1101
+ return if read_timeout.nil? || read_timeout.infinite?
1102
+
1103
+ set_request_timeout(:read_timeout, request, read_timeout, :done, :response) do
1104
+ read_timeout_callback(request, read_timeout)
1105
+ end
1106
+ end
1107
+
1108
+ def set_request_write_timeout(request)
1109
+ write_timeout = request.write_timeout
1110
+
1111
+ return if write_timeout.nil? || write_timeout.infinite?
1112
+
1113
+ set_request_timeout(:write_timeout, request, write_timeout, :headers, %i[done response]) do
1114
+ write_timeout_callback(request, write_timeout)
1115
+ end
1116
+ end
1117
+
1118
+ def set_request_request_timeout(request)
1119
+ request_timeout = request.request_timeout
1120
+
1121
+ return if request_timeout.nil? || request_timeout.infinite?
1122
+
1123
+ set_request_timeout(:request_timeout, request, request_timeout, :headers, :complete) do
1124
+ read_timeout_callback(request, request_timeout, RequestTimeoutError)
1125
+ end
1126
+ end
1127
+
1128
+ def write_timeout_callback(request, timeout)
1129
+ return if request.state == :done
1130
+
1131
+ @write_buffer.clear
1132
+ error = WriteTimeoutError.new(request, nil, timeout)
1133
+
1134
+ request.handle_error(error)
1135
+ end
1136
+
1137
+ def read_timeout_callback(request, timeout, error_type = ReadTimeoutError)
1138
+ response = request.response
1139
+
1140
+ return if response && response.finished?
1141
+
1142
+ @write_buffer.clear
1143
+ error = error_type.new(request, response, timeout)
1144
+
1145
+ request.handle_error(error)
1146
+ end
1147
+
1148
+ def set_request_total_request_timeout(request)
1149
+ return if request.started?
1150
+
1151
+ total_request_timeout = request.total_request_timeout
1152
+
1153
+ return if total_request_timeout.nil? || total_request_timeout.infinite?
1154
+
1155
+ set_request_timeout(:total_request_timeout, request, total_request_timeout, :headers, :complete) do
1156
+ read_timeout_callback(request, total_request_timeout, TotalRequestTimeoutError)
1157
+ end
1158
+ end
1159
+
1160
+ def set_request_timeout(label, request, timeout, start_event, finish_events, &callback)
1161
+ request.set_timeout_callback(start_event) do
1162
+ unless (selector = @current_selector)
1163
+ raise Error, "request has been resend to an out-of-session connection, and this " \
1164
+ "should never happen!!! Please report this error! " \
1165
+ "(state:#{@state}, " \
1166
+ "parser?:#{!!@parser}, " \
1167
+ "bytes in write buffer?:#{!@write_buffer.empty?}, " \
1168
+ "cloned?:#{@cloned}, " \
1169
+ "sibling?:#{!!@sibling}, " \
1170
+ "coalesced?:#{coalesced?})"
1171
+ end
1172
+
1173
+ timer = selector.after(timeout, callback)
1174
+ timer.label = label
1175
+ request.active_timeouts << timer
1176
+
1177
+ Array(finish_events).each do |event|
1178
+ # clean up request timeouts if the connection errors out
1179
+ request.set_timeout_callback(event) do
1180
+ timer.cancel
1181
+ request.active_timeouts.delete(timer)
1182
+ end
1183
+ end
1184
+ end
1185
+ end
1186
+
1187
+ def parser_type(protocol)
1188
+ case protocol
1189
+ when "h2" then @options.http2_class
1190
+ when "http/1.1" then @options.http1_class
1191
+ else
1192
+ raise Error, "unsupported protocol (##{protocol})"
1193
+ end
1194
+ end
1195
+ end
1196
+ end