talon_one 6.0.0 → 7.0.0

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 (751) hide show
  1. checksums.yaml +4 -4
  2. data/.github/.example/.bundle/config +2 -0
  3. data/.github/.example/Gemfile +6 -0
  4. data/.github/.example/Gemfile.lock +47 -0
  5. data/.github/.example/example.rb +85 -0
  6. data/.github/.example/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-24/3.3.0/json-2.8.2/gem.build_complete +0 -0
  7. data/.github/.example/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-24/3.3.0/json-2.8.2/gem_make.out +24 -0
  8. data/.github/.example/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-24/3.3.0/json-2.8.2/json/ext/generator.bundle +0 -0
  9. data/.github/.example/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-24/3.3.0/json-2.8.2/json/ext/parser.bundle +0 -0
  10. data/.github/.example/vendor/bundle/ruby/3.3.0/extensions/arm64-darwin-24/3.3.0/json-2.8.2/mkmf.log +177 -0
  11. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.github/workflows/ruby.yml +41 -0
  12. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.gitignore +8 -0
  13. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.rspec +3 -0
  14. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/CHANGELOG.md +375 -0
  15. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Gemfile +43 -0
  16. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Guardfile +10 -0
  17. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/LICENSE +20 -0
  18. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/README.md +118 -0
  19. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Rakefile +40 -0
  20. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/ethon.gemspec +26 -0
  21. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curl.rb +90 -0
  22. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/classes.rb +65 -0
  23. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/codes.rb +122 -0
  24. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/constants.rb +80 -0
  25. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/form_options.rb +37 -0
  26. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/functions.rb +58 -0
  27. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/infos.rb +151 -0
  28. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/messages.rb +19 -0
  29. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/options.rb +503 -0
  30. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/curls/settings.rb +12 -0
  31. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/callbacks.rb +149 -0
  32. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/debug_info.rb +47 -0
  33. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/features.rb +31 -0
  34. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/form.rb +107 -0
  35. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/header.rb +61 -0
  36. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/actionable.rb +157 -0
  37. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/custom.rb +29 -0
  38. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/delete.rb +25 -0
  39. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/get.rb +24 -0
  40. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/head.rb +24 -0
  41. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/options.rb +24 -0
  42. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/patch.rb +24 -0
  43. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/post.rb +26 -0
  44. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/postable.rb +32 -0
  45. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/put.rb +27 -0
  46. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http/putable.rb +25 -0
  47. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/http.rb +68 -0
  48. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/informations.rb +116 -0
  49. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/mirror.rb +36 -0
  50. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/operations.rb +64 -0
  51. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/options.rb +50 -0
  52. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/params.rb +29 -0
  53. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/queryable.rb +154 -0
  54. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/response_callbacks.rb +136 -0
  55. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy/util.rb +28 -0
  56. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/easy.rb +315 -0
  57. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/ethon_error.rb +9 -0
  58. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/global_init.rb +13 -0
  59. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/invalid_option.rb +13 -0
  60. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/invalid_value.rb +13 -0
  61. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_add.rb +12 -0
  62. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_fdset.rb +12 -0
  63. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_remove.rb +12 -0
  64. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/multi_timeout.rb +13 -0
  65. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors/select.rb +13 -0
  66. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/errors.rb +17 -0
  67. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/libc.rb +21 -0
  68. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/loggable.rb +59 -0
  69. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi/operations.rb +228 -0
  70. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi/options.rb +117 -0
  71. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi/stack.rb +49 -0
  72. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/multi.rb +126 -0
  73. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon/version.rb +6 -0
  74. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/lib/ethon.rb +36 -0
  75. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/benchmarks.rb +104 -0
  76. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/memory_leaks.rb +114 -0
  77. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/perf_spec_helper.rb +37 -0
  78. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/memory_test_helpers.rb +76 -0
  79. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/os_memory_leak_tracker.rb +48 -0
  80. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/ruby_object_leak_tracker.rb +49 -0
  81. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/curl_spec.rb +38 -0
  82. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/callbacks_spec.rb +81 -0
  83. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/debug_info_spec.rb +54 -0
  84. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/features_spec.rb +24 -0
  85. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/form_spec.rb +104 -0
  86. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/header_spec.rb +79 -0
  87. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/custom_spec.rb +177 -0
  88. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/delete_spec.rb +21 -0
  89. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/get_spec.rb +126 -0
  90. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/head_spec.rb +80 -0
  91. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/options_spec.rb +51 -0
  92. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/patch_spec.rb +51 -0
  93. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/post_spec.rb +317 -0
  94. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/put_spec.rb +168 -0
  95. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http_spec.rb +64 -0
  96. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/informations_spec.rb +126 -0
  97. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/mirror_spec.rb +47 -0
  98. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/operations_spec.rb +271 -0
  99. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/options_spec.rb +193 -0
  100. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/queryable_spec.rb +235 -0
  101. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/response_callbacks_spec.rb +152 -0
  102. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/util_spec.rb +28 -0
  103. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy_spec.rb +203 -0
  104. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/libc_spec.rb +14 -0
  105. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/loggable_spec.rb +22 -0
  106. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/operations_spec.rb +298 -0
  107. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/options_spec.rb +182 -0
  108. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/stack_spec.rb +80 -0
  109. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi_spec.rb +152 -0
  110. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/spec_helper.rb +28 -0
  111. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/support/localhost_server.rb +95 -0
  112. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/support/server.rb +115 -0
  113. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/CHANGELOG.md +456 -0
  114. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/COPYING +49 -0
  115. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/Gemfile +21 -0
  116. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/LICENSE +24 -0
  117. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/LICENSE.SPECS +22 -0
  118. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/README.md +137 -0
  119. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/Rakefile +206 -0
  120. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/ffi.gemspec +42 -0
  121. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/2.5/ffi_c.bundle +0 -0
  122. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/2.6/ffi_c.bundle +0 -0
  123. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/2.7/ffi_c.bundle +0 -0
  124. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/3.0/ffi_c.bundle +0 -0
  125. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/3.1/ffi_c.bundle +0 -0
  126. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/3.2/ffi_c.bundle +0 -0
  127. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/3.3/ffi_c.bundle +0 -0
  128. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/abstract_memory.rb +44 -0
  129. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/autopointer.rb +180 -0
  130. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/buffer.rb +4 -0
  131. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/callback.rb +4 -0
  132. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/compat.rb +43 -0
  133. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/data_converter.rb +67 -0
  134. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/dynamic_library.rb +118 -0
  135. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/enum.rb +302 -0
  136. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/errno.rb +43 -0
  137. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/ffi.rb +50 -0
  138. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/function.rb +71 -0
  139. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/io.rb +62 -0
  140. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/library.rb +576 -0
  141. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/library_path.rb +109 -0
  142. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/managedstruct.rb +84 -0
  143. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/memorypointer.rb +1 -0
  144. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/aarch64-darwin/types.conf +130 -0
  145. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/aarch64-freebsd/types.conf +128 -0
  146. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/aarch64-freebsd12/types.conf +181 -0
  147. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/aarch64-linux/types.conf +175 -0
  148. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/aarch64-openbsd/types.conf +134 -0
  149. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/aarch64-windows/types.conf +52 -0
  150. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/arm-freebsd/types.conf +152 -0
  151. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/arm-freebsd12/types.conf +152 -0
  152. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/arm-linux/types.conf +132 -0
  153. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/hppa1.1-linux/types.conf +178 -0
  154. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/hppa2.0-linux/types.conf +178 -0
  155. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-cygwin/types.conf +3 -0
  156. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-darwin/types.conf +100 -0
  157. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-freebsd/types.conf +152 -0
  158. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-freebsd12/types.conf +152 -0
  159. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-gnu/types.conf +107 -0
  160. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-linux/types.conf +103 -0
  161. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-netbsd/types.conf +126 -0
  162. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-openbsd/types.conf +128 -0
  163. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-solaris/types.conf +122 -0
  164. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/i386-windows/types.conf +52 -0
  165. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/ia64-linux/types.conf +104 -0
  166. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/loongarch64-linux/types.conf +141 -0
  167. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mips-linux/types.conf +102 -0
  168. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mips64-linux/types.conf +104 -0
  169. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mips64el-linux/types.conf +104 -0
  170. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mipsel-linux/types.conf +102 -0
  171. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mipsisa32r6-linux/types.conf +102 -0
  172. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mipsisa32r6el-linux/types.conf +102 -0
  173. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mipsisa64r6-linux/types.conf +104 -0
  174. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/mipsisa64r6el-linux/types.conf +104 -0
  175. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/powerpc-aix/types.conf +180 -0
  176. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/powerpc-darwin/types.conf +100 -0
  177. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/powerpc-linux/types.conf +130 -0
  178. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/powerpc-openbsd/types.conf +156 -0
  179. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/powerpc64-linux/types.conf +104 -0
  180. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/powerpc64le-linux/types.conf +100 -0
  181. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/riscv64-linux/types.conf +104 -0
  182. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/s390-linux/types.conf +102 -0
  183. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/s390x-linux/types.conf +102 -0
  184. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/sparc-linux/types.conf +102 -0
  185. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/sparc-solaris/types.conf +128 -0
  186. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/sparcv9-linux/types.conf +102 -0
  187. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/sparcv9-openbsd/types.conf +156 -0
  188. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/sparcv9-solaris/types.conf +128 -0
  189. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/sw_64-linux/types.conf +141 -0
  190. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-cygwin/types.conf +3 -0
  191. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-darwin/types.conf +130 -0
  192. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-dragonflybsd/types.conf +130 -0
  193. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-freebsd/types.conf +128 -0
  194. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-freebsd12/types.conf +158 -0
  195. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-haiku/types.conf +117 -0
  196. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-linux/types.conf +132 -0
  197. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-msys/types.conf +119 -0
  198. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-netbsd/types.conf +128 -0
  199. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-openbsd/types.conf +134 -0
  200. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-solaris/types.conf +122 -0
  201. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform/x86_64-windows/types.conf +52 -0
  202. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/platform.rb +187 -0
  203. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/pointer.rb +167 -0
  204. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/struct.rb +317 -0
  205. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/struct_by_reference.rb +72 -0
  206. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/struct_layout.rb +96 -0
  207. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/struct_layout_builder.rb +227 -0
  208. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/tools/const_generator.rb +232 -0
  209. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/tools/generator.rb +105 -0
  210. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/tools/generator_task.rb +32 -0
  211. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/tools/struct_generator.rb +195 -0
  212. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/tools/types_generator.rb +137 -0
  213. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/types.rb +222 -0
  214. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/union.rb +43 -0
  215. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/variadic.rb +80 -0
  216. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi/version.rb +3 -0
  217. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/lib/ffi.rb +27 -0
  218. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/rakelib/ffi_gem_helper.rb +65 -0
  219. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/getlogin.rb +8 -0
  220. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/getpid.rb +8 -0
  221. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/gettimeofday.rb +18 -0
  222. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/hello.rb +8 -0
  223. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/hello_ractor.rb +11 -0
  224. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/inotify.rb +60 -0
  225. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/pty.rb +75 -0
  226. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/qsort.rb +20 -0
  227. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/samples/qsort_ractor.rb +28 -0
  228. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/abstract_memory.rbs +165 -0
  229. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/auto_pointer.rbs +27 -0
  230. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/buffer.rbs +18 -0
  231. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/data_converter.rbs +10 -0
  232. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/dynamic_library.rbs +9 -0
  233. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/enum.rbs +38 -0
  234. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/function.rbs +39 -0
  235. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/library.rbs +42 -0
  236. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/native_type.rbs +86 -0
  237. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/pointer.rbs +42 -0
  238. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/struct.rbs +76 -0
  239. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/struct_by_reference.rbs +11 -0
  240. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/struct_by_value.rbs +7 -0
  241. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/struct_layout.rbs +9 -0
  242. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/struct_layout_builder.rbs +5 -0
  243. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi/type.rbs +39 -0
  244. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/ffi-1.17.0-arm64-darwin/sig/ffi.rbs +26 -0
  245. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/BSDL +22 -0
  246. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/CHANGES.md +559 -0
  247. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/COPYING +56 -0
  248. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/LEGAL +60 -0
  249. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/README.md +195 -0
  250. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/fbuffer/fbuffer.h +184 -0
  251. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/generator/Makefile +270 -0
  252. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/generator/extconf.rb +10 -0
  253. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/generator/generator.c +1663 -0
  254. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/parser/Makefile +270 -0
  255. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/parser/extconf.rb +12 -0
  256. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/parser/parser.c +3238 -0
  257. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/ext/json/ext/parser/parser.rl +1465 -0
  258. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/json.gemspec +64 -0
  259. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/bigdecimal.rb +58 -0
  260. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/complex.rb +51 -0
  261. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/core.rb +12 -0
  262. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/date.rb +54 -0
  263. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/date_time.rb +67 -0
  264. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/exception.rb +49 -0
  265. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/ostruct.rb +54 -0
  266. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/range.rb +54 -0
  267. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/rational.rb +49 -0
  268. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/regexp.rb +48 -0
  269. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/set.rb +48 -0
  270. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/struct.rb +52 -0
  271. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/symbol.rb +47 -0
  272. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/add/time.rb +52 -0
  273. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/common.rb +876 -0
  274. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/ext/generator/state.rb +105 -0
  275. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/ext/generator.bundle +0 -0
  276. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/ext/parser.bundle +0 -0
  277. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/ext.rb +23 -0
  278. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/generic_object.rb +75 -0
  279. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/truffle_ruby/generator.rb +621 -0
  280. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json/version.rb +5 -0
  281. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/json-2.8.2/lib/json.rb +587 -0
  282. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.github/workflows/ci.yml +30 -0
  283. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.github/workflows/experimental.yml +33 -0
  284. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.gitignore +8 -0
  285. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/.rspec +4 -0
  286. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/CHANGELOG.md +410 -0
  287. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/CONTRIBUTING.md +20 -0
  288. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/Gemfile +36 -0
  289. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/Guardfile +9 -0
  290. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/LICENSE +22 -0
  291. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/README.md +588 -0
  292. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/Rakefile +38 -0
  293. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/UPGRADE.md +55 -0
  294. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/rack/typhoeus/middleware/params_decoder/helper.rb +76 -0
  295. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/rack/typhoeus/middleware/params_decoder.rb +57 -0
  296. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/rack/typhoeus.rb +1 -0
  297. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/adapters/faraday.rb +180 -0
  298. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/cache/dalli.rb +28 -0
  299. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/cache/rails.rb +28 -0
  300. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/cache/redis.rb +35 -0
  301. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/config.rb +85 -0
  302. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/easy_factory.rb +206 -0
  303. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/errors/no_stub.rb +12 -0
  304. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/errors/typhoeus_error.rb +8 -0
  305. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/errors.rb +9 -0
  306. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/expectation.rb +217 -0
  307. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/addable.rb +23 -0
  308. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/before.rb +31 -0
  309. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/block_connection.rb +35 -0
  310. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/cacheable.rb +15 -0
  311. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/memoizable.rb +56 -0
  312. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/queueable.rb +83 -0
  313. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/runnable.rb +19 -0
  314. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra/stubbable.rb +28 -0
  315. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/hydra.rb +95 -0
  316. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/pool.rb +70 -0
  317. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/railtie.rb +12 -0
  318. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/actions.rb +125 -0
  319. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/before.rb +30 -0
  320. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/block_connection.rb +52 -0
  321. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/cacheable.rb +38 -0
  322. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/callbacks.rb +151 -0
  323. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/marshal.rb +22 -0
  324. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/memoizable.rb +38 -0
  325. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/operations.rb +40 -0
  326. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/responseable.rb +29 -0
  327. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/streamable.rb +34 -0
  328. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request/stubbable.rb +30 -0
  329. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/request.rb +223 -0
  330. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/cacheable.rb +14 -0
  331. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/header.rb +105 -0
  332. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/informations.rb +305 -0
  333. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response/status.rb +106 -0
  334. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/response.rb +68 -0
  335. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus/version.rb +5 -0
  336. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/lib/typhoeus.rb +143 -0
  337. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/perf/profile.rb +14 -0
  338. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/perf/vs_nethttp.rb +64 -0
  339. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/rack/typhoeus/middleware/params_decoder/helper_spec.rb +156 -0
  340. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/rack/typhoeus/middleware/params_decoder_spec.rb +31 -0
  341. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/spec_helper.rb +29 -0
  342. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/support/localhost_server.rb +94 -0
  343. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/support/memory_cache.rb +15 -0
  344. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/support/server.rb +116 -0
  345. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/adapters/faraday_spec.rb +339 -0
  346. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/cache/dalli_spec.rb +41 -0
  347. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/cache/redis_spec.rb +41 -0
  348. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/config_spec.rb +15 -0
  349. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/easy_factory_spec.rb +143 -0
  350. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/errors/no_stub_spec.rb +13 -0
  351. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/expectation_spec.rb +280 -0
  352. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/addable_spec.rb +22 -0
  353. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/before_spec.rb +98 -0
  354. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/block_connection_spec.rb +18 -0
  355. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/cacheable_spec.rb +88 -0
  356. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/memoizable_spec.rb +53 -0
  357. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/queueable_spec.rb +98 -0
  358. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/runnable_spec.rb +137 -0
  359. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra/stubbable_spec.rb +48 -0
  360. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/hydra_spec.rb +22 -0
  361. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/pool_spec.rb +137 -0
  362. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/actions_spec.rb +19 -0
  363. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/before_spec.rb +93 -0
  364. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/block_connection_spec.rb +75 -0
  365. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/cacheable_spec.rb +94 -0
  366. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/callbacks_spec.rb +91 -0
  367. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/marshal_spec.rb +60 -0
  368. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/memoizable_spec.rb +34 -0
  369. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/operations_spec.rb +101 -0
  370. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/responseable_spec.rb +13 -0
  371. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request/stubbable_spec.rb +45 -0
  372. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/request_spec.rb +256 -0
  373. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response/header_spec.rb +147 -0
  374. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response/informations_spec.rb +323 -0
  375. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response/status_spec.rb +256 -0
  376. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus/response_spec.rb +100 -0
  377. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/spec/typhoeus_spec.rb +105 -0
  378. data/.github/.example/vendor/bundle/ruby/3.3.0/gems/typhoeus-1.4.1/typhoeus.gemspec +25 -0
  379. data/.github/.example/vendor/bundle/ruby/3.3.0/specifications/ethon-0.16.0.gemspec +24 -0
  380. data/.github/.example/vendor/bundle/ruby/3.3.0/specifications/ffi-1.17.0-arm64-darwin.gemspec +31 -0
  381. data/.github/.example/vendor/bundle/ruby/3.3.0/specifications/json-2.8.2.gemspec +0 -0
  382. data/.github/.example/vendor/bundle/ruby/3.3.0/specifications/typhoeus-1.4.1.gemspec +24 -0
  383. data/.github/dependabot.yml +10 -0
  384. data/.github/workflows/test.yml +75 -0
  385. data/README.md +546 -562
  386. data/docker-compose.yml +47 -0
  387. data/docs/AccountAnalytics.md +1 -1
  388. data/docs/Achievement.md +8 -0
  389. data/docs/AdditionalCampaignProperties.md +1 -1
  390. data/docs/AnalyticsProduct.md +23 -0
  391. data/docs/AnalyticsProductSKU.md +21 -0
  392. data/docs/ApplicationCampaignStats.md +2 -0
  393. data/docs/ApplicationCustomer.md +8 -8
  394. data/docs/ApplicationSession.md +2 -2
  395. data/docs/AudienceCustomer.md +2 -2
  396. data/docs/BaseLoyaltyProgram.md +3 -1
  397. data/docs/BulkOperationOnCampaigns.md +3 -1
  398. data/docs/Campaign.md +3 -1
  399. data/docs/CampaignTemplate.md +3 -1
  400. data/docs/CampaignTemplateCouponReservationSettings.md +19 -0
  401. data/docs/CampaignVersions.md +3 -1
  402. data/docs/Change.md +1 -1
  403. data/docs/CouponDeletionFilters.md +1 -1
  404. data/docs/CreateAchievement.md +9 -1
  405. data/docs/CustomerProfile.md +2 -2
  406. data/docs/CustomerProfileAudienceRequestItem.md +1 -1
  407. data/docs/CustomerSession.md +1 -1
  408. data/docs/CustomerSessionV2.md +10 -8
  409. data/docs/FeatureFlag.md +1 -1
  410. data/docs/GenerateCampaignDescription.md +2 -2
  411. data/docs/GenerateCampaignTags.md +2 -2
  412. data/docs/GenerateLoyaltyCard.md +3 -1
  413. data/docs/InlineResponse20020.md +1 -1
  414. data/docs/InlineResponse20021.md +4 -2
  415. data/docs/InlineResponse20022.md +3 -3
  416. data/docs/InlineResponse20023.md +1 -1
  417. data/docs/InlineResponse20024.md +1 -3
  418. data/docs/InlineResponse20025.md +1 -1
  419. data/docs/InlineResponse20026.md +2 -2
  420. data/docs/InlineResponse20027.md +2 -2
  421. data/docs/InlineResponse20028.md +3 -3
  422. data/docs/InlineResponse20029.md +5 -3
  423. data/docs/InlineResponse20030.md +1 -3
  424. data/docs/InlineResponse20031.md +1 -1
  425. data/docs/InlineResponse20032.md +3 -1
  426. data/docs/InlineResponse20033.md +3 -5
  427. data/docs/InlineResponse20034.md +5 -3
  428. data/docs/InlineResponse20035.md +3 -5
  429. data/docs/InlineResponse20036.md +1 -1
  430. data/docs/InlineResponse20037.md +1 -1
  431. data/docs/InlineResponse20038.md +1 -1
  432. data/docs/InlineResponse20039.md +1 -1
  433. data/docs/InlineResponse20040.md +1 -1
  434. data/docs/InlineResponse20041.md +4 -2
  435. data/docs/InlineResponse20042.md +2 -4
  436. data/docs/InlineResponse20043.md +1 -1
  437. data/docs/InlineResponse20044.md +5 -3
  438. data/docs/InlineResponse20045.md +1 -3
  439. data/docs/InlineResponse20046.md +3 -3
  440. data/docs/IntegrationApi.md +8 -8
  441. data/docs/IntegrationCustomerSessionResponse.md +1 -1
  442. data/docs/LedgerInfo.md +2 -2
  443. data/docs/ListCampaignStoreBudgets.md +23 -0
  444. data/docs/ListCampaignStoreBudgetsStore.md +21 -0
  445. data/docs/LoyaltyCard.md +4 -0
  446. data/docs/LoyaltyCardBatch.md +3 -1
  447. data/docs/LoyaltyLedger.md +1 -1
  448. data/docs/LoyaltyMembership.md +1 -1
  449. data/docs/LoyaltyProgram.md +5 -3
  450. data/docs/LoyaltyProgramBalance.md +2 -2
  451. data/docs/LoyaltyProgramEntity.md +5 -1
  452. data/docs/LoyaltyTier.md +6 -2
  453. data/docs/ManagementApi.md +114 -188
  454. data/docs/MessageLogEntry.md +10 -2
  455. data/docs/NewCampaignStoreBudget.md +21 -0
  456. data/docs/NewCampaignStoreBudgetStoreLimit.md +19 -0
  457. data/docs/NewCampaignTemplate.md +2 -0
  458. data/docs/NewCustomerSessionV2.md +4 -4
  459. data/docs/NewLoyaltyProgram.md +2 -0
  460. data/docs/NewLoyaltyTier.md +2 -2
  461. data/docs/NewPicklist.md +1 -1
  462. data/docs/NewWebhook.md +1 -1
  463. data/docs/Picklist.md +1 -1
  464. data/docs/Product.md +1 -1
  465. data/docs/ProductSearchMatch.md +21 -0
  466. data/docs/ProductSkuUnitAnalytics.md +23 -0
  467. data/docs/ProductUnitAnalytics.md +25 -0
  468. data/docs/ScimNewUser.md +1 -1
  469. data/docs/ScimServiceProviderConfigResponse.md +3 -1
  470. data/docs/ScimServiceProviderConfigResponseSort.md +17 -0
  471. data/docs/ScimUser.md +1 -1
  472. data/docs/Store.md +2 -2
  473. data/docs/StrikethroughDebugResponse.md +19 -0
  474. data/docs/SummaryCampaignStoreBudget.md +21 -0
  475. data/docs/TemplateArgDef.md +2 -0
  476. data/docs/UpdateAchievement.md +9 -1
  477. data/docs/UpdateCampaignTemplate.md +2 -0
  478. data/docs/UpdateLoyaltyProgram.md +2 -0
  479. data/docs/UpdateLoyaltyProgramTier.md +21 -0
  480. data/docs/UpdatePicklist.md +1 -1
  481. data/docs/User.md +2 -2
  482. data/docs/ValueMap.md +23 -0
  483. data/docs/Webhook.md +1 -1
  484. data/docs/WebhookLogEntry.md +1 -1
  485. data/docs/WebhookWithOutgoingIntegrationDetails.md +1 -1
  486. data/lib/talon_one/api/integration_api.rb +13 -13
  487. data/lib/talon_one/api/management_api.rb +156 -245
  488. data/lib/talon_one/models/account.rb +0 -1
  489. data/lib/talon_one/models/account_additional_cost.rb +0 -1
  490. data/lib/talon_one/models/achievement.rb +87 -2
  491. data/lib/talon_one/models/add_loyalty_points_effect_props.rb +11 -0
  492. data/lib/talon_one/models/additional_campaign_properties.rb +3 -3
  493. data/lib/talon_one/models/analytics_product.rb +252 -0
  494. data/lib/talon_one/models/analytics_product_sku.rb +242 -0
  495. data/lib/talon_one/models/application.rb +0 -1
  496. data/lib/talon_one/models/application_api_key.rb +0 -1
  497. data/lib/talon_one/models/application_campaign_analytics.rb +2 -2
  498. data/lib/talon_one/models/application_campaign_stats.rb +16 -1
  499. data/lib/talon_one/models/application_cif.rb +0 -1
  500. data/lib/talon_one/models/application_cif_expression.rb +0 -1
  501. data/lib/talon_one/models/application_customer.rb +4 -5
  502. data/lib/talon_one/models/application_event.rb +0 -1
  503. data/lib/talon_one/models/application_referee.rb +0 -1
  504. data/lib/talon_one/models/application_session.rb +1 -2
  505. data/lib/talon_one/models/async_coupon_deletion_job_response.rb +0 -1
  506. data/lib/talon_one/models/attribute.rb +0 -1
  507. data/lib/talon_one/models/audience.rb +0 -1
  508. data/lib/talon_one/models/audience_customer.rb +1 -2
  509. data/lib/talon_one/models/base_loyalty_program.rb +26 -4
  510. data/lib/talon_one/models/base_notification.rb +0 -1
  511. data/lib/talon_one/models/base_notification_webhook.rb +0 -1
  512. data/lib/talon_one/models/bulk_operation_on_campaigns.rb +16 -6
  513. data/lib/talon_one/models/campaign.rb +26 -5
  514. data/lib/talon_one/models/campaign_analytics.rb +0 -1
  515. data/lib/talon_one/models/campaign_collection.rb +0 -1
  516. data/lib/talon_one/models/campaign_collection_without_payload.rb +0 -1
  517. data/lib/talon_one/models/campaign_evaluation_group.rb +0 -1
  518. data/lib/talon_one/models/campaign_group.rb +0 -1
  519. data/lib/talon_one/models/campaign_set.rb +0 -1
  520. data/lib/talon_one/models/campaign_store_budget.rb +0 -1
  521. data/lib/talon_one/models/campaign_template.rb +10 -2
  522. data/lib/talon_one/models/campaign_template_coupon_reservation_settings.rb +243 -0
  523. data/lib/talon_one/models/campaign_versions.rb +45 -1
  524. data/lib/talon_one/models/card_ledger_transaction_log_entry.rb +11 -0
  525. data/lib/talon_one/models/card_ledger_transaction_log_entry_integration_api.rb +11 -0
  526. data/lib/talon_one/models/catalog.rb +0 -1
  527. data/lib/talon_one/models/catalog_item.rb +0 -1
  528. data/lib/talon_one/models/change.rb +0 -1
  529. data/lib/talon_one/models/code_generator_settings.rb +11 -0
  530. data/lib/talon_one/models/collection.rb +0 -1
  531. data/lib/talon_one/models/collection_item.rb +0 -1
  532. data/lib/talon_one/models/collection_without_payload.rb +0 -1
  533. data/lib/talon_one/models/coupon.rb +0 -1
  534. data/lib/talon_one/models/coupon_creation_job.rb +0 -1
  535. data/lib/talon_one/models/coupon_deletion_filters.rb +0 -2
  536. data/lib/talon_one/models/coupon_deletion_job.rb +0 -1
  537. data/lib/talon_one/models/create_achievement.rb +90 -4
  538. data/lib/talon_one/models/custom_effect.rb +0 -1
  539. data/lib/talon_one/models/customer_profile.rb +1 -2
  540. data/lib/talon_one/models/customer_profile_audience_request_item.rb +1 -1
  541. data/lib/talon_one/models/customer_profile_integration_request_v2.rb +1 -1
  542. data/lib/talon_one/models/customer_session.rb +0 -1
  543. data/lib/talon_one/models/customer_session_v2.rb +20 -10
  544. data/lib/talon_one/models/deactivate_user_request.rb +0 -1
  545. data/lib/talon_one/models/deduct_loyalty_points_effect_props.rb +11 -0
  546. data/lib/talon_one/models/effect.rb +1 -1
  547. data/lib/talon_one/models/environment.rb +0 -1
  548. data/lib/talon_one/models/event.rb +0 -1
  549. data/lib/talon_one/models/event_type.rb +0 -1
  550. data/lib/talon_one/models/event_v2.rb +0 -1
  551. data/lib/talon_one/models/export.rb +0 -1
  552. data/lib/talon_one/models/features_feed.rb +0 -1
  553. data/lib/talon_one/models/generate_campaign_description.rb +11 -11
  554. data/lib/talon_one/models/generate_campaign_tags.rb +11 -11
  555. data/lib/talon_one/models/generate_loyalty_card.rb +40 -4
  556. data/lib/talon_one/models/giveaway.rb +0 -1
  557. data/lib/talon_one/models/import.rb +0 -1
  558. data/lib/talon_one/models/inline_response20020.rb +1 -1
  559. data/lib/talon_one/models/inline_response20021.rb +11 -7
  560. data/lib/talon_one/models/inline_response20022.rb +10 -10
  561. data/lib/talon_one/models/inline_response20023.rb +1 -1
  562. data/lib/talon_one/models/inline_response20024.rb +6 -10
  563. data/lib/talon_one/models/inline_response20025.rb +1 -1
  564. data/lib/talon_one/models/inline_response20026.rb +1 -6
  565. data/lib/talon_one/models/inline_response20027.rb +6 -1
  566. data/lib/talon_one/models/inline_response20028.rb +11 -11
  567. data/lib/talon_one/models/inline_response20029.rb +11 -7
  568. data/lib/talon_one/models/inline_response20030.rb +2 -11
  569. data/lib/talon_one/models/inline_response20031.rb +1 -1
  570. data/lib/talon_one/models/inline_response20032.rb +11 -2
  571. data/lib/talon_one/models/inline_response20033.rb +7 -11
  572. data/lib/talon_one/models/inline_response20034.rb +11 -7
  573. data/lib/talon_one/models/inline_response20035.rb +7 -11
  574. data/lib/talon_one/models/inline_response20036.rb +1 -1
  575. data/lib/talon_one/models/inline_response20037.rb +1 -1
  576. data/lib/talon_one/models/inline_response20038.rb +1 -1
  577. data/lib/talon_one/models/inline_response20039.rb +1 -1
  578. data/lib/talon_one/models/inline_response20040.rb +1 -1
  579. data/lib/talon_one/models/inline_response20041.rb +11 -7
  580. data/lib/talon_one/models/inline_response20042.rb +7 -11
  581. data/lib/talon_one/models/inline_response20043.rb +1 -1
  582. data/lib/talon_one/models/inline_response20044.rb +11 -7
  583. data/lib/talon_one/models/inline_response20045.rb +2 -11
  584. data/lib/talon_one/models/inline_response20046.rb +6 -1
  585. data/lib/talon_one/models/integration_coupon.rb +0 -1
  586. data/lib/talon_one/models/integration_customer_session_response.rb +1 -0
  587. data/lib/talon_one/models/integration_event.rb +0 -1
  588. data/lib/talon_one/models/integration_event_v2_request.rb +0 -1
  589. data/lib/talon_one/models/inventory_coupon.rb +0 -1
  590. data/lib/talon_one/models/inventory_referral.rb +0 -1
  591. data/lib/talon_one/models/item_attribute.rb +0 -1
  592. data/lib/talon_one/models/ledger_entry.rb +1 -1
  593. data/lib/talon_one/models/ledger_info.rb +3 -3
  594. data/lib/talon_one/models/library_attribute.rb +0 -1
  595. data/lib/talon_one/models/limit_counter.rb +0 -1
  596. data/lib/talon_one/models/list_campaign_store_budgets.rb +248 -0
  597. data/lib/talon_one/models/list_campaign_store_budgets_store.rb +239 -0
  598. data/lib/talon_one/models/login_params.rb +0 -1
  599. data/lib/talon_one/models/loyalty_balance_with_tier.rb +1 -1
  600. data/lib/talon_one/models/loyalty_card.rb +54 -2
  601. data/lib/talon_one/models/loyalty_card_balances.rb +1 -1
  602. data/lib/talon_one/models/loyalty_card_batch.rb +13 -5
  603. data/lib/talon_one/models/loyalty_program.rb +25 -3
  604. data/lib/talon_one/models/loyalty_program_balance.rb +2 -2
  605. data/lib/talon_one/models/loyalty_program_entity.rb +24 -4
  606. data/lib/talon_one/models/loyalty_program_transaction.rb +11 -0
  607. data/lib/talon_one/models/loyalty_tier.rb +24 -4
  608. data/lib/talon_one/models/management_key.rb +0 -1
  609. data/lib/talon_one/models/message_log_entry.rb +67 -7
  610. data/lib/talon_one/models/model_return.rb +0 -1
  611. data/lib/talon_one/models/multiple_audiences_item.rb +0 -1
  612. data/lib/talon_one/models/multiple_customer_profile_integration_request_item.rb +1 -1
  613. data/lib/talon_one/models/new_account_sign_up.rb +0 -1
  614. data/lib/talon_one/models/new_additional_cost.rb +0 -1
  615. data/lib/talon_one/models/new_application_api_key.rb +0 -1
  616. data/lib/talon_one/models/new_attribute.rb +0 -1
  617. data/lib/talon_one/models/new_audience.rb +0 -1
  618. data/lib/talon_one/models/new_base_notification.rb +0 -1
  619. data/lib/talon_one/models/new_campaign.rb +0 -1
  620. data/lib/talon_one/models/new_campaign_collection.rb +0 -1
  621. data/lib/talon_one/models/new_campaign_set.rb +0 -1
  622. data/lib/talon_one/models/new_campaign_store_budget.rb +283 -0
  623. data/lib/talon_one/models/new_campaign_store_budget_store_limit.rb +227 -0
  624. data/lib/talon_one/models/new_campaign_template.rb +10 -1
  625. data/lib/talon_one/models/new_catalog.rb +0 -1
  626. data/lib/talon_one/models/new_collection.rb +0 -1
  627. data/lib/talon_one/models/new_coupon_creation_job.rb +0 -1
  628. data/lib/talon_one/models/new_coupons.rb +0 -1
  629. data/lib/talon_one/models/new_coupons_for_multiple_recipients.rb +0 -1
  630. data/lib/talon_one/models/new_custom_effect.rb +0 -1
  631. data/lib/talon_one/models/new_customer_session.rb +0 -1
  632. data/lib/talon_one/models/new_customer_session_v2.rb +3 -3
  633. data/lib/talon_one/models/new_event.rb +0 -1
  634. data/lib/talon_one/models/new_event_type.rb +0 -1
  635. data/lib/talon_one/models/new_loyalty_program.rb +24 -2
  636. data/lib/talon_one/models/new_loyalty_tier.rb +2 -2
  637. data/lib/talon_one/models/new_management_key.rb +0 -1
  638. data/lib/talon_one/models/new_multiple_audiences_item.rb +0 -1
  639. data/lib/talon_one/models/new_referral.rb +0 -1
  640. data/lib/talon_one/models/new_referrals_for_multiple_advocates.rb +0 -1
  641. data/lib/talon_one/models/new_role.rb +0 -1
  642. data/lib/talon_one/models/new_role_v2.rb +0 -1
  643. data/lib/talon_one/models/new_saml_connection.rb +1 -1
  644. data/lib/talon_one/models/new_store.rb +0 -1
  645. data/lib/talon_one/models/new_user.rb +0 -1
  646. data/lib/talon_one/models/new_webhook.rb +1 -2
  647. data/lib/talon_one/models/outgoing_integration_template_with_configuration_details.rb +0 -1
  648. data/lib/talon_one/models/picklist.rb +0 -1
  649. data/lib/talon_one/models/product.rb +1 -1
  650. data/lib/talon_one/models/product_search_match.rb +237 -0
  651. data/lib/talon_one/models/product_sku_unit_analytics.rb +256 -0
  652. data/lib/talon_one/models/product_unit_analytics.rb +271 -0
  653. data/lib/talon_one/models/referral.rb +0 -1
  654. data/lib/talon_one/models/revision.rb +0 -1
  655. data/lib/talon_one/models/revision_version.rb +0 -1
  656. data/lib/talon_one/models/role.rb +0 -1
  657. data/lib/talon_one/models/role_assign.rb +0 -1
  658. data/lib/talon_one/models/role_v2.rb +0 -1
  659. data/lib/talon_one/models/rollback_added_loyalty_points_effect_props.rb +11 -0
  660. data/lib/talon_one/models/rollback_deducted_loyalty_points_effect_props.rb +11 -0
  661. data/lib/talon_one/models/ruleset.rb +0 -1
  662. data/lib/talon_one/models/saml_connection.rb +1 -1
  663. data/lib/talon_one/models/scim_new_user.rb +5 -0
  664. data/lib/talon_one/models/scim_service_provider_config_response.rb +13 -4
  665. data/lib/talon_one/models/scim_service_provider_config_response_sort.rb +208 -0
  666. data/lib/talon_one/models/scim_user.rb +5 -0
  667. data/lib/talon_one/models/store.rb +1 -2
  668. data/lib/talon_one/models/strikethrough_debug_response.rb +221 -0
  669. data/lib/talon_one/models/summary_campaign_store_budget.rb +280 -0
  670. data/lib/talon_one/models/talang_attribute.rb +0 -1
  671. data/lib/talon_one/models/template_arg_def.rb +11 -2
  672. data/lib/talon_one/models/template_def.rb +0 -1
  673. data/lib/talon_one/models/template_limit_config.rb +0 -1
  674. data/lib/talon_one/models/transfer_loyalty_card.rb +11 -0
  675. data/lib/talon_one/models/update_achievement.rb +90 -4
  676. data/lib/talon_one/models/update_campaign_evaluation_group.rb +0 -1
  677. data/lib/talon_one/models/update_campaign_group.rb +0 -1
  678. data/lib/talon_one/models/update_campaign_template.rb +10 -1
  679. data/lib/talon_one/models/update_coupon.rb +0 -1
  680. data/lib/talon_one/models/update_coupon_batch.rb +0 -1
  681. data/lib/talon_one/models/update_loyalty_program.rb +24 -2
  682. data/lib/talon_one/models/update_loyalty_program_tier.rb +257 -0
  683. data/lib/talon_one/models/update_picklist.rb +0 -1
  684. data/lib/talon_one/models/user.rb +0 -1
  685. data/lib/talon_one/models/value_map.rb +245 -0
  686. data/lib/talon_one/models/webhook.rb +1 -2
  687. data/lib/talon_one/models/webhook_log_entry.rb +1 -1
  688. data/lib/talon_one/models/webhook_with_outgoing_integration_details.rb +1 -2
  689. data/lib/talon_one/version.rb +1 -1
  690. data/lib/talon_one.rb +15 -4
  691. data/spec/api/integration_api_spec.rb +5 -5
  692. data/spec/api/management_api_spec.rb +58 -76
  693. data/spec/models/achievement_spec.rb +32 -0
  694. data/spec/models/additional_campaign_properties_spec.rb +1 -1
  695. data/spec/models/analytics_product_sku_spec.rb +53 -0
  696. data/spec/models/analytics_product_spec.rb +59 -0
  697. data/spec/models/application_campaign_analytics_spec.rb +1 -1
  698. data/spec/models/application_campaign_stats_spec.rb +6 -0
  699. data/spec/models/base_loyalty_program_spec.rb +10 -0
  700. data/spec/models/bulk_operation_on_campaigns_spec.rb +7 -1
  701. data/spec/models/campaign_spec.rb +11 -1
  702. data/spec/models/campaign_template_coupon_reservation_settings_spec.rb +47 -0
  703. data/spec/models/campaign_template_spec.rb +6 -0
  704. data/spec/models/campaign_versions_spec.rb +10 -0
  705. data/spec/models/create_achievement_spec.rb +32 -0
  706. data/spec/models/customer_session_v2_spec.rb +6 -0
  707. data/spec/models/generate_campaign_description_spec.rb +1 -1
  708. data/spec/models/generate_campaign_tags_spec.rb +1 -1
  709. data/spec/models/generate_loyalty_card_spec.rb +6 -0
  710. data/spec/models/inline_response20021_spec.rb +6 -0
  711. data/spec/models/inline_response20022_spec.rb +2 -2
  712. data/spec/models/inline_response20024_spec.rb +0 -6
  713. data/spec/models/inline_response20028_spec.rb +1 -1
  714. data/spec/models/inline_response20029_spec.rb +6 -0
  715. data/spec/models/inline_response20030_spec.rb +0 -6
  716. data/spec/models/inline_response20032_spec.rb +6 -0
  717. data/spec/models/inline_response20033_spec.rb +0 -6
  718. data/spec/models/inline_response20034_spec.rb +6 -0
  719. data/spec/models/inline_response20035_spec.rb +0 -6
  720. data/spec/models/inline_response20041_spec.rb +6 -0
  721. data/spec/models/inline_response20042_spec.rb +0 -6
  722. data/spec/models/inline_response20044_spec.rb +6 -0
  723. data/spec/models/inline_response20045_spec.rb +0 -6
  724. data/spec/models/limit_config_spec.rb +1 -1
  725. data/spec/models/list_campaign_store_budgets_spec.rb +59 -0
  726. data/spec/models/list_campaign_store_budgets_store_spec.rb +53 -0
  727. data/spec/models/loyalty_card_batch_spec.rb +6 -0
  728. data/spec/models/loyalty_card_spec.rb +12 -0
  729. data/spec/models/loyalty_program_entity_spec.rb +12 -0
  730. data/spec/models/loyalty_program_spec.rb +10 -0
  731. data/spec/models/loyalty_tier_spec.rb +12 -0
  732. data/spec/models/message_log_entry_spec.rb +25 -1
  733. data/spec/models/new_campaign_store_budget_spec.rb +61 -0
  734. data/spec/models/new_campaign_store_budget_store_limit_spec.rb +47 -0
  735. data/spec/models/new_campaign_template_spec.rb +6 -0
  736. data/spec/models/new_loyalty_program_spec.rb +10 -0
  737. data/spec/models/product_search_match_spec.rb +53 -0
  738. data/spec/models/product_sku_unit_analytics_spec.rb +59 -0
  739. data/spec/models/product_unit_analytics_spec.rb +65 -0
  740. data/spec/models/scim_service_provider_config_response_sort_spec.rb +41 -0
  741. data/spec/models/scim_service_provider_config_response_spec.rb +6 -0
  742. data/spec/models/strikethrough_debug_response_spec.rb +47 -0
  743. data/spec/models/summary_campaign_store_budget_spec.rb +61 -0
  744. data/spec/models/template_arg_def_spec.rb +6 -0
  745. data/spec/models/template_limit_config_spec.rb +1 -1
  746. data/spec/models/update_achievement_spec.rb +32 -0
  747. data/spec/models/update_campaign_template_spec.rb +6 -0
  748. data/spec/models/update_loyalty_program_spec.rb +10 -0
  749. data/spec/models/update_loyalty_program_tier_spec.rb +53 -0
  750. data/spec/models/value_map_spec.rb +59 -0
  751. metadata +447 -6
