ls-trace 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (337) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +419 -544
  3. data/.circleci/images/primary/Dockerfile-2.7.0 +73 -0
  4. data/.circleci/images/primary/Dockerfile-jruby-9.2 +77 -0
  5. data/.env +2 -0
  6. data/.gitignore +2 -0
  7. data/.gitlab-ci.yml +27 -0
  8. data/.rubocop.yml +8 -0
  9. data/.simplecov +38 -0
  10. data/Appraisals +299 -48
  11. data/CHANGELOG.md +3 -4
  12. data/LICENSE +4 -22
  13. data/LICENSE.Apache +200 -0
  14. data/LICENSE.BSD3 +24 -0
  15. data/NOTICE +4 -0
  16. data/README.md +4 -3
  17. data/Rakefile +561 -405
  18. data/ddtrace.gemspec +13 -4
  19. data/docker-compose.yml +96 -2
  20. data/docs/DevelopmentGuide.md +17 -1
  21. data/docs/GettingStarted.md +433 -138
  22. data/lib/ddtrace.rb +15 -0
  23. data/lib/ddtrace/analytics.rb +7 -0
  24. data/lib/ddtrace/buffer.rb +9 -9
  25. data/lib/ddtrace/chunker.rb +34 -0
  26. data/lib/ddtrace/configuration.rb +59 -5
  27. data/lib/ddtrace/configuration/base.rb +4 -2
  28. data/lib/ddtrace/configuration/components.rb +151 -0
  29. data/lib/ddtrace/configuration/option.rb +12 -3
  30. data/lib/ddtrace/configuration/option_definition.rb +1 -5
  31. data/lib/ddtrace/configuration/options.rb +6 -1
  32. data/lib/ddtrace/configuration/pin_setup.rb +3 -2
  33. data/lib/ddtrace/configuration/settings.rb +214 -40
  34. data/lib/ddtrace/context.rb +84 -63
  35. data/lib/ddtrace/context_flush.rb +51 -114
  36. data/lib/ddtrace/context_provider.rb +50 -0
  37. data/lib/ddtrace/contrib/action_cable/configuration/settings.rb +30 -0
  38. data/lib/ddtrace/contrib/action_cable/event.rb +65 -0
  39. data/lib/ddtrace/contrib/action_cable/events.rb +33 -0
  40. data/lib/ddtrace/contrib/action_cable/events/broadcast.rb +49 -0
  41. data/lib/ddtrace/contrib/action_cable/events/perform_action.rb +55 -0
  42. data/lib/ddtrace/contrib/action_cable/events/transmit.rb +50 -0
  43. data/lib/ddtrace/contrib/action_cable/ext.rb +26 -0
  44. data/lib/ddtrace/contrib/action_cable/instrumentation.rb +31 -0
  45. data/lib/ddtrace/contrib/action_cable/integration.rb +38 -0
  46. data/lib/ddtrace/contrib/action_cable/patcher.rb +27 -0
  47. data/lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb +6 -2
  48. data/lib/ddtrace/contrib/action_pack/action_controller/patcher.rb +3 -15
  49. data/lib/ddtrace/contrib/action_pack/configuration/settings.rb +7 -2
  50. data/lib/ddtrace/contrib/action_pack/ext.rb +5 -2
  51. data/lib/ddtrace/contrib/action_pack/integration.rb +5 -3
  52. data/lib/ddtrace/contrib/action_pack/patcher.rb +3 -9
  53. data/lib/ddtrace/contrib/action_view/configuration/settings.rb +7 -2
  54. data/lib/ddtrace/contrib/action_view/event.rb +39 -0
  55. data/lib/ddtrace/contrib/action_view/events.rb +30 -0
  56. data/lib/ddtrace/contrib/action_view/events/render_partial.rb +45 -0
  57. data/lib/ddtrace/contrib/action_view/events/render_template.rb +48 -0
  58. data/lib/ddtrace/contrib/action_view/ext.rb +5 -2
  59. data/lib/ddtrace/contrib/action_view/instrumentation/partial_renderer.rb +9 -13
  60. data/lib/ddtrace/contrib/action_view/instrumentation/template_renderer.rb +16 -16
  61. data/lib/ddtrace/contrib/action_view/integration.rb +5 -3
  62. data/lib/ddtrace/contrib/action_view/patcher.rb +19 -25
  63. data/lib/ddtrace/contrib/active_model_serializers/configuration/settings.rb +7 -2
  64. data/lib/ddtrace/contrib/active_model_serializers/event.rb +3 -0
  65. data/lib/ddtrace/contrib/active_model_serializers/ext.rb +5 -2
  66. data/lib/ddtrace/contrib/active_model_serializers/integration.rb +6 -5
  67. data/lib/ddtrace/contrib/active_model_serializers/patcher.rb +3 -10
  68. data/lib/ddtrace/contrib/active_record/configuration/resolver.rb +4 -5
  69. data/lib/ddtrace/contrib/active_record/configuration/settings.rb +7 -2
  70. data/lib/ddtrace/contrib/active_record/events/instantiation.rb +4 -1
  71. data/lib/ddtrace/contrib/active_record/events/sql.rb +1 -1
  72. data/lib/ddtrace/contrib/active_record/ext.rb +5 -2
  73. data/lib/ddtrace/contrib/active_record/integration.rb +5 -3
  74. data/lib/ddtrace/contrib/active_record/patcher.rb +3 -9
  75. data/lib/ddtrace/contrib/active_support/cache/instrumentation.rb +2 -2
  76. data/lib/ddtrace/contrib/active_support/cache/patcher.rb +10 -24
  77. data/lib/ddtrace/contrib/active_support/cache/redis.rb +1 -1
  78. data/lib/ddtrace/contrib/active_support/configuration/settings.rb +7 -2
  79. data/lib/ddtrace/contrib/active_support/ext.rb +5 -2
  80. data/lib/ddtrace/contrib/active_support/integration.rb +5 -3
  81. data/lib/ddtrace/contrib/active_support/notifications/event.rb +3 -1
  82. data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +3 -3
  83. data/lib/ddtrace/contrib/active_support/patcher.rb +3 -9
  84. data/lib/ddtrace/contrib/analytics.rb +5 -1
  85. data/lib/ddtrace/contrib/aws/configuration/settings.rb +7 -2
  86. data/lib/ddtrace/contrib/aws/ext.rb +5 -2
  87. data/lib/ddtrace/contrib/aws/integration.rb +8 -2
  88. data/lib/ddtrace/contrib/aws/patcher.rb +15 -15
  89. data/lib/ddtrace/contrib/concurrent_ruby/configuration/settings.rb +5 -0
  90. data/lib/ddtrace/contrib/concurrent_ruby/context_composite_executor_service.rb +9 -3
  91. data/lib/ddtrace/contrib/concurrent_ruby/ext.rb +1 -0
  92. data/lib/ddtrace/contrib/concurrent_ruby/integration.rb +8 -2
  93. data/lib/ddtrace/contrib/concurrent_ruby/patcher.rb +4 -11
  94. data/lib/ddtrace/contrib/configurable.rb +30 -13
  95. data/lib/ddtrace/contrib/configuration/resolver.rb +7 -3
  96. data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +39 -0
  97. data/lib/ddtrace/contrib/configuration/settings.rb +20 -1
  98. data/lib/ddtrace/contrib/dalli/configuration/settings.rb +7 -2
  99. data/lib/ddtrace/contrib/dalli/ext.rb +5 -2
  100. data/lib/ddtrace/contrib/dalli/integration.rb +5 -3
  101. data/lib/ddtrace/contrib/dalli/patcher.rb +6 -16
  102. data/lib/ddtrace/contrib/dalli/quantize.rb +1 -1
  103. data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +7 -2
  104. data/lib/ddtrace/contrib/delayed_job/ext.rb +5 -2
  105. data/lib/ddtrace/contrib/delayed_job/integration.rb +8 -2
  106. data/lib/ddtrace/contrib/delayed_job/patcher.rb +4 -10
  107. data/lib/ddtrace/contrib/delayed_job/plugin.rb +4 -0
  108. data/lib/ddtrace/contrib/elasticsearch/configuration/settings.rb +7 -2
  109. data/lib/ddtrace/contrib/elasticsearch/ext.rb +5 -2
  110. data/lib/ddtrace/contrib/elasticsearch/integration.rb +5 -3
  111. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +10 -17
  112. data/lib/ddtrace/contrib/ethon/configuration/settings.rb +8 -2
  113. data/lib/ddtrace/contrib/ethon/easy_patch.rb +22 -13
  114. data/lib/ddtrace/contrib/ethon/ext.rb +5 -2
  115. data/lib/ddtrace/contrib/ethon/integration.rb +14 -2
  116. data/lib/ddtrace/contrib/ethon/patcher.rb +7 -9
  117. data/lib/ddtrace/contrib/excon/configuration/settings.rb +7 -2
  118. data/lib/ddtrace/contrib/excon/ext.rb +5 -2
  119. data/lib/ddtrace/contrib/excon/integration.rb +13 -2
  120. data/lib/ddtrace/contrib/excon/middleware.rb +15 -12
  121. data/lib/ddtrace/contrib/excon/patcher.rb +4 -11
  122. data/lib/ddtrace/contrib/extensions.rb +39 -5
  123. data/lib/ddtrace/contrib/faraday/configuration/settings.rb +7 -2
  124. data/lib/ddtrace/contrib/faraday/connection.rb +18 -0
  125. data/lib/ddtrace/contrib/faraday/ext.rb +5 -2
  126. data/lib/ddtrace/contrib/faraday/integration.rb +10 -3
  127. data/lib/ddtrace/contrib/faraday/middleware.rb +24 -34
  128. data/lib/ddtrace/contrib/faraday/patcher.rb +26 -19
  129. data/lib/ddtrace/contrib/grape/configuration/settings.rb +7 -3
  130. data/lib/ddtrace/contrib/grape/endpoint.rb +14 -5
  131. data/lib/ddtrace/contrib/grape/ext.rb +5 -2
  132. data/lib/ddtrace/contrib/grape/integration.rb +6 -3
  133. data/lib/ddtrace/contrib/grape/patcher.rb +9 -15
  134. data/lib/ddtrace/contrib/graphql/configuration/settings.rb +7 -2
  135. data/lib/ddtrace/contrib/graphql/ext.rb +5 -2
  136. data/lib/ddtrace/contrib/graphql/integration.rb +6 -5
  137. data/lib/ddtrace/contrib/graphql/patcher.rb +11 -14
  138. data/lib/ddtrace/contrib/grpc/configuration/settings.rb +7 -2
  139. data/lib/ddtrace/contrib/grpc/datadog_interceptor.rb +1 -1
  140. data/lib/ddtrace/contrib/grpc/datadog_interceptor/client.rb +2 -4
  141. data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +5 -2
  142. data/lib/ddtrace/contrib/grpc/ext.rb +5 -2
  143. data/lib/ddtrace/contrib/grpc/integration.rb +5 -3
  144. data/lib/ddtrace/contrib/grpc/patcher.rb +9 -19
  145. data/lib/ddtrace/contrib/http/circuit_breaker.rb +8 -32
  146. data/lib/ddtrace/contrib/http/configuration/settings.rb +8 -2
  147. data/lib/ddtrace/contrib/http/ext.rb +5 -2
  148. data/lib/ddtrace/contrib/http/instrumentation.rb +89 -28
  149. data/lib/ddtrace/contrib/http/integration.rb +13 -0
  150. data/lib/ddtrace/contrib/http/patcher.rb +3 -9
  151. data/lib/ddtrace/contrib/http_annotation_helper.rb +10 -0
  152. data/lib/ddtrace/contrib/httprb/configuration/settings.rb +32 -0
  153. data/lib/ddtrace/contrib/httprb/ext.rb +17 -0
  154. data/lib/ddtrace/contrib/httprb/instrumentation.rb +160 -0
  155. data/lib/ddtrace/contrib/httprb/integration.rb +43 -0
  156. data/lib/ddtrace/contrib/httprb/patcher.rb +35 -0
  157. data/lib/ddtrace/contrib/kafka/configuration/settings.rb +30 -0
  158. data/lib/ddtrace/contrib/kafka/consumer_event.rb +14 -0
  159. data/lib/ddtrace/contrib/kafka/consumer_group_event.rb +14 -0
  160. data/lib/ddtrace/contrib/kafka/event.rb +51 -0
  161. data/lib/ddtrace/contrib/kafka/events.rb +44 -0
  162. data/lib/ddtrace/contrib/kafka/events/connection/request.rb +34 -0
  163. data/lib/ddtrace/contrib/kafka/events/consumer/process_batch.rb +41 -0
  164. data/lib/ddtrace/contrib/kafka/events/consumer/process_message.rb +39 -0
  165. data/lib/ddtrace/contrib/kafka/events/consumer_group/heartbeat.rb +39 -0
  166. data/lib/ddtrace/contrib/kafka/events/consumer_group/join_group.rb +29 -0
  167. data/lib/ddtrace/contrib/kafka/events/consumer_group/leave_group.rb +29 -0
  168. data/lib/ddtrace/contrib/kafka/events/consumer_group/sync_group.rb +29 -0
  169. data/lib/ddtrace/contrib/kafka/events/produce_operation/send_messages.rb +32 -0
  170. data/lib/ddtrace/contrib/kafka/events/producer/deliver_messages.rb +35 -0
  171. data/lib/ddtrace/contrib/kafka/ext.rb +41 -0
  172. data/lib/ddtrace/contrib/kafka/integration.rb +39 -0
  173. data/lib/ddtrace/contrib/kafka/patcher.rb +26 -0
  174. data/lib/ddtrace/contrib/mongodb/configuration/settings.rb +7 -2
  175. data/lib/ddtrace/contrib/mongodb/ext.rb +5 -2
  176. data/lib/ddtrace/contrib/mongodb/instrumentation.rb +1 -2
  177. data/lib/ddtrace/contrib/mongodb/integration.rb +5 -3
  178. data/lib/ddtrace/contrib/mongodb/patcher.rb +5 -11
  179. data/lib/ddtrace/contrib/mongodb/subscribers.rb +2 -2
  180. data/lib/ddtrace/contrib/mysql2/configuration/settings.rb +7 -2
  181. data/lib/ddtrace/contrib/mysql2/ext.rb +5 -2
  182. data/lib/ddtrace/contrib/mysql2/instrumentation.rb +1 -1
  183. data/lib/ddtrace/contrib/mysql2/integration.rb +8 -2
  184. data/lib/ddtrace/contrib/mysql2/patcher.rb +3 -9
  185. data/lib/ddtrace/contrib/patchable.rb +21 -4
  186. data/lib/ddtrace/contrib/patcher.rb +44 -10
  187. data/lib/ddtrace/contrib/presto/configuration/settings.rb +30 -0
  188. data/lib/ddtrace/contrib/presto/ext.rb +28 -0
  189. data/lib/ddtrace/contrib/presto/instrumentation.rb +107 -0
  190. data/lib/ddtrace/contrib/presto/integration.rb +38 -0
  191. data/lib/ddtrace/contrib/presto/patcher.rb +30 -0
  192. data/lib/ddtrace/contrib/que/configuration/settings.rb +42 -0
  193. data/lib/ddtrace/contrib/que/ext.rb +30 -0
  194. data/lib/ddtrace/contrib/que/integration.rb +42 -0
  195. data/lib/ddtrace/contrib/que/patcher.rb +24 -0
  196. data/lib/ddtrace/contrib/que/tracer.rb +56 -0
  197. data/lib/ddtrace/contrib/racecar/configuration/settings.rb +7 -2
  198. data/lib/ddtrace/contrib/racecar/event.rb +4 -0
  199. data/lib/ddtrace/contrib/racecar/events.rb +2 -0
  200. data/lib/ddtrace/contrib/racecar/events/consume.rb +27 -0
  201. data/lib/ddtrace/contrib/racecar/ext.rb +6 -2
  202. data/lib/ddtrace/contrib/racecar/integration.rb +6 -3
  203. data/lib/ddtrace/contrib/racecar/patcher.rb +4 -10
  204. data/lib/ddtrace/contrib/rack/configuration/settings.rb +7 -2
  205. data/lib/ddtrace/contrib/rack/ext.rb +5 -2
  206. data/lib/ddtrace/contrib/rack/integration.rb +8 -2
  207. data/lib/ddtrace/contrib/rack/middlewares.rb +23 -14
  208. data/lib/ddtrace/contrib/rack/patcher.rb +57 -22
  209. data/lib/ddtrace/contrib/rack/request_queue.rb +1 -1
  210. data/lib/ddtrace/contrib/rails/configuration/settings.rb +23 -10
  211. data/lib/ddtrace/contrib/rails/ext.rb +7 -2
  212. data/lib/ddtrace/contrib/rails/framework.rb +59 -35
  213. data/lib/ddtrace/contrib/rails/integration.rb +12 -5
  214. data/lib/ddtrace/contrib/rails/log_injection.rb +81 -0
  215. data/lib/ddtrace/contrib/rails/middlewares.rb +7 -2
  216. data/lib/ddtrace/contrib/rails/patcher.rb +19 -8
  217. data/lib/ddtrace/contrib/rake/configuration/settings.rb +7 -3
  218. data/lib/ddtrace/contrib/rake/ext.rb +5 -2
  219. data/lib/ddtrace/contrib/rake/instrumentation.rb +6 -2
  220. data/lib/ddtrace/contrib/rake/integration.rb +8 -2
  221. data/lib/ddtrace/contrib/rake/patcher.rb +4 -10
  222. data/lib/ddtrace/contrib/redis/configuration/resolver.rb +36 -0
  223. data/lib/ddtrace/contrib/redis/configuration/settings.rb +7 -2
  224. data/lib/ddtrace/contrib/redis/ext.rb +5 -2
  225. data/lib/ddtrace/contrib/redis/integration.rb +9 -3
  226. data/lib/ddtrace/contrib/redis/patcher.rb +20 -17
  227. data/lib/ddtrace/contrib/redis/quantize.rb +1 -1
  228. data/lib/ddtrace/contrib/redis/vendor/resolver.rb +159 -0
  229. data/lib/ddtrace/contrib/resque/configuration/settings.rb +7 -2
  230. data/lib/ddtrace/contrib/resque/ext.rb +5 -2
  231. data/lib/ddtrace/contrib/resque/integration.rb +12 -2
  232. data/lib/ddtrace/contrib/resque/patcher.rb +4 -10
  233. data/lib/ddtrace/contrib/resque/resque_job.rb +6 -2
  234. data/lib/ddtrace/contrib/rest_client/configuration/settings.rb +7 -2
  235. data/lib/ddtrace/contrib/rest_client/ext.rb +5 -2
  236. data/lib/ddtrace/contrib/rest_client/integration.rb +9 -2
  237. data/lib/ddtrace/contrib/rest_client/patcher.rb +5 -7
  238. data/lib/ddtrace/contrib/rest_client/request_patch.rb +2 -2
  239. data/lib/ddtrace/contrib/sequel/configuration/settings.rb +7 -2
  240. data/lib/ddtrace/contrib/sequel/database.rb +1 -1
  241. data/lib/ddtrace/contrib/sequel/ext.rb +5 -2
  242. data/lib/ddtrace/contrib/sequel/integration.rb +8 -2
  243. data/lib/ddtrace/contrib/sequel/patcher.rb +4 -10
  244. data/lib/ddtrace/contrib/sequel/utils.rb +19 -1
  245. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +7 -2
  246. data/lib/ddtrace/contrib/shoryuken/ext.rb +5 -2
  247. data/lib/ddtrace/contrib/shoryuken/integration.rb +11 -7
  248. data/lib/ddtrace/contrib/shoryuken/patcher.rb +4 -10
  249. data/lib/ddtrace/contrib/shoryuken/tracer.rb +4 -0
  250. data/lib/ddtrace/contrib/sidekiq/configuration/settings.rb +12 -2
  251. data/lib/ddtrace/contrib/sidekiq/ext.rb +8 -2
  252. data/lib/ddtrace/contrib/sidekiq/integration.rb +5 -3
  253. data/lib/ddtrace/contrib/sidekiq/patcher.rb +19 -18
  254. data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +12 -3
  255. data/lib/ddtrace/contrib/sidekiq/tracing.rb +19 -2
  256. data/lib/ddtrace/contrib/sinatra/configuration/settings.rb +7 -2
  257. data/lib/ddtrace/contrib/sinatra/env.rb +25 -4
  258. data/lib/ddtrace/contrib/sinatra/ext.rb +11 -2
  259. data/lib/ddtrace/contrib/sinatra/integration.rb +5 -3
  260. data/lib/ddtrace/contrib/sinatra/patcher.rb +5 -10
  261. data/lib/ddtrace/contrib/sinatra/tracer.rb +79 -34
  262. data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +48 -15
  263. data/lib/ddtrace/contrib/sneakers/configuration/settings.rb +32 -0
  264. data/lib/ddtrace/contrib/sneakers/ext.rb +22 -0
  265. data/lib/ddtrace/contrib/sneakers/integration.rb +41 -0
  266. data/lib/ddtrace/contrib/sneakers/patcher.rb +24 -0
  267. data/lib/ddtrace/contrib/sneakers/tracer.rb +58 -0
  268. data/lib/ddtrace/contrib/sucker_punch/configuration/settings.rb +7 -2
  269. data/lib/ddtrace/contrib/sucker_punch/ext.rb +5 -2
  270. data/lib/ddtrace/contrib/sucker_punch/instrumentation.rb +14 -0
  271. data/lib/ddtrace/contrib/sucker_punch/integration.rb +5 -3
  272. data/lib/ddtrace/contrib/sucker_punch/patcher.rb +8 -14
  273. data/lib/ddtrace/correlation.rb +15 -5
  274. data/lib/ddtrace/diagnostics/environment_logger.rb +278 -0
  275. data/lib/ddtrace/diagnostics/health.rb +11 -8
  276. data/lib/ddtrace/encoding.rb +15 -11
  277. data/lib/ddtrace/environment.rb +21 -3
  278. data/lib/ddtrace/event.rb +52 -0
  279. data/lib/ddtrace/ext/analytics.rb +1 -0
  280. data/lib/ddtrace/ext/correlation.rb +11 -0
  281. data/lib/ddtrace/ext/diagnostics.rb +11 -0
  282. data/lib/ddtrace/ext/environment.rb +16 -0
  283. data/lib/ddtrace/ext/forced_tracing.rb +1 -1
  284. data/lib/ddtrace/ext/sampling.rb +16 -0
  285. data/lib/ddtrace/ext/transport.rb +1 -0
  286. data/lib/ddtrace/logger.rb +4 -3
  287. data/lib/ddtrace/metrics.rb +12 -5
  288. data/lib/ddtrace/monkey.rb +1 -1
  289. data/lib/ddtrace/opentelemetry/extensions.rb +13 -0
  290. data/lib/ddtrace/opentelemetry/span.rb +33 -0
  291. data/lib/ddtrace/opentracer/global_tracer.rb +1 -1
  292. data/lib/ddtrace/pin.rb +40 -16
  293. data/lib/ddtrace/pipeline.rb +1 -1
  294. data/lib/ddtrace/pipeline/span_filter.rb +15 -15
  295. data/lib/ddtrace/propagation/http_propagator.rb +2 -2
  296. data/lib/ddtrace/runtime/cgroup.rb +1 -1
  297. data/lib/ddtrace/runtime/container.rb +1 -1
  298. data/lib/ddtrace/runtime/metrics.rb +23 -6
  299. data/lib/ddtrace/sampler.rb +126 -29
  300. data/lib/ddtrace/sampling.rb +2 -0
  301. data/lib/ddtrace/sampling/matcher.rb +57 -0
  302. data/lib/ddtrace/sampling/rate_limiter.rb +127 -0
  303. data/lib/ddtrace/sampling/rule.rb +61 -0
  304. data/lib/ddtrace/sampling/rule_sampler.rb +125 -0
  305. data/lib/ddtrace/span.rb +54 -7
  306. data/lib/ddtrace/sync_writer.rb +13 -8
  307. data/lib/ddtrace/tracer.rb +72 -92
  308. data/lib/ddtrace/transport/http.rb +16 -1
  309. data/lib/ddtrace/transport/http/adapters/net.rb +8 -0
  310. data/lib/ddtrace/transport/http/adapters/test.rb +6 -0
  311. data/lib/ddtrace/transport/http/adapters/unix_socket.rb +4 -0
  312. data/lib/ddtrace/transport/http/api/instance.rb +4 -0
  313. data/lib/ddtrace/transport/http/builder.rb +3 -5
  314. data/lib/ddtrace/transport/http/client.rb +7 -64
  315. data/lib/ddtrace/transport/http/response.rb +1 -1
  316. data/lib/ddtrace/transport/http/statistics.rb +1 -1
  317. data/lib/ddtrace/transport/http/traces.rb +10 -7
  318. data/lib/ddtrace/transport/io.rb +26 -0
  319. data/lib/ddtrace/transport/io/client.rb +76 -0
  320. data/lib/ddtrace/transport/io/response.rb +25 -0
  321. data/lib/ddtrace/transport/io/traces.rb +91 -0
  322. data/lib/ddtrace/transport/response.rb +11 -0
  323. data/lib/ddtrace/transport/statistics.rb +2 -2
  324. data/lib/ddtrace/transport/traces.rb +160 -10
  325. data/lib/ddtrace/utils.rb +1 -1
  326. data/lib/ddtrace/version.rb +2 -2
  327. data/lib/ddtrace/worker.rb +20 -0
  328. data/lib/ddtrace/workers.rb +5 -13
  329. data/lib/ddtrace/workers/async.rb +165 -0
  330. data/lib/ddtrace/workers/loop.rb +105 -0
  331. data/lib/ddtrace/workers/polling.rb +48 -0
  332. data/lib/ddtrace/workers/queue.rb +39 -0
  333. data/lib/ddtrace/workers/runtime_metrics.rb +47 -0
  334. data/lib/ddtrace/workers/trace_writer.rb +202 -0
  335. data/lib/ddtrace/writer.rb +56 -38
  336. metadata +185 -25
  337. data/lib/ddtrace/provider.rb +0 -21
