tdiary 5.2.2 → 5.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1533) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +5 -1
  3. data/Gemfile.lock +18 -18
  4. data/README.md +0 -2
  5. data/lib/tdiary/version.rb +1 -1
  6. data/misc/paas/heroku/Gemfile.local +1 -1
  7. data/misc/paas/heroku/Gemfile.lock +34 -32
  8. data/vendor/bundle/ruby/3.1.0/build_info/{nokogiri-1.13.6-x86_64-linux.info → nokogiri-1.13.8-x86_64-linux.info} +0 -0
  9. data/vendor/bundle/ruby/3.1.0/cache/addressable-2.8.1.gem +0 -0
  10. data/vendor/bundle/ruby/3.1.0/cache/debug-1.6.2.gem +0 -0
  11. data/vendor/bundle/ruby/3.1.0/cache/faraday-2.5.2.gem +0 -0
  12. data/vendor/bundle/ruby/3.1.0/cache/faraday-net_http-3.0.0.gem +0 -0
  13. data/vendor/bundle/ruby/3.1.0/cache/nokogiri-1.13.8-x86_64-linux.gem +0 -0
  14. data/vendor/bundle/ruby/3.1.0/cache/octokit-5.3.0.gem +0 -0
  15. data/vendor/bundle/ruby/3.1.0/cache/public_suffix-5.0.0.gem +0 -0
  16. data/vendor/bundle/ruby/3.1.0/cache/rack-2.2.4.gem +0 -0
  17. data/vendor/bundle/ruby/3.1.0/cache/rack-test-2.0.2.gem +0 -0
  18. data/vendor/bundle/ruby/3.1.0/cache/sawyer-0.9.2.gem +0 -0
  19. data/vendor/bundle/ruby/3.1.0/cache/selenium-webdriver-4.4.0.gem +0 -0
  20. data/vendor/bundle/ruby/3.1.0/cache/sequel-5.59.0.gem +0 -0
  21. data/vendor/bundle/ruby/3.1.0/cache/sqlite3-1.4.4.gem +0 -0
  22. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/debug-1.6.2/debug/debug.so +0 -0
  23. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/{debug-1.5.0 → debug-1.6.2}/gem.build_complete +0 -0
  24. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/debug-1.6.2/gem_make.out +16 -0
  25. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/json-2.6.2/gem_make.out +1 -1
  26. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/redcarpet-3.5.1/gem_make.out +2 -2
  27. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/{sqlite3-1.4.2 → sqlite3-1.4.4}/gem.build_complete +0 -0
  28. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/sqlite3-1.4.4/gem_make.out +90 -0
  29. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/{sqlite3-1.4.2 → sqlite3-1.4.4}/mkmf.log +0 -0
  30. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/sqlite3-1.4.4/sqlite3/sqlite3_native.so +0 -0
  31. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/CHANGELOG.md +262 -0
  32. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/Gemfile +30 -0
  33. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/LICENSE.txt +0 -0
  34. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/README.md +0 -0
  35. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/Rakefile +0 -0
  36. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/data/unicode.data +0 -0
  37. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/lib/addressable/idna/native.rb +60 -0
  38. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/lib/addressable/idna/pure.rb +677 -0
  39. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/lib/addressable/idna.rb +26 -0
  40. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/lib/addressable/template.rb +1030 -0
  41. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/lib/addressable/uri.rb +2560 -0
  42. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/lib/addressable/version.rb +31 -0
  43. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/lib/addressable.rb +0 -0
  44. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/spec/addressable/idna_spec.rb +301 -0
  45. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/spec/addressable/net_http_compat_spec.rb +29 -0
  46. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/spec/addressable/security_spec.rb +58 -0
  47. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/spec/addressable/template_spec.rb +1468 -0
  48. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/spec/addressable/uri_spec.rb +6745 -0
  49. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/spec/spec_helper.rb +0 -0
  50. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/tasks/clobber.rake +0 -0
  51. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.1/tasks/gem.rake +95 -0
  52. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/tasks/git.rake +0 -0
  53. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/tasks/metrics.rake +0 -0
  54. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/tasks/profile.rake +0 -0
  55. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/tasks/rspec.rake +0 -0
  56. data/vendor/bundle/ruby/3.1.0/gems/{addressable-2.8.0 → addressable-2.8.1}/tasks/yard.rake +0 -0
  57. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/CONTRIBUTING.md +561 -0
  58. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/Gemfile +0 -0
  59. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/LICENSE.txt +0 -0
  60. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/README.md +913 -0
  61. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/Rakefile +52 -0
  62. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/TODO.md +0 -0
  63. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/debug.gemspec +32 -0
  64. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/exe/rdbg +38 -0
  65. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/ext/debug/Makefile +267 -0
  66. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/ext/debug/debug.c +200 -0
  67. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/ext/debug/debug.o +0 -0
  68. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/ext/debug/debug.so +0 -0
  69. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/ext/debug/debug_version.h +1 -0
  70. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/ext/debug/extconf.rb +26 -0
  71. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/ext/debug/iseq_collector.c +0 -0
  72. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/ext/debug/iseq_collector.o +0 -0
  73. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/breakpoint.rb +552 -0
  74. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/client.rb +245 -0
  75. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/lib/debug/color.rb +0 -0
  76. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/config.rb +524 -0
  77. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/console.rb +234 -0
  78. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/debug.so +0 -0
  79. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/frame_info.rb +179 -0
  80. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/lib/debug/local.rb +0 -0
  81. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/lib/debug/open.rb +0 -0
  82. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/lib/debug/open_nonstop.rb +0 -0
  83. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/prelude.rb +50 -0
  84. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/server.rb +520 -0
  85. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/server_cdp.rb +1144 -0
  86. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/server_dap.rb +975 -0
  87. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/session.rb +2422 -0
  88. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/source_repository.rb +130 -0
  89. data/vendor/bundle/ruby/3.1.0/gems/{debug-1.5.0 → debug-1.6.2}/lib/debug/start.rb +0 -0
  90. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/thread_client.rb +1299 -0
  91. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/tracer.rb +242 -0
  92. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug/version.rb +5 -0
  93. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/lib/debug.rb +5 -0
  94. data/vendor/bundle/ruby/3.1.0/gems/debug-1.6.2/misc/README.md.erb +604 -0
  95. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/CHANGELOG.md +0 -0
  96. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/LICENSE.md +20 -0
  97. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/README.md +55 -0
  98. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/Rakefile +0 -0
  99. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/examples/client_spec.rb +119 -0
  100. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/examples/client_test.rb +144 -0
  101. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/lib/faraday/adapter/test.rb +298 -0
  102. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/lib/faraday/adapter.rb +102 -0
  103. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/adapter_registry.rb +0 -0
  104. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/lib/faraday/connection.rb +561 -0
  105. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/encoders/flat_params_encoder.rb +0 -0
  106. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/encoders/nested_params_encoder.rb +0 -0
  107. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/error.rb +0 -0
  108. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/logging/formatter.rb +0 -0
  109. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/methods.rb +0 -0
  110. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/middleware.rb +0 -0
  111. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/middleware_registry.rb +0 -0
  112. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/options/connection_options.rb +0 -0
  113. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/lib/faraday/options/env.rb +199 -0
  114. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/options/proxy_options.rb +0 -0
  115. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/options/request_options.rb +0 -0
  116. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/lib/faraday/options/ssl_options.rb +69 -0
  117. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/options.rb +0 -0
  118. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/parameters.rb +0 -0
  119. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/rack_builder.rb +0 -0
  120. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/request/authorization.rb +0 -0
  121. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/request/instrumentation.rb +0 -0
  122. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/request/json.rb +0 -0
  123. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/request/url_encoded.rb +0 -0
  124. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/request.rb +0 -0
  125. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/response/json.rb +0 -0
  126. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/response/logger.rb +0 -0
  127. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/response/raise_error.rb +0 -0
  128. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/response.rb +0 -0
  129. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/utils/headers.rb +0 -0
  130. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/utils/params_hash.rb +0 -0
  131. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday/utils.rb +0 -0
  132. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/lib/faraday/version.rb +5 -0
  133. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/lib/faraday.rb +0 -0
  134. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/external_adapters/faraday_specs_setup.rb +0 -0
  135. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/spec/faraday/adapter/test_spec.rb +413 -0
  136. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/adapter_registry_spec.rb +0 -0
  137. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/adapter_spec.rb +0 -0
  138. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/spec/faraday/connection_spec.rb +793 -0
  139. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/error_spec.rb +0 -0
  140. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/middleware_registry_spec.rb +0 -0
  141. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/middleware_spec.rb +0 -0
  142. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/spec/faraday/options/env_spec.rb +76 -0
  143. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/options/options_spec.rb +0 -0
  144. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/options/proxy_options_spec.rb +0 -0
  145. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/options/request_options_spec.rb +0 -0
  146. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/params_encoders/flat_spec.rb +0 -0
  147. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/params_encoders/nested_spec.rb +0 -0
  148. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/rack_builder_spec.rb +0 -0
  149. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/request/authorization_spec.rb +0 -0
  150. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/request/instrumentation_spec.rb +0 -0
  151. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/request/json_spec.rb +0 -0
  152. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/request/url_encoded_spec.rb +0 -0
  153. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/spec/faraday/request_spec.rb +110 -0
  154. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/response/json_spec.rb +0 -0
  155. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/response/logger_spec.rb +0 -0
  156. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/response/raise_error_spec.rb +0 -0
  157. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/response_spec.rb +0 -0
  158. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday/utils/headers_spec.rb +0 -0
  159. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/spec/faraday/utils_spec.rb +118 -0
  160. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/faraday_spec.rb +0 -0
  161. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/spec_helper.rb +0 -0
  162. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/support/disabling_stub.rb +0 -0
  163. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/support/fake_safe_buffer.rb +0 -0
  164. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/support/helper_methods.rb +0 -0
  165. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/spec/support/shared_examples/adapter.rb +105 -0
  166. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/support/shared_examples/params_encoder.rb +0 -0
  167. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.5.2/spec/support/shared_examples/request_method.rb +263 -0
  168. data/vendor/bundle/ruby/3.1.0/gems/{faraday-2.3.0 → faraday-2.5.2}/spec/support/streaming_response_checker.rb +0 -0
  169. data/vendor/bundle/ruby/3.1.0/gems/{faraday-net_http-2.0.3 → faraday-net_http-3.0.0}/LICENSE.md +0 -0
  170. data/vendor/bundle/ruby/3.1.0/gems/{faraday-net_http-2.0.3 → faraday-net_http-3.0.0}/README.md +0 -0
  171. data/vendor/bundle/ruby/3.1.0/gems/faraday-net_http-3.0.0/lib/faraday/adapter/net_http.rb +208 -0
  172. data/vendor/bundle/ruby/3.1.0/gems/faraday-net_http-3.0.0/lib/faraday/net_http/version.rb +7 -0
  173. data/vendor/bundle/ruby/3.1.0/gems/{faraday-net_http-2.0.3 → faraday-net_http-3.0.0}/lib/faraday/net_http.rb +0 -0
  174. data/vendor/bundle/ruby/3.1.0/gems/json-2.6.2/ext/json/Makefile +2 -2
  175. data/vendor/bundle/ruby/3.1.0/gems/json-2.6.2/ext/json/ext/generator/Makefile +2 -2
  176. data/vendor/bundle/ruby/3.1.0/gems/json-2.6.2/ext/json/ext/parser/Makefile +2 -2
  177. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/Gemfile +0 -0
  178. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/LICENSE-DEPENDENCIES.md +0 -0
  179. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/LICENSE.md +0 -0
  180. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/README.md +0 -0
  181. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/bin/nokogiri +0 -0
  182. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/dependencies.yml +0 -0
  183. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/depend +0 -0
  184. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/extconf.rb +1010 -0
  185. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/gumbo.c +584 -0
  186. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/html4_document.c +0 -0
  187. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/html4_element_description.c +0 -0
  188. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/html4_entity_lookup.c +0 -0
  189. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/html4_sax_parser_context.c +0 -0
  190. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/html4_sax_push_parser.c +0 -0
  191. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libexslt/exslt.h +0 -0
  192. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libexslt/exsltconfig.h +0 -0
  193. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libexslt/exsltexports.h +0 -0
  194. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/DOCBparser.h +0 -0
  195. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/HTMLparser.h +0 -0
  196. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/HTMLtree.h +0 -0
  197. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/SAX.h +0 -0
  198. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/SAX2.h +0 -0
  199. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/c14n.h +0 -0
  200. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/catalog.h +0 -0
  201. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/chvalid.h +0 -0
  202. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/debugXML.h +0 -0
  203. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/dict.h +0 -0
  204. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/encoding.h +0 -0
  205. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/entities.h +0 -0
  206. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/globals.h +0 -0
  207. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/hash.h +0 -0
  208. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/list.h +0 -0
  209. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/nanoftp.h +0 -0
  210. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/nanohttp.h +0 -0
  211. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/parser.h +0 -0
  212. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/parserInternals.h +0 -0
  213. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/pattern.h +0 -0
  214. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/relaxng.h +0 -0
  215. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/schemasInternals.h +0 -0
  216. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/schematron.h +0 -0
  217. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/threads.h +0 -0
  218. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/tree.h +0 -0
  219. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/uri.h +0 -0
  220. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/valid.h +0 -0
  221. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xinclude.h +0 -0
  222. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xlink.h +0 -0
  223. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlIO.h +0 -0
  224. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlautomata.h +0 -0
  225. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlerror.h +0 -0
  226. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlexports.h +0 -0
  227. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlmemory.h +0 -0
  228. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlmodule.h +0 -0
  229. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlreader.h +0 -0
  230. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlregexp.h +0 -0
  231. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlsave.h +0 -0
  232. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlschemas.h +0 -0
  233. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlschemastypes.h +0 -0
  234. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlstring.h +0 -0
  235. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlunicode.h +0 -0
  236. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlversion.h +0 -0
  237. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xmlwriter.h +0 -0
  238. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xpath.h +0 -0
  239. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xpathInternals.h +0 -0
  240. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxml2/libxml/xpointer.h +0 -0
  241. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/attributes.h +0 -0
  242. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/documents.h +0 -0
  243. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/extensions.h +0 -0
  244. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/extra.h +0 -0
  245. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/functions.h +0 -0
  246. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/imports.h +0 -0
  247. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/keys.h +0 -0
  248. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/namespaces.h +0 -0
  249. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/numbersInternals.h +0 -0
  250. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/pattern.h +0 -0
  251. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/preproc.h +0 -0
  252. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/security.h +0 -0
  253. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/templates.h +0 -0
  254. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/transform.h +0 -0
  255. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/variables.h +0 -0
  256. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/xslt.h +0 -0
  257. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/xsltInternals.h +0 -0
  258. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/include/libxslt/xsltconfig.h +180 -0
  259. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/xsltexports.h +0 -0
  260. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/xsltlocale.h +0 -0
  261. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/include/libxslt/xsltutils.h +0 -0
  262. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/libxml2_backwards_compat.c +0 -0
  263. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/nokogiri.c +0 -0
  264. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/nokogiri.h +231 -0
  265. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/test_global_handlers.c +0 -0
  266. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_attr.c +103 -0
  267. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_attribute_decl.c +70 -0
  268. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_cdata.c +57 -0
  269. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_comment.c +0 -0
  270. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_document.c +680 -0
  271. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_document_fragment.c +0 -0
  272. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_dtd.c +208 -0
  273. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_element_content.c +0 -0
  274. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_element_decl.c +69 -0
  275. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_encoding_handler.c +0 -0
  276. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_entity_decl.c +112 -0
  277. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_entity_reference.c +0 -0
  278. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_namespace.c +0 -0
  279. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_node.c +2165 -0
  280. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_node_set.c +498 -0
  281. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_processing_instruction.c +0 -0
  282. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_reader.c +770 -0
  283. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_relax_ng.c +0 -0
  284. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_sax_parser.c +0 -0
  285. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_sax_parser_context.c +0 -0
  286. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_sax_push_parser.c +0 -0
  287. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_schema.c +284 -0
  288. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xml_syntax_error.c +0 -0
  289. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_text.c +48 -0
  290. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/ext/nokogiri/xml_xpath_context.c +406 -0
  291. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/ext/nokogiri/xslt_stylesheet.c +0 -0
  292. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/gumbo-parser/CHANGES.md +0 -0
  293. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/gumbo-parser/Makefile +0 -0
  294. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/gumbo-parser/THANKS +0 -0
  295. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/lib/nokogiri/2.6/nokogiri.so +0 -0
  296. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/lib/nokogiri/2.7/nokogiri.so +0 -0
  297. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/lib/nokogiri/3.0/nokogiri.so +0 -0
  298. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/lib/nokogiri/3.1/nokogiri.so +0 -0
  299. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/class_resolver.rb +0 -0
  300. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/node.rb +0 -0
  301. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/parser.rb +0 -0
  302. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/parser.y +0 -0
  303. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/parser_extras.rb +0 -0
  304. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/syntax_error.rb +0 -0
  305. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/tokenizer.rb +0 -0
  306. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/tokenizer.rex +0 -0
  307. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css/xpath_visitor.rb +0 -0
  308. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/css.rb +0 -0
  309. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/decorators/slop.rb +0 -0
  310. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/extension.rb +0 -0
  311. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/gumbo.rb +0 -0
  312. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html.rb +0 -0
  313. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/builder.rb +0 -0
  314. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/document.rb +0 -0
  315. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/document_fragment.rb +0 -0
  316. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/element_description.rb +0 -0
  317. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/element_description_defaults.rb +0 -0
  318. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/entity_lookup.rb +0 -0
  319. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/sax/parser.rb +0 -0
  320. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/sax/parser_context.rb +0 -0
  321. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4/sax/push_parser.rb +0 -0
  322. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html4.rb +0 -0
  323. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html5/document.rb +0 -0
  324. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html5/document_fragment.rb +0 -0
  325. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html5/node.rb +0 -0
  326. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/html5.rb +0 -0
  327. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/jruby/dependencies.rb +0 -0
  328. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/syntax_error.rb +0 -0
  329. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/lib/nokogiri/version/constant.rb +6 -0
  330. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/version/info.rb +0 -0
  331. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/version.rb +0 -0
  332. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/attr.rb +0 -0
  333. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/attribute_decl.rb +0 -0
  334. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/builder.rb +0 -0
  335. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/cdata.rb +0 -0
  336. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/character_data.rb +0 -0
  337. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/document.rb +0 -0
  338. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/document_fragment.rb +0 -0
  339. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/dtd.rb +0 -0
  340. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/element_content.rb +0 -0
  341. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/element_decl.rb +0 -0
  342. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/entity_decl.rb +0 -0
  343. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/entity_reference.rb +0 -0
  344. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/namespace.rb +0 -0
  345. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/node/save_options.rb +0 -0
  346. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/node.rb +0 -0
  347. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/node_set.rb +0 -0
  348. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/notation.rb +0 -0
  349. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/parse_options.rb +0 -0
  350. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/pp/character_data.rb +0 -0
  351. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/pp/node.rb +0 -0
  352. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/pp.rb +0 -0
  353. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/processing_instruction.rb +0 -0
  354. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.8-x86_64-linux/lib/nokogiri/xml/reader.rb +105 -0
  355. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/relax_ng.rb +0 -0
  356. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/sax/document.rb +0 -0
  357. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/sax/parser.rb +0 -0
  358. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/sax/parser_context.rb +0 -0
  359. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/sax/push_parser.rb +0 -0
  360. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/sax.rb +0 -0
  361. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/schema.rb +0 -0
  362. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/searchable.rb +0 -0
  363. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/syntax_error.rb +0 -0
  364. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/text.rb +0 -0
  365. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/xpath/syntax_error.rb +0 -0
  366. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/xpath.rb +0 -0
  367. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml/xpath_context.rb +0 -0
  368. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xml.rb +0 -0
  369. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xslt/stylesheet.rb +0 -0
  370. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri/xslt.rb +0 -0
  371. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/nokogiri.rb +0 -0
  372. data/vendor/bundle/ruby/3.1.0/gems/{nokogiri-1.13.6-x86_64-linux → nokogiri-1.13.8-x86_64-linux}/lib/xsd/xmlparser/nokogiri.rb +0 -0
  373. data/vendor/bundle/ruby/3.1.0/gems/{octokit-4.23.0 → octokit-5.3.0}/CONTRIBUTING.md +0 -0
  374. data/vendor/bundle/ruby/3.1.0/gems/{octokit-4.23.0 → octokit-5.3.0}/LICENSE.md +0 -0
  375. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/README.md +821 -0
  376. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/Rakefile +24 -0
  377. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/ext/sawyer/relation.rb +12 -0
  378. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/arguments.rb +14 -0
  379. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/authentication.rb +80 -0
  380. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/actions_secrets.rb +57 -0
  381. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/actions_workflow_jobs.rb +61 -0
  382. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/actions_workflow_runs.rb +121 -0
  383. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/actions_workflows.rb +66 -0
  384. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/apps.rb +222 -0
  385. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/authorizations.rb +185 -0
  386. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/checks.rb +200 -0
  387. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/commit_branches.rb +20 -0
  388. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/commit_comments.rb +95 -0
  389. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/commit_pulls.rb +20 -0
  390. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/commits.rb +236 -0
  391. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/community_profile.rb +21 -0
  392. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/contents.rb +167 -0
  393. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/deployments.rb +82 -0
  394. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/downloads.rb +49 -0
  395. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/emojis.rb +18 -0
  396. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/events.rb +151 -0
  397. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/feeds.rb +32 -0
  398. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/gists.rb +234 -0
  399. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/gitignore.rb +43 -0
  400. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/hooks.rb +297 -0
  401. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/issues.rb +367 -0
  402. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/labels.rb +156 -0
  403. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/legacy_search.rb +42 -0
  404. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/licenses.rb +42 -0
  405. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/markdown.rb +27 -0
  406. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/marketplace.rb +56 -0
  407. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/meta.rb +20 -0
  408. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/milestones.rb +87 -0
  409. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/notifications.rb +167 -0
  410. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/oauth_applications.rb +116 -0
  411. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/objects.rb +141 -0
  412. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/organizations.rb +807 -0
  413. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/pages.rb +61 -0
  414. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/projects.rb +294 -0
  415. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/pub_sub_hubbub.rb +111 -0
  416. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/pull_requests.rb +313 -0
  417. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/rate_limit.rb +52 -0
  418. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/reactions.rb +153 -0
  419. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/refs.rb +133 -0
  420. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/releases.rb +164 -0
  421. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/repositories.rb +779 -0
  422. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/repository_invitations.rb +96 -0
  423. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/reviews.rb +227 -0
  424. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/say.rb +18 -0
  425. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/search.rb +104 -0
  426. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/service_status.rb +48 -0
  427. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/source_import.rb +156 -0
  428. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/stats.rb +108 -0
  429. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/statuses.rb +47 -0
  430. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/traffic.rb +64 -0
  431. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client/users.rb +435 -0
  432. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/client.rb +268 -0
  433. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/configurable.rb +155 -0
  434. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/connection.rb +210 -0
  435. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/default.rb +187 -0
  436. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_admin_client/admin_stats.rb +119 -0
  437. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_admin_client/license.rb +17 -0
  438. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_admin_client/orgs.rb +26 -0
  439. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_admin_client/search_indexing.rb +82 -0
  440. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_admin_client/users.rb +129 -0
  441. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_admin_client.rb +46 -0
  442. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_management_console_client/management_console.rb +176 -0
  443. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/enterprise_management_console_client.rb +56 -0
  444. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/error.rb +363 -0
  445. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/gist.rb +35 -0
  446. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/middleware/follow_redirects.rb +135 -0
  447. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/organization.rb +19 -0
  448. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/rate_limit.rb +33 -0
  449. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/repo_arguments.rb +18 -0
  450. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/repository.rb +95 -0
  451. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/response/base_middleware.rb +10 -0
  452. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/response/feed_parser.rb +17 -0
  453. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/response/raise_error.rb +19 -0
  454. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/user.rb +21 -0
  455. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/version.rb +19 -0
  456. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit/warnable.rb +16 -0
  457. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/lib/octokit.rb +66 -0
  458. data/vendor/bundle/ruby/3.1.0/gems/octokit-5.3.0/octokit.gemspec +25 -0
  459. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/2.0-Upgrade.md +0 -0
  460. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/CHANGELOG.md +426 -0
  461. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/Gemfile +14 -0
  462. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/LICENSE.txt +0 -0
  463. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/README.md +217 -0
  464. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/Rakefile +52 -0
  465. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/SECURITY.md +0 -0
  466. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/bin/console +0 -0
  467. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/data/list.txt +14066 -0
  468. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/lib/public_suffix/domain.rb +0 -0
  469. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/lib/public_suffix/errors.rb +0 -0
  470. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/lib/public_suffix/list.rb +247 -0
  471. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/lib/public_suffix/rule.rb +350 -0
  472. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/lib/public_suffix/version.rb +15 -0
  473. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/lib/public_suffix.rb +177 -0
  474. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/public_suffix.gemspec +29 -0
  475. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/test/acceptance_test.rb +131 -0
  476. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/benchmarks/bm_find.rb +0 -0
  477. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/benchmarks/bm_find_all.rb +0 -0
  478. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/benchmarks/bm_names.rb +0 -0
  479. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/benchmarks/bm_select.rb +0 -0
  480. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/benchmarks/bm_select_incremental.rb +0 -0
  481. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/benchmarks/bm_valid.rb +0 -0
  482. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/profilers/domain_profiler.rb +0 -0
  483. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/profilers/find_profiler.rb +0 -0
  484. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/profilers/find_profiler_jp.rb +0 -0
  485. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/profilers/initialization_profiler.rb +0 -0
  486. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/profilers/list_profsize.rb +0 -0
  487. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/profilers/object_binsize.rb +0 -0
  488. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/test/psl_test.rb +52 -0
  489. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/test_helper.rb +0 -0
  490. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/tests.txt +0 -0
  491. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/test/unit/domain_test.rb +106 -0
  492. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/unit/errors_test.rb +0 -0
  493. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/test/unit/list_test.rb +241 -0
  494. data/vendor/bundle/ruby/3.1.0/gems/{public_suffix-4.0.7 → public_suffix-5.0.0}/test/unit/public_suffix_test.rb +0 -0
  495. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-5.0.0/test/unit/rule_test.rb +222 -0
  496. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.4/CHANGELOG.md +708 -0
  497. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/CONTRIBUTING.md +0 -0
  498. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/MIT-LICENSE +0 -0
  499. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/README.rdoc +0 -0
  500. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/Rakefile +0 -0
  501. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/SPEC.rdoc +0 -0
  502. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/bin/rackup +0 -0
  503. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/contrib/rack.png +0 -0
  504. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/contrib/rack.svg +0 -0
  505. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/contrib/rack_logo.svg +0 -0
  506. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/contrib/rdoc.css +0 -0
  507. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/example/lobster.ru +0 -0
  508. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/example/protectedlobster.rb +0 -0
  509. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/example/protectedlobster.ru +0 -0
  510. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/auth/abstract/handler.rb +0 -0
  511. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/auth/abstract/request.rb +0 -0
  512. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/auth/basic.rb +0 -0
  513. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/auth/digest/md5.rb +0 -0
  514. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/auth/digest/nonce.rb +0 -0
  515. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/auth/digest/params.rb +0 -0
  516. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/auth/digest/request.rb +0 -0
  517. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/body_proxy.rb +0 -0
  518. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/builder.rb +0 -0
  519. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/cascade.rb +0 -0
  520. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/chunked.rb +0 -0
  521. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/common_logger.rb +0 -0
  522. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/conditional_get.rb +0 -0
  523. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/config.rb +0 -0
  524. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/content_length.rb +0 -0
  525. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/content_type.rb +0 -0
  526. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/core_ext/regexp.rb +0 -0
  527. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/deflater.rb +0 -0
  528. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/directory.rb +0 -0
  529. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.4/lib/rack/etag.rb +77 -0
  530. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/events.rb +0 -0
  531. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/file.rb +0 -0
  532. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/files.rb +0 -0
  533. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/handler/cgi.rb +0 -0
  534. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/handler/fastcgi.rb +0 -0
  535. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/handler/lsws.rb +0 -0
  536. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/handler/scgi.rb +0 -0
  537. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/handler/thin.rb +0 -0
  538. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/handler/webrick.rb +0 -0
  539. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/handler.rb +0 -0
  540. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/head.rb +0 -0
  541. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.4/lib/rack/lint.rb +806 -0
  542. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/lobster.rb +0 -0
  543. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/lock.rb +0 -0
  544. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/logger.rb +0 -0
  545. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/media_type.rb +0 -0
  546. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/method_override.rb +0 -0
  547. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/mime.rb +0 -0
  548. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/mock.rb +0 -0
  549. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/multipart/generator.rb +0 -0
  550. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/multipart/parser.rb +0 -0
  551. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/multipart/uploaded_file.rb +0 -0
  552. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/multipart.rb +0 -0
  553. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/null_logger.rb +0 -0
  554. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.4/lib/rack/query_parser.rb +221 -0
  555. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/recursive.rb +0 -0
  556. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/reloader.rb +0 -0
  557. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/request.rb +0 -0
  558. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/response.rb +0 -0
  559. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/rewindable_input.rb +0 -0
  560. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/runtime.rb +0 -0
  561. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/sendfile.rb +0 -0
  562. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/server.rb +0 -0
  563. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/session/abstract/id.rb +0 -0
  564. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/session/cookie.rb +0 -0
  565. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/session/memcache.rb +0 -0
  566. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/session/pool.rb +0 -0
  567. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/show_exceptions.rb +0 -0
  568. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/show_status.rb +0 -0
  569. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/static.rb +0 -0
  570. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/tempfile_reaper.rb +0 -0
  571. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack/urlmap.rb +0 -0
  572. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.4/lib/rack/utils.rb +616 -0
  573. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.4/lib/rack/version.rb +29 -0
  574. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/lib/rack.rb +0 -0
  575. data/vendor/bundle/ruby/3.1.0/gems/{rack-2.2.3.1 → rack-2.2.4}/rack.gemspec +0 -0
  576. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/History.md +349 -0
  577. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/MIT-LICENSE.txt +20 -0
  578. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/README.md +139 -0
  579. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/mock_session.rb +2 -0
  580. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/test/cookie_jar.rb +246 -0
  581. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/test/methods.rb +95 -0
  582. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/test/mock_digest_request.rb +35 -0
  583. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/test/uploaded_file.rb +109 -0
  584. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/test/utils.rb +156 -0
  585. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/test/version.rb +5 -0
  586. data/vendor/bundle/ruby/3.1.0/gems/rack-test-2.0.2/lib/rack/test.rb +414 -0
  587. data/vendor/bundle/ruby/3.1.0/gems/redcarpet-3.5.1/ext/redcarpet/Makefile +2 -2
  588. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/Gemfile +0 -0
  589. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/LICENSE.md +0 -0
  590. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/README.md +0 -0
  591. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/Rakefile +0 -0
  592. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/lib/sawyer/agent.rb +0 -0
  593. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/lib/sawyer/link_parsers/hal.rb +0 -0
  594. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/lib/sawyer/link_parsers/simple.rb +0 -0
  595. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/lib/sawyer/relation.rb +0 -0
  596. data/vendor/bundle/ruby/3.1.0/gems/sawyer-0.9.2/lib/sawyer/resource.rb +160 -0
  597. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/lib/sawyer/response.rb +0 -0
  598. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/lib/sawyer/serializer.rb +0 -0
  599. data/vendor/bundle/ruby/3.1.0/gems/sawyer-0.9.2/lib/sawyer.rb +17 -0
  600. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/sawyer.gemspec +0 -0
  601. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/script/bootstrap +0 -0
  602. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/script/console +0 -0
  603. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/script/package +0 -0
  604. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/script/release +0 -0
  605. data/vendor/bundle/ruby/3.1.0/gems/{sawyer-0.9.1 → sawyer-0.9.2}/script/test +0 -0
  606. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/CHANGES +2089 -0
  607. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/Gemfile +0 -0
  608. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/LICENSE +0 -0
  609. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/NOTICE +0 -0
  610. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/README.md +0 -0
  611. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/server.rb +283 -0
  612. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/atoms/findElements.js +0 -0
  613. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/atoms/getAttribute.js +0 -0
  614. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/atoms/isDisplayed.js +0 -0
  615. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/atoms/mutationListener.js +0 -0
  616. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/atoms.rb +0 -0
  617. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/bidi/session.rb +0 -0
  618. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/bidi.rb +0 -0
  619. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/chrome/driver.rb +0 -0
  620. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/chrome/features.rb +0 -0
  621. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/chrome/options.rb +275 -0
  622. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/chrome/profile.rb +0 -0
  623. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/chrome/service.rb +0 -0
  624. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/chrome.rb +41 -0
  625. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/action_builder.rb +0 -0
  626. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/alert.rb +0 -0
  627. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/driver.rb +364 -0
  628. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/downloads_files.rb +0 -0
  629. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/full_page_screenshot.rb +0 -0
  630. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_addons.rb +0 -0
  631. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_apple_permissions.rb +0 -0
  632. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_authentication.rb +0 -0
  633. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_bidi.rb +0 -0
  634. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_casting.rb +0 -0
  635. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_cdp.rb +0 -0
  636. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_context.rb +0 -0
  637. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_debugger.rb +0 -0
  638. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_devtools.rb +0 -0
  639. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_launching.rb +0 -0
  640. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_location.rb +0 -0
  641. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_log_events.rb +0 -0
  642. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_logs.rb +0 -0
  643. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb +0 -0
  644. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb +0 -0
  645. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/driver_extensions/has_network_interception.rb +71 -0
  646. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_permissions.rb +0 -0
  647. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_pinned_scripts.rb +0 -0
  648. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_session_id.rb +0 -0
  649. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/has_web_storage.rb +0 -0
  650. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/prints_page.rb +0 -0
  651. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb +0 -0
  652. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/element.rb +0 -0
  653. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/error.rb +0 -0
  654. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/file_reaper.rb +0 -0
  655. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/html5/local_storage.rb +0 -0
  656. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/html5/session_storage.rb +0 -0
  657. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/html5/shared_web_storage.rb +0 -0
  658. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/input_device.rb +0 -0
  659. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/interaction.rb +0 -0
  660. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/interactions.rb +0 -0
  661. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/key_actions.rb +0 -0
  662. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/key_input.rb +0 -0
  663. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/none_input.rb +0 -0
  664. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/pause.rb +0 -0
  665. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/interactions/pointer_actions.rb +352 -0
  666. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/pointer_cancel.rb +0 -0
  667. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/pointer_event_properties.rb +0 -0
  668. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/pointer_input.rb +0 -0
  669. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/pointer_move.rb +0 -0
  670. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/pointer_press.rb +0 -0
  671. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/scroll.rb +0 -0
  672. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/scroll_origin.rb +0 -0
  673. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/typing_interaction.rb +0 -0
  674. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/interactions/wheel_actions.rb +113 -0
  675. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/interactions/wheel_input.rb +0 -0
  676. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/keys.rb +0 -0
  677. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/log_entry.rb +0 -0
  678. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/logger.rb +0 -0
  679. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/logs.rb +0 -0
  680. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/manager.rb +150 -0
  681. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/navigation.rb +0 -0
  682. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/options.rb +177 -0
  683. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/platform.rb +0 -0
  684. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/port_prober.rb +0 -0
  685. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/profile_helper.rb +0 -0
  686. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/proxy.rb +0 -0
  687. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/search_context.rb +0 -0
  688. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/service.rb +0 -0
  689. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/service_manager.rb +0 -0
  690. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/shadow_root.rb +0 -0
  691. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/socket_lock.rb +0 -0
  692. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/socket_poller.rb +0 -0
  693. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/takes_screenshot.rb +66 -0
  694. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/target_locator.rb +0 -0
  695. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/timeouts.rb +0 -0
  696. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/virtual_authenticator/credential.rb +83 -0
  697. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/virtual_authenticator/virtual_authenticator.rb +73 -0
  698. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/virtual_authenticator/virtual_authenticator_options.rb +62 -0
  699. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/common/wait.rb +0 -0
  700. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/websocket_connection.rb +156 -0
  701. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/window.rb +159 -0
  702. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common/zipper.rb +91 -0
  703. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/common.rb +97 -0
  704. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/devtools/console_event.rb +0 -0
  705. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/devtools/exception_event.rb +0 -0
  706. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/devtools/mutation_event.rb +0 -0
  707. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/devtools/network_interceptor.rb +176 -0
  708. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/devtools/pinned_script.rb +0 -0
  709. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/devtools/request.rb +0 -0
  710. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/devtools/response.rb +0 -0
  711. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/devtools.rb +87 -0
  712. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/edge/driver.rb +0 -0
  713. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/edge/features.rb +0 -0
  714. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/edge/options.rb +0 -0
  715. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/edge/profile.rb +0 -0
  716. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/edge/service.rb +0 -0
  717. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/edge.rb +0 -0
  718. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/driver.rb +0 -0
  719. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/extension.rb +0 -0
  720. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/features.rb +0 -0
  721. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/options.rb +0 -0
  722. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/profile.rb +0 -0
  723. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/profiles_ini.rb +0 -0
  724. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/service.rb +0 -0
  725. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/firefox/util.rb +0 -0
  726. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/firefox.rb +55 -0
  727. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/ie/driver.rb +0 -0
  728. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/ie/options.rb +0 -0
  729. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/ie/service.rb +0 -0
  730. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/ie.rb +28 -0
  731. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/remote/bridge.rb +705 -0
  732. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/remote/capabilities.rb +0 -0
  733. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/remote/commands.rb +172 -0
  734. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/remote/driver.rb +60 -0
  735. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/remote/http/common.rb +0 -0
  736. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/remote/http/curb.rb +0 -0
  737. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/remote/http/default.rb +0 -0
  738. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/remote/response.rb +0 -0
  739. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/remote/server_error.rb +0 -0
  740. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/remote.rb +0 -0
  741. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/safari/driver.rb +0 -0
  742. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/safari/features.rb +0 -0
  743. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/safari/options.rb +0 -0
  744. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/safari/service.rb +0 -0
  745. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/safari.rb +59 -0
  746. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/abstract_event_listener.rb +0 -0
  747. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/block_event_listener.rb +0 -0
  748. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/cdp/domain.rb.erb +0 -0
  749. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/cdp_client_generator.rb +0 -0
  750. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/color.rb +0 -0
  751. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/escaper.rb +0 -0
  752. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/event_firing_bridge.rb +0 -0
  753. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/guards/guard.rb +0 -0
  754. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/guards/guard_condition.rb +0 -0
  755. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/guards.rb +0 -0
  756. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/relative_locator.rb +0 -0
  757. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support/select.rb +0 -0
  758. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver/support.rb +0 -0
  759. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/lib/selenium/webdriver/version.rb +24 -0
  760. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium/webdriver.rb +0 -0
  761. data/vendor/bundle/ruby/3.1.0/gems/{selenium-webdriver-4.2.0 → selenium-webdriver-4.4.0}/lib/selenium-webdriver.rb +0 -0
  762. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.4.0/selenium-webdriver.gemspec +66 -0
  763. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/CHANGELOG +1069 -0
  764. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/MIT-LICENSE +0 -0
  765. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/README.rdoc +933 -0
  766. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/bin/sequel +0 -0
  767. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/advanced_associations.rdoc +0 -0
  768. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/association_basics.rdoc +0 -0
  769. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/bin_sequel.rdoc +0 -0
  770. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/doc/cheat_sheet.rdoc +255 -0
  771. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/code_order.rdoc +0 -0
  772. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/core_extensions.rdoc +0 -0
  773. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/dataset_basics.rdoc +0 -0
  774. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/dataset_filtering.rdoc +0 -0
  775. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/extensions.rdoc +0 -0
  776. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/fork_safety.rdoc +0 -0
  777. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/mass_assignment.rdoc +0 -0
  778. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/migration.rdoc +0 -0
  779. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/model_dataset_method_design.rdoc +0 -0
  780. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/model_hooks.rdoc +0 -0
  781. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/model_plugins.rdoc +0 -0
  782. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/mssql_stored_procedures.rdoc +0 -0
  783. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/object_model.rdoc +0 -0
  784. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/doc/opening_databases.rdoc +425 -0
  785. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/postgresql.rdoc +0 -0
  786. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/prepared_statements.rdoc +0 -0
  787. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/querying.rdoc +0 -0
  788. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/reflection.rdoc +0 -0
  789. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.0.0.txt +0 -0
  790. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.1.0.txt +0 -0
  791. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.10.0.txt +0 -0
  792. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.11.0.txt +0 -0
  793. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.12.0.txt +0 -0
  794. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.13.0.txt +0 -0
  795. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.14.0.txt +0 -0
  796. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.15.0.txt +0 -0
  797. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.16.0.txt +0 -0
  798. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.17.0.txt +0 -0
  799. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.18.0.txt +0 -0
  800. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.19.0.txt +0 -0
  801. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.2.0.txt +0 -0
  802. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.20.0.txt +0 -0
  803. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.21.0.txt +0 -0
  804. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.22.0.txt +0 -0
  805. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.23.0.txt +0 -0
  806. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.24.0.txt +0 -0
  807. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.25.0.txt +0 -0
  808. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.26.0.txt +0 -0
  809. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.27.0.txt +0 -0
  810. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.28.0.txt +0 -0
  811. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.29.0.txt +0 -0
  812. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.3.0.txt +0 -0
  813. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.30.0.txt +0 -0
  814. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.31.0.txt +0 -0
  815. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.32.0.txt +0 -0
  816. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.33.0.txt +0 -0
  817. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.34.0.txt +0 -0
  818. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.35.0.txt +0 -0
  819. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.36.0.txt +0 -0
  820. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.37.0.txt +0 -0
  821. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.38.0.txt +0 -0
  822. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.39.0.txt +0 -0
  823. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.4.0.txt +0 -0
  824. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.40.0.txt +0 -0
  825. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.41.0.txt +0 -0
  826. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.42.0.txt +0 -0
  827. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.43.0.txt +0 -0
  828. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.44.0.txt +0 -0
  829. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.45.0.txt +0 -0
  830. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.46.0.txt +0 -0
  831. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.47.0.txt +0 -0
  832. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.48.0.txt +0 -0
  833. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.49.0.txt +0 -0
  834. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.5.0.txt +0 -0
  835. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.50.0.txt +0 -0
  836. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.51.0.txt +0 -0
  837. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.52.0.txt +0 -0
  838. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.53.0.txt +0 -0
  839. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.54.0.txt +0 -0
  840. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.55.0.txt +0 -0
  841. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.56.0.txt +0 -0
  842. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/doc/release_notes/5.57.0.txt +23 -0
  843. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/doc/release_notes/5.58.0.txt +31 -0
  844. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/doc/release_notes/5.59.0.txt +73 -0
  845. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.6.0.txt +0 -0
  846. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.7.0.txt +0 -0
  847. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.8.0.txt +0 -0
  848. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/release_notes/5.9.0.txt +0 -0
  849. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/schema_modification.rdoc +0 -0
  850. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/security.rdoc +0 -0
  851. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/sharding.rdoc +0 -0
  852. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/sql.rdoc +0 -0
  853. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/doc/testing.rdoc +186 -0
  854. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/thread_safety.rdoc +0 -0
  855. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/transactions.rdoc +0 -0
  856. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/validations.rdoc +0 -0
  857. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/doc/virtual_rows.rdoc +0 -0
  858. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/ado/access.rb +0 -0
  859. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/ado/mssql.rb +0 -0
  860. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/ado.rb +0 -0
  861. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/amalgalite.rb +0 -0
  862. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/ibmdb.rb +0 -0
  863. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/db2.rb +0 -0
  864. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/jdbc/derby.rb +318 -0
  865. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/jdbc/h2.rb +287 -0
  866. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/jdbc/hsqldb.rb +226 -0
  867. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/jtds.rb +0 -0
  868. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/mssql.rb +0 -0
  869. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/mysql.rb +0 -0
  870. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/oracle.rb +0 -0
  871. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/postgresql.rb +0 -0
  872. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/sqlanywhere.rb +0 -0
  873. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/sqlite.rb +0 -0
  874. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/sqlserver.rb +0 -0
  875. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc/transactions.rb +0 -0
  876. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/jdbc.rb +0 -0
  877. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/mock.rb +0 -0
  878. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/mysql.rb +0 -0
  879. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/mysql2.rb +0 -0
  880. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/odbc/db2.rb +0 -0
  881. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/odbc/mssql.rb +0 -0
  882. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/odbc/oracle.rb +0 -0
  883. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/odbc.rb +0 -0
  884. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/oracle.rb +0 -0
  885. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/postgres.rb +822 -0
  886. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/postgresql.rb +0 -0
  887. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/shared/access.rb +0 -0
  888. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/shared/db2.rb +492 -0
  889. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/shared/mssql.rb +1163 -0
  890. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/shared/mysql.rb +1092 -0
  891. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/shared/oracle.rb +721 -0
  892. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/adapters/shared/postgres.rb +2298 -0
  893. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/shared/sqlanywhere.rb +0 -0
  894. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/shared/sqlite.rb +0 -0
  895. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/sqlanywhere.rb +0 -0
  896. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/sqlite.rb +0 -0
  897. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/tinytds.rb +0 -0
  898. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/columns_limit_1.rb +0 -0
  899. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/emulate_offset_with_reverse_and_count.rb +0 -0
  900. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/emulate_offset_with_row_number.rb +0 -0
  901. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/mysql_mysql2.rb +0 -0
  902. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/mysql_prepared_statements.rb +0 -0
  903. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/replace.rb +0 -0
  904. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/split_alter_table.rb +0 -0
  905. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/stored_procedures.rb +0 -0
  906. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/adapters/utils/unmodified_identifiers.rb +0 -0
  907. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/ast_transformer.rb +0 -0
  908. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/connection_pool/sharded_single.rb +0 -0
  909. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/connection_pool/sharded_threaded.rb +0 -0
  910. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/connection_pool/single.rb +0 -0
  911. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/connection_pool/threaded.rb +0 -0
  912. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/connection_pool.rb +0 -0
  913. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/core.rb +0 -0
  914. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/connecting.rb +0 -0
  915. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/dataset.rb +0 -0
  916. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/dataset_defaults.rb +0 -0
  917. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/features.rb +0 -0
  918. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/logging.rb +0 -0
  919. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/misc.rb +0 -0
  920. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/query.rb +0 -0
  921. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/database/schema_generator.rb +650 -0
  922. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/database/schema_methods.rb +1081 -0
  923. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database/transactions.rb +0 -0
  924. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/database.rb +0 -0
  925. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/dataset/actions.rb +1293 -0
  926. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/dataset/dataset_module.rb +0 -0
  927. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/dataset/features.rb +270 -0
  928. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/dataset/graph.rb +0 -0
  929. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/dataset/misc.rb +0 -0
  930. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/dataset/placeholder_literalizer.rb +0 -0
  931. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/dataset/prepared_statements.rb +0 -0
  932. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/dataset/query.rb +1485 -0
  933. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/dataset/sql.rb +1811 -0
  934. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/dataset.rb +0 -0
  935. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/deprecated.rb +0 -0
  936. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/exceptions.rb +0 -0
  937. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/_model_constraint_validations.rb +0 -0
  938. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/_model_pg_row.rb +0 -0
  939. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/_pretty_table.rb +0 -0
  940. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/any_not_empty.rb +0 -0
  941. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/arbitrary_servers.rb +0 -0
  942. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/async_thread_pool.rb +0 -0
  943. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/auto_literal_strings.rb +0 -0
  944. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/blank.rb +0 -0
  945. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/caller_logging.rb +0 -0
  946. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/columns_introspection.rb +0 -0
  947. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/connection_expiration.rb +0 -0
  948. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/connection_validator.rb +0 -0
  949. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/constant_sql_override.rb +0 -0
  950. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/constraint_validations.rb +0 -0
  951. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/core_extensions.rb +0 -0
  952. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/core_refinements.rb +0 -0
  953. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/current_datetime_timestamp.rb +0 -0
  954. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/dataset_source_alias.rb +0 -0
  955. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/date_arithmetic.rb +0 -0
  956. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/date_parse_input_handler.rb +0 -0
  957. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/datetime_parse_to_time.rb +0 -0
  958. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/duplicate_columns_handler.rb +0 -0
  959. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/empty_array_consider_nulls.rb +0 -0
  960. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/error_sql.rb +0 -0
  961. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/escaped_like.rb +0 -0
  962. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/eval_inspect.rb +0 -0
  963. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/exclude_or_null.rb +0 -0
  964. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/fiber_concurrency.rb +0 -0
  965. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/freeze_datasets.rb +0 -0
  966. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/from_block.rb +0 -0
  967. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/graph_each.rb +0 -0
  968. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/identifier_mangling.rb +0 -0
  969. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/implicit_subquery.rb +0 -0
  970. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/index_caching.rb +0 -0
  971. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/inflector.rb +0 -0
  972. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/integer64.rb +0 -0
  973. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/extensions/is_distinct_from.rb +139 -0
  974. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/looser_typecasting.rb +0 -0
  975. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/migration.rb +0 -0
  976. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb +0 -0
  977. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/named_timezones.rb +0 -0
  978. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/no_auto_literal_strings.rb +0 -0
  979. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/null_dataset.rb +0 -0
  980. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pagination.rb +0 -0
  981. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_array.rb +0 -0
  982. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_array_ops.rb +0 -0
  983. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_enum.rb +0 -0
  984. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_extended_date_support.rb +0 -0
  985. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/extensions/pg_hstore.rb +348 -0
  986. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_hstore_ops.rb +0 -0
  987. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_inet.rb +0 -0
  988. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_inet_ops.rb +0 -0
  989. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_interval.rb +0 -0
  990. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_json.rb +0 -0
  991. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/extensions/pg_json_ops.rb +804 -0
  992. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_loose_count.rb +0 -0
  993. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_multirange.rb +0 -0
  994. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_range.rb +0 -0
  995. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_range_ops.rb +0 -0
  996. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_row.rb +0 -0
  997. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_row_ops.rb +0 -0
  998. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_static_cache_updater.rb +0 -0
  999. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pg_timestamptz.rb +0 -0
  1000. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/pretty_table.rb +0 -0
  1001. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/query.rb +0 -0
  1002. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/round_timestamps.rb +0 -0
  1003. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/run_transaction_hooks.rb +0 -0
  1004. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/s.rb +0 -0
  1005. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/schema_caching.rb +0 -0
  1006. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/schema_dumper.rb +0 -0
  1007. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/select_remove.rb +0 -0
  1008. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/sequel_4_dataset_methods.rb +0 -0
  1009. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/server_block.rb +0 -0
  1010. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/server_logging.rb +0 -0
  1011. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/split_array_nil.rb +0 -0
  1012. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/sql_comments.rb +0 -0
  1013. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/sql_expr.rb +0 -0
  1014. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/sql_log_normalizer.rb +0 -0
  1015. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/sqlite_json_ops.rb +0 -0
  1016. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/string_agg.rb +0 -0
  1017. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/string_date_time.rb +0 -0
  1018. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/symbol_aref.rb +0 -0
  1019. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/symbol_aref_refinement.rb +0 -0
  1020. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/symbol_as.rb +0 -0
  1021. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/symbol_as_refinement.rb +0 -0
  1022. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/synchronize_sql.rb +0 -0
  1023. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/thread_local_timezones.rb +0 -0
  1024. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/to_dot.rb +0 -0
  1025. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/extensions/virtual_row_method_block.rb +0 -0
  1026. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/model/associations.rb +4014 -0
  1027. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/model/base.rb +2270 -0
  1028. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/model/dataset_module.rb +0 -0
  1029. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/model/default_inflections.rb +0 -0
  1030. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/model/errors.rb +0 -0
  1031. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/model/exceptions.rb +0 -0
  1032. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/model/inflections.rb +0 -0
  1033. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/model/plugins.rb +0 -0
  1034. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/model.rb +0 -0
  1035. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/accessed_columns.rb +0 -0
  1036. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/active_model.rb +0 -0
  1037. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/after_initialize.rb +0 -0
  1038. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/association_dependencies.rb +0 -0
  1039. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/association_lazy_eager_option.rb +0 -0
  1040. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/association_multi_add_remove.rb +0 -0
  1041. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/association_pks.rb +0 -0
  1042. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/association_proxies.rb +0 -0
  1043. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/async_thread_pool.rb +0 -0
  1044. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/auto_restrict_eager_graph.rb +0 -0
  1045. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/auto_validations.rb +0 -0
  1046. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/auto_validations_constraint_validations_presence_message.rb +0 -0
  1047. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/before_after_save.rb +0 -0
  1048. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/blacklist_security.rb +0 -0
  1049. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/boolean_readers.rb +0 -0
  1050. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/boolean_subsets.rb +0 -0
  1051. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/caching.rb +0 -0
  1052. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/class_table_inheritance.rb +0 -0
  1053. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/column_conflicts.rb +0 -0
  1054. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/column_encryption.rb +0 -0
  1055. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/column_select.rb +0 -0
  1056. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/columns_updated.rb +0 -0
  1057. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/composition.rb +0 -0
  1058. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/concurrent_eager_loading.rb +0 -0
  1059. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/constraint_validations.rb +0 -0
  1060. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/csv_serializer.rb +0 -0
  1061. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/dataset_associations.rb +0 -0
  1062. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/def_dataset_method.rb +0 -0
  1063. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/defaults_setter.rb +0 -0
  1064. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/delay_add_association.rb +0 -0
  1065. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/dirty.rb +0 -0
  1066. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/eager_each.rb +0 -0
  1067. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/eager_graph_eager.rb +0 -0
  1068. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/empty_failure_backtraces.rb +0 -0
  1069. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/enum.rb +0 -0
  1070. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/error_splitter.rb +0 -0
  1071. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/finder.rb +0 -0
  1072. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/forbid_lazy_load.rb +0 -0
  1073. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/force_encoding.rb +0 -0
  1074. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/hook_class_methods.rb +0 -0
  1075. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/input_transformer.rb +0 -0
  1076. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/plugins/insert_conflict.rb +76 -0
  1077. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/insert_returning_select.rb +0 -0
  1078. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/instance_filters.rb +0 -0
  1079. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/instance_hooks.rb +0 -0
  1080. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/instance_specific_default.rb +0 -0
  1081. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/inverted_subsets.rb +0 -0
  1082. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/json_serializer.rb +0 -0
  1083. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/lazy_attributes.rb +0 -0
  1084. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/plugins/list.rb +205 -0
  1085. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/many_through_many.rb +0 -0
  1086. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/modification_detection.rb +0 -0
  1087. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/mssql_optimistic_locking.rb +0 -0
  1088. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/nested_attributes.rb +0 -0
  1089. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/optimistic_locking.rb +0 -0
  1090. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/pg_array_associations.rb +0 -0
  1091. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/pg_auto_constraint_validations.rb +0 -0
  1092. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/pg_row.rb +0 -0
  1093. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/prepared_statements.rb +0 -0
  1094. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/prepared_statements_safe.rb +0 -0
  1095. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/rcte_tree.rb +0 -0
  1096. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/plugins/require_valid_schema.rb +67 -0
  1097. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/serialization.rb +0 -0
  1098. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/serialization_modification_detection.rb +0 -0
  1099. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/sharding.rb +0 -0
  1100. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/single_table_inheritance.rb +0 -0
  1101. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/singular_table_names.rb +0 -0
  1102. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/skip_create_refresh.rb +0 -0
  1103. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/skip_saving_columns.rb +0 -0
  1104. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/split_values.rb +0 -0
  1105. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/sql_comments.rb +0 -0
  1106. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/static_cache.rb +0 -0
  1107. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/static_cache_cache.rb +0 -0
  1108. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/string_stripper.rb +0 -0
  1109. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/subclasses.rb +0 -0
  1110. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/subset_conditions.rb +0 -0
  1111. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/table_select.rb +0 -0
  1112. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/plugins/tactical_eager_loading.rb +212 -0
  1113. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/throw_failures.rb +0 -0
  1114. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/timestamps.rb +0 -0
  1115. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/touch.rb +0 -0
  1116. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/tree.rb +0 -0
  1117. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/typecast_on_load.rb +0 -0
  1118. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/unlimited_update.rb +0 -0
  1119. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/unused_associations.rb +0 -0
  1120. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/update_or_create.rb +0 -0
  1121. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/update_primary_key.rb +0 -0
  1122. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/update_refresh.rb +0 -0
  1123. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/uuid.rb +0 -0
  1124. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/validate_associated.rb +0 -0
  1125. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/validation_class_methods.rb +0 -0
  1126. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/validation_contexts.rb +0 -0
  1127. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/validation_helpers.rb +0 -0
  1128. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/whitelist_security.rb +0 -0
  1129. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/plugins/xml_serializer.rb +0 -0
  1130. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/sql.rb +0 -0
  1131. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel/timezones.rb +0 -0
  1132. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.59.0/lib/sequel/version.rb +25 -0
  1133. data/vendor/bundle/ruby/3.1.0/gems/{sequel-5.56.0 → sequel-5.59.0}/lib/sequel.rb +0 -0
  1134. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/API_CHANGES.rdoc +0 -0
  1135. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/CHANGELOG.rdoc +333 -0
  1136. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ChangeLog.cvs +0 -0
  1137. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/Gemfile +20 -0
  1138. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/LICENSE +0 -0
  1139. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/Manifest.txt +59 -0
  1140. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/README.rdoc +118 -0
  1141. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/Rakefile +0 -0
  1142. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/appveyor.yml +0 -0
  1143. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/Makefile +267 -0
  1144. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/aggregator.c +273 -0
  1145. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/aggregator.h +0 -0
  1146. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/aggregator.o +0 -0
  1147. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/backup.c +0 -0
  1148. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/backup.h +0 -0
  1149. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/backup.o +0 -0
  1150. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/database.c +854 -0
  1151. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/database.h +0 -0
  1152. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/database.o +0 -0
  1153. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/exception.c +0 -0
  1154. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/exception.h +0 -0
  1155. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/exception.o +0 -0
  1156. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/extconf.rb +0 -0
  1157. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/sqlite3.c +0 -0
  1158. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/sqlite3.o +0 -0
  1159. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/sqlite3_native.so +0 -0
  1160. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/sqlite3_ruby.h +0 -0
  1161. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/statement.c +442 -0
  1162. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/ext/sqlite3/statement.h +0 -0
  1163. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/ext/sqlite3/statement.o +0 -0
  1164. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/faq/faq.rb +0 -0
  1165. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/faq/faq.yml +426 -0
  1166. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/lib/sqlite3/constants.rb +50 -0
  1167. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/lib/sqlite3/database.rb +741 -0
  1168. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/lib/sqlite3/errors.rb +0 -0
  1169. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/lib/sqlite3/pragmas.rb +595 -0
  1170. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/lib/sqlite3/resultset.rb +0 -0
  1171. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/lib/sqlite3/sqlite3_native.so +0 -0
  1172. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/lib/sqlite3/statement.rb +145 -0
  1173. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/lib/sqlite3/translator.rb +118 -0
  1174. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/lib/sqlite3/value.rb +0 -0
  1175. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/lib/sqlite3/version.rb +25 -0
  1176. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/lib/sqlite3.rb +0 -0
  1177. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/rakelib/faq.rake +0 -0
  1178. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/rakelib/gem.rake +40 -0
  1179. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/rakelib/native.rake +59 -0
  1180. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/rakelib/vendor_sqlite3.rake +108 -0
  1181. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/setup.rb +0 -0
  1182. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/test/helper.rb +25 -0
  1183. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_backup.rb +0 -0
  1184. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_collation.rb +0 -0
  1185. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/test/test_database.rb +531 -0
  1186. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_database_flags.rb +0 -0
  1187. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_database_readonly.rb +0 -0
  1188. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_database_readwrite.rb +0 -0
  1189. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_deprecated.rb +0 -0
  1190. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_encoding.rb +0 -0
  1191. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_integration.rb +0 -0
  1192. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_integration_aggregate.rb +0 -0
  1193. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_integration_open_close.rb +0 -0
  1194. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_integration_pending.rb +0 -0
  1195. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_integration_resultset.rb +0 -0
  1196. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_integration_statement.rb +0 -0
  1197. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_result_set.rb +0 -0
  1198. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_sqlite3.rb +0 -0
  1199. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.4/test/test_statement.rb +263 -0
  1200. data/vendor/bundle/ruby/3.1.0/gems/{sqlite3-1.4.2 → sqlite3-1.4.4}/test/test_statement_execute.rb +0 -0
  1201. data/vendor/bundle/ruby/3.1.0/specifications/addressable-2.8.1.gemspec +37 -0
  1202. data/vendor/bundle/ruby/3.1.0/specifications/debug-1.6.2.gemspec +39 -0
  1203. data/vendor/bundle/ruby/3.1.0/specifications/faraday-2.5.2.gemspec +0 -0
  1204. data/vendor/bundle/ruby/3.1.0/specifications/faraday-net_http-3.0.0.gemspec +32 -0
  1205. data/vendor/bundle/ruby/3.1.0/specifications/nokogiri-1.13.8-x86_64-linux.gemspec +69 -0
  1206. data/vendor/bundle/ruby/3.1.0/specifications/octokit-5.3.0.gemspec +36 -0
  1207. data/vendor/bundle/ruby/3.1.0/specifications/public_suffix-5.0.0.gemspec +24 -0
  1208. data/vendor/bundle/ruby/3.1.0/specifications/rack-2.2.4.gemspec +41 -0
  1209. data/vendor/bundle/ruby/3.1.0/specifications/rack-test-2.0.2.gemspec +38 -0
  1210. data/vendor/bundle/ruby/3.1.0/specifications/sawyer-0.9.2.gemspec +31 -0
  1211. data/vendor/bundle/ruby/3.1.0/specifications/selenium-webdriver-4.4.0.gemspec +62 -0
  1212. data/vendor/bundle/ruby/3.1.0/specifications/sequel-5.59.0.gemspec +46 -0
  1213. data/vendor/bundle/ruby/3.1.0/specifications/sqlite3-1.4.4.gemspec +51 -0
  1214. metadata +1202 -1198
  1215. data/vendor/bundle/ruby/3.1.0/cache/addressable-2.8.0.gem +0 -0
  1216. data/vendor/bundle/ruby/3.1.0/cache/debug-1.5.0.gem +0 -0
  1217. data/vendor/bundle/ruby/3.1.0/cache/faraday-2.3.0.gem +0 -0
  1218. data/vendor/bundle/ruby/3.1.0/cache/faraday-net_http-2.0.3.gem +0 -0
  1219. data/vendor/bundle/ruby/3.1.0/cache/nokogiri-1.13.6-x86_64-linux.gem +0 -0
  1220. data/vendor/bundle/ruby/3.1.0/cache/octokit-4.23.0.gem +0 -0
  1221. data/vendor/bundle/ruby/3.1.0/cache/public_suffix-4.0.7.gem +0 -0
  1222. data/vendor/bundle/ruby/3.1.0/cache/rack-2.2.3.1.gem +0 -0
  1223. data/vendor/bundle/ruby/3.1.0/cache/rack-test-1.1.0.gem +0 -0
  1224. data/vendor/bundle/ruby/3.1.0/cache/sawyer-0.9.1.gem +0 -0
  1225. data/vendor/bundle/ruby/3.1.0/cache/selenium-webdriver-4.2.0.gem +0 -0
  1226. data/vendor/bundle/ruby/3.1.0/cache/sequel-5.56.0.gem +0 -0
  1227. data/vendor/bundle/ruby/3.1.0/cache/sqlite3-1.4.2.gem +0 -0
  1228. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/debug-1.5.0/debug/debug.so +0 -0
  1229. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/debug-1.5.0/gem_make.out +0 -19
  1230. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/debug-1.5.0/mkmf.log +0 -86
  1231. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/sqlite3-1.4.2/gem_make.out +0 -84
  1232. data/vendor/bundle/ruby/3.1.0/extensions/x86_64-linux/3.1.0/sqlite3-1.4.2/sqlite3/sqlite3_native.so +0 -0
  1233. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/CHANGELOG.md +0 -246
  1234. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/Gemfile +0 -28
  1235. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/addressable.gemspec +0 -37
  1236. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/lib/addressable/idna/native.rb +0 -61
  1237. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/lib/addressable/idna/pure.rb +0 -678
  1238. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/lib/addressable/idna.rb +0 -27
  1239. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/lib/addressable/template.rb +0 -1031
  1240. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/lib/addressable/uri.rb +0 -2556
  1241. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/lib/addressable/version.rb +0 -32
  1242. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/spec/addressable/idna_spec.rb +0 -302
  1243. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/spec/addressable/net_http_compat_spec.rb +0 -30
  1244. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/spec/addressable/security_spec.rb +0 -59
  1245. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/spec/addressable/template_spec.rb +0 -1460
  1246. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/spec/addressable/uri_spec.rb +0 -6665
  1247. data/vendor/bundle/ruby/3.1.0/gems/addressable-2.8.0/tasks/gem.rake +0 -92
  1248. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/CONTRIBUTING.md +0 -493
  1249. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/README.md +0 -890
  1250. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/Rakefile +0 -34
  1251. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/debug.gemspec +0 -32
  1252. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/exe/rdbg +0 -34
  1253. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/ext/debug/Makefile +0 -267
  1254. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/ext/debug/debug.c +0 -222
  1255. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/ext/debug/debug.o +0 -0
  1256. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/ext/debug/debug.so +0 -0
  1257. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/ext/debug/debug_version.h +0 -1
  1258. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/ext/debug/extconf.rb +0 -15
  1259. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/ext/debug/iseq_collector.o +0 -0
  1260. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/bp.vim +0 -68
  1261. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/breakpoint.rb +0 -517
  1262. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/client.rb +0 -235
  1263. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/config.rb +0 -493
  1264. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/console.rb +0 -228
  1265. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/debug.so +0 -0
  1266. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/frame_info.rb +0 -172
  1267. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/prelude.rb +0 -49
  1268. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/server.rb +0 -493
  1269. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/server_cdp.rb +0 -1144
  1270. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/server_dap.rb +0 -869
  1271. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/session.rb +0 -2312
  1272. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/source_repository.rb +0 -117
  1273. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/thread_client.rb +0 -1202
  1274. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/tracer.rb +0 -241
  1275. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug/version.rb +0 -5
  1276. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/lib/debug.rb +0 -4
  1277. data/vendor/bundle/ruby/3.1.0/gems/debug-1.5.0/misc/README.md.erb +0 -584
  1278. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/LICENSE.md +0 -20
  1279. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/README.md +0 -55
  1280. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/examples/client_spec.rb +0 -97
  1281. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/examples/client_test.rb +0 -118
  1282. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/lib/faraday/adapter/test.rb +0 -268
  1283. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/lib/faraday/adapter.rb +0 -102
  1284. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/lib/faraday/connection.rb +0 -561
  1285. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/lib/faraday/options/env.rb +0 -181
  1286. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/lib/faraday/options/ssl_options.rb +0 -59
  1287. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/lib/faraday/version.rb +0 -5
  1288. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/spec/faraday/adapter/test_spec.rb +0 -377
  1289. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/spec/faraday/connection_spec.rb +0 -787
  1290. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/spec/faraday/options/env_spec.rb +0 -70
  1291. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/spec/faraday/request_spec.rb +0 -109
  1292. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/spec/faraday/utils_spec.rb +0 -117
  1293. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/spec/support/shared_examples/adapter.rb +0 -104
  1294. data/vendor/bundle/ruby/3.1.0/gems/faraday-2.3.0/spec/support/shared_examples/request_method.rb +0 -249
  1295. data/vendor/bundle/ruby/3.1.0/gems/faraday-net_http-2.0.3/lib/faraday/adapter/net_http.rb +0 -224
  1296. data/vendor/bundle/ruby/3.1.0/gems/faraday-net_http-2.0.3/lib/faraday/net_http/version.rb +0 -7
  1297. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/extconf.rb +0 -1008
  1298. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/gumbo.c +0 -584
  1299. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/include/libxslt/xsltconfig.h +0 -180
  1300. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/nokogiri.h +0 -223
  1301. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_attr.c +0 -103
  1302. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_attribute_decl.c +0 -70
  1303. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_cdata.c +0 -57
  1304. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_document.c +0 -680
  1305. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_dtd.c +0 -208
  1306. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_element_decl.c +0 -69
  1307. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_entity_decl.c +0 -112
  1308. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_node.c +0 -2144
  1309. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_node_set.c +0 -498
  1310. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_reader.c +0 -719
  1311. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_schema.c +0 -284
  1312. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_text.c +0 -48
  1313. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/ext/nokogiri/xml_xpath_context.c +0 -406
  1314. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/lib/nokogiri/2.6/nokogiri.so +0 -0
  1315. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/lib/nokogiri/2.7/nokogiri.so +0 -0
  1316. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/lib/nokogiri/3.0/nokogiri.so +0 -0
  1317. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/lib/nokogiri/3.1/nokogiri.so +0 -0
  1318. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/lib/nokogiri/version/constant.rb +0 -6
  1319. data/vendor/bundle/ruby/3.1.0/gems/nokogiri-1.13.6-x86_64-linux/lib/nokogiri/xml/reader.rb +0 -107
  1320. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/README.md +0 -820
  1321. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/Rakefile +0 -22
  1322. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/ext/sawyer/relation.rb +0 -10
  1323. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/arguments.rb +0 -14
  1324. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/authentication.rb +0 -81
  1325. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/actions_secrets.rb +0 -58
  1326. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/actions_workflow_runs.rb +0 -105
  1327. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/actions_workflows.rb +0 -43
  1328. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/apps.rb +0 -222
  1329. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/authorizations.rb +0 -182
  1330. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/checks.rb +0 -200
  1331. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/commit_branches.rb +0 -20
  1332. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/commit_comments.rb +0 -95
  1333. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/commit_pulls.rb +0 -20
  1334. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/commits.rb +0 -244
  1335. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/community_profile.rb +0 -22
  1336. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/contents.rb +0 -168
  1337. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/deployments.rb +0 -82
  1338. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/downloads.rb +0 -50
  1339. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/emojis.rb +0 -18
  1340. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/events.rb +0 -152
  1341. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/feeds.rb +0 -33
  1342. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/gists.rb +0 -234
  1343. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/gitignore.rb +0 -43
  1344. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/hooks.rb +0 -297
  1345. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/issues.rb +0 -368
  1346. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/labels.rb +0 -156
  1347. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/legacy_search.rb +0 -42
  1348. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/licenses.rb +0 -45
  1349. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/markdown.rb +0 -27
  1350. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/marketplace.rb +0 -56
  1351. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/meta.rb +0 -21
  1352. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/milestones.rb +0 -87
  1353. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/notifications.rb +0 -167
  1354. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/oauth_applications.rb +0 -122
  1355. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/objects.rb +0 -141
  1356. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/organizations.rb +0 -820
  1357. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/pages.rb +0 -63
  1358. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/projects.rb +0 -314
  1359. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/pub_sub_hubbub.rb +0 -111
  1360. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/pull_requests.rb +0 -303
  1361. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/rate_limit.rb +0 -54
  1362. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/reactions.rb +0 -158
  1363. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/refs.rb +0 -134
  1364. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/releases.rb +0 -164
  1365. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/repositories.rb +0 -799
  1366. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/repository_invitations.rb +0 -96
  1367. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/reviews.rb +0 -227
  1368. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/say.rb +0 -19
  1369. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/search.rb +0 -91
  1370. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/service_status.rb +0 -48
  1371. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/source_import.rb +0 -161
  1372. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/stats.rb +0 -107
  1373. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/statuses.rb +0 -47
  1374. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/traffic.rb +0 -69
  1375. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client/users.rb +0 -441
  1376. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/client.rb +0 -253
  1377. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/configurable.rb +0 -151
  1378. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/connection.rb +0 -211
  1379. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/default.rb +0 -186
  1380. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_admin_client/admin_stats.rb +0 -120
  1381. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_admin_client/license.rb +0 -18
  1382. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_admin_client/orgs.rb +0 -27
  1383. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_admin_client/search_indexing.rb +0 -83
  1384. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_admin_client/users.rb +0 -128
  1385. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_admin_client.rb +0 -40
  1386. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_management_console_client/management_console.rb +0 -176
  1387. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/enterprise_management_console_client.rb +0 -50
  1388. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/error.rb +0 -354
  1389. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/gist.rb +0 -36
  1390. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/middleware/follow_redirects.rb +0 -134
  1391. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/organization.rb +0 -17
  1392. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/preview.rb +0 -46
  1393. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/rate_limit.rb +0 -33
  1394. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/repo_arguments.rb +0 -19
  1395. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/repository.rb +0 -95
  1396. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/response/base_middleware.rb +0 -8
  1397. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/response/feed_parser.rb +0 -19
  1398. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/response/raise_error.rb +0 -19
  1399. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/user.rb +0 -19
  1400. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/version.rb +0 -17
  1401. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit/warnable.rb +0 -19
  1402. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/lib/octokit.rb +0 -60
  1403. data/vendor/bundle/ruby/3.1.0/gems/octokit-4.23.0/octokit.gemspec +0 -23
  1404. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/CHANGELOG.md +0 -417
  1405. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/Gemfile +0 -14
  1406. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/README.md +0 -217
  1407. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/Rakefile +0 -52
  1408. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/data/list.txt +0 -14035
  1409. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/lib/public_suffix/list.rb +0 -247
  1410. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/lib/public_suffix/rule.rb +0 -350
  1411. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/lib/public_suffix/version.rb +0 -15
  1412. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/lib/public_suffix.rb +0 -177
  1413. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/public_suffix.gemspec +0 -29
  1414. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/test/acceptance_test.rb +0 -131
  1415. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/test/psl_test.rb +0 -52
  1416. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/test/unit/domain_test.rb +0 -106
  1417. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/test/unit/list_test.rb +0 -241
  1418. data/vendor/bundle/ruby/3.1.0/gems/public_suffix-4.0.7/test/unit/rule_test.rb +0 -222
  1419. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.3.1/CHANGELOG.md +0 -699
  1420. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.3.1/lib/rack/etag.rb +0 -75
  1421. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.3.1/lib/rack/lint.rb +0 -806
  1422. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.3.1/lib/rack/query_parser.rb +0 -217
  1423. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.3.1/lib/rack/utils.rb +0 -613
  1424. data/vendor/bundle/ruby/3.1.0/gems/rack-2.2.3.1/lib/rack/version.rb +0 -29
  1425. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/History.md +0 -256
  1426. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/MIT-LICENSE.txt +0 -19
  1427. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/README.md +0 -150
  1428. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/mock_session.rb +0 -63
  1429. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/test/cookie_jar.rb +0 -194
  1430. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/test/methods.rb +0 -83
  1431. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/test/mock_digest_request.rb +0 -25
  1432. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/test/uploaded_file.rb +0 -85
  1433. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/test/utils.rb +0 -144
  1434. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/test/version.rb +0 -5
  1435. data/vendor/bundle/ruby/3.1.0/gems/rack-test-1.1.0/lib/rack/test.rb +0 -334
  1436. data/vendor/bundle/ruby/3.1.0/gems/sawyer-0.9.1/lib/sawyer/resource.rb +0 -155
  1437. data/vendor/bundle/ruby/3.1.0/gems/sawyer-0.9.1/lib/sawyer.rb +0 -17
  1438. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/CHANGES +0 -2050
  1439. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/server.rb +0 -283
  1440. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/chrome/options.rb +0 -261
  1441. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/chrome.rb +0 -55
  1442. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/driver.rb +0 -397
  1443. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/driver_extensions/has_network_interception.rb +0 -136
  1444. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/driver_extensions/has_remote_status.rb +0 -31
  1445. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/interactions/pointer_actions.rb +0 -369
  1446. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/interactions/wheel_actions.rb +0 -113
  1447. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/manager.rb +0 -177
  1448. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/options.rb +0 -184
  1449. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/takes_screenshot.rb +0 -66
  1450. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/websocket_connection.rb +0 -149
  1451. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/window.rb +0 -159
  1452. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common/zipper.rb +0 -91
  1453. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/common.rb +0 -95
  1454. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/devtools.rb +0 -86
  1455. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/firefox.rb +0 -69
  1456. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/ie.rb +0 -42
  1457. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/remote/bridge.rb +0 -672
  1458. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/remote/commands.rb +0 -158
  1459. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/remote/driver.rb +0 -61
  1460. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/remote/http/persistent.rb +0 -65
  1461. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/safari.rb +0 -73
  1462. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/lib/selenium/webdriver/version.rb +0 -24
  1463. data/vendor/bundle/ruby/3.1.0/gems/selenium-webdriver-4.2.0/selenium-webdriver.gemspec +0 -66
  1464. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/CHANGELOG +0 -1037
  1465. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/README.rdoc +0 -908
  1466. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/doc/cheat_sheet.rdoc +0 -247
  1467. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/doc/opening_databases.rdoc +0 -421
  1468. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/doc/testing.rdoc +0 -186
  1469. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/jdbc/derby.rb +0 -313
  1470. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/jdbc/h2.rb +0 -282
  1471. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/jdbc/hsqldb.rb +0 -220
  1472. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/postgres.rb +0 -816
  1473. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/shared/db2.rb +0 -464
  1474. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/shared/mssql.rb +0 -1129
  1475. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/shared/mysql.rb +0 -1080
  1476. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/shared/oracle.rb +0 -652
  1477. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/adapters/shared/postgres.rb +0 -2232
  1478. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/database/schema_generator.rb +0 -646
  1479. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/database/schema_methods.rb +0 -1078
  1480. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/dataset/actions.rb +0 -1244
  1481. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/dataset/features.rb +0 -265
  1482. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/dataset/query.rb +0 -1423
  1483. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/dataset/sql.rb +0 -1724
  1484. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/extensions/pg_hstore.rb +0 -348
  1485. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/extensions/pg_json_ops.rb +0 -752
  1486. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/model/associations.rb +0 -4002
  1487. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/model/base.rb +0 -2260
  1488. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/plugins/insert_conflict.rb +0 -72
  1489. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/plugins/list.rb +0 -203
  1490. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/plugins/tactical_eager_loading.rb +0 -205
  1491. data/vendor/bundle/ruby/3.1.0/gems/sequel-5.56.0/lib/sequel/version.rb +0 -25
  1492. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/CHANGELOG.rdoc +0 -318
  1493. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/Gemfile +0 -17
  1494. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/Manifest.txt +0 -60
  1495. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/README.rdoc +0 -118
  1496. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/Makefile +0 -267
  1497. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/aggregator.c +0 -273
  1498. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/aggregator.o +0 -0
  1499. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/backup.o +0 -0
  1500. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/database.c +0 -827
  1501. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/database.o +0 -0
  1502. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/exception.o +0 -0
  1503. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/sqlite3.o +0 -0
  1504. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/sqlite3_native.so +0 -0
  1505. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/statement.c +0 -442
  1506. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/ext/sqlite3/statement.o +0 -0
  1507. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/faq/faq.yml +0 -426
  1508. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/lib/sqlite3/constants.rb +0 -50
  1509. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/lib/sqlite3/database.rb +0 -736
  1510. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/lib/sqlite3/pragmas.rb +0 -588
  1511. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/lib/sqlite3/sqlite3_native.so +0 -0
  1512. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/lib/sqlite3/statement.rb +0 -144
  1513. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/lib/sqlite3/translator.rb +0 -118
  1514. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/lib/sqlite3/version.rb +0 -25
  1515. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/rakelib/gem.rake +0 -40
  1516. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/rakelib/native.rake +0 -56
  1517. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/rakelib/vendor_sqlite3.rake +0 -97
  1518. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/test/helper.rb +0 -18
  1519. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/test/test_database.rb +0 -503
  1520. data/vendor/bundle/ruby/3.1.0/gems/sqlite3-1.4.2/test/test_statement.rb +0 -263
  1521. data/vendor/bundle/ruby/3.1.0/specifications/addressable-2.8.0.gemspec +0 -36
  1522. data/vendor/bundle/ruby/3.1.0/specifications/debug-1.5.0.gemspec +0 -39
  1523. data/vendor/bundle/ruby/3.1.0/specifications/faraday-2.3.0.gemspec +0 -0
  1524. data/vendor/bundle/ruby/3.1.0/specifications/faraday-net_http-2.0.3.gemspec +0 -32
  1525. data/vendor/bundle/ruby/3.1.0/specifications/nokogiri-1.13.6-x86_64-linux.gemspec +0 -69
  1526. data/vendor/bundle/ruby/3.1.0/specifications/octokit-4.23.0.gemspec +0 -35
  1527. data/vendor/bundle/ruby/3.1.0/specifications/public_suffix-4.0.7.gemspec +0 -24
  1528. data/vendor/bundle/ruby/3.1.0/specifications/rack-2.2.3.1.gemspec +0 -41
  1529. data/vendor/bundle/ruby/3.1.0/specifications/rack-test-1.1.0.gemspec +0 -45
  1530. data/vendor/bundle/ruby/3.1.0/specifications/sawyer-0.9.1.gemspec +0 -31
  1531. data/vendor/bundle/ruby/3.1.0/specifications/selenium-webdriver-4.2.0.gemspec +0 -62
  1532. data/vendor/bundle/ruby/3.1.0/specifications/sequel-5.56.0.gemspec +0 -48
  1533. data/vendor/bundle/ruby/3.1.0/specifications/sqlite3-1.4.2.gemspec +0 -51
