tdiary 5.2.2 → 5.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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