@@ -0,0 +1,73 @@
1
+ # Current version: https://github.com/docker-library/ruby/blob/defb10adcd6dd2178be3cd9c884fd035b52d42fb/2.7/buster/Dockerfile
2
+ FROM ruby:2.7.0
3
+
4
+ # Make apt non-interactive
5
+ RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
6
+ && echo 'DPkg::Options "--force-confnew";' >> /etc/apt/apt.conf.d/90circleci
7
+
8
+ ENV DEBIAN_FRONTEND=noninteractive
9
+
10
+ # Install required packages
11
+ RUN set -ex; \
12
+ apt-get update; \
13
+ mkdir -p /usr/share/man/man1; \
14
+ apt-get install -y --no-install-recommends \
15
+ git mercurial xvfb \
16
+ locales sudo openssh-client ca-certificates tar gzip parallel \
17
+ net-tools netcat unzip zip bzip2 gnupg curl wget \
18
+ tzdata rsync vim; \
19
+ rm -rf /var/lib/apt/lists/*;
20
+
21
+ # Set timezone to UTC by default
22
+ RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime
23
+
24
+ # Set language
25
+ RUN locale-gen en_US.UTF-8
26
+ ENV LANG en_US.UTF-8
27
+ ENV LANGUAGE en_US:en
28
+
29
+ # Install jq
30
+ RUN JQ_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/jq-latest" \
31
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/jq $JQ_URL \
32
+ && chmod +x /usr/bin/jq \
33
+ && jq --version
34
+
35
+ # Install Docker
36
+ RUN set -ex \
37
+ && export DOCKER_VERSION=$(curl --silent --fail --retry 3 https://download.docker.com/linux/static/stable/x86_64/ | grep -o -e 'docker-[.0-9]*-ce\.tgz' | sort -r | head -n 1) \
38
+ && DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/${DOCKER_VERSION}" \
39
+ && echo Docker URL: $DOCKER_URL \
40
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \
41
+ && ls -lha /tmp/docker.tgz \
42
+ && tar -xz -C /tmp -f /tmp/docker.tgz \
43
+ && mv /tmp/docker/* /usr/bin \
44
+ && rm -rf /tmp/docker /tmp/docker.tgz \
45
+ && which docker \
46
+ && (docker version || true)
47
+
48
+ # Install Docker Compose
49
+ RUN COMPOSE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/docker-compose-latest" \
50
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/docker-compose $COMPOSE_URL \
51
+ && chmod +x /usr/bin/docker-compose \
52
+ && docker-compose version
53
+
54
+ # Install Dockerize
55
+ RUN DOCKERIZE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/dockerize-latest.tar.gz" \
56
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/dockerize-linux-amd64.tar.gz $DOCKERIZE_URL \
57
+ && tar -C /usr/local/bin -xzvf /tmp/dockerize-linux-amd64.tar.gz \
58
+ && rm -rf /tmp/dockerize-linux-amd64.tar.gz \
59
+ && dockerize --version
60
+
61
+ # Install RubyGems
62
+ # RUN gem update --system # Upgrading disabled until https://github.com/thoughtbot/appraisal/issues/162 is fixed
63
+ RUN mkdir -p "$GEM_HOME" && chmod -R 777 "$GEM_HOME"
64
+
65
+ # Upgrade RubyGems and Bundler # Upgrading disabled until https://github.com/thoughtbot/appraisal/issues/162 is fixed
66
+ # RUN gem update --system
67
+ # RUN gem install bundler
68
+ ENV BUNDLE_SILENCE_ROOT_WARNING 1
69
+
70
+ RUN mkdir /app
71
+ WORKDIR /app
72
+
73
+ CMD ["/bin/sh"]
@@ -0,0 +1,77 @@
1
+ # Current version: https://github.com/cpuguy83/docker-jruby/blob/db08637839406420a254a9c825d94994cded5021/9000/jre/Dockerfile
2
+ FROM jruby:9.2.11.1
3
+
4
+ # Make apt non-interactive
5
+ RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
6
+ && echo 'DPkg::Options "--force-confnew";' >> /etc/apt/apt.conf.d/90circleci
7
+
8
+ ENV DEBIAN_FRONTEND=noninteractive
9
+
10
+ # Install required packages
11
+ RUN set -ex; \
12
+ apt-get update; \
13
+ mkdir -p /usr/share/man/man1; \
14
+ apt-get install -y --no-install-recommends \
15
+ git mercurial xvfb \
16
+ locales sudo openssh-client ca-certificates tar gzip parallel \
17
+ net-tools netcat unzip zip bzip2 gnupg curl wget \
18
+ tzdata rsync vim \
19
+ build-essential; \
20
+ rm -rf /var/lib/apt/lists/*;
21
+
22
+ # Set timezone to UTC by default
23
+ RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime
24
+
25
+ # Set language
26
+ RUN locale-gen en_US.UTF-8
27
+ ENV LANG en_US.UTF-8
28
+ ENV LANGUAGE en_US:en
29
+
30
+ # Install jq
31
+ RUN JQ_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/jq-latest" \
32
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/jq $JQ_URL \
33
+ && chmod +x /usr/bin/jq \
34
+ && jq --version
35
+
36
+ # Install Docker
37
+ RUN set -ex \
38
+ && export DOCKER_VERSION=$(curl --silent --fail --retry 3 https://download.docker.com/linux/static/stable/x86_64/ | grep -o -e 'docker-[.0-9]*-ce\.tgz' | sort -r | head -n 1) \
39
+ && DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/${DOCKER_VERSION}" \
40
+ && echo Docker URL: $DOCKER_URL \
41
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \
42
+ && ls -lha /tmp/docker.tgz \
43
+ && tar -xz -C /tmp -f /tmp/docker.tgz \
44
+ && mv /tmp/docker/* /usr/bin \
45
+ && rm -rf /tmp/docker /tmp/docker.tgz \
46
+ && which docker \
47
+ && (docker version || true)
48
+
49
+ # Install Docker Compose
50
+ RUN COMPOSE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/docker-compose-latest" \
51
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/docker-compose $COMPOSE_URL \
52
+ && chmod +x /usr/bin/docker-compose \
53
+ && docker-compose version
54
+
55
+ # Install Dockerize
56
+ RUN DOCKERIZE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/dockerize-latest.tar.gz" \
57
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/dockerize-linux-amd64.tar.gz $DOCKERIZE_URL \
58
+ && tar -C /usr/local/bin -xzvf /tmp/dockerize-linux-amd64.tar.gz \
59
+ && rm -rf /tmp/dockerize-linux-amd64.tar.gz \
60
+ && dockerize --version
61
+
62
+ # Install RubyGems
63
+ RUN gem update --system
64
+ RUN mkdir -p "$GEM_HOME" && chmod -R 777 "$GEM_HOME"
65
+
66
+ # Upgrade RubyGems and Bundler
67
+ RUN gem uninstall -i /opt/jruby/lib/ruby/gems/shared bundler -v 2.1.4 # Remove when https://github.com/thoughtbot/appraisal/issues/162 is fixed
68
+ RUN gem install bundler -v 2.1.2 # Remove when https://github.com/thoughtbot/appraisal/issues/162 is fixed
69
+ ENV BUNDLE_SILENCE_ROOT_WARNING 1
70
+
71
+ # Ensure JRuby is available when running "bash --login"
72
+ RUN echo "export PATH=/opt/jruby/bin:$BUNDLE_BIN:\$PATH" >> ~/.profile
73
+
74
+ RUN mkdir /app
75
+ WORKDIR /app
76
+
77
+ CMD ["bin", "bash", "--login"]
data/.env CHANGED
@@ -20,5 +20,7 @@ TEST_POSTGRES_HOST=127.0.0.1
20
20
  TEST_POSTGRES_PASSWORD=postgres
21
21
  TEST_POSTGRES_PORT=5432
22
22
  TEST_POSTGRES_USER=postgres
23
+ TEST_PRESTO_HOST=localhost
24
+ TEST_PRESTO_PORT=8080
23
25
  TEST_REDIS_HOST=127.0.0.1
24
26
  TEST_REDIS_PORT=6379
data/.gitignore CHANGED
@@ -50,6 +50,8 @@ build-iPhoneSimulator/
50
50
 
51
51
  # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
52
52
  .rvmrc
53
+ # Ignore local variables
54
+ .envrc
53
55
 
54
56
  # lock files
55
57
  Gemfile.lock
@@ -0,0 +1,27 @@
1
+ stages:
2
+ - deploy
3
+
4
+ variables:
5
+ INDEX_FILE: index.txt
6
+
7
+ .common: &common
8
+ tags: [ "runner:main", "size:large" ]
9
+
10
+ copy_to_s3:
11
+ <<: *common
12
+ stage: deploy
13
+ image: registry.gitlab.com/gitlab-org/cloud-deploy/aws-base:latest
14
+ rules:
15
+ - if: '$CI_COMMIT_BRANCH == "master"'
16
+ when: on_success
17
+ - when: manual
18
+ allow_failure: true
19
+ script:
20
+ - export ACCESS_KEY_ID=$(aws ssm get-parameter --region us-east-1 --name ci.dd-trace-rb.secret_key_id --with-decryption --query "Parameter.Value" --out text)
21
+ - export SECRET_ACCESS_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-trace-rb.secret_sec_key_id --with-decryption --query "Parameter.Value" --out text)
22
+ - export AWS_ACCESS_KEY_ID=$ACCESS_KEY_ID
23
+ - export AWS_SECRET_ACCESS_KEY=$SECRET_ACCESS_KEY
24
+ - echo $CI_COMMIT_REF_NAME >> $INDEX_FILE
25
+ - echo $CI_COMMIT_SHA >> $INDEX_FILE
26
+ - echo $GITLAB_USER_NAME >> $INDEX_FILE
27
+ - aws s3 cp $INDEX_FILE s3://datadog-reliability-env/ruby/$INDEX_FILE
@@ -67,6 +67,10 @@ Metrics/PerceivedComplexity:
67
67
  Lint/UnusedMethodArgument:
68
68
  Enabled: false
69
69
 
70
+ # alias and alias_method are not equivalent
71
+ Style/Alias:
72
+ Enabled: false
73
+
70
74
  # Disabling advices that would lead to incompatible Ruby 1.9 code
71
75
  Style/SymbolArray:
72
76
  Enabled: false
@@ -75,3 +79,7 @@ Style/SymbolArray:
75
79
  # expressions.
76
80
  Style/GuardClause:
77
81
  Enabled: false
82
+
83
+ # Case equality is not intrinsically problematic.
84
+ Style/CaseEquality:
85
+ Enabled: false
@@ -0,0 +1,38 @@
1
+ SimpleCov.add_group 'contrib', '/lib/ddtrace/contrib'
2
+ SimpleCov.add_group 'transport', '/lib/ddtrace/transport'
3
+ SimpleCov.add_group 'spec', '/spec/'
4
+
5
+ SimpleCov.coverage_dir ENV.fetch('COVERAGE_DIR', 'coverage')
6
+
7
+ # Each test run requires its own unique command_name.
8
+ # When running `rake spec:test_name`, the test process doesn't have access to the
9
+ # rake task process, so we have come up with unique values ourselves.
10
+ #
11
+ # The current approach is to combine the ruby engine (ruby-2.7,jruby-9.2),
12
+ # program name (rspec/test), command line arguments (--pattern spec/**/*_spec.rb),
13
+ # and the loaded gemset.
14
+ #
15
+ # This should allow us to distinguish between runs with the same tests, but different gemsets:
16
+ # * appraisal rails5-mysql2 rake spec:rails
17
+ # * appraisal rails5-postgres rake spec:rails
18
+ #
19
+ # Subsequent runs of the same exact test suite should have the same command_name.
20
+ command_line_arguments = ARGV.join(' ')
21
+ gemset_hash = Digest::MD5.hexdigest Gem.loaded_specs.values.map { |x| "#{x.name}#{x.version}" }.sort.join
22
+ ruby_engine = if defined?(RUBY_ENGINE_VERSION)
23
+ "#{RUBY_ENGINE}-#{RUBY_ENGINE_VERSION}"
24
+ else
25
+ "#{RUBY_ENGINE}-#{RUBY_VERSION}" # For Ruby < 2.3
26
+ end
27
+ SimpleCov.command_name "#{ruby_engine}:#{gemset_hash}:#{$PROGRAM_NAME} #{command_line_arguments}"
28
+
29
+ # A very large number to disable result merging timeout
30
+ SimpleCov.merge_timeout 2 ** 31
31
+
32
+ # DEV If we choose to enforce a hard minimum.
33
+ # SimpleCov.minimum_coverage 95
34
+
35
+ # DEV If we choose to enforce a maximum coverage drop.
36
+ # DEV We have to figure out where to store previous coverage data
37
+ # DEV in order to perform this comparison
38
+ # SimpleCov.maximum_coverage_drop 1
data/Appraisals CHANGED
@@ -13,6 +13,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
13
13
  gem 'pg', '0.15.1', platform: :ruby