@@ -0,0 +1,2560 @@
1
+ # frozen_string_literal: true
2
+
3
+ #--
4
+ # Copyright (C) Bob Aman
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #++
18
+
19
+
20
+ require "addressable/version"
21
+ require "addressable/idna"
22
+ require "public_suffix"
23
+
24
+ ##
25
+ # Addressable is a library for processing links and URIs.
26
+ module Addressable
27
+ ##
28
+ # This is an implementation of a URI parser based on
29
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>,
30
+ # <a href="http://www.ietf.org/rfc/rfc3987.txt">RFC 3987</a>.
31
+ class URI
32
+ ##
33
+ # Raised if something other than a uri is supplied.
34
+ class InvalidURIError < StandardError
35
+ end
36
+
37
+ ##
38
+ # Container for the character classes specified in
39
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>.
40
+ #
41
+ # Note: Concatenated and interpolated `String`s are not affected by the
42
+ # `frozen_string_literal` directive and must be frozen explicitly.
43
+ #
44
+ # Interpolated `String`s *were* frozen this way before Ruby 3.0:
45
+ # https://bugs.ruby-lang.org/issues/17104
46
+ module CharacterClasses
47
+ ALPHA = "a-zA-Z"
48
+ DIGIT = "0-9"
49
+ GEN_DELIMS = "\\:\\/\\?\\#\\[\\]\\@"
50
+ SUB_DELIMS = "\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\="
51
+ RESERVED = (GEN_DELIMS + SUB_DELIMS).freeze
52
+ UNRESERVED = (ALPHA + DIGIT + "\\-\\.\\_\\~").freeze
53
+ PCHAR = (UNRESERVED + SUB_DELIMS + "\\:\\@").freeze
54
+ SCHEME = (ALPHA + DIGIT + "\\-\\+\\.").freeze
55
+ HOST = (UNRESERVED + SUB_DELIMS + "\\[\\:\\]").freeze
56
+ AUTHORITY = (PCHAR + "\\[\\:\\]").freeze
57
+ PATH = (PCHAR + "\\/").freeze
58
+ QUERY = (PCHAR + "\\/\\?").freeze
59
+ FRAGMENT = (PCHAR + "\\/\\?").freeze
60
+ end
61
+
62
+ module NormalizeCharacterClasses
63
+ HOST = /[^#{CharacterClasses::HOST}]/
64
+ UNRESERVED = /[^#{CharacterClasses::UNRESERVED}]/
65
+ PCHAR = /[^#{CharacterClasses::PCHAR}]/
66
+ SCHEME = /[^#{CharacterClasses::SCHEME}]/
67
+ FRAGMENT = /[^#{CharacterClasses::FRAGMENT}]/
68
+ QUERY = %r{[^a-zA-Z0-9\-\.\_\~\!\$\'\(\)\*\+\,\=\:\@\/\?%]|%(?!2B|2b)}
69
+ end
70
+
71
+ SLASH = '/'
72
+ EMPTY_STR = ''
73
+
74
+ URIREGEX = /^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/
75
+
76
+ PORT_MAPPING = {
77
+ "http" => 80,
78
+ "https" => 443,
79
+ "ftp" => 21,
80
+ "tftp" => 69,
81
+ "sftp" => 22,
82
+ "ssh" => 22,
83
+ "svn+ssh" => 22,
84
+ "telnet" => 23,
85
+ "nntp" => 119,
86
+ "gopher" => 70,
87
+ "wais" => 210,
88
+ "ldap" => 389,
89
+ "prospero" => 1525
90
+ }.freeze
91
+
92
+ ##
93
+ # Returns a URI object based on the parsed string.
94
+ #
95
+ # @param [String, Addressable::URI, #to_str] uri
96
+ # The URI string to parse.
97
+ # No parsing is performed if the object is already an
98
+ # <code>Addressable::URI</code>.
99
+ #
100
+ # @return [Addressable::URI] The parsed URI.
101
+ def self.parse(uri)
102
+ # If we were given nil, return nil.
103
+ return nil unless uri
104
+ # If a URI object is passed, just return itself.
105
+ return uri.dup if uri.kind_of?(self)
106
+
107
+ # If a URI object of the Ruby standard library variety is passed,
108
+ # convert it to a string, then parse the string.
109
+ # We do the check this way because we don't want to accidentally
110
+ # cause a missing constant exception to be thrown.
111
+ if uri.class.name =~ /^URI\b/
112
+ uri = uri.to_s
113
+ end
114
+
115
+ # Otherwise, convert to a String
116
+ begin
117
+ uri = uri.to_str
118
+ rescue TypeError, NoMethodError
119
+ raise TypeError, "Can't convert #{uri.class} into String."
120
+ end if not uri.is_a? String
121
+
122
+ # This Regexp supplied as an example in RFC 3986, and it works great.
123
+ scan = uri.scan(URIREGEX)
124
+ fragments = scan[0]
125
+ scheme = fragments[1]
126
+ authority = fragments[3]
127
+ path = fragments[4]
128
+ query = fragments[6]
129
+ fragment = fragments[8]
130
+ user = nil
131
+ password = nil
132
+ host = nil
133
+ port = nil
134
+ if authority != nil
135
+ # The Regexp above doesn't split apart the authority.
136
+ userinfo = authority[/^([^\[\]]*)@/, 1]
137
+ if userinfo != nil
138
+ user = userinfo.strip[/^([^:]*):?/, 1]
139
+ password = userinfo.strip[/:(.*)$/, 1]
140
+ end
141
+ host = authority.sub(
142
+ /^([^\[\]]*)@/, EMPTY_STR
143
+ ).sub(
144
+ /:([^:@\[\]]*?)$/, EMPTY_STR
145
+ )
146
+ port = authority[/:([^:@\[\]]*?)$/, 1]
147
+ end
148
+ if port == EMPTY_STR
149
+ port = nil
150
+ end
151
+
152
+ return new(
153
+ :scheme => scheme,
154
+ :user => user,
155
+ :password => password,
156
+ :host => host,
157
+ :port => port,
158
+ :path => path,
159
+ :query => query,
160
+ :fragment => fragment
161
+ )
162
+ end
163
+
164
+ ##
165
+ # Converts an input to a URI. The input does not have to be a valid
166
+ # URI — the method will use heuristics to guess what URI was intended.
167
+ # This is not standards-compliant, merely user-friendly.
168
+ #
169
+ # @param [String, Addressable::URI, #to_str] uri
170
+ # The URI string to parse.
171
+ # No parsing is performed if the object is already an
172
+ # <code>Addressable::URI</code>.
173
+ # @param [Hash] hints
174
+ # A <code>Hash</code> of hints to the heuristic parser.
175
+ # Defaults to <code>{:scheme => "http"}</code>.
176
+ #
177
+ # @return [Addressable::URI] The parsed URI.
178
+ def self.heuristic_parse(uri, hints={})
179
+ # If we were given nil, return nil.
180
+ return nil unless uri
181
+ # If a URI object is passed, just return itself.
182
+ return uri.dup if uri.kind_of?(self)
183
+
184
+ # If a URI object of the Ruby standard library variety is passed,
185
+ # convert it to a string, then parse the string.
186
+ # We do the check this way because we don't want to accidentally
187
+ # cause a missing constant exception to be thrown.
188
+ if uri.class.name =~ /^URI\b/
189
+ uri = uri.to_s
190
+ end
191
+
192
+ if !uri.respond_to?(:to_str)
193
+ raise TypeError, "Can't convert #{uri.class} into String."
194
+ end
195
+ # Otherwise, convert to a String
196
+ uri = uri.to_str.dup.strip
197
+ hints = {
198
+ :scheme => "http"
199
+ }.merge(hints)
200
+ case uri
201
+ when /^http:\//i
202
+ uri.sub!(/^http:\/+/i, "http://")
203
+ when /^https:\//i
204
+ uri.sub!(/^https:\/+/i, "https://")
205
+ when /^feed:\/+http:\//i
206
+ uri.sub!(/^feed:\/+http:\/+/i, "feed:http://")
207
+ when /^feed:\//i
208
+ uri.sub!(/^feed:\/+/i, "feed://")
209
+ when %r[^file:/{4}]i
210
+ uri.sub!(%r[^file:/+]i, "file:////")
211
+ when %r[^file://localhost/]i
212
+ uri.sub!(%r[^file://localhost/+]i, "file:///")
213
+ when %r[^file:/+]i
214
+ uri.sub!(%r[^file:/+]i, "file:///")
215
+ when /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/
216
+ uri.sub!(/^/, hints[:scheme] + "://")
217
+ when /\A\d+\..*:\d+\z/
218
+ uri = "#{hints[:scheme]}://#{uri}"
219
+ end
220
+ match = uri.match(URIREGEX)
221
+ fragments = match.captures
222
+ authority = fragments[3]
223
+ if authority && authority.length > 0
224
+ new_authority = authority.tr("\\", "/").gsub(" ", "%20")
225
+ # NOTE: We want offset 4, not 3!
226
+ offset = match.offset(4)
227
+ uri = uri.dup
228
+ uri[offset[0]...offset[1]] = new_authority
229
+ end
230
+ parsed = self.parse(uri)
231
+ if parsed.scheme =~ /^[^\/?#\.]+\.[^\/?#]+$/
232
+ parsed = self.parse(hints[:scheme] + "://" + uri)
233
+ end
234
+ if parsed.path.include?(".")
235
+ if parsed.path[/\b@\b/]
236
+ parsed.scheme = "mailto" unless parsed.scheme
237
+ elsif new_host = parsed.path[/^([^\/]+\.[^\/]*)/, 1]
238
+ parsed.defer_validation do
239
+ new_path = parsed.path.sub(
240
+ Regexp.new("^" + Regexp.escape(new_host)), EMPTY_STR)
241
+ parsed.host = new_host
242
+ parsed.path = new_path
243
+ parsed.scheme = hints[:scheme] unless parsed.scheme
244
+ end
245
+ end
246
+ end
247
+ return parsed
248
+ end
249
+
250
+ ##
251
+ # Converts a path to a file scheme URI. If the path supplied is
252
+ # relative, it will be returned as a relative URI. If the path supplied
253
+ # is actually a non-file URI, it will parse the URI as if it had been
254
+ # parsed with <code>Addressable::URI.parse</code>. Handles all of the
255
+ # various Microsoft-specific formats for specifying paths.
256
+ #
257
+ # @param [String, Addressable::URI, #to_str] path
258
+ # Typically a <code>String</code> path to a file or directory, but
259
+ # will return a sensible return value if an absolute URI is supplied
260
+ # instead.
261
+ #
262
+ # @return [Addressable::URI]
263
+ # The parsed file scheme URI or the original URI if some other URI
264
+ # scheme was provided.
265
+ #
266
+ # @example
267
+ # base = Addressable::URI.convert_path("/absolute/path/")
268
+ # uri = Addressable::URI.convert_path("relative/path")
269
+ # (base + uri).to_s
270
+ # #=> "file:///absolute/path/relative/path"
271
+ #
272
+ # Addressable::URI.convert_path(
273
+ # "c:\\windows\\My Documents 100%20\\foo.txt"
274
+ # ).to_s
275
+ # #=> "file:///c:/windows/My%20Documents%20100%20/foo.txt"
276
+ #
277
+ # Addressable::URI.convert_path("http://example.com/").to_s
278
+ # #=> "http://example.com/"
279
+ def self.convert_path(path)
280
+ # If we were given nil, return nil.
281
+ return nil unless path
282
+ # If a URI object is passed, just return itself.
283
+ return path if path.kind_of?(self)
284
+ if !path.respond_to?(:to_str)
285
+ raise TypeError, "Can't convert #{path.class} into String."
286
+ end
287
+ # Otherwise, convert to a String
288
+ path = path.to_str.strip
289
+
290
+ path.sub!(/^file:\/?\/?/, EMPTY_STR) if path =~ /^file:\/?\/?/
291
+ path = SLASH + path if path =~ /^([a-zA-Z])[\|:]/
292
+ uri = self.parse(path)
293
+
294
+ if uri.scheme == nil
295
+ # Adjust windows-style uris
296
+ uri.path.sub!(/^\/?([a-zA-Z])[\|:][\\\/]/) do
297
+ "/#{$1.downcase}:/"
298
+ end
299
+ uri.path.tr!("\\", SLASH)
300
+ if File.exist?(uri.path) &&
301
+ File.stat(uri.path).directory?
302
+ uri.path.chomp!(SLASH)
303
+ uri.path = uri.path + '/'
304
+ end
305
+
306
+ # If the path is absolute, set the scheme and host.
307
+ if uri.path.start_with?(SLASH)
308
+ uri.scheme = "file"
309
+ uri.host = EMPTY_STR
310
+ end
311
+ uri.normalize!
312
+ end
313
+
314
+ return uri
315
+ end
316
+
317
+ ##
318
+ # Joins several URIs together.
319
+ #
320
+ # @param [String, Addressable::URI, #to_str] *uris
321
+ # The URIs to join.
322
+ #
323
+ # @return [Addressable::URI] The joined URI.
324
+ #
325
+ # @example
326
+ # base = "http://example.com/"
327
+ # uri = Addressable::URI.parse("relative/path")
328
+ # Addressable::URI.join(base, uri)
329
+ # #=> #<Addressable::URI:0xcab390 URI:http://example.com/relative/path>
330
+ def self.join(*uris)
331
+ uri_objects = uris.collect do |uri|
332
+ if !uri.respond_to?(:to_str)
333
+ raise TypeError, "Can't convert #{uri.class} into String."
334
+ end
335
+ uri.kind_of?(self) ? uri : self.parse(uri.to_str)
336
+ end
337
+ result = uri_objects.shift.dup
338
+ for uri in uri_objects
339
+ result.join!(uri)
340
+ end
341
+ return result
342
+ end
343
+
344
+ ##
345
+ # Tables used to optimize encoding operations in `self.encode_component`
346
+ # and `self.normalize_component`
347
+ SEQUENCE_ENCODING_TABLE = Hash.new do |hash, sequence|
348
+ hash[sequence] = sequence.unpack("C*").map do |c|
349
+ format("%02x", c)
350
+ end.join
351
+ end
352
+
353
+ SEQUENCE_UPCASED_PERCENT_ENCODING_TABLE = Hash.new do |hash, sequence|
354
+ hash[sequence] = sequence.unpack("C*").map do |c|
355
+ format("%%%02X", c)
356
+ end.join
357
+ end
358
+
359
+ ##
360
+ # Percent encodes a URI component.
361
+ #
362
+ # @param [String, #to_str] component The URI component to encode.
363
+ #
364
+ # @param [String, Regexp] character_class
365
+ # The characters which are not percent encoded. If a <code>String</code>
366
+ # is passed, the <code>String</code> must be formatted as a regular
367
+ # expression character class. (Do not include the surrounding square
368
+ # brackets.) For example, <code>"b-zB-Z0-9"</code> would cause
369
+ # everything but the letters 'b' through 'z' and the numbers '0' through
370
+ # '9' to be percent encoded. If a <code>Regexp</code> is passed, the
371
+ # value <code>/[^b-zB-Z0-9]/</code> would have the same effect. A set of
372
+ # useful <code>String</code> values may be found in the
373
+ # <code>Addressable::URI::CharacterClasses</code> module. The default
374
+ # value is the reserved plus unreserved character classes specified in
375
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>.
376
+ #
377
+ # @param [Regexp] upcase_encoded
378
+ # A string of characters that may already be percent encoded, and whose
379
+ # encodings should be upcased. This allows normalization of percent
380
+ # encodings for characters not included in the
381
+ # <code>character_class</code>.
382
+ #
383
+ # @return [String] The encoded component.
384
+ #
385
+ # @example
386
+ # Addressable::URI.encode_component("simple/example", "b-zB-Z0-9")
387
+ # => "simple%2Fex%61mple"
388
+ # Addressable::URI.encode_component("simple/example", /[^b-zB-Z0-9]/)
389
+ # => "simple%2Fex%61mple"
390
+ # Addressable::URI.encode_component(
391
+ # "simple/example", Addressable::URI::CharacterClasses::UNRESERVED
392
+ # )
393
+ # => "simple%2Fexample"
394
+ def self.encode_component(component, character_class=
395
+ CharacterClasses::RESERVED + CharacterClasses::UNRESERVED,
396
+ upcase_encoded='')
397
+ return nil if component.nil?
398
+
399
+ begin
400
+ if component.kind_of?(Symbol) ||
401
+ component.kind_of?(Numeric) ||
402
+ component.kind_of?(TrueClass) ||
403
+ component.kind_of?(FalseClass)
404
+ component = component.to_s
405
+ else
406
+ component = component.to_str
407
+ end
408
+ rescue TypeError, NoMethodError
409
+ raise TypeError, "Can't convert #{component.class} into String."
410
+ end if !component.is_a? String
411
+
412
+ if ![String, Regexp].include?(character_class.class)
413
+ raise TypeError,
414
+ "Expected String or Regexp, got #{character_class.inspect}"
415
+ end
416
+ if character_class.kind_of?(String)
417
+ character_class = /[^#{character_class}]/
418
+ end
419
+ # We can't perform regexps on invalid UTF sequences, but
420
+ # here we need to, so switch to ASCII.
421
+ component = component.dup
422
+ component.force_encoding(Encoding::ASCII_8BIT)
423
+ # Avoiding gsub! because there are edge cases with frozen strings
424
+ component = component.gsub(character_class) do |sequence|
425
+ SEQUENCE_UPCASED_PERCENT_ENCODING_TABLE[sequence]
426
+ end
427
+ if upcase_encoded.length > 0
428
+ upcase_encoded_chars = upcase_encoded.chars.map do |char|
429
+ SEQUENCE_ENCODING_TABLE[char]
430
+ end
431
+ component = component.gsub(/%(#{upcase_encoded_chars.join('|')})/,
432
+ &:upcase)
433
+ end
434
+ return component
435
+ end
436
+
437
+ class << self
438
+ alias_method :escape_component, :encode_component
439
+ end
440
+
441
+ ##
442
+ # Unencodes any percent encoded characters within a URI component.
443
+ # This method may be used for unencoding either components or full URIs,
444
+ # however, it is recommended to use the <code>unencode_component</code>
445
+ # alias when unencoding components.
446
+ #
447
+ # @param [String, Addressable::URI, #to_str] uri
448
+ # The URI or component to unencode.
449
+ #
450
+ # @param [Class] return_type
451
+ # The type of object to return.
452
+ # This value may only be set to <code>String</code> or
453
+ # <code>Addressable::URI</code>. All other values are invalid. Defaults
454
+ # to <code>String</code>.
455
+ #
456
+ # @param [String] leave_encoded
457
+ # A string of characters to leave encoded. If a percent encoded character
458
+ # in this list is encountered then it will remain percent encoded.
459
+ #
460
+ # @return [String, Addressable::URI]
461
+ # The unencoded component or URI.
462
+ # The return type is determined by the <code>return_type</code>
463
+ # parameter.
464
+ def self.unencode(uri, return_type=String, leave_encoded='')
465
+ return nil if uri.nil?
466
+
467
+ begin
468
+ uri = uri.to_str
469
+ rescue NoMethodError, TypeError
470
+ raise TypeError, "Can't convert #{uri.class} into String."
471
+ end if !uri.is_a? String
472
+ if ![String, ::Addressable::URI].include?(return_type)
473
+ raise TypeError,
474
+ "Expected Class (String or Addressable::URI), " +
475
+ "got #{return_type.inspect}"
476
+ end
477
+
478
+ result = uri.gsub(/%[0-9a-f]{2}/i) do |sequence|
479
+ c = sequence[1..3].to_i(16).chr
480
+ c.force_encoding(sequence.encoding)
481
+ leave_encoded.include?(c) ? sequence : c
482
+ end
483
+
484
+ result.force_encoding("utf-8")
485
+ if return_type == String
486
+ return result
487
+ elsif return_type == ::Addressable::URI
488
+ return ::Addressable::URI.parse(result)
489
+ end
490
+ end
491
+
492
+ class << self
493
+ alias_method :unescape, :unencode
494
+ alias_method :unencode_component, :unencode
495
+ alias_method :unescape_component, :unencode
496
+ end
497
+
498
+
499
+ ##
500
+ # Normalizes the encoding of a URI component.
501
+ #
502
+ # @param [String, #to_str] component The URI component to encode.
503
+ #
504
+ # @param [String, Regexp] character_class
505
+ # The characters which are not percent encoded. If a <code>String</code>
506
+ # is passed, the <code>String</code> must be formatted as a regular
507
+ # expression character class. (Do not include the surrounding square
508
+ # brackets.) For example, <code>"b-zB-Z0-9"</code> would cause
509
+ # everything but the letters 'b' through 'z' and the numbers '0'
510
+ # through '9' to be percent encoded. If a <code>Regexp</code> is passed,
511
+ # the value <code>/[^b-zB-Z0-9]/</code> would have the same effect. A
512
+ # set of useful <code>String</code> values may be found in the
513
+ # <code>Addressable::URI::CharacterClasses</code> module. The default
514
+ # value is the reserved plus unreserved character classes specified in
515
+ # <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>.
516
+ #
517
+ # @param [String] leave_encoded
518
+ # When <code>character_class</code> is a <code>String</code> then
519
+ # <code>leave_encoded</code> is a string of characters that should remain
520
+ # percent encoded while normalizing the component; if they appear percent
521
+ # encoded in the original component, then they will be upcased ("%2f"
522
+ # normalized to "%2F") but otherwise left alone.
523
+ #
524
+ # @return [String] The normalized component.
525
+ #
526
+ # @example
527
+ # Addressable::URI.normalize_component("simpl%65/%65xampl%65", "b-zB-Z")
528
+ # => "simple%2Fex%61mple"
529
+ # Addressable::URI.normalize_component(
530
+ # "simpl%65/%65xampl%65", /[^b-zB-Z]/
531
+ # )
532
+ # => "simple%2Fex%61mple"
533
+ # Addressable::URI.normalize_component(
534
+ # "simpl%65/%65xampl%65",
535
+ # Addressable::URI::CharacterClasses::UNRESERVED
536
+ # )
537
+ # => "simple%2Fexample"
538
+ # Addressable::URI.normalize_component(
539
+ # "one%20two%2fthree%26four",
540
+ # "0-9a-zA-Z &/",
541
+ # "/"
542
+ # )
543
+ # => "one two%2Fthree&four"
544
+ def self.normalize_component(component, character_class=
545
+ CharacterClasses::RESERVED + CharacterClasses::UNRESERVED,
546
+ leave_encoded='')
547
+ return nil if component.nil?
548
+
549
+ begin
550
+ component = component.to_str
551
+ rescue NoMethodError, TypeError
552
+ raise TypeError, "Can't convert #{component.class} into String."
553
+ end if !component.is_a? String
554
+
555
+ if ![String, Regexp].include?(character_class.class)
556
+ raise TypeError,
557
+ "Expected String or Regexp, got #{character_class.inspect}"
558
+ end
559
+ if character_class.kind_of?(String)
560
+ leave_re = if leave_encoded.length > 0
561
+ character_class = "#{character_class}%" unless character_class.include?('%')
562
+
563
+ "|%(?!#{leave_encoded.chars.flat_map do |char|
564
+ seq = SEQUENCE_ENCODING_TABLE[char]
565
+ [seq.upcase, seq.downcase]
566
+ end.join('|')})"
567
+ end
568
+
569
+ character_class = if leave_re
570
+ /[^#{character_class}]#{leave_re}/
571
+ else
572
+ /[^#{character_class}]/
573
+ end
574
+ end
575
+ # We can't perform regexps on invalid UTF sequences, but
576
+ # here we need to, so switch to ASCII.
577
+ component = component.dup
578
+ component.force_encoding(Encoding::ASCII_8BIT)
579
+ unencoded = self.unencode_component(component, String, leave_encoded)
580
+ begin
581
+ encoded = self.encode_component(
582
+ Addressable::IDNA.unicode_normalize_kc(unencoded),
583
+ character_class,
584
+ leave_encoded
585
+ )
586
+ rescue ArgumentError
587
+ encoded = self.encode_component(unencoded)
588
+ end
589
+ encoded.force_encoding(Encoding::UTF_8)
590
+ return encoded
591
+ end
592
+
593
+ ##
594
+ # Percent encodes any special characters in the URI.
595
+ #
596
+ # @param [String, Addressable::URI, #to_str] uri
597
+ # The URI to encode.
598
+ #
599
+ # @param [Class] return_type
600
+ # The type of object to return.
601
+ # This value may only be set to <code>String</code> or
602
+ # <code>Addressable::URI</code>. All other values are invalid. Defaults
603
+ # to <code>String</code>.
604
+ #
605
+ # @return [String, Addressable::URI]
606
+ # The encoded URI.
607
+ # The return type is determined by the <code>return_type</code>
608
+ # parameter.
609
+ def self.encode(uri, return_type=String)
610
+ return nil if uri.nil?
611
+
612
+ begin
613
+ uri = uri.to_str
614
+ rescue NoMethodError, TypeError
615
+ raise TypeError, "Can't convert #{uri.class} into String."
616
+ end if !uri.is_a? String
617
+
618
+ if ![String, ::Addressable::URI].include?(return_type)
619
+ raise TypeError,
620
+ "Expected Class (String or Addressable::URI), " +
621
+ "got #{return_type.inspect}"
622
+ end
623
+ uri_object = uri.kind_of?(self) ? uri : self.parse(uri)
624
+ encoded_uri = Addressable::URI.new(
625
+ :scheme => self.encode_component(uri_object.scheme,
626
+ Addressable::URI::CharacterClasses::SCHEME),
627
+ :authority => self.encode_component(uri_object.authority,
628
+ Addressable::URI::CharacterClasses::AUTHORITY),
629
+ :path => self.encode_component(uri_object.path,
630
+ Addressable::URI::CharacterClasses::PATH),
631
+ :query => self.encode_component(uri_object.query,
632
+ Addressable::URI::CharacterClasses::QUERY),
633
+ :fragment => self.encode_component(uri_object.fragment,
634
+ Addressable::URI::CharacterClasses::FRAGMENT)
635
+ )
636
+ if return_type == String
637
+ return encoded_uri.to_s
638
+ elsif return_type == ::Addressable::URI
639
+ return encoded_uri
640
+ end
641
+ end
642
+
643
+ class << self
644
+ alias_method :escape, :encode
645
+ end
646
+
647
+ ##
648
+ # Normalizes the encoding of a URI. Characters within a hostname are
649
+ # not percent encoded to allow for internationalized domain names.
650
+ #
651
+ # @param [String, Addressable::URI, #to_str] uri
652
+ # The URI to encode.
653
+ #
654
+ # @param [Class] return_type
655
+ # The type of object to return.
656
+ # This value may only be set to <code>String</code> or
657
+ # <code>Addressable::URI</code>. All other values are invalid. Defaults
658
+ # to <code>String</code>.
659
+ #
660
+ # @return [String, Addressable::URI]
661
+ # The encoded URI.
662
+ # The return type is determined by the <code>return_type</code>
663
+ # parameter.
664
+ def self.normalized_encode(uri, return_type=String)
665
+ begin
666
+ uri = uri.to_str
667
+ rescue NoMethodError, TypeError
668
+ raise TypeError, "Can't convert #{uri.class} into String."
669
+ end if !uri.is_a? String
670
+
671
+ if ![String, ::Addressable::URI].include?(return_type)
672
+ raise TypeError,
673
+ "Expected Class (String or Addressable::URI), " +
674
+ "got #{return_type.inspect}"
675
+ end
676
+ uri_object = uri.kind_of?(self) ? uri : self.parse(uri)
677
+ components = {
678
+ :scheme => self.unencode_component(uri_object.scheme),
679
+ :user => self.unencode_component(uri_object.user),
680
+ :password => self.unencode_component(uri_object.password),
681
+ :host => self.unencode_component(uri_object.host),
682
+ :port => (uri_object.port.nil? ? nil : uri_object.port.to_s),
683
+ :path => self.unencode_component(uri_object.path),
684
+ :query => self.unencode_component(uri_object.query),
685
+ :fragment => self.unencode_component(uri_object.fragment)
686
+ }
687
+ components.each do |key, value|
688
+ if value != nil
689
+ begin
690
+ components[key] =
691
+ Addressable::IDNA.unicode_normalize_kc(value.to_str)
692
+ rescue ArgumentError
693
+ # Likely a malformed UTF-8 character, skip unicode normalization
694
+ components[key] = value.to_str
695
+ end
696
+ end
697
+ end
698
+ encoded_uri = Addressable::URI.new(
699
+ :scheme => self.encode_component(components[:scheme],
700
+ Addressable::URI::CharacterClasses::SCHEME),
701
+ :user => self.encode_component(components[:user],
702
+ Addressable::URI::CharacterClasses::UNRESERVED),
703
+ :password => self.encode_component(components[:password],
704
+ Addressable::URI::CharacterClasses::UNRESERVED),
705
+ :host => components[:host],
706
+ :port => components[:port],
707
+ :path => self.encode_component(components[:path],
708
+ Addressable::URI::CharacterClasses::PATH),
709
+ :query => self.encode_component(components[:query],
710
+ Addressable::URI::CharacterClasses::QUERY),
711
+ :fragment => self.encode_component(components[:fragment],
712
+ Addressable::URI::CharacterClasses::FRAGMENT)
713
+ )
714
+ if return_type == String
715
+ return encoded_uri.to_s
716
+ elsif return_type == ::Addressable::URI
717
+ return encoded_uri
718
+ end
719
+ end
720
+
721
+ ##
722
+ # Encodes a set of key/value pairs according to the rules for the
723
+ # <code>application/x-www-form-urlencoded</code> MIME type.
724
+ #
725
+ # @param [#to_hash, #to_ary] form_values
726
+ # The form values to encode.
727
+ #
728
+ # @param [TrueClass, FalseClass] sort
729
+ # Sort the key/value pairs prior to encoding.
730
+ # Defaults to <code>false</code>.
731
+ #
732
+ # @return [String]
733
+ # The encoded value.
734
+ def self.form_encode(form_values, sort=false)
735
+ if form_values.respond_to?(:to_hash)
736
+ form_values = form_values.to_hash.to_a
737
+ elsif form_values.respond_to?(:to_ary)
738
+ form_values = form_values.to_ary
739
+ else
740
+ raise TypeError, "Can't convert #{form_values.class} into Array."
741
+ end
742
+
743
+ form_values = form_values.inject([]) do |accu, (key, value)|
744
+ if value.kind_of?(Array)
745
+ value.each do |v|
746
+ accu << [key.to_s, v.to_s]
747
+ end
748
+ else
749
+ accu << [key.to_s, value.to_s]
750
+ end
751
+ accu
752
+ end
753
+
754
+ if sort
755
+ # Useful for OAuth and optimizing caching systems
756
+ form_values = form_values.sort
757
+ end
758
+ escaped_form_values = form_values.map do |(key, value)|
759
+ # Line breaks are CRLF pairs
760
+ [
761
+ self.encode_component(
762
+ key.gsub(/(\r\n|\n|\r)/, "\r\n"),
763
+ CharacterClasses::UNRESERVED
764
+ ).gsub("%20", "+"),
765
+ self.encode_component(
766
+ value.gsub(/(\r\n|\n|\r)/, "\r\n"),
767
+ CharacterClasses::UNRESERVED
768
+ ).gsub("%20", "+")
769
+ ]
770
+ end
771
+ return escaped_form_values.map do |(key, value)|
772
+ "#{key}=#{value}"
773
+ end.join("&")
774
+ end
775
+
776
+ ##
777
+ # Decodes a <code>String</code> according to the rules for the
778
+ # <code>application/x-www-form-urlencoded</code> MIME type.
779
+ #
780
+ # @param [String, #to_str] encoded_value
781
+ # The form values to decode.
782
+ #
783
+ # @return [Array]
784
+ # The decoded values.
785
+ # This is not a <code>Hash</code> because of the possibility for
786
+ # duplicate keys.
787
+ def self.form_unencode(encoded_value)
788
+ if !encoded_value.respond_to?(:to_str)
789
+ raise TypeError, "Can't convert #{encoded_value.class} into String."
790
+ end
791
+ encoded_value = encoded_value.to_str
792
+ split_values = encoded_value.split("&").map do |pair|
793
+ pair.split("=", 2)
794
+ end
795
+ return split_values.map do |(key, value)|
796
+ [
797
+ key ? self.unencode_component(
798
+ key.gsub("+", "%20")).gsub(/(\r\n|\n|\r)/, "\n") : nil,
799
+ value ? (self.unencode_component(
800
+ value.gsub("+", "%20")).gsub(/(\r\n|\n|\r)/, "\n")) : nil
801
+ ]
802
+ end
803
+ end
804
+
805
+ ##
806
+ # Creates a new uri object from component parts.
807
+ #
808
+ # @option [String, #to_str] scheme The scheme component.
809
+ # @option [String, #to_str] user The user component.
810
+ # @option [String, #to_str] password The password component.
811
+ # @option [String, #to_str] userinfo
812
+ # The userinfo component. If this is supplied, the user and password
813
+ # components must be omitted.
814
+ # @option [String, #to_str] host The host component.
815
+ # @option [String, #to_str] port The port component.
816
+ # @option [String, #to_str] authority
817
+ # The authority component. If this is supplied, the user, password,
818
+ # userinfo, host, and port components must be omitted.
819
+ # @option [String, #to_str] path The path component.
820
+ # @option [String, #to_str] query The query component.
821
+ # @option [String, #to_str] fragment The fragment component.
822
+ #
823
+ # @return [Addressable::URI] The constructed URI object.
824
+ def initialize(options={})
825
+ if options.has_key?(:authority)
826
+ if (options.keys & [:userinfo, :user, :password, :host, :port]).any?
827
+ raise ArgumentError,
828
+ "Cannot specify both an authority and any of the components " +
829
+ "within the authority."
830
+ end
831
+ end
832
+ if options.has_key?(:userinfo)
833
+ if (options.keys & [:user, :password]).any?
834
+ raise ArgumentError,
835
+ "Cannot specify both a userinfo and either the user or password."
836
+ end
837
+ end
838
+
839
+ self.defer_validation do
840
+ # Bunch of crazy logic required because of the composite components
841
+ # like userinfo and authority.
842
+ self.scheme = options[:scheme] if options[:scheme]
843
+ self.user = options[:user] if options[:user]
844
+ self.password = options[:password] if options[:password]
845
+ self.userinfo = options[:userinfo] if options[:userinfo]
846
+ self.host = options[:host] if options[:host]
847
+ self.port = options[:port] if options[:port]
848
+ self.authority = options[:authority] if options[:authority]
849
+ self.path = options[:path] if options[:path]
850
+ self.query = options[:query] if options[:query]
851
+ self.query_values = options[:query_values] if options[:query_values]
852
+ self.fragment = options[:fragment] if options[:fragment]
853
+ end
854
+ self.to_s
855
+ end
856
+
857
+ ##
858
+ # Freeze URI, initializing instance variables.
859
+ #
860
+ # @return [Addressable::URI] The frozen URI object.
861
+ def freeze
862
+ self.normalized_scheme
863
+ self.normalized_user
864
+ self.normalized_password
865
+ self.normalized_userinfo
866
+ self.normalized_host
867
+ self.normalized_port
868
+ self.normalized_authority
869
+ self.normalized_site
870
+ self.normalized_path
871
+ self.normalized_query
872
+ self.normalized_fragment
873
+ self.hash
874
+ super
875
+ end
876
+
877
+ ##
878
+ # The scheme component for this URI.
879
+ #
880
+ # @return [String] The scheme component.
881
+ def scheme
882
+ return defined?(@scheme) ? @scheme : nil
883
+ end
884
+
885
+ ##
886
+ # The scheme component for this URI, normalized.
887
+ #
888
+ # @return [String] The scheme component, normalized.
889
+ def normalized_scheme
890
+ return nil unless self.scheme
891
+ @normalized_scheme ||= begin
892
+ if self.scheme =~ /^\s*ssh\+svn\s*$/i
893
+ "svn+ssh".dup
894
+ else
895
+ Addressable::URI.normalize_component(
896
+ self.scheme.strip.downcase,
897
+ Addressable::URI::NormalizeCharacterClasses::SCHEME
898
+ )
899
+ end
900
+ end
901
+ # All normalized values should be UTF-8
902
+ force_utf8_encoding_if_needed(@normalized_scheme)
903
+ @normalized_scheme
904
+ end
905
+
906
+ ##
907
+ # Sets the scheme component for this URI.
908
+ #
909
+ # @param [String, #to_str] new_scheme The new scheme component.
910
+ def scheme=(new_scheme)
911
+ if new_scheme && !new_scheme.respond_to?(:to_str)
912
+ raise TypeError, "Can't convert #{new_scheme.class} into String."
913
+ elsif new_scheme
914
+ new_scheme = new_scheme.to_str
915
+ end
916
+ if new_scheme && new_scheme !~ /\A[a-z][a-z0-9\.\+\-]*\z/i
917
+ raise InvalidURIError, "Invalid scheme format: '#{new_scheme}'"
918
+ end
919
+ @scheme = new_scheme
920
+ @scheme = nil if @scheme.to_s.strip.empty?
921
+
922
+ # Reset dependent values
923
+ remove_instance_variable(:@normalized_scheme) if defined?(@normalized_scheme)
924
+ remove_composite_values
925
+
926
+ # Ensure we haven't created an invalid URI
927
+ validate()
928
+ end
929
+
930
+ ##
931
+ # The user component for this URI.
932
+ #
933
+ # @return [String] The user component.
934
+ def user
935
+ return defined?(@user) ? @user : nil
936
+ end
937
+
938
+ ##
939
+ # The user component for this URI, normalized.
940
+ #
941
+ # @return [String] The user component, normalized.
942
+ def normalized_user
943
+ return nil unless self.user
944
+ return @normalized_user if defined?(@normalized_user)
945
+ @normalized_user ||= begin
946
+ if normalized_scheme =~ /https?/ && self.user.strip.empty? &&
947
+ (!self.password || self.password.strip.empty?)
948
+ nil
949
+ else
950
+ Addressable::URI.normalize_component(
951
+ self.user.strip,
952
+ Addressable::URI::NormalizeCharacterClasses::UNRESERVED
953
+ )
954
+ end
955
+ end
956
+ # All normalized values should be UTF-8
957
+ force_utf8_encoding_if_needed(@normalized_user)
958
+ @normalized_user
959
+ end
960
+
961
+ ##
962
+ # Sets the user component for this URI.
963
+ #
964
+ # @param [String, #to_str] new_user The new user component.
965
+ def user=(new_user)
966
+ if new_user && !new_user.respond_to?(:to_str)
967
+ raise TypeError, "Can't convert #{new_user.class} into String."
968
+ end
969
+ @user = new_user ? new_user.to_str : nil
970
+
971
+ # You can't have a nil user with a non-nil password
972
+ if password != nil
973
+ @user = EMPTY_STR if @user.nil?
974
+ end
975
+
976
+ # Reset dependent values
977
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
978
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
979
+ remove_instance_variable(:@authority) if defined?(@authority)
980
+ remove_instance_variable(:@normalized_user) if defined?(@normalized_user)
981
+ remove_composite_values
982
+
983
+ # Ensure we haven't created an invalid URI
984
+ validate()
985
+ end
986
+
987
+ ##
988
+ # The password component for this URI.
989
+ #
990
+ # @return [String] The password component.
991
+ def password
992
+ return defined?(@password) ? @password : nil
993
+ end
994
+
995
+ ##
996
+ # The password component for this URI, normalized.
997
+ #
998
+ # @return [String] The password component, normalized.
999
+ def normalized_password
1000
+ return nil unless self.password
1001
+ return @normalized_password if defined?(@normalized_password)
1002
+ @normalized_password ||= begin
1003
+ if self.normalized_scheme =~ /https?/ && self.password.strip.empty? &&
1004
+ (!self.user || self.user.strip.empty?)
1005
+ nil
1006
+ else
1007
+ Addressable::URI.normalize_component(
1008
+ self.password.strip,
1009
+ Addressable::URI::NormalizeCharacterClasses::UNRESERVED
1010
+ )
1011
+ end
1012
+ end
1013
+ # All normalized values should be UTF-8
1014
+ force_utf8_encoding_if_needed(@normalized_password)
1015
+ @normalized_password
1016
+ end
1017
+
1018
+ ##
1019
+ # Sets the password component for this URI.
1020
+ #
1021
+ # @param [String, #to_str] new_password The new password component.
1022
+ def password=(new_password)
1023
+ if new_password && !new_password.respond_to?(:to_str)
1024
+ raise TypeError, "Can't convert #{new_password.class} into String."
1025
+ end
1026
+ @password = new_password ? new_password.to_str : nil
1027
+
1028
+ # You can't have a nil user with a non-nil password
1029
+ @password ||= nil
1030
+ @user ||= nil
1031
+ if @password != nil
1032
+ @user = EMPTY_STR if @user.nil?
1033
+ end
1034
+
1035
+ # Reset dependent values
1036
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
1037
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
1038
+ remove_instance_variable(:@authority) if defined?(@authority)
1039
+ remove_instance_variable(:@normalized_password) if defined?(@normalized_password)
1040
+ remove_composite_values
1041
+
1042
+ # Ensure we haven't created an invalid URI
1043
+ validate()
1044
+ end
1045
+
1046
+ ##
1047
+ # The userinfo component for this URI.
1048
+ # Combines the user and password components.
1049
+ #
1050
+ # @return [String] The userinfo component.
1051
+ def userinfo
1052
+ current_user = self.user
1053
+ current_password = self.password
1054
+ (current_user || current_password) && @userinfo ||= begin
1055
+ if current_user && current_password
1056
+ "#{current_user}:#{current_password}"
1057
+ elsif current_user && !current_password
1058
+ "#{current_user}"
1059
+ end
1060
+ end
1061
+ end
1062
+
1063
+ ##
1064
+ # The userinfo component for this URI, normalized.
1065
+ #
1066
+ # @return [String] The userinfo component, normalized.
1067
+ def normalized_userinfo
1068
+ return nil unless self.userinfo
1069
+ return @normalized_userinfo if defined?(@normalized_userinfo)
1070
+ @normalized_userinfo ||= begin
1071
+ current_user = self.normalized_user
1072
+ current_password = self.normalized_password
1073
+ if !current_user && !current_password
1074
+ nil
1075
+ elsif current_user && current_password
1076
+ "#{current_user}:#{current_password}".dup
1077
+ elsif current_user && !current_password
1078
+ "#{current_user}".dup
1079
+ end
1080
+ end
1081
+ # All normalized values should be UTF-8
1082
+ force_utf8_encoding_if_needed(@normalized_userinfo)
1083
+ @normalized_userinfo
1084
+ end
1085
+
1086
+ ##
1087
+ # Sets the userinfo component for this URI.
1088
+ #
1089
+ # @param [String, #to_str] new_userinfo The new userinfo component.
1090
+ def userinfo=(new_userinfo)
1091
+ if new_userinfo && !new_userinfo.respond_to?(:to_str)
1092
+ raise TypeError, "Can't convert #{new_userinfo.class} into String."
1093
+ end
1094
+ new_user, new_password = if new_userinfo
1095
+ [
1096
+ new_userinfo.to_str.strip[/^(.*):/, 1],
1097
+ new_userinfo.to_str.strip[/:(.*)$/, 1]
1098
+ ]
1099
+ else
1100
+ [nil, nil]
1101
+ end
1102
+
1103
+ # Password assigned first to ensure validity in case of nil
1104
+ self.password = new_password
1105
+ self.user = new_user
1106
+
1107
+ # Reset dependent values
1108
+ remove_instance_variable(:@authority) if defined?(@authority)
1109
+ remove_composite_values
1110
+
1111
+ # Ensure we haven't created an invalid URI
1112
+ validate()
1113
+ end
1114
+
1115
+ ##
1116
+ # The host component for this URI.
1117
+ #
1118
+ # @return [String] The host component.
1119
+ def host
1120
+ return defined?(@host) ? @host : nil
1121
+ end
1122
+
1123
+ ##
1124
+ # The host component for this URI, normalized.
1125
+ #
1126
+ # @return [String] The host component, normalized.
1127
+ def normalized_host
1128
+ return nil unless self.host
1129
+
1130
+ @normalized_host ||= begin
1131
+ if !self.host.strip.empty?
1132
+ result = ::Addressable::IDNA.to_ascii(
1133
+ URI.unencode_component(self.host.strip.downcase)
1134
+ )
1135
+ if result =~ /[^\.]\.$/
1136
+ # Single trailing dots are unnecessary.
1137
+ result = result[0...-1]
1138
+ end
1139
+ result = Addressable::URI.normalize_component(
1140
+ result,
1141
+ NormalizeCharacterClasses::HOST
1142
+ )
1143
+ result
1144
+ else
1145
+ EMPTY_STR.dup
1146
+ end
1147
+ end
1148
+ # All normalized values should be UTF-8
1149
+ force_utf8_encoding_if_needed(@normalized_host)
1150
+ @normalized_host
1151
+ end
1152
+
1153
+ ##
1154
+ # Sets the host component for this URI.
1155
+ #
1156
+ # @param [String, #to_str] new_host The new host component.
1157
+ def host=(new_host)
1158
+ if new_host && !new_host.respond_to?(:to_str)
1159
+ raise TypeError, "Can't convert #{new_host.class} into String."
1160
+ end
1161
+ @host = new_host ? new_host.to_str : nil
1162
+
1163
+ # Reset dependent values
1164
+ remove_instance_variable(:@authority) if defined?(@authority)
1165
+ remove_instance_variable(:@normalized_host) if defined?(@normalized_host)
1166
+ remove_composite_values
1167
+
1168
+ # Ensure we haven't created an invalid URI
1169
+ validate()
1170
+ end
1171
+
1172
+ ##
1173
+ # This method is same as URI::Generic#host except
1174
+ # brackets for IPv6 (and 'IPvFuture') addresses are removed.
1175
+ #
1176
+ # @see Addressable::URI#host
1177
+ #
1178
+ # @return [String] The hostname for this URI.
1179
+ def hostname
1180
+ v = self.host
1181
+ /\A\[(.*)\]\z/ =~ v ? $1 : v
1182
+ end
1183
+
1184
+ ##
1185
+ # This method is same as URI::Generic#host= except
1186
+ # the argument can be a bare IPv6 address (or 'IPvFuture').
1187
+ #
1188
+ # @see Addressable::URI#host=
1189
+ #
1190
+ # @param [String, #to_str] new_hostname The new hostname for this URI.
1191
+ def hostname=(new_hostname)
1192
+ if new_hostname &&
1193
+ (new_hostname.respond_to?(:ipv4?) || new_hostname.respond_to?(:ipv6?))
1194
+ new_hostname = new_hostname.to_s
1195
+ elsif new_hostname && !new_hostname.respond_to?(:to_str)
1196
+ raise TypeError, "Can't convert #{new_hostname.class} into String."
1197
+ end
1198
+ v = new_hostname ? new_hostname.to_str : nil
1199
+ v = "[#{v}]" if /\A\[.*\]\z/ !~ v && /:/ =~ v
1200
+ self.host = v
1201
+ end
1202
+
1203
+ ##
1204
+ # Returns the top-level domain for this host.
1205
+ #
1206
+ # @example
1207
+ # Addressable::URI.parse("http://www.example.co.uk").tld # => "co.uk"
1208
+ def tld
1209
+ PublicSuffix.parse(self.host, ignore_private: true).tld
1210
+ end
1211
+
1212
+ ##
1213
+ # Sets the top-level domain for this URI.
1214
+ #
1215
+ # @param [String, #to_str] new_tld The new top-level domain.
1216
+ def tld=(new_tld)
1217
+ replaced_tld = host.sub(/#{tld}\z/, new_tld)
1218
+ self.host = PublicSuffix::Domain.new(replaced_tld).to_s
1219
+ end
1220
+
1221
+ ##
1222
+ # Returns the public suffix domain for this host.
1223
+ #
1224
+ # @example
1225
+ # Addressable::URI.parse("http://www.example.co.uk").domain # => "example.co.uk"
1226
+ def domain
1227
+ PublicSuffix.domain(self.host, ignore_private: true)
1228
+ end
1229
+
1230
+ ##
1231
+ # The authority component for this URI.
1232
+ # Combines the user, password, host, and port components.
1233
+ #
1234
+ # @return [String] The authority component.
1235
+ def authority
1236
+ self.host && @authority ||= begin
1237
+ authority = String.new
1238
+ if self.userinfo != nil
1239
+ authority << "#{self.userinfo}@"
1240
+ end
1241
+ authority << self.host
1242
+ if self.port != nil
1243
+ authority << ":#{self.port}"
1244
+ end
1245
+ authority
1246
+ end
1247
+ end
1248
+
1249
+ ##
1250
+ # The authority component for this URI, normalized.
1251
+ #
1252
+ # @return [String] The authority component, normalized.
1253
+ def normalized_authority
1254
+ return nil unless self.authority
1255
+ @normalized_authority ||= begin
1256
+ authority = String.new
1257
+ if self.normalized_userinfo != nil
1258
+ authority << "#{self.normalized_userinfo}@"
1259
+ end
1260
+ authority << self.normalized_host
1261
+ if self.normalized_port != nil
1262
+ authority << ":#{self.normalized_port}"
1263
+ end
1264
+ authority
1265
+ end
1266
+ # All normalized values should be UTF-8
1267
+ force_utf8_encoding_if_needed(@normalized_authority)
1268
+ @normalized_authority
1269
+ end
1270
+
1271
+ ##
1272
+ # Sets the authority component for this URI.
1273
+ #
1274
+ # @param [String, #to_str] new_authority The new authority component.
1275
+ def authority=(new_authority)
1276
+ if new_authority
1277
+ if !new_authority.respond_to?(:to_str)
1278
+ raise TypeError, "Can't convert #{new_authority.class} into String."
1279
+ end
1280
+ new_authority = new_authority.to_str
1281
+ new_userinfo = new_authority[/^([^\[\]]*)@/, 1]
1282
+ if new_userinfo
1283
+ new_user = new_userinfo.strip[/^([^:]*):?/, 1]
1284
+ new_password = new_userinfo.strip[/:(.*)$/, 1]
1285
+ end
1286
+ new_host = new_authority.sub(
1287
+ /^([^\[\]]*)@/, EMPTY_STR
1288
+ ).sub(
1289
+ /:([^:@\[\]]*?)$/, EMPTY_STR
1290
+ )
1291
+ new_port =
1292
+ new_authority[/:([^:@\[\]]*?)$/, 1]
1293
+ end
1294
+
1295
+ # Password assigned first to ensure validity in case of nil
1296
+ self.password = defined?(new_password) ? new_password : nil
1297
+ self.user = defined?(new_user) ? new_user : nil
1298
+ self.host = defined?(new_host) ? new_host : nil
1299
+ self.port = defined?(new_port) ? new_port : nil
1300
+
1301
+ # Reset dependent values
1302
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
1303
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
1304
+ remove_composite_values
1305
+
1306
+ # Ensure we haven't created an invalid URI
1307
+ validate()
1308
+ end
1309
+
1310
+ ##
1311
+ # The origin for this URI, serialized to ASCII, as per
1312
+ # RFC 6454, section 6.2.
1313
+ #
1314
+ # @return [String] The serialized origin.
1315
+ def origin
1316
+ if self.scheme && self.authority
1317
+ if self.normalized_port
1318
+ "#{self.normalized_scheme}://#{self.normalized_host}" +
1319
+ ":#{self.normalized_port}"
1320
+ else
1321
+ "#{self.normalized_scheme}://#{self.normalized_host}"
1322
+ end
1323
+ else
1324
+ "null"
1325
+ end
1326
+ end
1327
+
1328
+ ##
1329
+ # Sets the origin for this URI, serialized to ASCII, as per
1330
+ # RFC 6454, section 6.2. This assignment will reset the `userinfo`
1331
+ # component.
1332
+ #
1333
+ # @param [String, #to_str] new_origin The new origin component.
1334
+ def origin=(new_origin)
1335
+ if new_origin
1336
+ if !new_origin.respond_to?(:to_str)
1337
+ raise TypeError, "Can't convert #{new_origin.class} into String."
1338
+ end
1339
+ new_origin = new_origin.to_str
1340
+ new_scheme = new_origin[/^([^:\/?#]+):\/\//, 1]
1341
+ unless new_scheme
1342
+ raise InvalidURIError, 'An origin cannot omit the scheme.'
1343
+ end
1344
+ new_host = new_origin[/:\/\/([^\/?#:]+)/, 1]
1345
+ unless new_host
1346
+ raise InvalidURIError, 'An origin cannot omit the host.'
1347
+ end
1348
+ new_port = new_origin[/:([^:@\[\]\/]*?)$/, 1]
1349
+ end
1350
+
1351
+ self.scheme = defined?(new_scheme) ? new_scheme : nil
1352
+ self.host = defined?(new_host) ? new_host : nil
1353
+ self.port = defined?(new_port) ? new_port : nil
1354
+ self.userinfo = nil
1355
+
1356
+ # Reset dependent values
1357
+ remove_instance_variable(:@userinfo) if defined?(@userinfo)
1358
+ remove_instance_variable(:@normalized_userinfo) if defined?(@normalized_userinfo)
1359
+ remove_instance_variable(:@authority) if defined?(@authority)
1360
+ remove_instance_variable(:@normalized_authority) if defined?(@normalized_authority)
1361
+ remove_composite_values
1362
+
1363
+ # Ensure we haven't created an invalid URI
1364
+ validate()
1365
+ end
1366
+
1367
+ # Returns an array of known ip-based schemes. These schemes typically
1368
+ # use a similar URI form:
1369
+ # <code>//<user>:<password>@<host>:<port>/<url-path></code>
1370
+ def self.ip_based_schemes
1371
+ return self.port_mapping.keys
1372
+ end
1373
+
1374
+ # Returns a hash of common IP-based schemes and their default port
1375
+ # numbers. Adding new schemes to this hash, as necessary, will allow
1376
+ # for better URI normalization.
1377
+ def self.port_mapping
1378
+ PORT_MAPPING
1379
+ end
1380
+
1381
+ ##
1382
+ # The port component for this URI.
1383
+ # This is the port number actually given in the URI. This does not
1384
+ # infer port numbers from default values.
1385
+ #
1386
+ # @return [Integer] The port component.
1387
+ def port
1388
+ return defined?(@port) ? @port : nil
1389
+ end
1390
+
1391
+ ##
1392
+ # The port component for this URI, normalized.
1393
+ #
1394
+ # @return [Integer] The port component, normalized.
1395
+ def normalized_port
1396
+ return nil unless self.port
1397
+ return @normalized_port if defined?(@normalized_port)
1398
+ @normalized_port ||= begin
1399
+ if URI.port_mapping[self.normalized_scheme] == self.port
1400
+ nil
1401
+ else
1402
+ self.port
1403
+ end
1404
+ end
1405
+ end
1406
+
1407
+ ##
1408
+ # Sets the port component for this URI.
1409
+ #
1410
+ # @param [String, Integer, #to_s] new_port The new port component.
1411
+ def port=(new_port)
1412
+ if new_port != nil && new_port.respond_to?(:to_str)
1413
+ new_port = Addressable::URI.unencode_component(new_port.to_str)
1414
+ end
1415
+
1416
+ if new_port.respond_to?(:valid_encoding?) && !new_port.valid_encoding?
1417
+ raise InvalidURIError, "Invalid encoding in port"
1418
+ end
1419
+
1420
+ if new_port != nil && !(new_port.to_s =~ /^\d+$/)
1421
+ raise InvalidURIError,
1422
+ "Invalid port number: #{new_port.inspect}"
1423
+ end
1424
+
1425
+ @port = new_port.to_s.to_i
1426
+ @port = nil if @port == 0
1427
+
1428
+ # Reset dependent values
1429
+ remove_instance_variable(:@authority) if defined?(@authority)
1430
+ remove_instance_variable(:@normalized_port) if defined?(@normalized_port)
1431
+ remove_composite_values
1432
+
1433
+ # Ensure we haven't created an invalid URI
1434
+ validate()
1435
+ end
1436
+
1437
+ ##
1438
+ # The inferred port component for this URI.
1439
+ # This method will normalize to the default port for the URI's scheme if
1440
+ # the port isn't explicitly specified in the URI.
1441
+ #
1442
+ # @return [Integer] The inferred port component.
1443
+ def inferred_port
1444
+ if self.port.to_i == 0
1445
+ self.default_port
1446
+ else
1447
+ self.port.to_i
1448
+ end
1449
+ end
1450
+
1451
+ ##
1452
+ # The default port for this URI's scheme.
1453
+ # This method will always returns the default port for the URI's scheme
1454
+ # regardless of the presence of an explicit port in the URI.
1455
+ #
1456
+ # @return [Integer] The default port.
1457
+ def default_port
1458
+ URI.port_mapping[self.scheme.strip.downcase] if self.scheme
1459
+ end
1460
+
1461
+ ##
1462
+ # The combination of components that represent a site.
1463
+ # Combines the scheme, user, password, host, and port components.
1464
+ # Primarily useful for HTTP and HTTPS.
1465
+ #
1466
+ # For example, <code>"http://example.com/path?query"</code> would have a
1467
+ # <code>site</code> value of <code>"http://example.com"</code>.
1468
+ #
1469
+ # @return [String] The components that identify a site.
1470
+ def site
1471
+ (self.scheme || self.authority) && @site ||= begin
1472
+ site_string = "".dup
1473
+ site_string << "#{self.scheme}:" if self.scheme != nil
1474
+ site_string << "//#{self.authority}" if self.authority != nil
1475
+ site_string
1476
+ end
1477
+ end
1478
+
1479
+ ##
1480
+ # The normalized combination of components that represent a site.
1481
+ # Combines the scheme, user, password, host, and port components.
1482
+ # Primarily useful for HTTP and HTTPS.
1483
+ #
1484
+ # For example, <code>"http://example.com/path?query"</code> would have a
1485
+ # <code>site</code> value of <code>"http://example.com"</code>.
1486
+ #
1487
+ # @return [String] The normalized components that identify a site.
1488
+ def normalized_site
1489
+ return nil unless self.site
1490
+ @normalized_site ||= begin
1491
+ site_string = "".dup
1492
+ if self.normalized_scheme != nil
1493
+ site_string << "#{self.normalized_scheme}:"
1494
+ end
1495
+ if self.normalized_authority != nil
1496
+ site_string << "//#{self.normalized_authority}"
1497
+ end
1498
+ site_string
1499
+ end
1500
+ # All normalized values should be UTF-8
1501
+ force_utf8_encoding_if_needed(@normalized_site)
1502
+ @normalized_site
1503
+ end
1504
+
1505
+ ##
1506
+ # Sets the site value for this URI.
1507
+ #
1508
+ # @param [String, #to_str] new_site The new site value.
1509
+ def site=(new_site)
1510
+ if new_site
1511
+ if !new_site.respond_to?(:to_str)
1512
+ raise TypeError, "Can't convert #{new_site.class} into String."
1513
+ end
1514
+ new_site = new_site.to_str
1515
+ # These two regular expressions derived from the primary parsing
1516
+ # expression
1517
+ self.scheme = new_site[/^(?:([^:\/?#]+):)?(?:\/\/(?:[^\/?#]*))?$/, 1]
1518
+ self.authority = new_site[
1519
+ /^(?:(?:[^:\/?#]+):)?(?:\/\/([^\/?#]*))?$/, 1
1520
+ ]
1521
+ else
1522
+ self.scheme = nil
1523
+ self.authority = nil
1524
+ end
1525
+ end
1526
+
1527
+ ##
1528
+ # The path component for this URI.
1529
+ #
1530
+ # @return [String] The path component.
1531
+ def path
1532
+ return defined?(@path) ? @path : EMPTY_STR
1533
+ end
1534
+
1535
+ NORMPATH = /^(?!\/)[^\/:]*:.*$/
1536
+ ##
1537
+ # The path component for this URI, normalized.
1538
+ #
1539
+ # @return [String] The path component, normalized.
1540
+ def normalized_path
1541
+ @normalized_path ||= begin
1542
+ path = self.path.to_s
1543
+ if self.scheme == nil && path =~ NORMPATH
1544
+ # Relative paths with colons in the first segment are ambiguous.
1545
+ path = path.sub(":", "%2F")
1546
+ end
1547
+ # String#split(delimeter, -1) uses the more strict splitting behavior
1548
+ # found by default in Python.
1549
+ result = path.strip.split(SLASH, -1).map do |segment|
1550
+ Addressable::URI.normalize_component(
1551
+ segment,
1552
+ Addressable::URI::NormalizeCharacterClasses::PCHAR
1553
+ )
1554
+ end.join(SLASH)
1555
+
1556
+ result = URI.normalize_path(result)
1557
+ if result.empty? &&
1558
+ ["http", "https", "ftp", "tftp"].include?(self.normalized_scheme)
1559
+ result = SLASH.dup
1560
+ end
1561
+ result
1562
+ end
1563
+ # All normalized values should be UTF-8
1564
+ force_utf8_encoding_if_needed(@normalized_path)
1565
+ @normalized_path
1566
+ end
1567
+
1568
+ ##
1569
+ # Sets the path component for this URI.
1570
+ #
1571
+ # @param [String, #to_str] new_path The new path component.
1572
+ def path=(new_path)
1573
+ if new_path && !new_path.respond_to?(:to_str)
1574
+ raise TypeError, "Can't convert #{new_path.class} into String."
1575
+ end
1576
+ @path = (new_path || EMPTY_STR).to_str
1577
+ if !@path.empty? && @path[0..0] != SLASH && host != nil
1578
+ @path = "/#{@path}"
1579
+ end
1580
+
1581
+ # Reset dependent values
1582
+ remove_instance_variable(:@normalized_path) if defined?(@normalized_path)
1583
+ remove_composite_values
1584
+
1585
+ # Ensure we haven't created an invalid URI
1586
+ validate()
1587
+ end
1588
+
1589
+ ##
1590
+ # The basename, if any, of the file in the path component.
1591
+ #
1592
+ # @return [String] The path's basename.
1593
+ def basename
1594
+ # Path cannot be nil
1595
+ return File.basename(self.path).sub(/;[^\/]*$/, EMPTY_STR)
1596
+ end
1597
+
1598
+ ##
1599
+ # The extname, if any, of the file in the path component.
1600
+ # Empty string if there is no extension.
1601
+ #
1602
+ # @return [String] The path's extname.
1603
+ def extname
1604
+ return nil unless self.path
1605
+ return File.extname(self.basename)
1606
+ end
1607
+
1608
+ ##
1609
+ # The query component for this URI.
1610
+ #
1611
+ # @return [String] The query component.
1612
+ def query
1613
+ return defined?(@query) ? @query : nil
1614
+ end
1615
+
1616
+ ##
1617
+ # The query component for this URI, normalized.
1618
+ #
1619
+ # @return [String] The query component, normalized.
1620
+ def normalized_query(*flags)
1621
+ return nil unless self.query
1622
+ return @normalized_query if defined?(@normalized_query)
1623
+ @normalized_query ||= begin
1624
+ modified_query_class = Addressable::URI::CharacterClasses::QUERY.dup
1625
+ # Make sure possible key-value pair delimiters are escaped.
1626
+ modified_query_class.sub!("\\&", "").sub!("\\;", "")
1627
+ pairs = (query || "").split("&", -1)
1628
+ pairs.delete_if(&:empty?).uniq! if flags.include?(:compacted)
1629
+ pairs.sort! if flags.include?(:sorted)
1630
+ component = pairs.map do |pair|
1631
+ Addressable::URI.normalize_component(
1632
+ pair,
1633
+ Addressable::URI::NormalizeCharacterClasses::QUERY,
1634
+ "+"
1635
+ )
1636
+ end.join("&")
1637
+ component == "" ? nil : component
1638
+ end
1639
+ # All normalized values should be UTF-8
1640
+ force_utf8_encoding_if_needed(@normalized_query)
1641
+ @normalized_query
1642
+ end
1643
+
1644
+ ##
1645
+ # Sets the query component for this URI.
1646
+ #
1647
+ # @param [String, #to_str] new_query The new query component.
1648
+ def query=(new_query)
1649
+ if new_query && !new_query.respond_to?(:to_str)
1650
+ raise TypeError, "Can't convert #{new_query.class} into String."
1651
+ end
1652
+ @query = new_query ? new_query.to_str : nil
1653
+
1654
+ # Reset dependent values
1655
+ remove_instance_variable(:@normalized_query) if defined?(@normalized_query)
1656
+ remove_composite_values
1657
+ end
1658
+
1659
+ ##
1660
+ # Converts the query component to a Hash value.
1661
+ #
1662
+ # @param [Class] return_type The return type desired. Value must be either
1663
+ # `Hash` or `Array`.
1664
+ #
1665
+ # @return [Hash, Array, nil] The query string parsed as a Hash or Array
1666
+ # or nil if the query string is blank.
1667
+ #
1668
+ # @example
1669
+ # Addressable::URI.parse("?one=1&two=2&three=3").query_values
1670
+ # #=> {"one" => "1", "two" => "2", "three" => "3"}
1671
+ # Addressable::URI.parse("?one=two&one=three").query_values(Array)
1672
+ # #=> [["one", "two"], ["one", "three"]]
1673
+ # Addressable::URI.parse("?one=two&one=three").query_values(Hash)
1674
+ # #=> {"one" => "three"}
1675
+ # Addressable::URI.parse("?").query_values
1676
+ # #=> {}
1677
+ # Addressable::URI.parse("").query_values
1678
+ # #=> nil
1679
+ def query_values(return_type=Hash)
1680
+ empty_accumulator = Array == return_type ? [] : {}
1681
+ if return_type != Hash && return_type != Array
1682
+ raise ArgumentError, "Invalid return type. Must be Hash or Array."
1683
+ end
1684
+ return nil if self.query == nil
1685
+ split_query = self.query.split("&").map do |pair|
1686
+ pair.split("=", 2) if pair && !pair.empty?
1687
+ end.compact
1688
+ return split_query.inject(empty_accumulator.dup) do |accu, pair|
1689
+ # I'd rather use key/value identifiers instead of array lookups,
1690
+ # but in this case I really want to maintain the exact pair structure,
1691
+ # so it's best to make all changes in-place.
1692
+ pair[0] = URI.unencode_component(pair[0])
1693
+ if pair[1].respond_to?(:to_str)
1694
+ value = pair[1].to_str
1695
+ # I loathe the fact that I have to do this. Stupid HTML 4.01.
1696
+ # Treating '+' as a space was just an unbelievably bad idea.
1697
+ # There was nothing wrong with '%20'!
1698
+ # If it ain't broke, don't fix it!
1699
+ value = value.tr("+", " ") if ["http", "https", nil].include?(scheme)
1700
+ pair[1] = URI.unencode_component(value)
1701
+ end
1702
+ if return_type == Hash
1703
+ accu[pair[0]] = pair[1]
1704
+ else
1705
+ accu << pair
1706
+ end
1707
+ accu
1708
+ end
1709
+ end
1710
+
1711
+ ##
1712
+ # Sets the query component for this URI from a Hash object.
1713
+ # An empty Hash or Array will result in an empty query string.
1714
+ #
1715
+ # @param [Hash, #to_hash, Array] new_query_values The new query values.
1716
+ #
1717
+ # @example
1718
+ # uri.query_values = {:a => "a", :b => ["c", "d", "e"]}
1719
+ # uri.query
1720
+ # # => "a=a&b=c&b=d&b=e"
1721
+ # uri.query_values = [['a', 'a'], ['b', 'c'], ['b', 'd'], ['b', 'e']]
1722
+ # uri.query
1723
+ # # => "a=a&b=c&b=d&b=e"
1724
+ # uri.query_values = [['a', 'a'], ['b', ['c', 'd', 'e']]]
1725
+ # uri.query
1726
+ # # => "a=a&b=c&b=d&b=e"
1727
+ # uri.query_values = [['flag'], ['key', 'value']]
1728
+ # uri.query
1729
+ # # => "flag&key=value"
1730
+ def query_values=(new_query_values)
1731
+ if new_query_values == nil
1732
+ self.query = nil
1733
+ return nil
1734
+ end
1735
+
1736
+ if !new_query_values.is_a?(Array)
1737
+ if !new_query_values.respond_to?(:to_hash)
1738
+ raise TypeError,
1739
+ "Can't convert #{new_query_values.class} into Hash."
1740
+ end
1741
+ new_query_values = new_query_values.to_hash
1742
+ new_query_values = new_query_values.map do |key, value|
1743
+ key = key.to_s if key.kind_of?(Symbol)
1744
+ [key, value]
1745
+ end
1746
+ # Useful default for OAuth and caching.
1747
+ # Only to be used for non-Array inputs. Arrays should preserve order.
1748
+ new_query_values.sort!
1749
+ end
1750
+
1751
+ # new_query_values have form [['key1', 'value1'], ['key2', 'value2']]
1752
+ buffer = "".dup
1753
+ new_query_values.each do |key, value|
1754
+ encoded_key = URI.encode_component(
1755
+ key, CharacterClasses::UNRESERVED
1756
+ )
1757
+ if value == nil
1758
+ buffer << "#{encoded_key}&"
1759
+ elsif value.kind_of?(Array)
1760
+ value.each do |sub_value|
1761
+ encoded_value = URI.encode_component(
1762
+ sub_value, CharacterClasses::UNRESERVED
1763
+ )
1764
+ buffer << "#{encoded_key}=#{encoded_value}&"
1765
+ end
1766
+ else
1767
+ encoded_value = URI.encode_component(
1768
+ value, CharacterClasses::UNRESERVED
1769
+ )
1770
+ buffer << "#{encoded_key}=#{encoded_value}&"
1771
+ end
1772
+ end
1773
+ self.query = buffer.chop
1774
+ end
1775
+
1776
+ ##
1777
+ # The HTTP request URI for this URI. This is the path and the
1778
+ # query string.
1779
+ #
1780
+ # @return [String] The request URI required for an HTTP request.
1781
+ def request_uri
1782
+ return nil if self.absolute? && self.scheme !~ /^https?$/i
1783
+ return (
1784
+ (!self.path.empty? ? self.path : SLASH) +
1785
+ (self.query ? "?#{self.query}" : EMPTY_STR)
1786
+ )
1787
+ end
1788
+
1789
+ ##
1790
+ # Sets the HTTP request URI for this URI.
1791
+ #
1792
+ # @param [String, #to_str] new_request_uri The new HTTP request URI.
1793
+ def request_uri=(new_request_uri)
1794
+ if !new_request_uri.respond_to?(:to_str)
1795
+ raise TypeError, "Can't convert #{new_request_uri.class} into String."
1796
+ end
1797
+ if self.absolute? && self.scheme !~ /^https?$/i
1798
+ raise InvalidURIError,
1799
+ "Cannot set an HTTP request URI for a non-HTTP URI."
1800
+ end
1801
+ new_request_uri = new_request_uri.to_str
1802
+ path_component = new_request_uri[/^([^\?]*)\??(?:.*)$/, 1]
1803
+ query_component = new_request_uri[/^(?:[^\?]*)\?(.*)$/, 1]
1804
+ path_component = path_component.to_s
1805
+ path_component = (!path_component.empty? ? path_component : SLASH)
1806
+ self.path = path_component
1807
+ self.query = query_component
1808
+
1809
+ # Reset dependent values
1810
+ remove_composite_values
1811
+ end
1812
+
1813
+ ##
1814
+ # The fragment component for this URI.
1815
+ #
1816
+ # @return [String] The fragment component.
1817
+ def fragment
1818
+ return defined?(@fragment) ? @fragment : nil
1819
+ end
1820
+
1821
+ ##
1822
+ # The fragment component for this URI, normalized.
1823
+ #
1824
+ # @return [String] The fragment component, normalized.
1825
+ def normalized_fragment
1826
+ return nil unless self.fragment
1827
+ return @normalized_fragment if defined?(@normalized_fragment)
1828
+ @normalized_fragment ||= begin
1829
+ component = Addressable::URI.normalize_component(
1830
+ self.fragment,
1831
+ Addressable::URI::NormalizeCharacterClasses::FRAGMENT
1832
+ )
1833
+ component == "" ? nil : component
1834
+ end
1835
+ # All normalized values should be UTF-8
1836
+ force_utf8_encoding_if_needed(@normalized_fragment)
1837
+ @normalized_fragment
1838
+ end
1839
+
1840
+ ##
1841
+ # Sets the fragment component for this URI.
1842
+ #
1843
+ # @param [String, #to_str] new_fragment The new fragment component.
1844
+ def fragment=(new_fragment)
1845
+ if new_fragment && !new_fragment.respond_to?(:to_str)
1846
+ raise TypeError, "Can't convert #{new_fragment.class} into String."
1847
+ end
1848
+ @fragment = new_fragment ? new_fragment.to_str : nil
1849
+
1850
+ # Reset dependent values
1851
+ remove_instance_variable(:@normalized_fragment) if defined?(@normalized_fragment)
1852
+ remove_composite_values
1853
+
1854
+ # Ensure we haven't created an invalid URI
1855
+ validate()
1856
+ end
1857
+
1858
+ ##
1859
+ # Determines if the scheme indicates an IP-based protocol.
1860
+ #
1861
+ # @return [TrueClass, FalseClass]
1862
+ # <code>true</code> if the scheme indicates an IP-based protocol.
1863
+ # <code>false</code> otherwise.
1864
+ def ip_based?
1865
+ if self.scheme
1866
+ return URI.ip_based_schemes.include?(
1867
+ self.scheme.strip.downcase)
1868
+ end
1869
+ return false
1870
+ end
1871
+
1872
+ ##
1873
+ # Determines if the URI is relative.
1874
+ #
1875
+ # @return [TrueClass, FalseClass]
1876
+ # <code>true</code> if the URI is relative. <code>false</code>
1877
+ # otherwise.
1878
+ def relative?
1879
+ return self.scheme.nil?
1880
+ end
1881
+
1882
+ ##
1883
+ # Determines if the URI is absolute.
1884
+ #
1885
+ # @return [TrueClass, FalseClass]
1886
+ # <code>true</code> if the URI is absolute. <code>false</code>
1887
+ # otherwise.
1888
+ def absolute?
1889
+ return !relative?
1890
+ end
1891
+
1892
+ ##
1893
+ # Joins two URIs together.
1894
+ #
1895
+ # @param [String, Addressable::URI, #to_str] The URI to join with.
1896
+ #
1897
+ # @return [Addressable::URI] The joined URI.
1898
+ def join(uri)
1899
+ if !uri.respond_to?(:to_str)
1900
+ raise TypeError, "Can't convert #{uri.class} into String."
1901
+ end
1902
+ if !uri.kind_of?(URI)
1903
+ # Otherwise, convert to a String, then parse.
1904
+ uri = URI.parse(uri.to_str)
1905
+ end
1906
+ if uri.to_s.empty?
1907
+ return self.dup
1908
+ end
1909
+
1910
+ joined_scheme = nil
1911
+ joined_user = nil
1912
+ joined_password = nil
1913
+ joined_host = nil
1914
+ joined_port = nil
1915
+ joined_path = nil
1916
+ joined_query = nil
1917
+ joined_fragment = nil
1918
+
1919
+ # Section 5.2.2 of RFC 3986
1920
+ if uri.scheme != nil
1921
+ joined_scheme = uri.scheme
1922
+ joined_user = uri.user
1923
+ joined_password = uri.password
1924
+ joined_host = uri.host
1925
+ joined_port = uri.port
1926
+ joined_path = URI.normalize_path(uri.path)
1927
+ joined_query = uri.query
1928
+ else
1929
+ if uri.authority != nil
1930
+ joined_user = uri.user
1931
+ joined_password = uri.password
1932
+ joined_host = uri.host
1933
+ joined_port = uri.port
1934
+ joined_path = URI.normalize_path(uri.path)
1935
+ joined_query = uri.query
1936
+ else
1937
+ if uri.path == nil || uri.path.empty?
1938
+ joined_path = self.path
1939
+ if uri.query != nil
1940
+ joined_query = uri.query
1941
+ else
1942
+ joined_query = self.query
1943
+ end
1944
+ else
1945
+ if uri.path[0..0] == SLASH
1946
+ joined_path = URI.normalize_path(uri.path)
1947
+ else
1948
+ base_path = self.path.dup
1949
+ base_path = EMPTY_STR if base_path == nil
1950
+ base_path = URI.normalize_path(base_path)
1951
+
1952
+ # Section 5.2.3 of RFC 3986
1953
+ #
1954
+ # Removes the right-most path segment from the base path.
1955
+ if base_path.include?(SLASH)
1956
+ base_path.sub!(/\/[^\/]+$/, SLASH)
1957
+ else
1958
+ base_path = EMPTY_STR
1959
+ end
1960
+
1961
+ # If the base path is empty and an authority segment has been
1962
+ # defined, use a base path of SLASH
1963
+ if base_path.empty? && self.authority != nil
1964
+ base_path = SLASH
1965
+ end
1966
+
1967
+ joined_path = URI.normalize_path(base_path + uri.path)
1968
+ end
1969
+ joined_query = uri.query
1970
+ end
1971
+ joined_user = self.user
1972
+ joined_password = self.password
1973
+ joined_host = self.host
1974
+ joined_port = self.port
1975
+ end
1976
+ joined_scheme = self.scheme
1977
+ end
1978
+ joined_fragment = uri.fragment
1979
+
1980
+ return self.class.new(
1981
+ :scheme => joined_scheme,
1982
+ :user => joined_user,
1983
+ :password => joined_password,
1984
+ :host => joined_host,
1985
+ :port => joined_port,
1986
+ :path => joined_path,
1987
+ :query => joined_query,
1988
+ :fragment => joined_fragment
1989
+ )
1990
+ end
1991
+ alias_method :+, :join
1992
+
1993
+ ##
1994
+ # Destructive form of <code>join</code>.
1995
+ #
1996
+ # @param [String, Addressable::URI, #to_str] The URI to join with.
1997
+ #
1998
+ # @return [Addressable::URI] The joined URI.
1999
+ #
2000
+ # @see Addressable::URI#join
2001
+ def join!(uri)
2002
+ replace_self(self.join(uri))
2003
+ end
2004
+
2005
+ ##
2006
+ # Merges a URI with a <code>Hash</code> of components.
2007
+ # This method has different behavior from <code>join</code>. Any
2008
+ # components present in the <code>hash</code> parameter will override the
2009
+ # original components. The path component is not treated specially.
2010
+ #
2011
+ # @param [Hash, Addressable::URI, #to_hash] The components to merge with.
2012
+ #
2013
+ # @return [Addressable::URI] The merged URI.
2014
+ #
2015
+ # @see Hash#merge
2016
+ def merge(hash)
2017
+ if !hash.respond_to?(:to_hash)
2018
+ raise TypeError, "Can't convert #{hash.class} into Hash."
2019
+ end
2020
+ hash = hash.to_hash
2021
+
2022
+ if hash.has_key?(:authority)
2023
+ if (hash.keys & [:userinfo, :user, :password, :host, :port]).any?
2024
+ raise ArgumentError,
2025
+ "Cannot specify both an authority and any of the components " +
2026
+ "within the authority."
2027
+ end
2028
+ end
2029
+ if hash.has_key?(:userinfo)
2030
+ if (hash.keys & [:user, :password]).any?
2031
+ raise ArgumentError,
2032
+ "Cannot specify both a userinfo and either the user or password."
2033
+ end
2034
+ end
2035
+
2036
+ uri = self.class.new
2037
+ uri.defer_validation do
2038
+ # Bunch of crazy logic required because of the composite components
2039
+ # like userinfo and authority.
2040
+ uri.scheme =
2041
+ hash.has_key?(:scheme) ? hash[:scheme] : self.scheme
2042
+ if hash.has_key?(:authority)
2043
+ uri.authority =
2044
+ hash.has_key?(:authority) ? hash[:authority] : self.authority
2045
+ end
2046
+ if hash.has_key?(:userinfo)
2047
+ uri.userinfo =
2048
+ hash.has_key?(:userinfo) ? hash[:userinfo] : self.userinfo
2049
+ end
2050
+ if !hash.has_key?(:userinfo) && !hash.has_key?(:authority)
2051
+ uri.user =
2052
+ hash.has_key?(:user) ? hash[:user] : self.user
2053
+ uri.password =
2054
+ hash.has_key?(:password) ? hash[:password] : self.password
2055
+ end
2056
+ if !hash.has_key?(:authority)
2057
+ uri.host =
2058
+ hash.has_key?(:host) ? hash[:host] : self.host
2059
+ uri.port =
2060
+ hash.has_key?(:port) ? hash[:port] : self.port
2061
+ end
2062
+ uri.path =
2063
+ hash.has_key?(:path) ? hash[:path] : self.path
2064
+ uri.query =
2065
+ hash.has_key?(:query) ? hash[:query] : self.query
2066
+ uri.fragment =
2067
+ hash.has_key?(:fragment) ? hash[:fragment] : self.fragment
2068
+ end
2069
+
2070
+ return uri
2071
+ end
2072
+
2073
+ ##
2074
+ # Destructive form of <code>merge</code>.
2075
+ #
2076
+ # @param [Hash, Addressable::URI, #to_hash] The components to merge with.
2077
+ #
2078
+ # @return [Addressable::URI] The merged URI.
2079
+ #
2080
+ # @see Addressable::URI#merge
2081
+ def merge!(uri)
2082
+ replace_self(self.merge(uri))
2083
+ end
2084
+
2085
+ ##
2086
+ # Returns the shortest normalized relative form of this URI that uses the
2087
+ # supplied URI as a base for resolution. Returns an absolute URI if
2088
+ # necessary. This is effectively the opposite of <code>route_to</code>.
2089
+ #
2090
+ # @param [String, Addressable::URI, #to_str] uri The URI to route from.
2091
+ #
2092
+ # @return [Addressable::URI]
2093
+ # The normalized relative URI that is equivalent to the original URI.
2094
+ def route_from(uri)
2095
+ uri = URI.parse(uri).normalize
2096
+ normalized_self = self.normalize
2097
+ if normalized_self.relative?
2098
+ raise ArgumentError, "Expected absolute URI, got: #{self.to_s}"
2099
+ end
2100
+ if uri.relative?
2101
+ raise ArgumentError, "Expected absolute URI, got: #{uri.to_s}"
2102
+ end
2103
+ if normalized_self == uri
2104
+ return Addressable::URI.parse("##{normalized_self.fragment}")
2105
+ end
2106
+ components = normalized_self.to_hash
2107
+ if normalized_self.scheme == uri.scheme
2108
+ components[:scheme] = nil
2109
+ if normalized_self.authority == uri.authority
2110
+ components[:user] = nil
2111
+ components[:password] = nil
2112
+ components[:host] = nil
2113
+ components[:port] = nil
2114
+ if normalized_self.path == uri.path
2115
+ components[:path] = nil
2116
+ if normalized_self.query == uri.query
2117
+ components[:query] = nil
2118
+ end
2119
+ else
2120
+ if uri.path != SLASH and components[:path]
2121
+ self_splitted_path = split_path(components[:path])
2122
+ uri_splitted_path = split_path(uri.path)
2123
+ self_dir = self_splitted_path.shift
2124
+ uri_dir = uri_splitted_path.shift
2125
+ while !self_splitted_path.empty? && !uri_splitted_path.empty? and self_dir == uri_dir
2126
+ self_dir = self_splitted_path.shift
2127
+ uri_dir = uri_splitted_path.shift
2128
+ end
2129
+ components[:path] = (uri_splitted_path.fill('..') + [self_dir] + self_splitted_path).join(SLASH)
2130
+ end
2131
+ end
2132
+ end
2133
+ end
2134
+ # Avoid network-path references.
2135
+ if components[:host] != nil
2136
+ components[:scheme] = normalized_self.scheme
2137
+ end
2138
+ return Addressable::URI.new(
2139
+ :scheme => components[:scheme],
2140
+ :user => components[:user],
2141
+ :password => components[:password],
2142
+ :host => components[:host],
2143
+ :port => components[:port],
2144
+ :path => components[:path],
2145
+ :query => components[:query],
2146
+ :fragment => components[:fragment]
2147
+ )
2148
+ end
2149
+
2150
+ ##
2151
+ # Returns the shortest normalized relative form of the supplied URI that
2152
+ # uses this URI as a base for resolution. Returns an absolute URI if
2153
+ # necessary. This is effectively the opposite of <code>route_from</code>.
2154
+ #
2155
+ # @param [String, Addressable::URI, #to_str] uri The URI to route to.
2156
+ #
2157
+ # @return [Addressable::URI]
2158
+ # The normalized relative URI that is equivalent to the supplied URI.
2159
+ def route_to(uri)
2160
+ return URI.parse(uri).route_from(self)
2161
+ end
2162
+
2163
+ ##
2164
+ # Returns a normalized URI object.
2165
+ #
2166
+ # NOTE: This method does not attempt to fully conform to specifications.
2167
+ # It exists largely to correct other people's failures to read the
2168
+ # specifications, and also to deal with caching issues since several
2169
+ # different URIs may represent the same resource and should not be
2170
+ # cached multiple times.
2171
+ #
2172
+ # @return [Addressable::URI] The normalized URI.
2173
+ def normalize
2174
+ # This is a special exception for the frequently misused feed
2175
+ # URI scheme.
2176
+ if normalized_scheme == "feed"
2177
+ if self.to_s =~ /^feed:\/*http:\/*/
2178
+ return URI.parse(
2179
+ self.to_s[/^feed:\/*(http:\/*.*)/, 1]
2180
+ ).normalize
2181
+ end
2182
+ end
2183
+
2184
+ return self.class.new(
2185
+ :scheme => normalized_scheme,
2186
+ :authority => normalized_authority,
2187
+ :path => normalized_path,
2188
+ :query => normalized_query,
2189
+ :fragment => normalized_fragment
2190
+ )
2191
+ end
2192
+
2193
+ ##
2194
+ # Destructively normalizes this URI object.
2195
+ #
2196
+ # @return [Addressable::URI] The normalized URI.
2197
+ #
2198
+ # @see Addressable::URI#normalize
2199
+ def normalize!
2200
+ replace_self(self.normalize)
2201
+ end
2202
+
2203
+ ##
2204
+ # Creates a URI suitable for display to users. If semantic attacks are
2205
+ # likely, the application should try to detect these and warn the user.
2206
+ # See <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>,
2207
+ # section 7.6 for more information.
2208
+ #
2209
+ # @return [Addressable::URI] A URI suitable for display purposes.
2210
+ def display_uri
2211
+ display_uri = self.normalize
2212
+ display_uri.host = ::Addressable::IDNA.to_unicode(display_uri.host)
2213
+ return display_uri
2214
+ end
2215
+
2216
+ ##
2217
+ # Returns <code>true</code> if the URI objects are equal. This method
2218
+ # normalizes both URIs before doing the comparison, and allows comparison
2219
+ # against <code>Strings</code>.
2220
+ #
2221
+ # @param [Object] uri The URI to compare.
2222
+ #
2223
+ # @return [TrueClass, FalseClass]
2224
+ # <code>true</code> if the URIs are equivalent, <code>false</code>
2225
+ # otherwise.
2226
+ def ===(uri)
2227
+ if uri.respond_to?(:normalize)
2228
+ uri_string = uri.normalize.to_s
2229
+ else
2230
+ begin
2231
+ uri_string = ::Addressable::URI.parse(uri).normalize.to_s
2232
+ rescue InvalidURIError, TypeError
2233
+ return false
2234
+ end
2235
+ end
2236
+ return self.normalize.to_s == uri_string
2237
+ end
2238
+
2239
+ ##
2240
+ # Returns <code>true</code> if the URI objects are equal. This method
2241
+ # normalizes both URIs before doing the comparison.
2242
+ #
2243
+ # @param [Object] uri The URI to compare.
2244
+ #
2245
+ # @return [TrueClass, FalseClass]
2246
+ # <code>true</code> if the URIs are equivalent, <code>false</code>
2247
+ # otherwise.
2248
+ def ==(uri)
2249
+ return false unless uri.kind_of?(URI)
2250
+ return self.normalize.to_s == uri.normalize.to_s
2251
+ end
2252
+
2253
+ ##
2254
+ # Returns <code>true</code> if the URI objects are equal. This method
2255
+ # does NOT normalize either URI before doing the comparison.
2256
+ #
2257
+ # @param [Object] uri The URI to compare.
2258
+ #
2259
+ # @return [TrueClass, FalseClass]
2260
+ # <code>true</code> if the URIs are equivalent, <code>false</code>
2261
+ # otherwise.
2262
+ def eql?(uri)
2263
+ return false unless uri.kind_of?(URI)
2264
+ return self.to_s == uri.to_s
2265
+ end
2266
+
2267
+ ##
2268
+ # A hash value that will make a URI equivalent to its normalized
2269
+ # form.
2270
+ #
2271
+ # @return [Integer] A hash of the URI.
2272
+ def hash
2273
+ @hash ||= self.to_s.hash * -1
2274
+ end
2275
+
2276
+ ##
2277
+ # Clones the URI object.
2278
+ #
2279
+ # @return [Addressable::URI] The cloned URI.
2280
+ def dup
2281
+ duplicated_uri = self.class.new(
2282
+ :scheme => self.scheme ? self.scheme.dup : nil,
2283
+ :user => self.user ? self.user.dup : nil,
2284
+ :password => self.password ? self.password.dup : nil,
2285
+ :host => self.host ? self.host.dup : nil,
2286
+ :port => self.port,
2287
+ :path => self.path ? self.path.dup : nil,
2288
+ :query => self.query ? self.query.dup : nil,
2289
+ :fragment => self.fragment ? self.fragment.dup : nil
2290
+ )
2291
+ return duplicated_uri
2292
+ end
2293
+
2294
+ ##
2295
+ # Omits components from a URI.
2296
+ #
2297
+ # @param [Symbol] *components The components to be omitted.
2298
+ #
2299
+ # @return [Addressable::URI] The URI with components omitted.
2300
+ #
2301
+ # @example
2302
+ # uri = Addressable::URI.parse("http://example.com/path?query")
2303
+ # #=> #<Addressable::URI:0xcc5e7a URI:http://example.com/path?query>
2304
+ # uri.omit(:scheme, :authority)
2305
+ # #=> #<Addressable::URI:0xcc4d86 URI:/path?query>
2306
+ def omit(*components)
2307
+ invalid_components = components - [
2308
+ :scheme, :user, :password, :userinfo, :host, :port, :authority,
2309
+ :path, :query, :fragment
2310
+ ]
2311
+ unless invalid_components.empty?
2312
+ raise ArgumentError,
2313
+ "Invalid component names: #{invalid_components.inspect}."
2314
+ end
2315
+ duplicated_uri = self.dup
2316
+ duplicated_uri.defer_validation do
2317
+ components.each do |component|
2318
+ duplicated_uri.send((component.to_s + "=").to_sym, nil)
2319
+ end
2320
+ duplicated_uri.user = duplicated_uri.normalized_user
2321
+ end
2322
+ duplicated_uri
2323
+ end
2324
+
2325
+ ##
2326
+ # Destructive form of omit.
2327
+ #
2328
+ # @param [Symbol] *components The components to be omitted.
2329
+ #
2330
+ # @return [Addressable::URI] The URI with components omitted.
2331
+ #
2332
+ # @see Addressable::URI#omit
2333
+ def omit!(*components)
2334
+ replace_self(self.omit(*components))
2335
+ end
2336
+
2337
+ ##
2338
+ # Determines if the URI is an empty string.
2339
+ #
2340
+ # @return [TrueClass, FalseClass]
2341
+ # Returns <code>true</code> if empty, <code>false</code> otherwise.
2342
+ def empty?
2343
+ return self.to_s.empty?
2344
+ end
2345
+
2346
+ ##
2347
+ # Converts the URI to a <code>String</code>.
2348
+ #
2349
+ # @return [String] The URI's <code>String</code> representation.
2350
+ def to_s
2351
+ if self.scheme == nil && self.path != nil && !self.path.empty? &&
2352
+ self.path =~ NORMPATH
2353
+ raise InvalidURIError,
2354
+ "Cannot assemble URI string with ambiguous path: '#{self.path}'"
2355
+ end
2356
+ @uri_string ||= begin
2357
+ uri_string = String.new
2358
+ uri_string << "#{self.scheme}:" if self.scheme != nil
2359
+ uri_string << "//#{self.authority}" if self.authority != nil
2360
+ uri_string << self.path.to_s
2361
+ uri_string << "?#{self.query}" if self.query != nil
2362
+ uri_string << "##{self.fragment}" if self.fragment != nil
2363
+ uri_string.force_encoding(Encoding::UTF_8)
2364
+ uri_string
2365
+ end
2366
+ end
2367
+
2368
+ ##
2369
+ # URI's are glorified <code>Strings</code>. Allow implicit conversion.
2370
+ alias_method :to_str, :to_s
2371
+
2372
+ ##
2373
+ # Returns a Hash of the URI components.
2374
+ #
2375
+ # @return [Hash] The URI as a <code>Hash</code> of components.
2376
+ def to_hash
2377
+ return {
2378
+ :scheme => self.scheme,
2379
+ :user => self.user,
2380
+ :password => self.password,
2381
+ :host => self.host,
2382
+ :port => self.port,
2383
+ :path => self.path,
2384
+ :query => self.query,
2385
+ :fragment => self.fragment
2386
+ }
2387
+ end
2388
+
2389
+ ##
2390
+ # Returns a <code>String</code> representation of the URI object's state.
2391
+ #
2392
+ # @return [String] The URI object's state, as a <code>String</code>.
2393
+ def inspect
2394
+ sprintf("#<%s:%#0x URI:%s>", URI.to_s, self.object_id, self.to_s)
2395
+ end
2396
+
2397
+ ##
2398
+ # This method allows you to make several changes to a URI simultaneously,
2399
+ # which separately would cause validation errors, but in conjunction,
2400
+ # are valid. The URI will be revalidated as soon as the entire block has
2401
+ # been executed.
2402
+ #
2403
+ # @param [Proc] block
2404
+ # A set of operations to perform on a given URI.
2405
+ def defer_validation
2406
+ raise LocalJumpError, "No block given." unless block_given?
2407
+ @validation_deferred = true
2408
+ yield
2409
+ @validation_deferred = false
2410
+ validate
2411
+ return nil
2412
+ end
2413
+
2414
+ protected
2415
+ SELF_REF = '.'
2416
+ PARENT = '..'
2417
+
2418
+ RULE_2A = /\/\.\/|\/\.$/
2419
+ RULE_2B_2C = /\/([^\/]*)\/\.\.\/|\/([^\/]*)\/\.\.$/
2420
+ RULE_2D = /^\.\.?\/?/
2421
+ RULE_PREFIXED_PARENT = /^\/\.\.?\/|^(\/\.\.?)+\/?$/
2422
+
2423
+ ##
2424
+ # Resolves paths to their simplest form.
2425
+ #
2426
+ # @param [String] path The path to normalize.
2427
+ #
2428
+ # @return [String] The normalized path.
2429
+ def self.normalize_path(path)
2430
+ # Section 5.2.4 of RFC 3986
2431
+
2432
+ return if path.nil?
2433
+ normalized_path = path.dup
2434
+ loop do
2435
+ mod ||= normalized_path.gsub!(RULE_2A, SLASH)
2436
+
2437
+ pair = normalized_path.match(RULE_2B_2C)
2438
+ if pair
2439
+ parent = pair[1]
2440
+ current = pair[2]
2441
+ else
2442
+ parent = nil
2443
+ current = nil
2444
+ end
2445
+
2446
+ regexp = "/#{Regexp.escape(parent.to_s)}/\\.\\./|"
2447
+ regexp += "(/#{Regexp.escape(current.to_s)}/\\.\\.$)"
2448
+
2449
+ if pair && ((parent != SELF_REF && parent != PARENT) ||
2450
+ (current != SELF_REF && current != PARENT))
2451
+ mod ||= normalized_path.gsub!(Regexp.new(regexp), SLASH)
2452
+ end
2453
+
2454
+ mod ||= normalized_path.gsub!(RULE_2D, EMPTY_STR)
2455
+ # Non-standard, removes prefixed dotted segments from path.
2456
+ mod ||= normalized_path.gsub!(RULE_PREFIXED_PARENT, SLASH)
2457
+ break if mod.nil?
2458
+ end
2459
+
2460
+ normalized_path
2461
+ end
2462
+
2463
+ ##
2464
+ # Ensures that the URI is valid.
2465
+ def validate
2466
+ return if !!@validation_deferred
2467
+ if self.scheme != nil && self.ip_based? &&
2468
+ (self.host == nil || self.host.empty?) &&
2469
+ (self.path == nil || self.path.empty?)
2470
+ raise InvalidURIError,
2471
+ "Absolute URI missing hierarchical segment: '#{self.to_s}'"
2472
+ end
2473
+ if self.host == nil
2474
+ if self.port != nil ||
2475
+ self.user != nil ||
2476
+ self.password != nil
2477
+ raise InvalidURIError, "Hostname not supplied: '#{self.to_s}'"
2478
+ end
2479
+ end
2480
+ if self.path != nil && !self.path.empty? && self.path[0..0] != SLASH &&
2481
+ self.authority != nil
2482
+ raise InvalidURIError,
2483
+ "Cannot have a relative path with an authority set: '#{self.to_s}'"
2484
+ end
2485
+ if self.path != nil && !self.path.empty? &&
2486
+ self.path[0..1] == SLASH + SLASH && self.authority == nil
2487
+ raise InvalidURIError,
2488
+ "Cannot have a path with two leading slashes " +
2489
+ "without an authority set: '#{self.to_s}'"
2490
+ end
2491
+ unreserved = CharacterClasses::UNRESERVED
2492
+ sub_delims = CharacterClasses::SUB_DELIMS
2493
+ if !self.host.nil? && (self.host =~ /[<>{}\/\\\?\#\@"[[:space:]]]/ ||
2494
+ (self.host[/^\[(.*)\]$/, 1] != nil && self.host[/^\[(.*)\]$/, 1] !~
2495
+ Regexp.new("^[#{unreserved}#{sub_delims}:]*$")))
2496
+ raise InvalidURIError, "Invalid character in host: '#{self.host.to_s}'"
2497
+ end
2498
+ return nil
2499
+ end
2500
+
2501
+ ##
2502
+ # Replaces the internal state of self with the specified URI's state.
2503
+ # Used in destructive operations to avoid massive code repetition.
2504
+ #
2505
+ # @param [Addressable::URI] uri The URI to replace <code>self</code> with.
2506
+ #
2507
+ # @return [Addressable::URI] <code>self</code>.
2508
+ def replace_self(uri)
2509
+ # Reset dependent values
2510
+ instance_variables.each do |var|
2511
+ if instance_variable_defined?(var) && var != :@validation_deferred
2512
+ remove_instance_variable(var)
2513
+ end
2514
+ end
2515
+
2516
+ @scheme = uri.scheme
2517
+ @user = uri.user
2518
+ @password = uri.password
2519
+ @host = uri.host
2520
+ @port = uri.port
2521
+ @path = uri.path
2522
+ @query = uri.query
2523
+ @fragment = uri.fragment
2524
+ return self
2525
+ end
2526
+
2527
+ ##
2528
+ # Splits path string with "/" (slash).
2529
+ # It is considered that there is empty string after last slash when
2530
+ # path ends with slash.
2531
+ #
2532
+ # @param [String] path The path to split.
2533
+ #
2534
+ # @return [Array<String>] An array of parts of path.
2535
+ def split_path(path)
2536
+ splitted = path.split(SLASH)
2537
+ splitted << EMPTY_STR if path.end_with? SLASH
2538
+ splitted
2539
+ end
2540
+
2541
+ ##
2542
+ # Resets composite values for the entire URI
2543
+ #
2544
+ # @api private
2545
+ def remove_composite_values
2546
+ remove_instance_variable(:@uri_string) if defined?(@uri_string)
2547
+ remove_instance_variable(:@hash) if defined?(@hash)
2548
+ end
2549
+
2550
+ ##
2551
+ # Converts the string to be UTF-8 if it is not already UTF-8
2552
+ #
2553
+ # @api private
2554
+ def force_utf8_encoding_if_needed(str)
2555
+ if str && str.encoding != Encoding::UTF_8
2556
+ str.force_encoding(Encoding::UTF_8)
2557
+ end
2558
+ end
2559
+ end
2560
+ end