@@ -0,0 +1,76 @@
1
+ module Rack
2
+ module Typhoeus
3
+ module Middleware
4
+ class ParamsDecoder
5
+ module Helper
6
+
7
+ # Recursively decodes Typhoeus encoded arrays in given Hash.
8
+ #
9
+ # @example Use directly in a Rails controller.
10
+ # class ApplicationController
11
+ # before_filter :decode_typhoeus_arrays
12
+ # end
13
+ #
14
+ # @author Dwayne Macgowan
15
+ #
16
+ def decode_typhoeus_arrays
17
+ decode!(params)
18
+ end
19
+
20
+ # Recursively decodes Typhoeus encoded arrays in given Hash.
21
+ #
22
+ # @param hash [Hash]. This Hash will be modified!
23
+ #
24
+ # @return [Hash] Hash with properly decoded nested arrays.
25
+ def decode!(hash)
26
+ return hash unless hash.is_a?(Hash)
27
+ hash.each_pair do |key,value|
28
+ if value.is_a?(Hash)
29
+ decode!(value)
30
+ hash[key] = convert(value)
31
+ end
32
+ end
33
+ hash
34
+ end
35
+
36
+ def decode(hash)
37
+ decode!(hash.dup)
38
+ end
39
+
40
+ private
41
+
42
+ # Checks if Hash is an Array encoded as a Hash.
43
+ # Specifically will check for the Hash to have this
44
+ # form: {'0' => v0, '1' => v1, .., 'n' => vN }
45
+ #
46
+ # @param hash [Hash]
47
+ #
48
+ # @return [Boolean] True if its a encoded Array, else false.
49
+ def encoded?(hash)
50
+ return false if hash.empty?
51
+ if hash.keys.size > 1
52
+ keys = hash.keys.map{|i| i.to_i if i.respond_to?(:to_i)}.sort
53
+ keys == hash.keys.size.times.to_a
54
+ else
55
+ hash.keys.first =~ /0/
56
+ end
57
+ end
58
+
59
+ # If the Hash is an array encoded by typhoeus an array is returned
60
+ # else the self is returned
61
+ #
62
+ # @param hash [Hash] The Hash to convert into an Array.
63
+ #
64
+ # @return [Arraya/Hash]
65
+ def convert(hash)
66
+ if encoded?(hash)
67
+ hash.sort{ |a, b| a[0].to_i <=> b[0].to_i }.map{ |key, value| value }
68
+ else
69
+ hash
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,57 @@
1
+ require 'rack/typhoeus/middleware/params_decoder/helper'
2
+
3
+ module Rack
4
+ module Typhoeus
5
+ module Middleware
6
+
7
+ # This Rack middleware takes care of the proper deserialization of
8
+ # the nested params encoded by Typhoeus.
9
+ #
10
+ # @example Require the railtie when using Rails.
11
+ # require 'typhoeus/railtie'
12
+ #
13
+ # @example Include the middleware for Rack based applications.
14
+ # use Rack::Typhoeus::Middleware::ParamsDecoder
15
+ #
16
+ # @example Use the helper directly. Not recommended as b/c the interface might change.
17
+ # require 'rack/typhoeus/middleware/params_decoder/helper'
18
+ # include Rack::Typhoeus::Middleware::ParamsDecoder::Helper
19
+ # decode!(params)
20
+ #
21
+ # @author Dwayne Macgowan
22
+ # @since 0.5.4
23
+ class ParamsDecoder
24
+ include ParamsDecoder::Helper
25
+
26
+ def initialize(app)
27
+ @app = app
28
+ end
29
+
30
+ def call(env)
31
+ req = Rack::Request.new(env)
32
+ decode(req.params).each_pair { |k, v| update_params req, k, v }
33
+ @app.call(env)
34
+ end
35
+
36
+ private
37
+
38
+ # Persist params change in environment. Extracted from:
39
+ # https://github.com/rack/rack/blob/master/lib/rack/request.rb#L243
40
+ def update_params(req, k, v)
41
+ found = false
42
+ if req.GET.has_key?(k)
43
+ found = true
44
+ req.GET[k] = v
45
+ end
46
+ if req.POST.has_key?(k)
47
+ found = true
48
+ req.POST[k] = v
49
+ end
50
+ unless found
51
+ req.GET[k] = v
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1 @@
1
+ require "rack/typhoeus/middleware/params_decoder"
@@ -0,0 +1,180 @@
1
+ require 'faraday'
2
+
3
+ module Faraday # :nodoc:
4
+ class Adapter # :nodoc:
5
+
6
+ # Adapter to use Faraday with Typhoeus.
7
+ #
8
+ # @example Use Typhoeus.
9
+ # require 'faraday'
10
+ # require 'typhoeus'
11
+ # require 'typhoeus/adapters/faraday'
12
+ #
13
+ # conn = Faraday.new(url: "www.example.com") do |faraday|
14
+ # faraday.adapter :typhoeus
15
+ #
16
+ # # You can include Typhoeus options to be used for every request
17
+ # # faraday.adapter :typhoeus, forbid_reuse: true, maxredirs: 1
18
+ # end
19
+ #
20
+ # response = conn.get("/")
21
+ class Typhoeus < Faraday::Adapter
22
+ self.supports_parallel = true
23
+
24
+ (class << self; self; end).instance_eval do
25
+ remove_method :setup_parallel_manager if method_defined? :setup_parallel_manager
26
+ end
27
+
28
+ remove_method :call if method_defined? :call
29
+ remove_method :perform_request if method_defined? :perform_request
30
+ remove_method :request if method_defined? :request
31
+ remove_method :read_body if method_defined? :read_body
32
+ remove_method :configure_ssl if method_defined? :configure_ssl
33
+ remove_method :configure_proxy if method_defined? :configure_proxy
34
+ remove_method :configure_timeout if method_defined? :configure_timeout
35
+ remove_method :configure_socket if method_defined? :configure_socket
36
+ remove_method :parallel? if method_defined? :parallel?
37
+
38
+ # Initialize the Typhoeus adapter
39
+ #
40
+ # @param [ App ] app Farday app
41
+ # @option [ Hash ] adapter_options Typhoeus options
42
+ #
43
+ # @return [ void ]
44
+ def initialize(app, adapter_options = {})
45
+ super(app)
46
+ @adapter_options = adapter_options
47
+ end
48
+
49
+ # Setup Hydra with provided options.
50
+ #
51
+ # @example Setup Hydra.
52
+ # Faraday::Adapter::Typhoeus.setup_parallel_manager
53
+ # #=> #<Typhoeus::Hydra ... >
54
+ #
55
+ # @param (see Typhoeus::Hydra#initialize)
56
+ # @option (see Typhoeus::Hydra#initialize)
57
+ #
58
+ # @return [ Typhoeus::Hydra ] The hydra.
59
+ def self.setup_parallel_manager(options = {})
60
+ ::Typhoeus::Hydra.new(options)
61
+ end
62
+
63
+ dependency 'typhoeus'
64
+
65
+ # Hook into Faraday and perform the request with Typhoeus.
66
+ #
67
+ # @param [ Hash ] env The environment.
68
+ #
69
+ # @return [ void ]
70
+ def call(env)
71
+ super
72
+ perform_request env
73
+ @app.call env
74
+ end
75
+
76
+ private
77
+
78
+ def perform_request(env)
79
+ if parallel?(env)
80
+ env[:parallel_manager].queue request(env)
81
+ else
82
+ request(env).run
83
+ end
84
+ end
85
+
86
+ def request(env)
87
+ read_body env
88
+
89
+ req = typhoeus_request(env)
90
+
91
+ configure_ssl req, env
92
+ configure_proxy req, env
93
+ configure_timeout req, env
94
+ configure_socket req, env
95
+
96
+ req.on_complete do |resp|
97
+ if resp.timed_out?
98
+ env[:typhoeus_timed_out] = true
99
+ unless parallel?(env)
100
+ raise Faraday::TimeoutError, "request timed out"
101
+ end
102
+ elsif (resp.response_code == 0) || ((resp.return_code != :ok) && !resp.mock?)
103
+ env[:typhoeus_connection_failed] = true
104
+ env[:typhoeus_return_message] = resp.return_message
105
+ unless parallel?(env)
106
+ raise Faraday::ConnectionFailed, resp.return_message
107
+ end
108
+ end
109
+
110
+ save_response(env, resp.code, resp.body) do |response_headers|
111
+ response_headers.parse resp.response_headers
112
+ end
113
+ # in async mode, :response is initialized at this point
114
+ env[:response].finish(env) if parallel?(env)
115
+ end
116
+
117
+ req
118
+ end
119
+
120
+ def typhoeus_request(env)
121
+ opts = {
122
+ :method => env[:method],
123
+ :body => env[:body],
124
+ :headers => env[:request_headers]
125
+ }.merge(@adapter_options)
126
+
127
+ ::Typhoeus::Request.new(env[:url].to_s, opts)
128
+ end
129
+
130
+ def read_body(env)
131
+ env[:body] = env[:body].read if env[:body].respond_to? :read
132
+ end
133
+
134
+ def configure_ssl(req, env)
135
+ ssl = env[:ssl]
136
+
137
+ verify_p = (ssl && ssl.fetch(:verify, true))
138
+
139
+ ssl_verifyhost = verify_p ? 2 : 0
140
+ req.options[:ssl_verifyhost] = ssl_verifyhost
141
+ req.options[:ssl_verifypeer] = verify_p
142
+ req.options[:sslversion] = ssl[:version] if ssl[:version]
143
+ req.options[:sslcert] = ssl[:client_cert] if ssl[:client_cert]
144
+ req.options[:sslkey] = ssl[:client_key] if ssl[:client_key]
145
+ req.options[:cainfo] = ssl[:ca_file] if ssl[:ca_file]
146
+ req.options[:capath] = ssl[:ca_path] if ssl[:ca_path]
147
+ client_cert_passwd_key = [:client_cert_passwd, :client_certificate_password].detect { |name| ssl.key?(name) }
148
+ req.options[:keypasswd] = ssl[client_cert_passwd_key] if client_cert_passwd_key
149
+ end
150
+
151
+ def configure_proxy(req, env)
152
+ proxy = env[:request][:proxy]
153
+ return unless proxy
154
+
155
+ req.options[:proxy] = "#{proxy[:uri].scheme}://#{proxy[:uri].host}:#{proxy[:uri].port}"
156
+
157
+ if proxy[:user] && proxy[:password]
158
+ req.options[:proxyauth] = :any
159
+ req.options[:proxyuserpwd] = "#{proxy[:user]}:#{proxy[:password]}"
160
+ end
161
+ end
162
+
163
+ def configure_timeout(req, env)
164
+ env_req = env[:request]
165
+ req.options[:timeout_ms] = (env_req[:timeout] * 1000).to_i if env_req[:timeout]
166
+ req.options[:connecttimeout_ms] = (env_req[:open_timeout] * 1000).to_i if env_req[:open_timeout]
167
+ end
168
+
169
+ def configure_socket(req, env)
170
+ if bind = env[:request][:bind]
171
+ req.options[:interface] = bind[:host]
172
+ end
173
+ end
174
+
175
+ def parallel?(env)
176
+ !!env[:parallel_manager]
177
+ end
178
+ end
179
+ end
180
+ end
@@ -0,0 +1,28 @@
1
+ module Typhoeus
2
+ module Cache
3
+ # This module provides a simple way to cache HTTP responses using Dalli.
4
+ class Dalli
5
+ # @example Set Dalli as the Typhoeus cache backend
6
+ # Typhoeus::Config.cache = Typhoeus::Cache::Dalli.new
7
+ #
8
+ # @param [ Dalli::Client ] client
9
+ # A connection to the cache server. Defaults to `Dalli::Client.new`
10
+ # @param [ Hash ] options
11
+ # Options
12
+ # @option options [ Integer ] :default_ttl
13
+ # The default TTL of cached responses in seconds, for requests which do not set a cache_ttl.
14
+ def initialize(client = ::Dalli::Client.new, options = {})
15
+ @client = client
16
+ @default_ttl = options[:default_ttl]
17
+ end
18
+
19
+ def get(request)
20
+ @client.get(request.cache_key)
21
+ end
22
+
23
+ def set(request, response)
24
+ @client.set(request.cache_key, response, request.cache_ttl || @default_ttl)
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ module Typhoeus
2
+ module Cache
3
+ # This module provides a simple way to cache HTTP responses in using the Rails cache.
4
+ class Rails
5
+ # @example Use the Rails cache setup to cache Typhoeus responses.
6
+ # Typhoeus::Config.cache = Typhoeus::Cache::Rails.new
7
+ #
8
+ # @param [ ActiveSupport::Cache::Store ] cache
9
+ # A Rails cache backend. Defaults to Rails.cache.
10
+ # @param [ Hash ] options
11
+ # Options
12
+ # @option options [ Integer ] :default_ttl
13
+ # The default TTL of cached responses in seconds, for requests which do not set a cache_ttl.
14
+ def initialize(cache = ::Rails.cache, options = {})
15
+ @cache = cache
16
+ @default_ttl = options[:default_ttl]
17
+ end
18
+
19
+ def get(request)
20
+ @cache.read(request)
21
+ end
22
+
23
+ def set(request, response)
24
+ @cache.write(request.cache_key, response, :expires_in => request.cache_ttl || @default_ttl)
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,35 @@
1
+ module Typhoeus
2
+ module Cache
3
+ # This module provides a simple way to cache HTTP responses in Redis.
4
+ class Redis
5
+ # @example Set Redis as the Typhoeus cache backend
6
+ # Typhoeus::Config.cache = Typhoeus::Cache::Redis.new
7
+ #
8
+ # @param [ Redis ] redis
9
+ # A connection to Redis. Defaults to `Redis.new`, which uses the
10
+ # `REDIS_URL` environment variable to connect
11
+ # @param [ Hash ] options
12
+ # Options
13
+ # @option options [ Integer ] :default_ttl
14
+ # The default TTL of cached responses in seconds, for requests which do not set a cache_ttl.
15
+ def initialize(redis = ::Redis.new, options = {})
16
+ @redis = redis
17
+ @default_ttl = options[:default_ttl]
18
+ end
19
+
20
+ def get(request)
21
+ serialized_response = @redis.get(request.cache_key)
22
+ return unless serialized_response
23
+ Marshal.load(serialized_response)
24
+ end
25
+
26
+ def set(request, response)
27
+ ttl = request.cache_ttl || @default_ttl
28
+ key = request.cache_key
29
+ serialized_response = Marshal.dump(response)
30
+ @redis.set(key, serialized_response)
31
+ @redis.expire(key, ttl) if ttl
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,85 @@
1
+ module Typhoeus
2
+
3
+ # The Typhoeus configuration used to set global
4
+ # options.
5
+ # @example Set the configuration options within a block.
6
+ # Typhoeus.configure do |config|
7
+ # config.verbose = true
8
+ # end
9
+ #
10
+ # @example Set the configuration directly.
11
+ # Typhoeus::Config.verbose = true
12
+ module Config
13
+ extend self
14
+
15
+ # Defines whether the connection is blocked.
16
+ # Defaults to false. When set to true, only
17
+ # stubbed requests are allowed. A
18
+ # {Typhoeus::Errors::NoStub} error is raised,
19
+ # when trying to do a real request. It's possible
20
+ # to work around inside
21
+ # {Typhoeus.with_connection}.
22
+ #
23
+ # @return [ Boolean ]
24
+ #
25
+ # @see Typhoeus::Request::BlockConnection
26
+ # @see Typhoeus::Hydra::BlockConnection
27
+ # @see Typhoeus#with_connection
28
+ # @see Typhoeus::Errors::NoStub
29
+ attr_accessor :block_connection
30
+
31
+ # Defines whether GET requests are memoized when using the {Typhoeus::Hydra}.
32
+ #
33
+ # @return [ Boolean ]
34
+ #
35
+ # @see Typhoeus::Hydra
36
+ # @see Typhoeus::Hydra::Memoizable
37
+ attr_accessor :memoize
38
+
39
+ # Defines whether curls debug output is shown.
40
+ # Unfortunately it prints to stderr.
41
+ #
42
+ # @return [ Boolean ]
43
+ #
44
+ # @see http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTVERBOSE
45
+ attr_accessor :verbose
46
+
47
+ # Defines the default HTTP timeout for the entire request in seconds
48
+ # See README for more details about timeouts
49
+ #
50
+ # @return [ Integer, Float ]
51
+ #
52
+ # @see https://curl.haxx.se/libcurl/c/curl_easy_setopt#CURLOPTTIMEOUT
53
+ attr_accessor :timeout
54
+
55
+ # Defines the default HTTP timeout for the connection phase in seconds
56
+ # See README for more details about timeouts
57
+ #
58
+ # @return [ Integer, Float ]
59
+ #
60
+ # @see https://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTCONNECTTIMEOUT
61
+ attr_accessor :connecttimeout
62
+
63
+ # Defines whether requests are cached.
64
+ #
65
+ # @return [ Object ]
66
+ #
67
+ # @see Typhoeus::Hydra::Cacheable
68
+ # @see Typhoeus::Request::Cacheable
69
+ attr_accessor :cache
70
+
71
+ # Defines whether to use a default user agent.
72
+ #
73
+ # @return [ String ]
74
+ #
75
+ # @see Typhoeus::Request#set_defaults
76
+ attr_accessor :user_agent
77
+
78
+ # Defines wether to use a proxy server for every request.
79
+ #
80
+ # @return [ String ]
81
+ #
82
+ # @see Typhoeus::Request#set_defaults
83
+ attr_accessor :proxy
84
+ end
85
+ end
@@ -0,0 +1,206 @@
1
+ require 'set'
2
+
3
+ module Typhoeus
4
+
5
+ # This is a Factory for easies to be used in the hydra.
6
+ # Before an easy is ready to be added to a multi the
7
+ # on_complete callback to be set.
8
+ # This is done by this class.
9
+ #
10
+ # @api private
11
+ class EasyFactory
12
+
13
+ RENAMED_OPTIONS = {
14
+ :auth_method => :httpauth,
15
+ :connect_timeout => :connecttimeout,
16
+ :encoding => :accept_encoding,
17
+ :follow_location => :followlocation,
18
+ :max_redirects => :maxredirs,
19
+ :proxy_type => :proxytype,
20
+ :ssl_cacert => :cainfo,
21
+ :ssl_capath => :capath,
22
+ :ssl_cert => :sslcert,
23
+ :ssl_cert_type => :sslcerttype,
24
+ :ssl_key => :sslkey,
25
+ :ssl_key_password => :keypasswd,
26
+ :ssl_key_type => :sslkeytype,
27
+ :ssl_version => :sslversion,
28
+ }
29
+
30
+ CHANGED_OPTIONS = {
31
+ :disable_ssl_host_verification => :ssl_verifyhost,
32
+ :disable_ssl_peer_verification => :ssl_verifypeer,
33
+ :proxy_auth_method => :proxyauth,
34
+ }
35
+
36
+ REMOVED_OPTIONS = Set.new([:cache_key_basis, :cache_timeout, :user_agent])
37
+
38
+ SANITIZE_IGNORE = Set.new([:method, :cache_ttl, :cache])
39
+ SANITIZE_TIMEOUT = Set.new([:timeout_ms, :connecttimeout_ms])
40
+
41
+ # Returns the request provided.
42
+ #
43
+ # @return [ Typhoeus::Request ]
44
+ attr_reader :request
45
+
46
+ # Returns the hydra provided.
47
+ #
48
+ # @return [ Typhoeus::Hydra ]
49
+ attr_reader :hydra
50
+
51
+ # Create an easy factory.
52
+ #
53
+ # @example Create easy factory.
54
+ # Typhoeus::Hydra::EasyFactory.new(request, hydra)
55
+ #
56
+ # @param [ Request ] request The request to build an easy for.
57
+ # @param [ Hydra ] hydra The hydra to build an easy for.
58
+ def initialize(request, hydra = nil)
59
+ @request = request
60
+ @hydra = hydra
61
+ end
62
+
63
+ # Return the easy in question.
64
+ #
65
+ # @example Return easy.
66
+ # easy_factory.easy
67
+ #
68
+ # @return [ Ethon::Easy ] The easy.
69
+ def easy
70
+ @easy ||= Typhoeus::Pool.get
71
+ end
72
+
73
+ # Fabricated easy.
74
+ #
75
+ # @example Prepared easy.
76
+ # easy_factory.get
77
+ #
78
+ # @return [ Ethon::Easy ] The easy.
79
+ def get
80
+ begin
81
+ read_callback_body = request.options.delete(:set_read_callback)
82
+
83
+ easy.http_request(
84
+ request.base_url.to_s,
85
+ request.options.fetch(:method, :get),
86
+ sanitize(request.options)
87
+ )
88
+
89
+ # this needs to happen after http_request because
90
+ # ethon will set infilesize to zero if form.empty?
91
+ set_read_callback(read_callback_body) if !read_callback_body.nil?
92
+ rescue Ethon::Errors::InvalidOption => e
93
+ help = provide_help(e.message.match(/:\s(\w+)/)[1])
94
+ raise $!, "#{$!}#{help}", $!.backtrace
95
+ end
96
+ set_callback
97
+ easy
98
+ end
99
+
100
+ private
101
+
102
+ def sanitize(options)
103
+ # set nosignal to true by default
104
+ # this improves thread safety and timeout behavior
105
+ sanitized = {:nosignal => true}
106
+ options.each do |k,v|
107
+ s = k.to_sym
108
+ next if SANITIZE_IGNORE.include?(s)
109
+ if new_option = RENAMED_OPTIONS[k.to_sym]
110
+ warn("Deprecated option #{k}. Please use #{new_option} instead.")
111
+ sanitized[new_option] = v
112
+ # sanitize timeouts
113
+ elsif SANITIZE_TIMEOUT.include?(s)
114
+ if !v.integer?
115
+ warn("Value '#{v}' for option '#{k}' must be integer.")
116
+ end
117
+ sanitized[k] = v.ceil
118
+ else
119
+ sanitized[k] = v
120
+ end
121
+ end
122
+
123
+ sanitize_timeout!(sanitized, :timeout)
124
+ sanitize_timeout!(sanitized, :connecttimeout)
125
+
126
+ sanitized
127
+ end
128
+
129
+ def sanitize_timeout!(options, timeout)
130
+ timeout_ms = :"#{timeout}_ms"
131
+ if options[timeout] && options[timeout].round != options[timeout]
132
+ if !options[timeout_ms]
133
+ options[timeout_ms] = (options[timeout]*1000).ceil
134
+ end
135
+ options[timeout] = options[timeout].ceil
136
+ end
137
+ options
138
+ end
139
+
140
+ # Sets on_complete callback on easy in order to be able to
141
+ # track progress.
142
+ #
143
+ # @example Set callback.
144
+ # easy_factory.set_callback
145
+ #
146
+ # @return [ Ethon::Easy ] The easy.
147
+ def set_callback
148
+ if request.streaming?
149
+ response = nil
150
+ easy.on_headers do |easy|
151
+ response = Response.new(Ethon::Easy::Mirror.from_easy(easy).options)
152
+ request.execute_headers_callbacks(response)
153
+ end
154
+ request.on_body.each do |callback|
155
+ easy.on_body do |chunk, easy|
156
+ callback.call(chunk, response)
157
+ end
158
+ end
159
+ else
160
+ easy.on_headers do |easy|
161
+ request.execute_headers_callbacks(Response.new(Ethon::Easy::Mirror.from_easy(easy).options))
162
+ end
163
+ end
164
+ request.on_progress.each do |callback|
165
+ easy.on_progress do |dltotal, dlnow, ultotal, ulnow, easy|
166
+ callback.call(dltotal, dlnow, ultotal, ulnow, response)
167
+ end
168
+ end
169
+ easy.on_complete do |easy|
170
+ request.finish(Response.new(easy.mirror.options))
171
+ Typhoeus::Pool.release(easy)
172
+ if hydra && !hydra.queued_requests.empty?
173
+ hydra.dequeue_many
174
+ end
175
+ end
176
+ end
177
+
178
+ # Sets up an easy upload with CURLOPT_READFUNCTION
179
+ # along with CURLOPT_INFILESIZE_LARGE and CURLOPT_UPLOAD
180
+ #
181
+ # @param [ String/File ] body The body read by the readfunction.
182
+ #
183
+ # @return [ Ethon::Easy ] The easy.
184
+ def set_read_callback(body)
185
+ easy.infilesize_large =
186
+ if body.respond_to?(:bytesize)
187
+ body.bytesize
188
+ elsif body.respond_to?(:size)
189
+ body.size
190
+ end
191
+
192
+ easy.upload = true
193
+ easy.set_read_callback(body)
194
+
195
+ easy
196
+ end
197
+
198
+ def provide_help(option)
199
+ if new_option = CHANGED_OPTIONS[option.to_sym]
200
+ "\nPlease try #{new_option} instead of #{option}." if new_option
201
+ elsif REMOVED_OPTIONS.include?(option.to_sym)
202
+ "\nThe option #{option} was removed."
203
+ end
204
+ end
205
+ end
206
+ end