14
14
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
15
15
  gem 'rack-cache', '1.7.1'
16
+ gem 'lograge', '< 0.4'
16
17
  end
17
18
 
18
19
  appraise 'rails30-postgres-sidekiq' do
@@ -22,6 +23,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
22
23
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
23
24
  gem 'sidekiq', '4.0.0'
24
25
  gem 'rack-cache', '1.7.1'
26
+ gem 'lograge', '< 0.4'
25
27
  end
26
28
 
27
29
  appraise 'rails32-mysql2' do
@@ -31,6 +33,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
31
33
  gem 'activerecord-mysql-adapter', platform: :ruby
32
34
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
33
35
  gem 'rack-cache', '1.7.1'
36
+ gem 'lograge', '< 0.4'
34
37
  end
35
38
 
36
39
  appraise 'rails32-postgres' do
@@ -39,6 +42,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
39
42
  gem 'pg', '0.15.1', platform: :ruby
40
43
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
41
44
  gem 'rack-cache', '1.7.1'
45
+ gem 'lograge', '< 0.4'
42
46
  end
43
47
 
44
48
  appraise 'rails32-postgres-redis' do
@@ -49,6 +53,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
49
53
  gem 'redis-rails'
50
54
  gem 'redis', '< 4.0'
51
55
  gem 'rack-cache', '1.7.1'
56
+ gem 'lograge', '< 0.4'
52
57
  end
53
58
 
54
59
  appraise 'rails32-postgres-sidekiq' do
@@ -58,6 +63,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
58
63
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
59
64
  gem 'sidekiq', '4.0.0'
60
65
  gem 'rack-cache', '1.7.1'
66
+ gem 'lograge', '< 0.4'
61
67
  end
62
68
 
63
69
  appraise 'contrib-old' do
@@ -73,8 +79,10 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
73
79
  gem 'ethon'
74
80
  gem 'excon'
75
81
  gem 'hiredis'
82
+ gem 'http'
76
83
  gem 'mongo', '< 2.5'
77
84
  gem 'mysql2', '0.3.21', platform: :ruby
85
+ gem 'pg', '< 1.0', platform: :ruby
78
86
  gem 'rack', '1.4.7'
79
87
  gem 'rack-cache', '1.7.1'
80
88
  gem 'rack-test', '0.7.0'
@@ -100,6 +108,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
100
108
  gem 'pg', '0.15.1', platform: :ruby
101
109
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
102
110
  gem 'rack-cache', '1.7.1'
111
+ gem 'lograge', '< 0.4'
103
112
  end
104
113
 
105
114
  appraise 'rails30-postgres-sidekiq' do
@@ -109,6 +118,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
109
118
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
110
119
  gem 'sidekiq', '4.0.0'
111
120
  gem 'rack-cache', '1.7.1'
121
+ gem 'lograge', '< 0.4'
112
122
  end
113
123
 
114
124
  appraise 'rails32-mysql2' do
@@ -118,6 +128,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
118
128
  gem 'activerecord-mysql-adapter', platform: :ruby
119
129
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
120
130
  gem 'rack-cache', '1.7.1'
131
+ gem 'lograge', '< 0.4'
121
132
  end
122
133
 
123
134
  appraise 'rails32-postgres' do
@@ -126,6 +137,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
126
137
  gem 'pg', '0.15.1', platform: :ruby
127
138
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
128
139
  gem 'rack-cache', '1.7.1'
140
+ gem 'lograge', '< 0.4'
129
141
  end
130
142
 
131
143
  appraise 'rails32-postgres-redis' do
@@ -136,6 +148,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
136
148
  gem 'redis-rails'
137
149
  gem 'redis', '< 4.0'
138
150
  gem 'rack-cache', '1.7.1'
151
+ gem 'lograge', '< 0.4'
139
152
  end
140
153
 
141
154
  appraise 'rails32-postgres-sidekiq' do
@@ -145,29 +158,33 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
145
158
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
146
159
  gem 'sidekiq', '4.0.0'
147
160
  gem 'rack-cache', '1.7.1'
161
+ gem 'lograge', '< 0.4'
148
162
  end
149
163
 
150
164
  appraise 'rails4-mysql2' do
151
- gem 'rails', '4.2.7.1'
152
- gem 'mysql2', '< 0.5', platform: :ruby
165
+ gem 'rails', '4.2.11.1'
166
+ gem 'mysql2', '< 1', platform: :ruby
153
167
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
154
168
  gem 'sprockets', '< 4'
169
+ gem 'lograge'
155
170
  end
156
171
 
157
172
  appraise 'rails4-postgres' do
158
- gem 'rails', '4.2.7.1'
173
+ gem 'rails', '4.2.11.1'
159
174
  gem 'pg', '< 1.0', platform: :ruby
160
175
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
161
176
  gem 'sprockets', '< 4'
177
+ gem 'lograge'
162
178
  end
163
179
 
164
180
  appraise 'rails4-postgres-redis' do
165
- gem 'rails', '4.2.7.1'
181
+ gem 'rails', '4.2.11.1'
166
182
  gem 'pg', '< 1.0', platform: :ruby
167
183
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
168
184
  gem 'redis-rails'
169
185
  gem 'redis', '< 4.0'
170
186
  gem 'sprockets', '< 4'
187
+ gem 'lograge'
171
188
  end
172
189
 
173
190
  appraise 'contrib-old' do
@@ -180,11 +197,14 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
180
197
  gem 'delayed_job'
181
198
  gem 'delayed_job_active_record'
182
199
  gem 'elasticsearch-transport'
200
+ gem 'presto-client', '>= 0.5.14'
183
201
  gem 'ethon'
184
202
  gem 'excon'
185
203
  gem 'hiredis'
204
+ gem 'http'
186
205
  gem 'mongo', '< 2.5'
187
206
  gem 'mysql2', '0.3.21', platform: :ruby
207
+ gem 'pg', '< 1.0', platform: :ruby
188
208
  gem 'rack', '1.4.7'
189
209
  gem 'rack-cache', '1.7.1'
190
210
  gem 'rack-test', '0.7.0'
@@ -192,6 +212,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
192
212
  gem 'redis', '< 4.0'
193
213
  gem 'rest-client'
194
214
  gem 'resque', '< 2.0'
215
+ gem 'ruby-kafka', '>= 0.7.10'
195
216
  gem 'sequel', '~> 4.0', '< 4.37'
196
217
  gem 'shoryuken'
197
218
  gem 'sidekiq', '~> 3.5.4'
@@ -211,6 +232,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
211
232
  gem 'pg', '0.15.1', platform: :ruby
212
233
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
213
234
  gem 'rack-cache', '1.7.1'
235
+ gem 'lograge', '< 0.4'
214
236
  end
215
237
 
216
238
  appraise 'rails30-postgres-sidekiq' do
@@ -220,6 +242,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
220
242
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
221
243
  gem 'sidekiq', '4.0.0'
222
244
  gem 'rack-cache', '1.7.1'
245
+ gem 'lograge', '< 0.4'
223
246
  end
224
247
 
225
248
  appraise 'rails32-mysql2' do
@@ -229,6 +252,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
229
252
  gem 'activerecord-mysql-adapter', platform: :ruby
230
253
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
231
254
  gem 'rack-cache', '1.7.1'
255
+ gem 'lograge', '< 0.4'
232
256
  end
233
257
 
234
258
  appraise 'rails32-postgres' do
@@ -237,6 +261,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
237
261
  gem 'pg', '0.15.1', platform: :ruby
238
262
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
239
263
  gem 'rack-cache', '1.7.1'
264
+ gem 'lograge', '< 0.4'
240
265
  end
241
266
 
242
267
  appraise 'rails32-postgres-redis' do
@@ -247,6 +272,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
247
272
  gem 'redis-rails'
248
273
  gem 'redis', '< 4.0'
249
274
  gem 'rack-cache', '1.7.1'
275
+ gem 'lograge', '< 0.4'
250
276
  end
251
277
 
252
278
  appraise 'rails32-postgres-sidekiq' do
@@ -256,73 +282,82 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
256
282
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
257
283
  gem 'sidekiq', '4.0.0'
258
284
  gem 'rack-cache', '1.7.1'
285
+ gem 'lograge', '< 0.4'
259
286
  end
260
287
 
261
288
  appraise 'rails4-mysql2' do
262
- gem 'rails', '4.2.7.1'
263
- gem 'mysql2', '< 0.5', platform: :ruby
289
+ gem 'rails', '4.2.11.1'
290
+ gem 'mysql2', '< 1', platform: :ruby
264
291
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
265
292
  gem 'sprockets', '< 4'
293
+ gem 'lograge'
266
294
  end
267
295
 
268
296
  appraise 'rails4-postgres' do
269
- gem 'rails', '4.2.7.1'
297
+ gem 'rails', '4.2.11.1'
270
298
  gem 'pg', '< 1.0', platform: :ruby
271
299
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
272
300
  gem 'sprockets', '< 4'
301
+ gem 'lograge'
273
302
  end
274
303
 
275
304
  appraise 'rails4-postgres-redis' do
276
- gem 'rails', '4.2.7.1'
305
+ gem 'rails', '4.2.11.1'
277
306
  gem 'pg', '< 1.0', platform: :ruby
278
307
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
279
308
  gem 'redis-rails'
280
309
  gem 'redis', '< 4.0'
281
310
  gem 'sprockets', '< 4'
311
+ gem 'lograge'
282
312
  end
283
313
 
284
314
  appraise 'rails4-postgres-sidekiq' do
285
- gem 'rails', '4.2.7.1'
315
+ gem 'rails', '4.2.11.1'
286
316
  gem 'pg', '< 1.0', platform: :ruby
287
317
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
288
318
  gem 'sidekiq'
289
319
  gem 'activejob'
290
320
  gem 'sprockets', '< 4'
321
+ gem 'lograge'
291
322
  end
292
323
 
293
324
  appraise 'rails5-mysql2' do
294
- gem 'rails', '~> 5.2.1'
295
- gem 'mysql2', '< 0.5', platform: :ruby
325
+ gem 'rails', '5.2.3'
326
+ gem 'mysql2', '< 1', platform: :ruby
296
327
  gem 'sprockets', '< 4'
328
+ gem 'lograge'
297
329
  end
298
330
 
299
331
  appraise 'rails5-postgres' do
300
- gem 'rails', '~> 5.2.1'
332
+ gem 'rails', '5.2.3'
301
333
  gem 'pg', '< 1.0', platform: :ruby
302
334
  gem 'sprockets', '< 4'
335
+ gem 'lograge'
303
336
  end
304
337
 
305
338
  appraise 'rails5-postgres-redis' do
306
- gem 'rails', '~> 5.2.1'
339
+ gem 'rails', '5.2.3'
307
340
  gem 'pg', '< 1.0', platform: :ruby
308
- gem 'redis'
341
+ gem 'redis', '>= 4.0.1'
309
342
  gem 'sprockets', '< 4'
343
+ gem 'lograge'
310
344
  end
311
345
 
312
346
  appraise 'rails5-postgres-redis-activesupport' do
313
- gem 'rails', '~> 5.2.1'
347
+ gem 'rails', '5.2.3'
314
348
  gem 'pg', '< 1.0', platform: :ruby
315
- gem 'redis-rails'
316
- gem 'redis'
349
+ gem 'redis', '>= 4.0.1'
317
350
  gem 'sprockets', '< 4'
351
+ gem 'lograge'
318
352
  end
319
353
 
320
354
  appraise 'rails5-postgres-sidekiq' do
321
- gem 'rails', '~> 5.2.1'
355
+ gem 'rails', '5.2.3'
322
356
  gem 'pg', '< 1.0', platform: :ruby
323
357
  gem 'sidekiq'
324
358
  gem 'activejob'
325
359
  gem 'sprockets', '< 4'
360
+ gem 'lograge'
326
361
  end
327
362
 
328
363
  appraise 'contrib' do
@@ -336,29 +371,35 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
336
371
  gem 'delayed_job'
337
372
  gem 'delayed_job_active_record'
338
373
  gem 'elasticsearch-transport'
374
+ gem 'pg', platform: :ruby
375
+ gem 'presto-client', '>= 0.5.14'
339
376
  gem 'ethon'
340
377
  gem 'excon'
341
378
  gem 'faraday'
342
379
  gem 'grape'
343
380
  gem 'graphql', '< 1.9.4'
344
- gem 'grpc'
381
+ gem 'grpc', '~> 1.21.0' # Last version to support Ruby < 2.3
345
382
  gem 'hiredis'
383
+ gem 'http'
346
384
  gem 'mongo', '>= 2.8.0'
347
385
  gem 'mysql2', '< 0.5', platform: :ruby
348
386
  gem 'racecar', '>= 0.3.5'
349
- gem 'rack'
387
+ gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
350
388
  gem 'rack-test'
351
389
  gem 'rake', '>= 12.3'
352
390
  gem 'redis', '< 4.0'
353
391
  gem 'rest-client'
354
392
  gem 'resque', '< 2.0'
393
+ gem 'ruby-kafka', '>= 0.7.10'
355
394
  gem 'sequel'
356
395
  gem 'shoryuken'
357
396
  gem 'sidekiq'
358
397
  gem 'sinatra'
398
+ gem 'sneakers', '>= 2.12.0'
359
399
  gem 'sqlite3', '~> 1.3.6'
360
400
  gem 'sucker_punch'
361
401
  gem 'typhoeus'
402
+ gem 'que', '>= 1.0.0.beta2'
362
403
  end
363
404
  end
364
405
  elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
@@ -370,6 +411,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
370
411
  gem 'pg', '0.15.1', platform: :ruby
371
412
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
372
413
  gem 'rack-cache', '1.7.1'
414
+ gem 'lograge', '< 0.4'
373
415
  end
374
416
 
375
417
  appraise 'rails30-postgres-sidekiq' do
@@ -379,6 +421,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
379
421
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
380
422
  gem 'sidekiq', '4.0.0'
381
423
  gem 'rack-cache', '1.7.1'
424
+ gem 'lograge', '< 0.4'
382
425
  end
383
426
 
384
427
  appraise 'rails32-mysql2' do
@@ -388,6 +431,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
388
431
  gem 'activerecord-mysql-adapter', platform: :ruby
389
432
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
390
433
  gem 'rack-cache', '1.7.1'
434
+ gem 'lograge', '< 0.4'
391
435
  end
392
436
 
393
437
  appraise 'rails32-postgres' do
@@ -396,6 +440,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
396
440
  gem 'pg', '0.15.1', platform: :ruby
397
441
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
398
442
  gem 'rack-cache', '1.7.1'
443
+ gem 'lograge', '< 0.4'
399
444
  end
400
445
 
401
446
  appraise 'rails32-postgres-redis' do
@@ -406,6 +451,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
406
451
  gem 'redis-rails'
407
452
  gem 'redis', '< 4.0'
408
453
  gem 'rack-cache', '1.7.1'
454
+ gem 'lograge', '< 0.4'
409
455
  end
410
456
 
411
457
  appraise 'rails32-postgres-sidekiq' do
@@ -415,65 +461,73 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
415
461
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
416
462
  gem 'sidekiq', '4.0.0'
417
463
  gem 'rack-cache', '1.7.1'
464
+ gem 'lograge', '< 0.4'
418
465
  end
419
466
 
420
467
  appraise 'rails4-mysql2' do
421
- gem 'rails', '4.2.7.1'
422
- gem 'mysql2', '< 0.5', platform: :ruby
468
+ gem 'rails', '4.2.11.1'
469
+ gem 'mysql2', '< 1', platform: :ruby
423
470
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
424
471
  gem 'sprockets', '< 4'
472
+ gem 'lograge'
425
473
  end
426
474
 
427
475
  appraise 'rails4-postgres' do
428
- gem 'rails', '4.2.7.1'
476
+ gem 'rails', '4.2.11.1'
429
477
  gem 'pg', '< 1.0', platform: :ruby
430
478
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
431
479
  gem 'sprockets', '< 4'
480
+ gem 'lograge'
432
481
  end
433
482
 
434
483
  appraise 'rails4-postgres-redis' do
435
- gem 'rails', '4.2.7.1'
484
+ gem 'rails', '4.2.11.1'
436
485
  gem 'pg', '< 1.0', platform: :ruby
437
486
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
438
487
  gem 'redis-rails'
439
488
  gem 'redis', '< 4.0'
440
489
  gem 'sprockets', '< 4'
490
+ gem 'lograge'
441
491
  end
442
492
 
443
493
  appraise 'rails4-postgres-sidekiq' do
444
- gem 'rails', '4.2.7.1'
494
+ gem 'rails', '4.2.11.1'
445
495
  gem 'pg', '< 1.0', platform: :ruby
446
496
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
447
497
  gem 'sidekiq'
448
498
  gem 'activejob'
449
499
  gem 'sprockets', '< 4'
500
+ gem 'lograge'
450
501
  end
451
502
 
452
503
  appraise 'rails5-mysql2' do
453
504
  gem 'rails', '~> 5.2.1'
454
- gem 'mysql2', '< 0.5', platform: :ruby
505
+ gem 'mysql2', '< 1', platform: :ruby
455
506
  gem 'sprockets', '< 4'
507
+ gem 'lograge'
456
508
  end
457
509
 
458
510
  appraise 'rails5-postgres' do
459
511
  gem 'rails', '~> 5.2.1'
460
512
  gem 'pg', '< 1.0', platform: :ruby
461
513
  gem 'sprockets', '< 4'
514
+ gem 'lograge'
462
515
  end
463
516
 
464
517
  appraise 'rails5-postgres-redis' do
465
518
  gem 'rails', '~> 5.2.1'
466
519
  gem 'pg', '< 1.0', platform: :ruby
467
- gem 'redis'
520
+ gem 'redis', '>= 4.0.1'
468
521
  gem 'sprockets', '< 4'
522
+ gem 'lograge'
469
523
  end
470
524
 
471
525
  appraise 'rails5-postgres-redis-activesupport' do
472
526
  gem 'rails', '~> 5.2.1'
473
527
  gem 'pg', '< 1.0', platform: :ruby
474
- gem 'redis-rails'
475
- gem 'redis'
528
+ gem 'redis', '>= 4.0.1'
476
529
  gem 'sprockets', '< 4'
530
+ gem 'lograge'
477
531
  end
478
532
 
479
533
  appraise 'rails5-postgres-sidekiq' do
@@ -482,6 +536,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
482
536
  gem 'sidekiq'
483
537
  gem 'activejob'
484
538
  gem 'sprockets', '< 4'
539
+ gem 'lograge'
485
540
  end
486
541
 
487
542
  appraise 'contrib' do
@@ -501,23 +556,34 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
501
556
  gem 'grape'
502
557
  gem 'graphql'
503
558
  gem 'grpc'
559
+ gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
504
560
  gem 'hiredis'
561
+ gem 'http'
505
562
  gem 'mongo', '>= 2.8.0'
506
563
  gem 'mysql2', '< 0.5', platform: :ruby
564
+ gem 'pg', platform: :ruby
565
+ gem 'presto-client', '>= 0.5.14'
507
566
  gem 'racecar', '>= 0.3.5'
508
- gem 'rack'
567
+ gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
509
568
  gem 'rack-test'
510
569
  gem 'rake', '>= 12.3'
511
570
  gem 'redis', '< 4.0'
512
571
  gem 'rest-client'
513
572
  gem 'resque', '< 2.0'
573
+ gem 'ruby-kafka', '>= 0.7.10'
514
574
  gem 'sequel'
515
575
  gem 'shoryuken'
516
576
  gem 'sidekiq'
517
577
  gem 'sinatra'
578
+ gem 'sneakers', '>= 2.12.0'
518
579
  gem 'sqlite3', '~> 1.3.6'
519
580
  gem 'sucker_punch'
520
581
  gem 'typhoeus'
582
+ gem 'que', '>= 1.0.0.beta2'
583
+ end
584
+
585
+ appraise 'contrib-old' do
586
+ gem 'faraday', '0.17'
521
587
  end
522
588
  end
523
589
  elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
@@ -525,30 +591,32 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
525
591
  if RUBY_PLATFORM != 'java'
526
592
  appraise 'rails5-mysql2' do
527
593
  gem 'rails', '~> 5.2.1'
528
- gem 'mysql2', '< 0.5', platform: :ruby
594
+ gem 'mysql2', '< 1', platform: :ruby
529
595
  gem 'sprockets', '< 4'
596
+ gem 'lograge'
530
597
  end
531
598
 
532
599
  appraise 'rails5-postgres' do
533
600
  gem 'rails', '~> 5.2.1'
534
601
  gem 'pg', '< 1.0', platform: :ruby
535
602
  gem 'sprockets', '< 4'
603
+ gem 'lograge'
536
604
  end
537
605
 
538
606
  appraise 'rails5-postgres-redis' do
539
607
  gem 'rails', '~> 5.2.1'
540
608
  gem 'pg', '< 1.0', platform: :ruby
541
- gem 'redis-rails'
542
- gem 'redis'
609
+ gem 'redis', '>= 4.0.1'
543
610
  gem 'sprockets', '< 4'
611
+ gem 'lograge'
544
612
  end
545
613
 
546
614
  appraise 'rails5-postgres-redis-activesupport' do
547
615
  gem 'rails', '~> 5.2.1'
548
616
  gem 'pg', '< 1.0', platform: :ruby
549
- gem 'redis-rails'
550
- gem 'redis'
617
+ gem 'redis', '>= 4.0.1'
551
618
  gem 'sprockets', '< 4'
619
+ gem 'lograge'
552
620
  end
553
621
 
554
622
  appraise 'rails5-postgres-sidekiq' do
@@ -557,6 +625,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
557
625
  gem 'sidekiq'
558
626
  gem 'activejob'
559
627
  gem 'sprockets', '< 4'
628
+ gem 'lograge'
560
629
  end
561
630
 
562
631
  appraise 'contrib' do
@@ -576,9 +645,13 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
576
645
  gem 'grape'
577
646
  gem 'graphql'
578
647
  gem 'grpc'
648
+ gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
579
649
  gem 'hiredis'
650
+ gem 'http'
580
651
  gem 'mongo', '>= 2.8.0'
581
652
  gem 'mysql2', '< 0.5', platform: :ruby
653
+ gem 'pg', platform: :ruby
654
+ gem 'presto-client', '>= 0.5.14'
582
655
  gem 'racecar', '>= 0.3.5'
583
656
  gem 'rack'
584
657
  gem 'rack-test'
@@ -586,44 +659,190 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
586
659
  gem 'redis', '< 4.0'
587
660
  gem 'rest-client'
588
661
  gem 'resque', '< 2.0'
662
+ gem 'ruby-kafka', '>= 0.7.10'
589
663
  gem 'sequel'
590
664
  gem 'shoryuken'
591
665
  gem 'sidekiq'
592
666
  gem 'sinatra'
667
+ gem 'sneakers', '>= 2.12.0'
593
668
  gem 'sqlite3', '~> 1.3.6'
594
669
  gem 'sucker_punch'
595
670
  gem 'typhoeus'
671
+ gem 'que', '>= 1.0.0.beta2'
672
+ end
673
+
674
+ appraise 'contrib-old' do
675
+ gem 'faraday', '0.17'
596
676
  end
597
677
  end
598
678
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
599
679
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
600
- if RUBY_PLATFORM != 'java'
601
680
  appraise 'rails5-mysql2' do
602
681
  gem 'rails', '~> 5.2.1'
682
+ gem 'mysql2', '< 1', platform: :ruby
683
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
684
+ gem 'sprockets', '< 4'
685
+ gem 'lograge'
686
+ end
687
+
688
+ appraise 'rails5-postgres' do
689
+ gem 'rails', '~> 5.2.1'
690
+ gem 'pg', '< 1.0', platform: :ruby
691
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
692
+ gem 'sprockets', '< 4'
693
+ gem 'lograge'
694
+ end
695
+
696
+ appraise 'rails5-postgres-redis' do
697
+ gem 'rails', '~> 5.2.1'
698
+ gem 'pg', '< 1.0', platform: :ruby
699
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
700
+ gem 'redis', '>= 4.0.1'
701
+ gem 'sprockets', '< 4'
702
+ gem 'lograge'
703
+ end
704
+
705
+ appraise 'rails5-postgres-redis-activesupport' do
706
+ gem 'rails', '~> 5.2.1'
707
+ gem 'pg', '< 1.0', platform: :ruby
708
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
709
+ gem 'redis', '>= 4.0.1'
710
+ gem 'sprockets', '< 4'
711
+ gem 'lograge'
712
+ end
713
+
714
+ appraise 'rails5-postgres-sidekiq' do
715
+ gem 'rails', '~> 5.2.1'
716
+ gem 'pg', '< 1.0', platform: :ruby
717
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
718
+ gem 'sidekiq'
719
+ gem 'activejob'
720
+ gem 'sprockets', '< 4'
721
+ gem 'lograge'
722
+ end
723
+
724
+ appraise 'rails6-mysql2' do
725
+ gem 'rails', '~> 6.0.0'
726
+ gem 'mysql2', '< 1', platform: :ruby
727
+ gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
728
+ gem 'sprockets', '< 4'
729
+ gem 'lograge'
730
+ end
731
+
732
+ appraise 'rails6-postgres' do
733
+ gem 'rails', '~> 6.0.0'
734
+ gem 'pg', '< 1.0', platform: :ruby
735
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
736
+ gem 'sprockets', '< 4'
737
+ gem 'lograge'
738
+ end
739
+
740
+ appraise 'rails6-postgres-redis' do
741
+ gem 'rails', '~> 6.0.0'
742
+ gem 'pg', '< 1.0', platform: :ruby
743
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
744
+ gem 'redis', '>= 4.0.1'
745
+ gem 'sprockets', '< 4'
746
+ gem 'lograge'
747
+ end
748
+
749
+ appraise 'rails6-postgres-redis-activesupport' do
750
+ gem 'rails', '~> 6.0.0'
751
+ gem 'pg', '< 1.0', platform: :ruby
752
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
753
+ gem 'redis', '>= 4.0.1'
754
+ gem 'sprockets', '< 4'
755
+ gem 'lograge'
756
+ end
757
+
758
+ appraise 'rails6-postgres-sidekiq' do
759
+ gem 'rails', '~> 6.0.0'
760
+ gem 'pg', '< 1.0', platform: :ruby
761
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
762
+ gem 'sidekiq'
763
+ gem 'activejob'
764
+ gem 'sprockets', '< 4'
765
+ gem 'lograge'
766
+ end
767
+
768
+ appraise 'contrib' do
769
+ gem 'actionpack'
770
+ gem 'actionview'
771
+ gem 'active_model_serializers', '>= 0.10.0'
772
+ gem 'activerecord'
773
+ gem 'aws-sdk'
774
+ gem 'concurrent-ruby'
775
+ gem 'dalli'
776
+ gem 'delayed_job'
777
+ gem 'delayed_job_active_record'
778
+ gem 'elasticsearch-transport'
779
+ gem 'ethon'
780
+ gem 'excon'
781
+ gem 'faraday'
782
+ gem 'grape'
783
+ gem 'graphql'
784
+ gem 'grpc', platform: :ruby
785
+ gem 'hiredis'
786
+ gem 'http'
787
+ gem 'mongo', '>= 2.8.0'
603
788
  gem 'mysql2', '< 0.5', platform: :ruby
789
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
790
+ gem 'pg', platform: :ruby
791
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
792
+ gem 'presto-client', '>= 0.5.14'
793
+ gem 'racecar', '>= 0.3.5'
794
+ gem 'rack'
795
+ gem 'rack-test'
796
+ gem 'rake', '>= 12.3'
797
+ gem 'redis', '< 4.0'
798
+ gem 'rest-client'
799
+ gem 'resque', '< 2.0'
800
+ gem 'ruby-kafka', '>= 0.7.10'
801
+ gem 'sequel'
802
+ gem 'shoryuken'
803
+ gem 'sidekiq'
804
+ gem 'sinatra'
805
+ gem 'sneakers', '>= 2.12.0'
806
+ gem 'sqlite3', '~> 1.4.1', platform: :ruby
807
+ gem 'sucker_punch'
808
+ gem 'typhoeus'
809
+ gem 'que', '>= 1.0.0.beta2'
810
+ end
811
+
812
+ appraise 'contrib-old' do
813
+ gem 'faraday', '0.17'
814
+ end
815
+ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
816
+ && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
817
+ if RUBY_PLATFORM != 'java'
818
+ appraise 'rails5-mysql2' do
819
+ gem 'rails', '~> 5.2.1'
820
+ gem 'mysql2', '< 1', platform: :ruby
604
821
  gem 'sprockets', '< 4'
822
+ gem 'lograge'
605
823
  end
606
824
 
607
825
  appraise 'rails5-postgres' do
608
826
  gem 'rails', '~> 5.2.1'
609
827
  gem 'pg', '< 1.0', platform: :ruby
610
828
  gem 'sprockets', '< 4'
829
+ gem 'lograge'
611
830
  end
612
831
 
613
832
  appraise 'rails5-postgres-redis' do
614
833
  gem 'rails', '~> 5.2.1'
615
834
  gem 'pg', '< 1.0', platform: :ruby
616
- gem 'redis-rails'
617
- gem 'redis'
835
+ gem 'redis', '>= 4.0.1'
618
836
  gem 'sprockets', '< 4'
837
+ gem 'lograge'
619
838
  end
620
839
 
621
840
  appraise 'rails5-postgres-redis-activesupport' do
622
841
  gem 'rails', '~> 5.2.1'
623
842
  gem 'pg', '< 1.0', platform: :ruby
624
- gem 'redis-rails'
625
- gem 'redis'
843
+ gem 'redis', '>= 4.0.1'
626
844
  gem 'sprockets', '< 4'
845
+ gem 'lograge'
627
846
  end
628
847
 
629
848
  appraise 'rails5-postgres-sidekiq' do
@@ -632,34 +851,37 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
632
851
  gem 'sidekiq'
633
852
  gem 'activejob'
634
853
  gem 'sprockets', '< 4'
854
+ gem 'lograge'
635
855
  end
636
856
 
637
857
  appraise 'rails6-mysql2' do
638
858
  gem 'rails', '~> 6.0.0'
639
- gem 'mysql2', '< 0.6', platform: :ruby
859
+ gem 'mysql2', '< 1', platform: :ruby
640
860
  gem 'sprockets', '< 4'
861
+ gem 'lograge'
641
862
  end
642
863
 
643
864
  appraise 'rails6-postgres' do
644
865
  gem 'rails', '~> 6.0.0'
645
866
  gem 'pg', '< 1.0', platform: :ruby
646
867
  gem 'sprockets', '< 4'
868
+ gem 'lograge'
647
869
  end
648
870
 
649
871
  appraise 'rails6-postgres-redis' do
650
872
  gem 'rails', '~> 6.0.0'
651
873
  gem 'pg', '< 1.0', platform: :ruby
652
- gem 'redis-rails'
653
- gem 'redis'
874
+ gem 'redis', '>= 4.0.1'
654
875
  gem 'sprockets', '< 4'
876
+ gem 'lograge'
655
877
  end
656
878
 
657
879
  appraise 'rails6-postgres-redis-activesupport' do
658
880
  gem 'rails', '~> 6.0.0'
659
881
  gem 'pg', '< 1.0', platform: :ruby
660
- gem 'redis-rails'
661
- gem 'redis'
882
+ gem 'redis', '>= 4.0.1'
662
883
  gem 'sprockets', '< 4'
884
+ gem 'lograge'
663
885
  end
664
886
 
665
887
  appraise 'rails6-postgres-sidekiq' do
@@ -668,6 +890,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
668
890
  gem 'sidekiq'
669
891
  gem 'activejob'
670
892
  gem 'sprockets', '< 4'
893
+ gem 'lograge'
671
894
  end
672
895
 
673
896
  appraise 'contrib' do
@@ -688,8 +911,11 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
688
911
  gem 'graphql'
689
912
  gem 'grpc'
690
913
  gem 'hiredis'
914
+ gem 'http'
691
915
  gem 'mongo', '>= 2.8.0'
692
916
  gem 'mysql2', '< 0.5', platform: :ruby
917
+ gem 'pg', platform: :ruby
918
+ gem 'presto-client', '>= 0.5.14'
693
919
  gem 'racecar', '>= 0.3.5'
694
920
  gem 'rack'
695
921
  gem 'rack-test'
@@ -697,27 +923,36 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
697
923
  gem 'redis', '< 4.0'
698
924
  gem 'rest-client'
699
925
  gem 'resque', '< 2.0'
926
+ gem 'ruby-kafka', '>= 0.7.10'
700
927
  gem 'sequel'
701
928
  gem 'shoryuken'
702
929
  gem 'sidekiq'
703
930
  gem 'sinatra'
931
+ gem 'sneakers', '>= 2.12.0'
704
932
  gem 'sqlite3', '~> 1.4.1'
705
933
  gem 'sucker_punch'
706
934
  gem 'typhoeus'
935
+ gem 'que', '>= 1.0.0.beta2'
936
+ end
937
+
938
+ appraise 'contrib-old' do
939
+ gem 'faraday', '0.17'
707
940
  end
708
941
  end
709
- elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
942
+ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
710
943
  if RUBY_PLATFORM != 'java'
711
944
  appraise 'rails5-mysql2' do
712
945
  gem 'rails', '~> 5.2.1'
713
946
  gem 'mysql2', '< 0.5', platform: :ruby
714
947
  gem 'sprockets', '< 4'
948
+ gem 'lograge'
715
949
  end
716
950
 
717
951
  appraise 'rails5-postgres' do
718
952
  gem 'rails', '~> 5.2.1'
719
953
  gem 'pg', '< 1.0', platform: :ruby
720
954
  gem 'sprockets', '< 4'
955
+ gem 'lograge'
721
956
  end
722
957
 
723
958
  appraise 'rails5-postgres-redis' do
@@ -726,6 +961,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
726
961
  gem 'redis-rails'
727
962
  gem 'redis'
728
963
  gem 'sprockets', '< 4'
964
+ gem 'lograge'
729
965
  end
730
966
 
731
967
  appraise 'rails5-postgres-redis-activesupport' do
@@ -734,6 +970,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
734
970
  gem 'redis-rails'
735
971
  gem 'redis'
736
972
  gem 'sprockets', '< 4'
973
+ gem 'lograge'
737
974
  end
738
975
 
739
976
  appraise 'rails5-postgres-sidekiq' do
@@ -742,18 +979,21 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
742
979
  gem 'sidekiq'
743
980
  gem 'activejob'
744
981
  gem 'sprockets', '< 4'
982
+ gem 'lograge'
745
983
  end
746
984
 
747
985
  appraise 'rails6-mysql2' do
748
986
  gem 'rails', '~> 6.0.0'
749
987
  gem 'mysql2', '< 0.6', platform: :ruby
750
988
  gem 'sprockets', '< 4'
989
+ gem 'lograge'
751
990
  end
752
991
 
753
992
  appraise 'rails6-postgres' do
754
993
  gem 'rails', '~> 6.0.0'
755
994
  gem 'pg', '< 1.0', platform: :ruby
756
995
  gem 'sprockets', '< 4'
996
+ gem 'lograge'
757
997
  end
758
998
 
759
999
  appraise 'rails6-postgres-redis' do
@@ -762,6 +1002,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
762
1002
  gem 'redis-rails'
763
1003
  gem 'redis'
764
1004
  gem 'sprockets', '< 4'
1005
+ gem 'lograge'
765
1006
  end
766
1007
 
767
1008
  appraise 'rails6-postgres-redis-activesupport' do
@@ -770,6 +1011,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
770
1011
  gem 'redis-rails'
771
1012
  gem 'redis'
772
1013
  gem 'sprockets', '< 4'
1014
+ gem 'lograge'
773
1015
  end
774
1016
 
775
1017
  appraise 'rails6-postgres-sidekiq' do
@@ -778,6 +1020,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
778
1020
  gem 'sidekiq'
779
1021
  gem 'activejob'
780
1022
  gem 'sprockets', '< 4'
1023
+ gem 'lograge'
781
1024
  end
782
1025
 
783
1026
  appraise 'contrib' do
@@ -793,13 +1036,15 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
793
1036
  gem 'elasticsearch-transport'
794
1037
  gem 'ethon'
795
1038
  gem 'excon'
796
- gem 'faraday'
797
1039
  gem 'grape'
798
1040
  gem 'graphql'
799
1041
  gem 'grpc'
800
1042
  gem 'hiredis'
1043
+ gem 'http'
801
1044
  gem 'mongo', '>= 2.8.0'
802
1045
  gem 'mysql2', '< 0.5', platform: :ruby
1046
+ gem 'pg', platform: :ruby
1047
+ gem 'presto-client', '>= 0.5.14'
803
1048
  gem 'racecar', '>= 0.3.5'
804
1049
  gem 'rack'
805
1050
  gem 'rack-test'
@@ -807,14 +1052,20 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION)
807
1052
  gem 'redis', '< 4.0'
808
1053
  gem 'rest-client'
809
1054
  gem 'resque', '< 2.0'
1055
+ gem 'ruby-kafka', '>= 0.7.10'
810
1056
  gem 'sequel'
811
1057
  gem 'shoryuken'
812
1058
  gem 'sidekiq'
813
1059
  gem 'sinatra'
1060
+ gem 'sneakers', '>= 2.12.0'
814
1061
  gem 'sqlite3', '~> 1.4.1'
815
1062
  gem 'sucker_punch'
816
1063
  gem 'typhoeus'
1064
+ gem 'que', '>= 1.0.0.beta2'
1065
+ end
1066
+
1067
+ appraise 'contrib-old' do
1068
+ gem 'faraday', '0.17'
817
1069
  end
818
1070
  end
819
1071
  end
820
-