ddtrace 0.45.0 → 0.50.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (820) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +360 -56
  3. data/.circleci/images/primary/Dockerfile-2.1.10 +11 -1
  4. data/.circleci/images/primary/Dockerfile-2.2.10 +11 -1
  5. data/.circleci/images/primary/Dockerfile-2.3.8 +10 -0
  6. data/.circleci/images/primary/Dockerfile-2.4.6 +10 -0
  7. data/.circleci/images/primary/Dockerfile-2.5.6 +10 -0
  8. data/.circleci/images/primary/Dockerfile-2.6.4 +10 -0
  9. data/.circleci/images/primary/Dockerfile-2.7.0 +10 -0
  10. data/.circleci/images/primary/Dockerfile-jruby-9.2-latest +88 -0
  11. data/.circleci/images/primary/{Dockerfile-jruby-9.2 → Dockerfile-jruby-9.2.0.0} +1 -5
  12. data/.circleci/images/primary/{Dockerfile-2.0.0 → Dockerfile-truffleruby-21.1.0} +8 -8
  13. data/.dockerignore +0 -1
  14. data/.github/workflows/create-next-milestone.yml +2 -2
  15. data/.gitignore +0 -1
  16. data/.gitlab-ci.yml +18 -18
  17. data/.rubocop.yml +273 -7
  18. data/.rubocop_todo.yml +438 -0
  19. data/.simplecov +6 -0
  20. data/Appraisals +74 -101
  21. data/CHANGELOG.md +275 -1
  22. data/Gemfile +63 -3
  23. data/LICENSE-3rdparty.csv +2 -0
  24. data/Rakefile +299 -353
  25. data/benchmarks/data/profiler-submission-marshal.gz +0 -0
  26. data/benchmarks/profiler_sample_loop.rb +69 -0
  27. data/benchmarks/profiler_submission.rb +93 -0
  28. data/bin/ddtracerb +15 -0
  29. data/ddtrace.gemspec +10 -38
  30. data/docker-compose.yml +68 -54
  31. data/docs/DevelopmentGuide.md +28 -0
  32. data/docs/GettingStarted.md +123 -73
  33. data/docs/ProfilingDevelopment.md +88 -0
  34. data/gemfiles/jruby_9.2.0.0_contrib.gemfile +79 -0
  35. data/gemfiles/jruby_9.2.0.0_contrib.gemfile.lock +1518 -0
  36. data/gemfiles/jruby_9.2.0.0_contrib_old.gemfile +35 -0
  37. data/gemfiles/jruby_9.2.0.0_contrib_old.gemfile.lock +157 -0
  38. data/gemfiles/jruby_9.2.0.0_core_old.gemfile +34 -0
  39. data/gemfiles/jruby_9.2.0.0_core_old.gemfile.lock +153 -0
  40. data/gemfiles/jruby_9.2.0.0_cucumber3.gemfile +35 -0
  41. data/gemfiles/jruby_9.2.0.0_cucumber3.gemfile.lock +174 -0
  42. data/gemfiles/jruby_9.2.0.0_cucumber4.gemfile +35 -0
  43. data/gemfiles/jruby_9.2.0.0_cucumber4.gemfile.lock +206 -0
  44. data/gemfiles/jruby_9.2.0.0_cucumber5.gemfile +35 -0
  45. data/gemfiles/jruby_9.2.0.0_cucumber5.gemfile.lock +206 -0
  46. data/gemfiles/jruby_9.2.0.0_rails5_mysql2.gemfile +40 -0
  47. data/gemfiles/jruby_9.2.0.0_rails5_mysql2.gemfile.lock +271 -0
  48. data/gemfiles/jruby_9.2.0.0_rails5_postgres.gemfile +40 -0
  49. data/gemfiles/jruby_9.2.0.0_rails5_postgres.gemfile.lock +271 -0
  50. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis.gemfile +41 -0
  51. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis.gemfile.lock +273 -0
  52. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis_activesupport.gemfile +41 -0
  53. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis_activesupport.gemfile.lock +273 -0
  54. data/gemfiles/jruby_9.2.0.0_rails5_postgres_sidekiq.gemfile +42 -0
  55. data/gemfiles/jruby_9.2.0.0_rails5_postgres_sidekiq.gemfile.lock +279 -0
  56. data/gemfiles/jruby_9.2.0.0_rails61_mysql2.gemfile +40 -0
  57. data/gemfiles/jruby_9.2.0.0_rails61_mysql2.gemfile.lock +290 -0
  58. data/gemfiles/jruby_9.2.0.0_rails61_postgres.gemfile +40 -0
  59. data/gemfiles/jruby_9.2.0.0_rails61_postgres.gemfile.lock +290 -0
  60. data/gemfiles/jruby_9.2.0.0_rails61_postgres_redis.gemfile +41 -0
  61. data/gemfiles/jruby_9.2.0.0_rails61_postgres_redis.gemfile.lock +292 -0
  62. data/gemfiles/jruby_9.2.0.0_rails61_postgres_sidekiq.gemfile +41 -0
  63. data/gemfiles/jruby_9.2.0.0_rails61_postgres_sidekiq.gemfile.lock +297 -0
  64. data/gemfiles/jruby_9.2.0.0_rails6_mysql2.gemfile +40 -0
  65. data/gemfiles/jruby_9.2.0.0_rails6_mysql2.gemfile.lock +287 -0
  66. data/gemfiles/jruby_9.2.0.0_rails6_postgres.gemfile +40 -0
  67. data/gemfiles/jruby_9.2.0.0_rails6_postgres.gemfile.lock +287 -0
  68. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis.gemfile +41 -0
  69. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis.gemfile.lock +289 -0
  70. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis_activesupport.gemfile +41 -0
  71. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis_activesupport.gemfile.lock +289 -0
  72. data/gemfiles/jruby_9.2.0.0_rails6_postgres_sidekiq.gemfile +42 -0
  73. data/gemfiles/jruby_9.2.0.0_rails6_postgres_sidekiq.gemfile.lock +295 -0
  74. data/gemfiles/jruby_9.2.0.0_resque2_redis3.gemfile +36 -0
  75. data/gemfiles/jruby_9.2.0.0_resque2_redis3.gemfile.lock +180 -0
  76. data/gemfiles/jruby_9.2.0.0_resque2_redis4.gemfile +36 -0
  77. data/gemfiles/jruby_9.2.0.0_resque2_redis4.gemfile.lock +180 -0
  78. data/gemfiles/jruby_9.2.11.1_contrib.gemfile +79 -0
  79. data/gemfiles/jruby_9.2.11.1_contrib.gemfile.lock +1518 -0
  80. data/gemfiles/jruby_9.2.11.1_contrib_old.gemfile +35 -0
  81. data/gemfiles/jruby_9.2.11.1_contrib_old.gemfile.lock +157 -0
  82. data/gemfiles/jruby_9.2.11.1_core_old.gemfile +34 -0
  83. data/gemfiles/jruby_9.2.11.1_core_old.gemfile.lock +153 -0
  84. data/gemfiles/jruby_9.2.11.1_cucumber3.gemfile +35 -0
  85. data/gemfiles/jruby_9.2.11.1_cucumber3.gemfile.lock +174 -0
  86. data/gemfiles/jruby_9.2.11.1_cucumber4.gemfile +35 -0
  87. data/gemfiles/jruby_9.2.11.1_cucumber4.gemfile.lock +206 -0
  88. data/gemfiles/jruby_9.2.11.1_cucumber5.gemfile +35 -0
  89. data/gemfiles/jruby_9.2.11.1_cucumber5.gemfile.lock +206 -0
  90. data/gemfiles/jruby_9.2.11.1_rails5_mysql2.gemfile +40 -0
  91. data/gemfiles/jruby_9.2.11.1_rails5_mysql2.gemfile.lock +271 -0
  92. data/gemfiles/jruby_9.2.11.1_rails5_postgres.gemfile +40 -0
  93. data/gemfiles/jruby_9.2.11.1_rails5_postgres.gemfile.lock +271 -0
  94. data/gemfiles/jruby_9.2.11.1_rails5_postgres_redis.gemfile +41 -0
  95. data/gemfiles/jruby_9.2.11.1_rails5_postgres_redis.gemfile.lock +273 -0
  96. data/gemfiles/jruby_9.2.11.1_rails5_postgres_redis_activesupport.gemfile +41 -0
  97. data/gemfiles/jruby_9.2.11.1_rails5_postgres_redis_activesupport.gemfile.lock +273 -0
  98. data/gemfiles/jruby_9.2.11.1_rails5_postgres_sidekiq.gemfile +42 -0
  99. data/gemfiles/jruby_9.2.11.1_rails5_postgres_sidekiq.gemfile.lock +279 -0
  100. data/gemfiles/jruby_9.2.11.1_rails61_mysql2.gemfile +40 -0
  101. data/gemfiles/jruby_9.2.11.1_rails61_mysql2.gemfile.lock +290 -0
  102. data/gemfiles/jruby_9.2.11.1_rails61_postgres.gemfile +40 -0
  103. data/gemfiles/jruby_9.2.11.1_rails61_postgres.gemfile.lock +290 -0
  104. data/gemfiles/jruby_9.2.11.1_rails61_postgres_redis.gemfile +41 -0
  105. data/gemfiles/jruby_9.2.11.1_rails61_postgres_redis.gemfile.lock +292 -0
  106. data/gemfiles/jruby_9.2.11.1_rails61_postgres_sidekiq.gemfile +41 -0
  107. data/gemfiles/jruby_9.2.11.1_rails61_postgres_sidekiq.gemfile.lock +297 -0
  108. data/gemfiles/jruby_9.2.11.1_rails6_mysql2.gemfile +40 -0
  109. data/gemfiles/jruby_9.2.11.1_rails6_mysql2.gemfile.lock +287 -0
  110. data/gemfiles/jruby_9.2.11.1_rails6_postgres.gemfile +40 -0
  111. data/gemfiles/jruby_9.2.11.1_rails6_postgres.gemfile.lock +287 -0
  112. data/gemfiles/jruby_9.2.11.1_rails6_postgres_redis.gemfile +41 -0
  113. data/gemfiles/jruby_9.2.11.1_rails6_postgres_redis.gemfile.lock +289 -0
  114. data/gemfiles/jruby_9.2.11.1_rails6_postgres_redis_activesupport.gemfile +41 -0
  115. data/gemfiles/jruby_9.2.11.1_rails6_postgres_redis_activesupport.gemfile.lock +289 -0
  116. data/gemfiles/jruby_9.2.11.1_rails6_postgres_sidekiq.gemfile +42 -0
  117. data/gemfiles/jruby_9.2.11.1_rails6_postgres_sidekiq.gemfile.lock +295 -0
  118. data/gemfiles/jruby_9.2.11.1_resque2_redis3.gemfile +36 -0
  119. data/gemfiles/jruby_9.2.11.1_resque2_redis3.gemfile.lock +180 -0
  120. data/gemfiles/jruby_9.2.11.1_resque2_redis4.gemfile +36 -0
  121. data/gemfiles/jruby_9.2.11.1_resque2_redis4.gemfile.lock +180 -0
  122. data/gemfiles/ruby_2.1.10_contrib_old.gemfile +66 -0
  123. data/gemfiles/ruby_2.1.10_contrib_old.gemfile.lock +305 -0
  124. data/gemfiles/ruby_2.1.10_core_old.gemfile +33 -0
  125. data/gemfiles/ruby_2.1.10_core_old.gemfile.lock +118 -0
  126. data/gemfiles/ruby_2.1.10_rails30_postgres.gemfile +39 -0
  127. data/gemfiles/ruby_2.1.10_rails30_postgres.gemfile.lock +196 -0
  128. data/gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile +40 -0
  129. data/gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile.lock +205 -0
  130. data/gemfiles/ruby_2.1.10_rails32_mysql2.gemfile +42 -0
  131. data/gemfiles/ruby_2.1.10_rails32_mysql2.gemfile.lock +215 -0
  132. data/gemfiles/ruby_2.1.10_rails32_postgres.gemfile +39 -0
  133. data/gemfiles/ruby_2.1.10_rails32_postgres.gemfile.lock +204 -0
  134. data/gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile +41 -0
  135. data/gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile.lock +223 -0
  136. data/gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile +40 -0
  137. data/gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile.lock +213 -0
  138. data/gemfiles/ruby_2.1.10_rails4_mysql2.gemfile +38 -0
  139. data/gemfiles/ruby_2.1.10_rails4_mysql2.gemfile.lock +218 -0
  140. data/gemfiles/ruby_2.1.10_rails4_postgres.gemfile +38 -0
  141. data/gemfiles/ruby_2.1.10_rails4_postgres.gemfile.lock +218 -0
  142. data/gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile +40 -0
  143. data/gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile.lock +237 -0
  144. data/gemfiles/ruby_2.2.10_contrib.gemfile +73 -0
  145. data/gemfiles/ruby_2.2.10_contrib.gemfile.lock +1450 -0
  146. data/gemfiles/ruby_2.2.10_core_old.gemfile +33 -0
  147. data/gemfiles/ruby_2.2.10_core_old.gemfile.lock +118 -0
  148. data/gemfiles/ruby_2.2.10_rails30_postgres.gemfile +39 -0
  149. data/gemfiles/ruby_2.2.10_rails30_postgres.gemfile.lock +196 -0
  150. data/gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile +40 -0
  151. data/gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile.lock +205 -0
  152. data/gemfiles/ruby_2.2.10_rails32_mysql2.gemfile +41 -0
  153. data/gemfiles/ruby_2.2.10_rails32_mysql2.gemfile.lock +212 -0
  154. data/gemfiles/ruby_2.2.10_rails32_postgres.gemfile +39 -0
  155. data/gemfiles/ruby_2.2.10_rails32_postgres.gemfile.lock +204 -0
  156. data/gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile +41 -0
  157. data/gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile.lock +223 -0
  158. data/gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile +40 -0
  159. data/gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile.lock +213 -0
  160. data/gemfiles/ruby_2.2.10_rails4_mysql2.gemfile +38 -0
  161. data/gemfiles/ruby_2.2.10_rails4_mysql2.gemfile.lock +218 -0
  162. data/gemfiles/ruby_2.2.10_rails4_postgres.gemfile +38 -0
  163. data/gemfiles/ruby_2.2.10_rails4_postgres.gemfile.lock +218 -0
  164. data/gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile +40 -0
  165. data/gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile.lock +237 -0
  166. data/gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile +40 -0
  167. data/gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile.lock +229 -0
  168. data/gemfiles/ruby_2.2.10_rails5_mysql2.gemfile +38 -0
  169. data/gemfiles/ruby_2.2.10_rails5_mysql2.gemfile.lock +234 -0
  170. data/gemfiles/ruby_2.2.10_rails5_postgres.gemfile +38 -0
  171. data/gemfiles/ruby_2.2.10_rails5_postgres.gemfile.lock +234 -0
  172. data/gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile +39 -0
  173. data/gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile.lock +236 -0
  174. data/gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile +39 -0
  175. data/gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile.lock +236 -0
  176. data/gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile +40 -0
  177. data/gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile.lock +245 -0
  178. data/gemfiles/ruby_2.3.8_contrib.gemfile +73 -0
  179. data/gemfiles/ruby_2.3.8_contrib.gemfile.lock +1459 -0
  180. data/gemfiles/ruby_2.3.8_contrib_old.gemfile +34 -0
  181. data/gemfiles/ruby_2.3.8_contrib_old.gemfile.lock +127 -0
  182. data/gemfiles/ruby_2.3.8_core_old.gemfile +33 -0
  183. data/gemfiles/ruby_2.3.8_core_old.gemfile.lock +123 -0
  184. data/gemfiles/ruby_2.3.8_cucumber3.gemfile +34 -0
  185. data/gemfiles/ruby_2.3.8_cucumber3.gemfile.lock +144 -0
  186. data/gemfiles/ruby_2.3.8_cucumber4.gemfile +34 -0
  187. data/gemfiles/ruby_2.3.8_cucumber4.gemfile.lock +174 -0
  188. data/gemfiles/ruby_2.3.8_rails30_postgres.gemfile +39 -0
  189. data/gemfiles/ruby_2.3.8_rails30_postgres.gemfile.lock +201 -0
  190. data/gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile +40 -0
  191. data/gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile.lock +210 -0
  192. data/gemfiles/ruby_2.3.8_rails32_mysql2.gemfile +41 -0
  193. data/gemfiles/ruby_2.3.8_rails32_mysql2.gemfile.lock +217 -0
  194. data/gemfiles/ruby_2.3.8_rails32_postgres.gemfile +39 -0
  195. data/gemfiles/ruby_2.3.8_rails32_postgres.gemfile.lock +209 -0
  196. data/gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile +41 -0
  197. data/gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile.lock +228 -0
  198. data/gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile +40 -0
  199. data/gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile.lock +218 -0
  200. data/gemfiles/ruby_2.3.8_rails4_mysql2.gemfile +38 -0
  201. data/gemfiles/ruby_2.3.8_rails4_mysql2.gemfile.lock +223 -0
  202. data/gemfiles/ruby_2.3.8_rails4_postgres.gemfile +38 -0
  203. data/gemfiles/ruby_2.3.8_rails4_postgres.gemfile.lock +223 -0
  204. data/gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile +40 -0
  205. data/gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile.lock +242 -0
  206. data/gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile +40 -0
  207. data/gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile.lock +234 -0
  208. data/gemfiles/ruby_2.3.8_rails5_mysql2.gemfile +37 -0
  209. data/gemfiles/ruby_2.3.8_rails5_mysql2.gemfile.lock +234 -0
  210. data/gemfiles/ruby_2.3.8_rails5_postgres.gemfile +37 -0
  211. data/gemfiles/ruby_2.3.8_rails5_postgres.gemfile.lock +234 -0
  212. data/gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile +38 -0
  213. data/gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile.lock +236 -0
  214. data/gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile +38 -0
  215. data/gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile.lock +236 -0
  216. data/gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile +39 -0
  217. data/gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile.lock +245 -0
  218. data/gemfiles/ruby_2.3.8_resque2_redis3.gemfile +35 -0
  219. data/gemfiles/ruby_2.3.8_resque2_redis3.gemfile.lock +150 -0
  220. data/gemfiles/ruby_2.3.8_resque2_redis4.gemfile +35 -0
  221. data/gemfiles/ruby_2.3.8_resque2_redis4.gemfile.lock +150 -0
  222. data/gemfiles/ruby_2.4.6_contrib.gemfile +78 -0
  223. data/gemfiles/ruby_2.4.6_contrib.gemfile.lock +1513 -0
  224. data/gemfiles/ruby_2.4.6_contrib_old.gemfile +38 -0
  225. data/gemfiles/ruby_2.4.6_contrib_old.gemfile.lock +155 -0
  226. data/gemfiles/ruby_2.4.6_core_old.gemfile +37 -0
  227. data/gemfiles/ruby_2.4.6_core_old.gemfile.lock +151 -0
  228. data/gemfiles/ruby_2.4.6_cucumber3.gemfile +38 -0
  229. data/gemfiles/ruby_2.4.6_cucumber3.gemfile.lock +172 -0
  230. data/gemfiles/ruby_2.4.6_cucumber4.gemfile +38 -0
  231. data/gemfiles/ruby_2.4.6_cucumber4.gemfile.lock +202 -0
  232. data/gemfiles/ruby_2.4.6_rails5_mysql2.gemfile +41 -0
  233. data/gemfiles/ruby_2.4.6_rails5_mysql2.gemfile.lock +262 -0
  234. data/gemfiles/ruby_2.4.6_rails5_postgres.gemfile +41 -0
  235. data/gemfiles/ruby_2.4.6_rails5_postgres.gemfile.lock +262 -0
  236. data/gemfiles/ruby_2.4.6_rails5_postgres_redis.gemfile +42 -0
  237. data/gemfiles/ruby_2.4.6_rails5_postgres_redis.gemfile.lock +264 -0
  238. data/gemfiles/ruby_2.4.6_rails5_postgres_redis_activesupport.gemfile +42 -0
  239. data/gemfiles/ruby_2.4.6_rails5_postgres_redis_activesupport.gemfile.lock +264 -0
  240. data/gemfiles/ruby_2.4.6_rails5_postgres_sidekiq.gemfile +43 -0
  241. data/gemfiles/ruby_2.4.6_rails5_postgres_sidekiq.gemfile.lock +273 -0
  242. data/gemfiles/ruby_2.4.6_resque2_redis3.gemfile +39 -0
  243. data/gemfiles/ruby_2.4.6_resque2_redis3.gemfile.lock +178 -0
  244. data/gemfiles/ruby_2.4.6_resque2_redis4.gemfile +39 -0
  245. data/gemfiles/ruby_2.4.6_resque2_redis4.gemfile.lock +178 -0
  246. data/gemfiles/ruby_2.5.6_contrib.gemfile +83 -0
  247. data/gemfiles/ruby_2.5.6_contrib.gemfile.lock +1526 -0
  248. data/gemfiles/ruby_2.5.6_contrib_old.gemfile +39 -0
  249. data/gemfiles/ruby_2.5.6_contrib_old.gemfile.lock +165 -0
  250. data/gemfiles/ruby_2.5.6_core_old.gemfile +38 -0
  251. data/gemfiles/ruby_2.5.6_core_old.gemfile.lock +161 -0
  252. data/gemfiles/ruby_2.5.6_cucumber3.gemfile +39 -0
  253. data/gemfiles/ruby_2.5.6_cucumber3.gemfile.lock +182 -0
  254. data/gemfiles/ruby_2.5.6_cucumber4.gemfile +39 -0
  255. data/gemfiles/ruby_2.5.6_cucumber4.gemfile.lock +214 -0
  256. data/gemfiles/ruby_2.5.6_cucumber5.gemfile +39 -0
  257. data/gemfiles/ruby_2.5.6_cucumber5.gemfile.lock +214 -0
  258. data/gemfiles/ruby_2.5.6_rails5_mysql2.gemfile +44 -0
  259. data/gemfiles/ruby_2.5.6_rails5_mysql2.gemfile.lock +276 -0
  260. data/gemfiles/ruby_2.5.6_rails5_postgres.gemfile +44 -0
  261. data/gemfiles/ruby_2.5.6_rails5_postgres.gemfile.lock +276 -0
  262. data/gemfiles/ruby_2.5.6_rails5_postgres_redis.gemfile +45 -0
  263. data/gemfiles/ruby_2.5.6_rails5_postgres_redis.gemfile.lock +278 -0
  264. data/gemfiles/ruby_2.5.6_rails5_postgres_redis_activesupport.gemfile +45 -0
  265. data/gemfiles/ruby_2.5.6_rails5_postgres_redis_activesupport.gemfile.lock +278 -0
  266. data/gemfiles/ruby_2.5.6_rails5_postgres_sidekiq.gemfile +46 -0
  267. data/gemfiles/ruby_2.5.6_rails5_postgres_sidekiq.gemfile.lock +284 -0
  268. data/gemfiles/ruby_2.5.6_rails61_mysql2.gemfile +44 -0
  269. data/gemfiles/ruby_2.5.6_rails61_mysql2.gemfile.lock +295 -0
  270. data/gemfiles/ruby_2.5.6_rails61_postgres.gemfile +44 -0
  271. data/gemfiles/ruby_2.5.6_rails61_postgres.gemfile.lock +295 -0
  272. data/gemfiles/ruby_2.5.6_rails61_postgres_redis.gemfile +45 -0
  273. data/gemfiles/ruby_2.5.6_rails61_postgres_redis.gemfile.lock +297 -0
  274. data/gemfiles/ruby_2.5.6_rails61_postgres_sidekiq.gemfile +45 -0
  275. data/gemfiles/ruby_2.5.6_rails61_postgres_sidekiq.gemfile.lock +302 -0
  276. data/gemfiles/ruby_2.5.6_rails6_mysql2.gemfile +44 -0
  277. data/gemfiles/ruby_2.5.6_rails6_mysql2.gemfile.lock +292 -0
  278. data/gemfiles/ruby_2.5.6_rails6_postgres.gemfile +44 -0
  279. data/gemfiles/ruby_2.5.6_rails6_postgres.gemfile.lock +292 -0
  280. data/gemfiles/ruby_2.5.6_rails6_postgres_redis.gemfile +45 -0
  281. data/gemfiles/ruby_2.5.6_rails6_postgres_redis.gemfile.lock +294 -0
  282. data/gemfiles/ruby_2.5.6_rails6_postgres_redis_activesupport.gemfile +45 -0
  283. data/gemfiles/ruby_2.5.6_rails6_postgres_redis_activesupport.gemfile.lock +294 -0
  284. data/gemfiles/ruby_2.5.6_rails6_postgres_sidekiq.gemfile +46 -0
  285. data/gemfiles/ruby_2.5.6_rails6_postgres_sidekiq.gemfile.lock +300 -0
  286. data/gemfiles/ruby_2.5.6_resque2_redis3.gemfile +40 -0
  287. data/gemfiles/ruby_2.5.6_resque2_redis3.gemfile.lock +188 -0
  288. data/gemfiles/ruby_2.5.6_resque2_redis4.gemfile +40 -0
  289. data/gemfiles/ruby_2.5.6_resque2_redis4.gemfile.lock +188 -0
  290. data/gemfiles/ruby_2.6.4_contrib.gemfile +79 -0
  291. data/gemfiles/ruby_2.6.4_contrib.gemfile.lock +1524 -0
  292. data/gemfiles/ruby_2.6.4_contrib_old.gemfile +39 -0
  293. data/gemfiles/ruby_2.6.4_contrib_old.gemfile.lock +167 -0
  294. data/gemfiles/ruby_2.6.4_core_old.gemfile +38 -0
  295. data/gemfiles/ruby_2.6.4_core_old.gemfile.lock +163 -0
  296. data/gemfiles/ruby_2.6.4_cucumber3.gemfile +39 -0
  297. data/gemfiles/ruby_2.6.4_cucumber3.gemfile.lock +184 -0
  298. data/gemfiles/ruby_2.6.4_cucumber4.gemfile +39 -0
  299. data/gemfiles/ruby_2.6.4_cucumber4.gemfile.lock +216 -0
  300. data/gemfiles/ruby_2.6.4_cucumber5.gemfile +39 -0
  301. data/gemfiles/ruby_2.6.4_cucumber5.gemfile.lock +216 -0
  302. data/gemfiles/ruby_2.6.4_rails5_mysql2.gemfile +42 -0
  303. data/gemfiles/ruby_2.6.4_rails5_mysql2.gemfile.lock +276 -0
  304. data/gemfiles/ruby_2.6.4_rails5_postgres.gemfile +42 -0
  305. data/gemfiles/ruby_2.6.4_rails5_postgres.gemfile.lock +276 -0
  306. data/gemfiles/ruby_2.6.4_rails5_postgres_redis.gemfile +43 -0
  307. data/gemfiles/ruby_2.6.4_rails5_postgres_redis.gemfile.lock +278 -0
  308. data/gemfiles/ruby_2.6.4_rails5_postgres_redis_activesupport.gemfile +43 -0
  309. data/gemfiles/ruby_2.6.4_rails5_postgres_redis_activesupport.gemfile.lock +278 -0
  310. data/gemfiles/ruby_2.6.4_rails5_postgres_sidekiq.gemfile +44 -0
  311. data/gemfiles/ruby_2.6.4_rails5_postgres_sidekiq.gemfile.lock +284 -0
  312. data/gemfiles/ruby_2.6.4_rails61_mysql2.gemfile +42 -0
  313. data/gemfiles/ruby_2.6.4_rails61_mysql2.gemfile.lock +295 -0
  314. data/gemfiles/ruby_2.6.4_rails61_postgres.gemfile +42 -0
  315. data/gemfiles/ruby_2.6.4_rails61_postgres.gemfile.lock +295 -0
  316. data/gemfiles/ruby_2.6.4_rails61_postgres_redis.gemfile +43 -0
  317. data/gemfiles/ruby_2.6.4_rails61_postgres_redis.gemfile.lock +297 -0
  318. data/gemfiles/ruby_2.6.4_rails61_postgres_sidekiq.gemfile +43 -0
  319. data/gemfiles/ruby_2.6.4_rails61_postgres_sidekiq.gemfile.lock +302 -0
  320. data/gemfiles/ruby_2.6.4_rails6_mysql2.gemfile +42 -0
  321. data/gemfiles/ruby_2.6.4_rails6_mysql2.gemfile.lock +292 -0
  322. data/gemfiles/ruby_2.6.4_rails6_postgres.gemfile +42 -0
  323. data/gemfiles/ruby_2.6.4_rails6_postgres.gemfile.lock +292 -0
  324. data/gemfiles/ruby_2.6.4_rails6_postgres_redis.gemfile +43 -0
  325. data/gemfiles/ruby_2.6.4_rails6_postgres_redis.gemfile.lock +294 -0
  326. data/gemfiles/ruby_2.6.4_rails6_postgres_redis_activesupport.gemfile +43 -0
  327. data/gemfiles/ruby_2.6.4_rails6_postgres_redis_activesupport.gemfile.lock +294 -0
  328. data/gemfiles/ruby_2.6.4_rails6_postgres_sidekiq.gemfile +44 -0
  329. data/gemfiles/ruby_2.6.4_rails6_postgres_sidekiq.gemfile.lock +300 -0
  330. data/gemfiles/ruby_2.6.4_resque2_redis3.gemfile +40 -0
  331. data/gemfiles/ruby_2.6.4_resque2_redis3.gemfile.lock +190 -0
  332. data/gemfiles/ruby_2.6.4_resque2_redis4.gemfile +40 -0
  333. data/gemfiles/ruby_2.6.4_resque2_redis4.gemfile.lock +190 -0
  334. data/gemfiles/ruby_2.7.0_contrib.gemfile +78 -0
  335. data/gemfiles/ruby_2.7.0_contrib.gemfile.lock +1523 -0
  336. data/gemfiles/ruby_2.7.0_contrib_old.gemfile +39 -0
  337. data/gemfiles/ruby_2.7.0_contrib_old.gemfile.lock +167 -0
  338. data/gemfiles/ruby_2.7.0_core_old.gemfile +38 -0
  339. data/gemfiles/ruby_2.7.0_core_old.gemfile.lock +163 -0
  340. data/gemfiles/ruby_2.7.0_cucumber3.gemfile +39 -0
  341. data/gemfiles/ruby_2.7.0_cucumber3.gemfile.lock +184 -0
  342. data/gemfiles/ruby_2.7.0_cucumber4.gemfile +39 -0
  343. data/gemfiles/ruby_2.7.0_cucumber4.gemfile.lock +216 -0
  344. data/gemfiles/ruby_2.7.0_cucumber5.gemfile +39 -0
  345. data/gemfiles/ruby_2.7.0_cucumber5.gemfile.lock +216 -0
  346. data/gemfiles/ruby_2.7.0_rails5_mysql2.gemfile +42 -0
  347. data/gemfiles/ruby_2.7.0_rails5_mysql2.gemfile.lock +276 -0
  348. data/gemfiles/ruby_2.7.0_rails5_postgres.gemfile +42 -0
  349. data/gemfiles/ruby_2.7.0_rails5_postgres.gemfile.lock +276 -0
  350. data/gemfiles/ruby_2.7.0_rails5_postgres_redis.gemfile +44 -0
  351. data/gemfiles/ruby_2.7.0_rails5_postgres_redis.gemfile.lock +295 -0
  352. data/gemfiles/ruby_2.7.0_rails5_postgres_redis_activesupport.gemfile +44 -0
  353. data/gemfiles/ruby_2.7.0_rails5_postgres_redis_activesupport.gemfile.lock +295 -0
  354. data/gemfiles/ruby_2.7.0_rails5_postgres_sidekiq.gemfile +44 -0
  355. data/gemfiles/ruby_2.7.0_rails5_postgres_sidekiq.gemfile.lock +284 -0
  356. data/gemfiles/ruby_2.7.0_rails61_mysql2.gemfile +42 -0
  357. data/gemfiles/ruby_2.7.0_rails61_mysql2.gemfile.lock +295 -0
  358. data/gemfiles/ruby_2.7.0_rails61_postgres.gemfile +42 -0
  359. data/gemfiles/ruby_2.7.0_rails61_postgres.gemfile.lock +295 -0
  360. data/gemfiles/ruby_2.7.0_rails61_postgres_redis.gemfile +43 -0
  361. data/gemfiles/ruby_2.7.0_rails61_postgres_redis.gemfile.lock +297 -0
  362. data/gemfiles/ruby_2.7.0_rails61_postgres_sidekiq.gemfile +43 -0
  363. data/gemfiles/ruby_2.7.0_rails61_postgres_sidekiq.gemfile.lock +302 -0
  364. data/gemfiles/ruby_2.7.0_rails6_mysql2.gemfile +42 -0
  365. data/gemfiles/ruby_2.7.0_rails6_mysql2.gemfile.lock +292 -0
  366. data/gemfiles/ruby_2.7.0_rails6_postgres.gemfile +42 -0
  367. data/gemfiles/ruby_2.7.0_rails6_postgres.gemfile.lock +292 -0
  368. data/gemfiles/ruby_2.7.0_rails6_postgres_redis.gemfile +44 -0
  369. data/gemfiles/ruby_2.7.0_rails6_postgres_redis.gemfile.lock +311 -0
  370. data/gemfiles/ruby_2.7.0_rails6_postgres_redis_activesupport.gemfile +44 -0
  371. data/gemfiles/ruby_2.7.0_rails6_postgres_redis_activesupport.gemfile.lock +311 -0
  372. data/gemfiles/ruby_2.7.0_rails6_postgres_sidekiq.gemfile +44 -0
  373. data/gemfiles/ruby_2.7.0_rails6_postgres_sidekiq.gemfile.lock +300 -0
  374. data/gemfiles/ruby_2.7.0_resque2_redis3.gemfile +40 -0
  375. data/gemfiles/ruby_2.7.0_resque2_redis3.gemfile.lock +190 -0
  376. data/gemfiles/ruby_2.7.0_resque2_redis4.gemfile +40 -0
  377. data/gemfiles/ruby_2.7.0_resque2_redis4.gemfile.lock +190 -0
  378. data/gemfiles/ruby_3.0.0_contrib.gemfile +78 -0
  379. data/gemfiles/ruby_3.0.0_contrib.gemfile.lock +1540 -0
  380. data/gemfiles/ruby_3.0.0_core_old.gemfile +39 -0
  381. data/gemfiles/ruby_3.0.0_core_old.gemfile.lock +165 -0
  382. data/gemfiles/ruby_3.0.0_cucumber3.gemfile +40 -0
  383. data/gemfiles/ruby_3.0.0_cucumber3.gemfile.lock +186 -0
  384. data/gemfiles/ruby_3.0.0_cucumber4.gemfile +40 -0
  385. data/gemfiles/ruby_3.0.0_cucumber4.gemfile.lock +218 -0
  386. data/gemfiles/ruby_3.0.0_cucumber5.gemfile +40 -0
  387. data/gemfiles/ruby_3.0.0_cucumber5.gemfile.lock +218 -0
  388. data/gemfiles/ruby_3.0.0_rails61_mysql2.gemfile +43 -0
  389. data/gemfiles/ruby_3.0.0_rails61_mysql2.gemfile.lock +295 -0
  390. data/gemfiles/ruby_3.0.0_rails61_postgres.gemfile +43 -0
  391. data/gemfiles/ruby_3.0.0_rails61_postgres.gemfile.lock +295 -0
  392. data/gemfiles/ruby_3.0.0_rails61_postgres_redis.gemfile +44 -0
  393. data/gemfiles/ruby_3.0.0_rails61_postgres_redis.gemfile.lock +297 -0
  394. data/gemfiles/ruby_3.0.0_rails61_postgres_sidekiq.gemfile +44 -0
  395. data/gemfiles/ruby_3.0.0_rails61_postgres_sidekiq.gemfile.lock +302 -0
  396. data/gemfiles/ruby_3.0.0_resque2_redis3.gemfile +41 -0
  397. data/gemfiles/ruby_3.0.0_resque2_redis3.gemfile.lock +192 -0
  398. data/gemfiles/ruby_3.0.0_resque2_redis4.gemfile +41 -0
  399. data/gemfiles/ruby_3.0.0_resque2_redis4.gemfile.lock +192 -0
  400. data/integration/README.md +67 -0
  401. data/integration/apps/rack/.dockerignore +1 -0
  402. data/integration/apps/rack/.envrc.sample +1 -0
  403. data/integration/apps/rack/.gitignore +4 -0
  404. data/integration/apps/rack/.rspec +1 -0
  405. data/integration/apps/rack/Dockerfile +28 -0
  406. data/integration/apps/rack/Dockerfile-ci +11 -0
  407. data/integration/apps/rack/Gemfile +24 -0
  408. data/integration/apps/rack/README.md +93 -0
  409. data/integration/apps/rack/app/acme.rb +80 -0
  410. data/integration/apps/rack/app/datadog.rb +17 -0
  411. data/integration/apps/rack/bin/run +22 -0
  412. data/integration/apps/rack/bin/setup +17 -0
  413. data/integration/apps/rack/bin/test +24 -0
  414. data/integration/apps/rack/config.ru +6 -0
  415. data/integration/apps/rack/config/puma.rb +14 -0
  416. data/integration/apps/rack/config/unicorn.rb +23 -0
  417. data/integration/apps/rack/docker-compose.ci.yml +62 -0
  418. data/integration/apps/rack/docker-compose.yml +78 -0
  419. data/integration/apps/rack/script/build-images +38 -0
  420. data/integration/apps/rack/script/ci +51 -0
  421. data/integration/apps/rack/spec/integration/basic_spec.rb +10 -0
  422. data/integration/apps/rack/spec/spec_helper.rb +16 -0
  423. data/integration/apps/rack/spec/support/integration_helper.rb +22 -0
  424. data/integration/apps/rails-five/.dockerignore +1 -0
  425. data/integration/apps/rails-five/.env +3 -0
  426. data/integration/apps/rails-five/.envrc.sample +1 -0
  427. data/integration/apps/rails-five/.gitignore +30 -0
  428. data/integration/apps/rails-five/Dockerfile +25 -0
  429. data/integration/apps/rails-five/Dockerfile-ci +11 -0
  430. data/integration/apps/rails-five/Gemfile +104 -0
  431. data/integration/apps/rails-five/README.md +94 -0
  432. data/integration/apps/rails-five/Rakefile +6 -0
  433. data/integration/apps/rails-five/app/channels/application_cable/channel.rb +4 -0
  434. data/integration/apps/rails-five/app/channels/application_cable/connection.rb +4 -0
  435. data/integration/apps/rails-five/app/controllers/application_controller.rb +2 -0
  436. data/integration/apps/rails-five/app/controllers/basic_controller.rb +36 -0
  437. data/integration/apps/rails-five/app/controllers/concerns/.keep +0 -0
  438. data/integration/apps/rails-five/app/controllers/health_controller.rb +9 -0
  439. data/integration/apps/rails-five/app/controllers/jobs_controller.rb +12 -0
  440. data/integration/apps/rails-five/app/jobs/application_job.rb +2 -0
  441. data/integration/apps/rails-five/app/jobs/test_job.rb +12 -0
  442. data/integration/apps/rails-five/app/mailers/application_mailer.rb +4 -0
  443. data/integration/apps/rails-five/app/models/application_record.rb +3 -0
  444. data/integration/apps/rails-five/app/models/concerns/.keep +0 -0
  445. data/integration/apps/rails-five/app/models/test.rb +2 -0
  446. data/integration/apps/rails-five/app/views/layouts/mailer.html.erb +13 -0
  447. data/integration/apps/rails-five/app/views/layouts/mailer.text.erb +1 -0
  448. data/integration/apps/rails-five/bin/bundle +3 -0
  449. data/integration/apps/rails-five/bin/rails +9 -0
  450. data/integration/apps/rails-five/bin/rake +9 -0
  451. data/integration/apps/rails-five/bin/run +24 -0
  452. data/integration/apps/rails-five/bin/setup +27 -0
  453. data/integration/apps/rails-five/bin/spring +17 -0
  454. data/integration/apps/rails-five/bin/test +21 -0
  455. data/integration/apps/rails-five/bin/update +28 -0
  456. data/integration/apps/rails-five/config.ru +5 -0
  457. data/integration/apps/rails-five/config/application.rb +97 -0
  458. data/integration/apps/rails-five/config/boot.rb +4 -0
  459. data/integration/apps/rails-five/config/cable.yml +10 -0
  460. data/integration/apps/rails-five/config/credentials.yml.enc +1 -0
  461. data/integration/apps/rails-five/config/database.yml +28 -0
  462. data/integration/apps/rails-five/config/environment.rb +5 -0
  463. data/integration/apps/rails-five/config/environments/development.rb +51 -0
  464. data/integration/apps/rails-five/config/environments/production.rb +82 -0
  465. data/integration/apps/rails-five/config/environments/test.rb +43 -0
  466. data/integration/apps/rails-five/config/initializers/datadog.rb +18 -0
  467. data/integration/apps/rails-five/config/initializers/filter_parameter_logging.rb +4 -0
  468. data/integration/apps/rails-five/config/initializers/resque.rb +4 -0
  469. data/integration/apps/rails-five/config/initializers/rollbar.rb +5 -0
  470. data/integration/apps/rails-five/config/initializers/wrap_parameters.rb +14 -0
  471. data/integration/apps/rails-five/config/locales/en.yml +33 -0
  472. data/integration/apps/rails-five/config/puma.rb +24 -0
  473. data/integration/apps/rails-five/config/routes.rb +11 -0
  474. data/integration/apps/rails-five/config/spring.rb +6 -0
  475. data/integration/apps/rails-five/config/unicorn.rb +29 -0
  476. data/integration/apps/rails-five/db/migrate/20190927215052_create_tests.rb +11 -0
  477. data/integration/apps/rails-five/db/schema.rb +23 -0
  478. data/integration/apps/rails-five/db/seeds.rb +7 -0
  479. data/integration/apps/rails-five/docker-compose.ci.yml +98 -0
  480. data/integration/apps/rails-five/docker-compose.yml +100 -0
  481. data/integration/apps/rails-five/lib/tasks/.keep +0 -0
  482. data/integration/apps/rails-five/log/.keep +0 -0
  483. data/integration/apps/rails-five/public/robots.txt +1 -0
  484. data/integration/apps/rails-five/script/build-images +35 -0
  485. data/integration/apps/rails-five/script/ci +51 -0
  486. data/integration/apps/rails-five/spec/integration/basic_spec.rb +10 -0
  487. data/integration/apps/rails-five/spec/spec_helper.rb +16 -0
  488. data/integration/apps/rails-five/spec/support/integration_helper.rb +22 -0
  489. data/integration/apps/rails-five/storage/.keep +0 -0
  490. data/integration/apps/rails-five/tmp/.keep +0 -0
  491. data/integration/apps/rails-five/vendor/.keep +0 -0
  492. data/integration/apps/rspec/.dockerignore +1 -0
  493. data/integration/apps/rspec/.envrc.sample +1 -0
  494. data/integration/apps/rspec/.gitignore +2 -0
  495. data/integration/apps/rspec/.rspec +1 -0
  496. data/integration/apps/rspec/Dockerfile +25 -0
  497. data/integration/apps/rspec/Dockerfile-ci +11 -0
  498. data/integration/apps/rspec/Gemfile +14 -0
  499. data/integration/apps/rspec/README.md +70 -0
  500. data/integration/apps/rspec/agent.yaml +3 -0
  501. data/integration/apps/rspec/app/datadog.rb +13 -0
  502. data/integration/apps/rspec/app/fibonacci.rb +30 -0
  503. data/integration/apps/rspec/bin/run +20 -0
  504. data/integration/apps/rspec/bin/setup +17 -0
  505. data/integration/apps/rspec/bin/test +21 -0
  506. data/integration/apps/rspec/docker-compose.ci.yml +51 -0
  507. data/integration/apps/rspec/docker-compose.yml +63 -0
  508. data/integration/apps/rspec/script/build-images +37 -0
  509. data/integration/apps/rspec/script/ci +53 -0
  510. data/integration/apps/rspec/spec/fibonacci_spec.rb +16 -0
  511. data/integration/apps/rspec/spec/rspec_spec.rb +58 -0
  512. data/integration/apps/rspec/spec/spec_helper.rb +24 -0
  513. data/integration/apps/ruby/.dockerignore +1 -0
  514. data/integration/apps/ruby/.envrc.sample +1 -0
  515. data/integration/apps/ruby/.gitignore +2 -0
  516. data/integration/apps/ruby/Dockerfile +25 -0
  517. data/integration/apps/ruby/Dockerfile-ci +11 -0
  518. data/integration/apps/ruby/Gemfile +11 -0
  519. data/integration/apps/ruby/README.md +70 -0
  520. data/integration/apps/ruby/agent.yaml +3 -0
  521. data/integration/apps/ruby/app/datadog.rb +13 -0
  522. data/integration/apps/ruby/app/fibonacci.rb +58 -0
  523. data/integration/apps/ruby/bin/run +20 -0
  524. data/integration/apps/ruby/bin/setup +17 -0
  525. data/integration/apps/ruby/bin/test +21 -0
  526. data/integration/apps/ruby/docker-compose.ci.yml +51 -0
  527. data/integration/apps/ruby/docker-compose.yml +63 -0
  528. data/integration/apps/ruby/script/build-images +38 -0
  529. data/integration/apps/ruby/script/ci +51 -0
  530. data/integration/images/agent/Dockerfile +2 -0
  531. data/integration/images/agent/agent.yaml +3 -0
  532. data/integration/images/include/datadog/analyzer.rb +71 -0
  533. data/integration/images/include/datadog/demo_env.rb +101 -0
  534. data/integration/images/include/http-health-check +33 -0
  535. data/integration/images/ruby/2.1/Dockerfile +54 -0
  536. data/integration/images/ruby/2.2/Dockerfile +54 -0
  537. data/integration/images/ruby/2.3/Dockerfile +70 -0
  538. data/integration/images/ruby/2.4/Dockerfile +54 -0
  539. data/integration/images/ruby/2.5/Dockerfile +54 -0
  540. data/integration/images/ruby/2.6/Dockerfile +54 -0
  541. data/integration/images/ruby/2.7/Dockerfile +54 -0
  542. data/integration/images/ruby/3.0/Dockerfile +54 -0
  543. data/integration/images/wrk/Dockerfile +33 -0
  544. data/integration/images/wrk/scripts/entrypoint.sh +17 -0
  545. data/integration/images/wrk/scripts/scenarios/basic/default.lua +1 -0
  546. data/integration/images/wrk/scripts/scenarios/basic/fibonacci.lua +1 -0
  547. data/integration/script/build-images +43 -0
  548. data/lib/datadog/ci.rb +16 -0
  549. data/lib/datadog/ci/configuration/components.rb +30 -0
  550. data/lib/datadog/ci/configuration/settings.rb +36 -0
  551. data/lib/datadog/ci/context_flush.rb +28 -0
  552. data/lib/datadog/ci/contrib/cucumber/configuration/settings.rb +30 -0
  553. data/lib/datadog/ci/contrib/cucumber/ext.rb +19 -0
  554. data/lib/datadog/ci/contrib/cucumber/formatter.rb +97 -0
  555. data/lib/datadog/ci/contrib/cucumber/instrumentation.rb +26 -0
  556. data/lib/datadog/ci/contrib/cucumber/integration.rb +47 -0
  557. data/lib/datadog/ci/contrib/cucumber/patcher.rb +25 -0
  558. data/lib/datadog/ci/contrib/rspec/configuration/settings.rb +30 -0
  559. data/lib/datadog/ci/contrib/rspec/example.rb +73 -0
  560. data/lib/datadog/ci/contrib/rspec/ext.rb +18 -0
  561. data/lib/datadog/ci/contrib/rspec/integration.rb +48 -0
  562. data/lib/datadog/ci/contrib/rspec/patcher.rb +25 -0
  563. data/lib/datadog/ci/ext/app_types.rb +9 -0
  564. data/lib/datadog/ci/ext/environment.rb +303 -0
  565. data/lib/datadog/ci/ext/settings.rb +10 -0
  566. data/lib/datadog/ci/ext/test.rb +28 -0
  567. data/lib/datadog/ci/extensions.rb +17 -0
  568. data/lib/datadog/ci/test.rb +63 -0
  569. data/lib/ddtrace.rb +1 -7
  570. data/lib/ddtrace/analytics.rb +2 -0
  571. data/lib/ddtrace/buffer.rb +4 -4
  572. data/lib/ddtrace/configuration.rb +98 -25
  573. data/lib/ddtrace/configuration/agent_settings_resolver.rb +230 -0
  574. data/lib/ddtrace/configuration/base.rb +7 -10
  575. data/lib/ddtrace/configuration/components.rb +119 -21
  576. data/lib/ddtrace/configuration/option_definition.rb +1 -3
  577. data/lib/ddtrace/configuration/options.rb +6 -9
  578. data/lib/ddtrace/configuration/settings.rb +110 -7
  579. data/lib/ddtrace/context.rb +22 -20
  580. data/lib/ddtrace/context_flush.rb +14 -2
  581. data/lib/ddtrace/context_provider.rb +0 -1
  582. data/lib/ddtrace/contrib/action_cable/event.rb +5 -4
  583. data/lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb +2 -4
  584. data/lib/ddtrace/contrib/action_pack/action_controller/patcher.rb +1 -1
  585. data/lib/ddtrace/contrib/action_pack/utils.rb +1 -1
  586. data/lib/ddtrace/contrib/action_view/event.rb +3 -3
  587. data/lib/ddtrace/contrib/action_view/patcher.rb +4 -4
  588. data/lib/ddtrace/contrib/action_view/utils.rb +1 -1
  589. data/lib/ddtrace/contrib/active_model_serializers/event.rb +2 -2
  590. data/lib/ddtrace/contrib/active_record/configuration/makara_resolver.rb +30 -0
  591. data/lib/ddtrace/contrib/active_record/configuration/resolver.rb +107 -18
  592. data/lib/ddtrace/contrib/active_record/event.rb +2 -2
  593. data/lib/ddtrace/contrib/active_record/utils.rb +1 -0
  594. data/lib/ddtrace/contrib/active_support/cache/patcher.rb +7 -7
  595. data/lib/ddtrace/contrib/active_support/cache/redis.rb +1 -5
  596. data/lib/ddtrace/contrib/active_support/notifications/event.rb +4 -3
  597. data/lib/ddtrace/contrib/active_support/notifications/subscriber.rb +2 -1
  598. data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +9 -5
  599. data/lib/ddtrace/contrib/auto_instrument.rb +2 -2
  600. data/lib/ddtrace/contrib/aws/instrumentation.rb +29 -0
  601. data/lib/ddtrace/contrib/aws/patcher.rb +5 -0
  602. data/lib/ddtrace/contrib/aws/services.rb +2 -0
  603. data/lib/ddtrace/contrib/concurrent_ruby/patcher.rb +1 -1
  604. data/lib/ddtrace/contrib/configurable.rb +64 -40
  605. data/lib/ddtrace/contrib/configuration/resolver.rb +70 -5
  606. data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +19 -20
  607. data/lib/ddtrace/contrib/configuration/settings.rb +7 -6
  608. data/lib/ddtrace/contrib/dalli/instrumentation.rb +1 -1
  609. data/lib/ddtrace/contrib/dalli/patcher.rb +1 -39
  610. data/lib/ddtrace/contrib/delayed_job/plugin.rb +0 -1
  611. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +1 -0
  612. data/lib/ddtrace/contrib/elasticsearch/quantize.rb +3 -2
  613. data/lib/ddtrace/contrib/ethon/easy_patch.rb +6 -6
  614. data/lib/ddtrace/contrib/ethon/multi_patch.rb +1 -1
  615. data/lib/ddtrace/contrib/ethon/patcher.rb +2 -2
  616. data/lib/ddtrace/contrib/excon/middleware.rb +2 -6
  617. data/lib/ddtrace/contrib/extensions.rb +30 -6
  618. data/lib/ddtrace/contrib/faraday/middleware.rb +1 -3
  619. data/lib/ddtrace/contrib/faraday/patcher.rb +2 -38
  620. data/lib/ddtrace/contrib/grape/endpoint.rb +8 -15
  621. data/lib/ddtrace/contrib/grape/instrumentation.rb +2 -2
  622. data/lib/ddtrace/contrib/grape/patcher.rb +1 -43
  623. data/lib/ddtrace/contrib/grpc/datadog_interceptor.rb +8 -8
  624. data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +1 -0
  625. data/lib/ddtrace/contrib/grpc/patcher.rb +1 -37
  626. data/lib/ddtrace/contrib/http/circuit_breaker.rb +1 -3
  627. data/lib/ddtrace/contrib/http/instrumentation.rb +6 -6
  628. data/lib/ddtrace/contrib/http/patcher.rb +1 -1
  629. data/lib/ddtrace/contrib/httpclient/instrumentation.rb +15 -20
  630. data/lib/ddtrace/contrib/httpclient/patcher.rb +6 -3
  631. data/lib/ddtrace/contrib/httprb/instrumentation.rb +15 -21
  632. data/lib/ddtrace/contrib/httprb/patcher.rb +6 -3
  633. data/lib/ddtrace/contrib/integration.rb +3 -3
  634. data/lib/ddtrace/contrib/kafka/event.rb +2 -2
  635. data/lib/ddtrace/contrib/mongodb/instrumentation.rb +4 -2
  636. data/lib/ddtrace/contrib/mongodb/patcher.rb +2 -2
  637. data/lib/ddtrace/contrib/mongodb/subscribers.rb +2 -3
  638. data/lib/ddtrace/contrib/mysql2/instrumentation.rb +1 -1
  639. data/lib/ddtrace/contrib/mysql2/patcher.rb +1 -1
  640. data/lib/ddtrace/contrib/patchable.rb +2 -2
  641. data/lib/ddtrace/contrib/patcher.rb +10 -7
  642. data/lib/ddtrace/contrib/presto/instrumentation.rb +1 -1
  643. data/lib/ddtrace/contrib/presto/patcher.rb +6 -3
  644. data/lib/ddtrace/contrib/qless/patcher.rb +3 -5
  645. data/lib/ddtrace/contrib/qless/qless_job.rb +1 -0
  646. data/lib/ddtrace/contrib/qless/tracer_cleaner.rb +1 -0
  647. data/lib/ddtrace/contrib/que/ext.rb +19 -19
  648. data/lib/ddtrace/contrib/que/tracer.rb +1 -1
  649. data/lib/ddtrace/contrib/racecar/event.rb +3 -2
  650. data/lib/ddtrace/contrib/rack/configuration/settings.rb +3 -3
  651. data/lib/ddtrace/contrib/rack/middlewares.rb +5 -10
  652. data/lib/ddtrace/contrib/rack/patcher.rb +1 -3
  653. data/lib/ddtrace/contrib/rails/patcher.rb +6 -2
  654. data/lib/ddtrace/contrib/rake/instrumentation.rb +5 -3
  655. data/lib/ddtrace/contrib/rake/patcher.rb +1 -1
  656. data/lib/ddtrace/contrib/redis/configuration/resolver.rb +11 -4
  657. data/lib/ddtrace/contrib/redis/quantize.rb +1 -0
  658. data/lib/ddtrace/contrib/redis/vendor/LICENSE +20 -0
  659. data/lib/ddtrace/contrib/redis/vendor/resolver.rb +6 -7
  660. data/lib/ddtrace/contrib/registerable.rb +2 -2
  661. data/lib/ddtrace/contrib/registry.rb +2 -2
  662. data/lib/ddtrace/contrib/resque/configuration/settings.rb +17 -1
  663. data/lib/ddtrace/contrib/resque/integration.rb +1 -1
  664. data/lib/ddtrace/contrib/resque/patcher.rb +4 -4
  665. data/lib/ddtrace/contrib/resque/resque_job.rb +24 -1
  666. data/lib/ddtrace/contrib/rest_client/patcher.rb +1 -1
  667. data/lib/ddtrace/contrib/rest_client/request_patch.rb +2 -4
  668. data/lib/ddtrace/contrib/sequel/database.rb +1 -1
  669. data/lib/ddtrace/contrib/sequel/dataset.rb +1 -1
  670. data/lib/ddtrace/contrib/sequel/patcher.rb +2 -2
  671. data/lib/ddtrace/contrib/sequel/utils.rb +5 -6
  672. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +1 -0
  673. data/lib/ddtrace/contrib/shoryuken/tracer.rb +7 -4
  674. data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +2 -7
  675. data/lib/ddtrace/contrib/sidekiq/tracing.rb +0 -1
  676. data/lib/ddtrace/contrib/sinatra/env.rb +1 -3
  677. data/lib/ddtrace/contrib/sinatra/headers.rb +1 -3
  678. data/lib/ddtrace/contrib/sinatra/patcher.rb +1 -1
  679. data/lib/ddtrace/contrib/sinatra/tracer.rb +1 -3
  680. data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +3 -3
  681. data/lib/ddtrace/contrib/sneakers/ext.rb +11 -11
  682. data/lib/ddtrace/contrib/sneakers/tracer.rb +2 -4
  683. data/lib/ddtrace/contrib/status_code_matcher.rb +5 -3
  684. data/lib/ddtrace/contrib/sucker_punch/exception_handler.rb +4 -6
  685. data/lib/ddtrace/contrib/sucker_punch/instrumentation.rb +4 -0
  686. data/lib/ddtrace/correlation.rb +1 -0
  687. data/lib/ddtrace/diagnostics/environment_logger.rb +5 -4
  688. data/lib/ddtrace/distributed_tracing/headers/headers.rb +1 -0
  689. data/lib/ddtrace/distributed_tracing/headers/helpers.rb +1 -3
  690. data/lib/ddtrace/error.rb +77 -8
  691. data/lib/ddtrace/ext/app_types.rb +0 -1
  692. data/lib/ddtrace/ext/distributed.rb +1 -1
  693. data/lib/ddtrace/ext/http.rb +1 -1
  694. data/lib/ddtrace/ext/profiling.rb +53 -0
  695. data/lib/ddtrace/ext/runtime.rb +3 -1
  696. data/lib/ddtrace/ext/test.rb +2 -18
  697. data/lib/ddtrace/ext/transport.rb +2 -0
  698. data/lib/ddtrace/forced_tracing.rb +2 -0
  699. data/lib/ddtrace/logger.rb +1 -1
  700. data/lib/ddtrace/metrics.rb +42 -9
  701. data/lib/ddtrace/opentelemetry/extensions.rb +1 -1
  702. data/lib/ddtrace/opentracer.rb +20 -39
  703. data/lib/ddtrace/opentracer/distributed_headers.rb +3 -0
  704. data/lib/ddtrace/opentracer/span.rb +2 -6
  705. data/lib/ddtrace/opentracer/thread_local_scope.rb +1 -0
  706. data/lib/ddtrace/patcher.rb +27 -6
  707. data/lib/ddtrace/pin.rb +8 -61
  708. data/lib/ddtrace/pipeline/span_filter.rb +1 -1
  709. data/lib/ddtrace/profiling.rb +107 -0
  710. data/lib/ddtrace/profiling/backtrace_location.rb +32 -0
  711. data/lib/ddtrace/profiling/buffer.rb +41 -0
  712. data/lib/ddtrace/profiling/collectors/stack.rb +262 -0
  713. data/lib/ddtrace/profiling/encoding/profile.rb +37 -0
  714. data/lib/ddtrace/profiling/event.rb +13 -0
  715. data/lib/ddtrace/profiling/events/stack.rb +102 -0
  716. data/lib/ddtrace/profiling/exporter.rb +23 -0
  717. data/lib/ddtrace/profiling/ext/cpu.rb +52 -0
  718. data/lib/ddtrace/profiling/ext/cthread.rb +155 -0
  719. data/lib/ddtrace/profiling/ext/forking.rb +97 -0
  720. data/lib/ddtrace/profiling/flush.rb +43 -0
  721. data/lib/ddtrace/profiling/pprof/builder.rb +119 -0
  722. data/lib/ddtrace/profiling/pprof/converter.rb +89 -0
  723. data/lib/ddtrace/profiling/pprof/message_set.rb +12 -0
  724. data/lib/ddtrace/profiling/pprof/payload.rb +18 -0
  725. data/lib/ddtrace/profiling/pprof/pprof.proto +212 -0
  726. data/lib/ddtrace/profiling/pprof/pprof_pb.rb +81 -0
  727. data/lib/ddtrace/profiling/pprof/stack_sample.rb +106 -0
  728. data/lib/ddtrace/profiling/pprof/string_table.rb +10 -0
  729. data/lib/ddtrace/profiling/pprof/template.rb +118 -0
  730. data/lib/ddtrace/profiling/preload.rb +3 -0
  731. data/lib/ddtrace/profiling/profiler.rb +30 -0
  732. data/lib/ddtrace/profiling/recorder.rb +95 -0
  733. data/lib/ddtrace/profiling/scheduler.rb +116 -0
  734. data/lib/ddtrace/profiling/tasks/setup.rb +77 -0
  735. data/lib/ddtrace/profiling/transport/client.rb +12 -0
  736. data/lib/ddtrace/profiling/transport/http.rb +118 -0
  737. data/lib/ddtrace/profiling/transport/http/api.rb +43 -0
  738. data/lib/ddtrace/profiling/transport/http/api/endpoint.rb +100 -0
  739. data/lib/ddtrace/profiling/transport/http/api/instance.rb +36 -0
  740. data/lib/ddtrace/profiling/transport/http/api/spec.rb +40 -0
  741. data/lib/ddtrace/profiling/transport/http/builder.rb +28 -0
  742. data/lib/ddtrace/profiling/transport/http/client.rb +33 -0
  743. data/lib/ddtrace/profiling/transport/http/response.rb +21 -0
  744. data/lib/ddtrace/profiling/transport/io.rb +30 -0
  745. data/lib/ddtrace/profiling/transport/io/client.rb +27 -0
  746. data/lib/ddtrace/profiling/transport/io/response.rb +16 -0
  747. data/lib/ddtrace/profiling/transport/parcel.rb +17 -0
  748. data/lib/ddtrace/profiling/transport/request.rb +15 -0
  749. data/lib/ddtrace/profiling/transport/response.rb +8 -0
  750. data/lib/ddtrace/propagation/grpc_propagator.rb +1 -0
  751. data/lib/ddtrace/quantization/http.rb +1 -0
  752. data/lib/ddtrace/runtime/cgroup.rb +2 -2
  753. data/lib/ddtrace/runtime/container.rb +43 -29
  754. data/lib/ddtrace/runtime/identity.rb +8 -0
  755. data/lib/ddtrace/runtime/metrics.rb +3 -5
  756. data/lib/ddtrace/sampler.rb +1 -1
  757. data/lib/ddtrace/sampling/rule_sampler.rb +4 -9
  758. data/lib/ddtrace/span.rb +7 -7
  759. data/lib/ddtrace/sync_writer.rb +14 -13
  760. data/lib/ddtrace/tasks/exec.rb +48 -0
  761. data/lib/ddtrace/tasks/help.rb +14 -0
  762. data/lib/ddtrace/tracer.rb +43 -37
  763. data/lib/ddtrace/transport/http.rb +41 -31
  764. data/lib/ddtrace/transport/http/adapters/net.rb +27 -8
  765. data/lib/ddtrace/transport/http/adapters/registry.rb +1 -0
  766. data/lib/ddtrace/transport/http/adapters/unix_socket.rb +2 -4
  767. data/lib/ddtrace/transport/http/builder.rb +7 -1
  768. data/lib/ddtrace/transport/http/env.rb +8 -0
  769. data/lib/ddtrace/transport/http/statistics.rb +2 -2
  770. data/lib/ddtrace/transport/http/traces.rb +5 -6
  771. data/lib/ddtrace/transport/io.rb +1 -1
  772. data/lib/ddtrace/transport/io/client.rb +15 -8
  773. data/lib/ddtrace/transport/io/response.rb +1 -3
  774. data/lib/ddtrace/transport/io/traces.rb +7 -1
  775. data/lib/ddtrace/transport/parcel.rb +4 -0
  776. data/lib/ddtrace/transport/traces.rb +18 -1
  777. data/lib/ddtrace/utils/compression.rb +27 -0
  778. data/lib/ddtrace/utils/forking.rb +1 -1
  779. data/lib/ddtrace/utils/object_set.rb +39 -0
  780. data/lib/ddtrace/utils/only_once.rb +40 -0
  781. data/lib/ddtrace/utils/sequence.rb +17 -0
  782. data/lib/ddtrace/utils/string_table.rb +45 -0
  783. data/lib/ddtrace/utils/time.rb +32 -3
  784. data/lib/ddtrace/vendor/active_record/MIT-LICENSE +20 -0
  785. data/lib/ddtrace/vendor/multipart-post/LICENSE +11 -0
  786. data/lib/ddtrace/vendor/multipart-post/multipart.rb +12 -0
  787. data/lib/ddtrace/vendor/multipart-post/multipart/post.rb +8 -0
  788. data/lib/ddtrace/vendor/multipart-post/multipart/post/composite_read_io.rb +116 -0
  789. data/lib/ddtrace/vendor/multipart-post/multipart/post/multipartable.rb +57 -0
  790. data/lib/ddtrace/vendor/multipart-post/multipart/post/parts.rb +135 -0
  791. data/lib/ddtrace/vendor/multipart-post/multipart/post/version.rb +9 -0
  792. data/lib/ddtrace/vendor/multipart-post/net/http/post/multipart.rb +32 -0
  793. data/lib/ddtrace/version.rb +14 -2
  794. data/lib/ddtrace/workers.rb +6 -1
  795. data/lib/ddtrace/workers/async.rb +13 -4
  796. data/lib/ddtrace/workers/loop.rb +31 -5
  797. data/lib/ddtrace/workers/polling.rb +12 -5
  798. data/lib/ddtrace/workers/queue.rb +2 -1
  799. data/lib/ddtrace/workers/runtime_metrics.rb +14 -1
  800. data/lib/ddtrace/workers/trace_writer.rb +11 -14
  801. data/lib/ddtrace/writer.rb +11 -5
  802. metadata +620 -408
  803. data/lib/ddtrace/augmentation.rb +0 -13
  804. data/lib/ddtrace/augmentation/method_wrapper.rb +0 -20
  805. data/lib/ddtrace/augmentation/method_wrapping.rb +0 -38
  806. data/lib/ddtrace/augmentation/shim.rb +0 -102
  807. data/lib/ddtrace/contrib/cucumber/configuration/settings.rb +0 -38
  808. data/lib/ddtrace/contrib/cucumber/ext.rb +0 -19
  809. data/lib/ddtrace/contrib/cucumber/formatter.rb +0 -104
  810. data/lib/ddtrace/contrib/cucumber/instrumentation.rb +0 -24
  811. data/lib/ddtrace/contrib/cucumber/integration.rb +0 -45
  812. data/lib/ddtrace/contrib/cucumber/patcher.rb +0 -23
  813. data/lib/ddtrace/contrib/rspec/configuration/settings.rb +0 -38
  814. data/lib/ddtrace/contrib/rspec/example.rb +0 -61
  815. data/lib/ddtrace/contrib/rspec/example_group.rb +0 -61
  816. data/lib/ddtrace/contrib/rspec/ext.rb +0 -19
  817. data/lib/ddtrace/contrib/rspec/integration.rb +0 -46
  818. data/lib/ddtrace/contrib/rspec/patcher.rb +0 -25
  819. data/lib/ddtrace/ext/ci.rb +0 -297
  820. data/lib/ddtrace/monkey.rb +0 -58
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,438 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config --exclude-limit 99999`
3
+ # on 2021-02-19 23:39:59 UTC using RuboCop version 1.10.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 1
10
+ # Cop supports --auto-correct.
11
+ # Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
12
+ # URISchemes: http, https
13
+ Layout/LineLength:
14
+ Max: 125
15
+
16
+ # Offense count: 3
17
+ # Configuration parameters: AllowedMethods.
18
+ # AllowedMethods: enums
19
+ Lint/ConstantDefinitionInBlock:
20
+ Exclude:
21
+ - 'spec/ddtrace/benchmark/support/benchmark_helper.rb'
22
+ - 'spec/ddtrace/contrib/rails/rack_spec.rb'
23
+ - 'spec/ddtrace/workers/async_spec.rb'
24
+
25
+ # Offense count: 2
26
+ # Configuration parameters: IgnoreLiteralBranches, IgnoreConstantBranches.
27
+ Lint/DuplicateBranch:
28
+ Exclude:
29
+ - 'lib/ddtrace/quantization/http.rb'
30
+ - 'test/contrib/rails/test_helper.rb'
31
+
32
+ # Offense count: 3
33
+ Lint/DuplicateRequire:
34
+ Exclude:
35
+ - 'lib/datadog/ci/contrib/cucumber/integration.rb'
36
+ - 'lib/datadog/ci/contrib/rspec/integration.rb'
37
+ - 'spec/ddtrace/contrib/presto/client_spec.rb'
38
+
39
+ # Offense count: 1
40
+ # Cop supports --auto-correct.
41
+ # Configuration parameters: EnforcedStyle.
42
+ # SupportedStyles: runtime_error, standard_error
43
+ Lint/InheritException:
44
+ Exclude:
45
+ - 'spec/ddtrace/tracer_spec.rb'
46
+
47
+ # Offense count: 52
48
+ # Configuration parameters: MaximumRangeSize.
49
+ Lint/MissingCopEnableDirective:
50
+ Exclude:
51
+ - 'Rakefile'
52
+ - 'lib/ddtrace/analytics.rb'
53
+ - 'lib/ddtrace/configuration/components.rb'
54
+ - 'lib/ddtrace/configuration/settings.rb'
55
+ - 'lib/ddtrace/context.rb'
56
+ - 'lib/ddtrace/contrib/action_view/instrumentation/template_renderer.rb'
57
+ - 'lib/ddtrace/contrib/active_support/cache/instrumentation.rb'
58
+ - 'lib/ddtrace/contrib/aws/services.rb'
59
+ - 'lib/ddtrace/contrib/elasticsearch/patcher.rb'
60
+ - 'lib/ddtrace/contrib/excon/middleware.rb'
61
+ - 'lib/ddtrace/contrib/grape/endpoint.rb'
62
+ - 'lib/ddtrace/contrib/httprb/instrumentation.rb'
63
+ - 'lib/ddtrace/contrib/rack/middlewares.rb'
64
+ - 'lib/ddtrace/contrib/rails/middlewares.rb'
65
+ - 'lib/ddtrace/contrib/redis/patcher.rb'
66
+ - 'lib/ddtrace/contrib/sinatra/tracer_middleware.rb'
67
+ - 'lib/ddtrace/contrib/sucker_punch/instrumentation.rb'
68
+ - 'lib/ddtrace/ext/ci.rb'
69
+ - 'lib/ddtrace/pin.rb'
70
+ - 'lib/ddtrace/span.rb'
71
+ - 'lib/ddtrace/tracer.rb'
72
+ - 'lib/ddtrace/workers/async.rb'
73
+ - 'spec/ddtrace/contrib/elasticsearch/quantize_spec.rb'
74
+ - 'spec/ddtrace/contrib/http/request_spec.rb'
75
+ - 'spec/ddtrace/contrib/mongodb/client_spec.rb'
76
+ - 'spec/ddtrace/contrib/patchable_spec.rb'
77
+ - 'spec/ddtrace/contrib/presto/client_spec.rb'
78
+ - 'spec/ddtrace/contrib/qless/support/job.rb'
79
+ - 'spec/ddtrace/contrib/rails/support/database.rb'
80
+ - 'spec/ddtrace/contrib/rails/support/middleware.rb'
81
+ - 'spec/ddtrace/diagnostics/health_spec.rb'
82
+ - 'spec/ddtrace/runtime/cgroup_spec.rb'
83
+ - 'spec/support/container_helpers.rb'
84
+ - 'spec/support/tracer_helpers.rb'
85
+ - 'test/contrib/rails/controller_test.rb'
86
+ - 'test/contrib/rails/errors_test.rb'
87
+ - 'test/tracer_test.rb'
88
+
89
+ # Offense count: 32
90
+ Lint/MissingSuper:
91
+ Exclude:
92
+ - 'lib/ddtrace/contrib/grpc/datadog_interceptor.rb'
93
+ - 'lib/ddtrace/opentracer/scope.rb'
94
+ - 'lib/ddtrace/opentracer/span.rb'
95
+ - 'lib/ddtrace/opentracer/span_context.rb'
96
+ - 'lib/ddtrace/profiling/collectors/stack.rb'
97
+ - 'lib/ddtrace/profiling/pprof/converter.rb'
98
+ - 'lib/ddtrace/profiling/pprof/template.rb'
99
+ - 'lib/ddtrace/profiling/recorder.rb'
100
+ - 'lib/ddtrace/profiling/scheduler.rb'
101
+ - 'lib/ddtrace/profiling/transport/http/api/instance.rb'
102
+ - 'lib/ddtrace/profiling/transport/http/api/spec.rb'
103
+ - 'lib/ddtrace/sampler.rb'
104
+ - 'lib/ddtrace/sampling/matcher.rb'
105
+ - 'lib/ddtrace/sampling/rate_limiter.rb'
106
+ - 'lib/ddtrace/transport/http/adapters/net.rb'
107
+ - 'lib/ddtrace/transport/http/adapters/unix_socket.rb'
108
+ - 'lib/ddtrace/transport/http/builder.rb'
109
+ - 'lib/ddtrace/transport/http/env.rb'
110
+ - 'lib/ddtrace/transport/http/traces.rb'
111
+ - 'lib/ddtrace/transport/traces.rb'
112
+ - 'lib/ddtrace/workers/runtime_metrics.rb'
113
+ - 'lib/ddtrace/workers/trace_writer.rb'
114
+ - 'spec/support/faux_transport.rb'
115
+ - 'spec/support/spy_transport.rb'
116
+ - 'test/helper.rb'
117
+
118
+ # Offense count: 1
119
+ Lint/StructNewOverride:
120
+ Exclude:
121
+ - 'lib/ddtrace/profiling/pprof/converter.rb'
122
+
123
+ # Offense count: 1
124
+ # Configuration parameters: AllowComments.
125
+ Lint/SuppressedException:
126
+ Exclude:
127
+ - 'lib/ddtrace/contrib/ethon/easy_patch.rb'
128
+
129
+ # Offense count: 2
130
+ # Configuration parameters: CheckForMethodsWithNoSideEffects.
131
+ Lint/Void:
132
+ Exclude:
133
+ - 'spec/ddtrace/contrib/grpc/support/grpc_helper.rb'
134
+
135
+ # Offense count: 2
136
+ # Configuration parameters: IgnoredMethods.
137
+ Metrics/CyclomaticComplexity:
138
+ Max: 17
139
+
140
+ # Offense count: 2
141
+ # Configuration parameters: IgnoredMethods.
142
+ Metrics/PerceivedComplexity:
143
+ Max: 18
144
+
145
+ # Offense count: 4
146
+ # Configuration parameters: EnforcedStyleForLeadingUnderscores.
147
+ # SupportedStylesForLeadingUnderscores: disallowed, required, optional
148
+ Naming/MemoizedInstanceVariableName:
149
+ Exclude:
150
+ - 'lib/ddtrace/configuration.rb'
151
+ - 'lib/ddtrace/contrib/active_record/configuration/resolver.rb'
152
+ - 'lib/ddtrace/contrib/extensions.rb'
153
+ - 'lib/ddtrace/contrib/sequel/database.rb'
154
+
155
+ # Offense count: 6
156
+ # Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers.
157
+ # SupportedStyles: snake_case, normalcase, non_integer
158
+ # AllowedIdentifiers: capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339
159
+ Naming/VariableNumber:
160
+ Exclude:
161
+ - 'spec/ddtrace/contrib/ethon/typhoeus_integration_spec.rb'
162
+ - 'spec/ddtrace/contrib/resque/instrumentation_spec.rb'
163
+
164
+ # Offense count: 18
165
+ Performance/MethodObjectAsBlock:
166
+ Exclude:
167
+ - 'lib/datadog/ci/contrib/cucumber/formatter.rb'
168
+ - 'lib/ddtrace/contrib/delayed_job/plugin.rb'
169
+ - 'lib/ddtrace/pipeline.rb'
170
+ - 'lib/ddtrace/profiling/collectors/stack.rb'
171
+ - 'lib/ddtrace/profiling/pprof/builder.rb'
172
+ - 'lib/ddtrace/profiling/pprof/stack_sample.rb'
173
+ - 'lib/ddtrace/profiling/pprof/template.rb'
174
+ - 'spec/datadog/ci/contrib/cucumber/patcher_spec.rb'
175
+
176
+ # Offense count: 6
177
+ RSpec/EmptyExampleGroup:
178
+ Exclude:
179
+ - 'spec/ddtrace/buffer_spec.rb'
180
+ - 'spec/ddtrace/configuration/components_spec.rb'
181
+ - 'spec/datadog/ci/ext/environment_spec.rb'
182
+ - 'spec/ddtrace/opentracer/distributed_headers_spec.rb'
183
+
184
+ # Offense count: 2
185
+ # Cop supports --auto-correct.
186
+ RSpec/ExpectActual:
187
+ Exclude:
188
+ - 'spec/routing/**/*'
189
+ - 'spec/datadog/ci/contrib/rspec/instrumentation_spec.rb'
190
+
191
+ # Offense count: 3
192
+ RSpec/IteratedExpectation:
193
+ Exclude:
194
+ - 'spec/ddtrace/contrib/grpc/support/grpc_helper.rb'
195
+ - 'spec/ddtrace/contrib/rack/integration_test_spec.rb'
196
+
197
+ # Offense count: 3
198
+ RSpec/LeakyConstantDeclaration:
199
+ Exclude:
200
+ - 'spec/ddtrace/benchmark/support/benchmark_helper.rb'
201
+ - 'spec/ddtrace/contrib/rails/rack_spec.rb'
202
+ - 'spec/ddtrace/workers/async_spec.rb'
203
+
204
+ # Offense count: 37
205
+ RSpec/MissingExampleGroupArgument:
206
+ Exclude:
207
+ - 'spec/ddtrace/configuration/settings_spec.rb'
208
+ - 'spec/ddtrace/transport/http/adapters/net_spec.rb'
209
+ - 'spec/ddtrace/transport/http/adapters/test_spec.rb'
210
+
211
+ # Offense count: 18
212
+ RSpec/MultipleDescribes:
213
+ Exclude:
214
+ - 'spec/ddtrace/analytics_spec.rb'
215
+ - 'spec/ddtrace/buffer_spec.rb'
216
+ - 'spec/ddtrace/configuration/option_definition_spec.rb'
217
+ - 'spec/ddtrace/context_flush_spec.rb'
218
+ - 'spec/ddtrace/context_provider_spec.rb'
219
+ - 'spec/ddtrace/forced_tracing_spec.rb'
220
+ - 'spec/ddtrace/metrics_spec.rb'
221
+ - 'spec/ddtrace/sampler_spec.rb'
222
+ - 'spec/ddtrace/sampling/matcher_spec.rb'
223
+ - 'spec/ddtrace/transport/http/adapters/net_spec.rb'
224
+ - 'spec/ddtrace/transport/http/adapters/test_spec.rb'
225
+ - 'spec/ddtrace/transport/http/adapters/unix_socket_spec.rb'
226
+ - 'spec/ddtrace/transport/http/traces_spec.rb'
227
+ - 'spec/ddtrace/transport/io/traces_spec.rb'
228
+ - 'spec/ddtrace/transport/response_spec.rb'
229
+ - 'spec/ddtrace/transport/statistics_spec.rb'
230
+ - 'spec/ddtrace/transport/traces_spec.rb'
231
+ - 'spec/ddtrace/workers/trace_writer_spec.rb'
232
+
233
+ # Offense count: 143
234
+ # Configuration parameters: IgnoreSharedExamples.
235
+ RSpec/NamedSubject:
236
+ Exclude:
237
+ - 'spec/ddtrace/benchmark/gem_loading_spec.rb'
238
+ - 'spec/ddtrace/chunker_spec.rb'
239
+ - 'spec/ddtrace/context_flush_spec.rb'
240
+ - 'spec/ddtrace/context_provider_spec.rb'
241
+ - 'spec/ddtrace/context_spec.rb'
242
+ - 'spec/ddtrace/contrib/active_support/notifications/subscription_spec.rb'
243
+ - 'spec/ddtrace/contrib/ethon/easy_patch_spec.rb'
244
+ - 'spec/ddtrace/contrib/ethon/multi_patch_spec.rb'
245
+ - 'spec/ddtrace/contrib/excon/instrumentation_spec.rb'
246
+ - 'spec/ddtrace/contrib/faraday/middleware_spec.rb'
247
+ - 'spec/ddtrace/contrib/grape/tracer_spec.rb'
248
+ - 'spec/ddtrace/contrib/grpc/datadog_interceptor/client_spec.rb'
249
+ - 'spec/ddtrace/contrib/grpc/datadog_interceptor/server_spec.rb'
250
+ - 'spec/ddtrace/contrib/grpc/interception_context_spec.rb'
251
+ - 'spec/ddtrace/contrib/http/patcher_spec.rb'
252
+ - 'spec/ddtrace/contrib/mongodb/client_spec.rb'
253
+ - 'spec/ddtrace/contrib/mongodb/regression_issue_1235_spec.rb'
254
+ - 'spec/ddtrace/contrib/patcher_spec.rb'
255
+ - 'spec/ddtrace/contrib/rails/cache_spec.rb'
256
+ - 'spec/ddtrace/contrib/rails/database_spec.rb'
257
+ - 'spec/ddtrace/pin_spec.rb'
258
+ - 'spec/ddtrace/pipeline/span_filter_spec.rb'
259
+ - 'spec/ddtrace/pipeline/span_processor_spec.rb'
260
+ - 'spec/ddtrace/pipeline_spec.rb'
261
+ - 'spec/ddtrace/propagation/grpc_propagator_spec.rb'
262
+ - 'spec/ddtrace/sampling/rate_limiter_spec.rb'
263
+ - 'spec/ddtrace/sampling/rule_sampler_spec.rb'
264
+ - 'spec/ddtrace/span_spec.rb'
265
+ - 'spec/ddtrace/tracer_spec.rb'
266
+ - 'spec/ddtrace/transport/traces_spec.rb'
267
+
268
+ # Offense count: 4
269
+ RSpec/OverwritingSetup:
270
+ Exclude:
271
+ - 'spec/ddtrace/buffer_spec.rb'
272
+ - 'spec/ddtrace/sampling/rule_spec.rb'
273
+
274
+ # Offense count: 8
275
+ RSpec/RepeatedDescription:
276
+ Exclude:
277
+ - 'spec/ddtrace/contrib/rest_client/request_patch_spec.rb'
278
+
279
+ # Offense count: 2
280
+ RSpec/RepeatedExampleGroupBody:
281
+ Exclude:
282
+ - 'spec/ddtrace/contrib/elasticsearch/patcher_spec.rb'
283
+
284
+ # Offense count: 12
285
+ RSpec/RepeatedExampleGroupDescription:
286
+ Exclude:
287
+ - 'spec/ddtrace/contrib/elasticsearch/patcher_spec.rb'
288
+ - 'spec/ddtrace/contrib/grape/tracer_spec.rb'
289
+ - 'spec/ddtrace/contrib/redis/quantize_spec.rb'
290
+ - 'spec/ddtrace/opentracer/scope_manager_spec.rb'
291
+ - 'spec/ddtrace/opentracer/thread_local_scope_manager_spec.rb'
292
+ - 'spec/ddtrace/workers/trace_writer_spec.rb'
293
+
294
+ # Offense count: 53
295
+ RSpec/ScatteredSetup:
296
+ Exclude:
297
+ - 'spec/ddtrace/benchmark/support/benchmark_helper.rb'
298
+ - 'spec/ddtrace/configuration/settings_spec.rb'
299
+ - 'spec/ddtrace/contrib/action_cable/instrumentation_spec.rb'
300
+ - 'spec/ddtrace/contrib/action_cable/patcher_spec.rb'
301
+ - 'spec/ddtrace/contrib/elasticsearch/transport_spec.rb'
302
+ - 'spec/ddtrace/contrib/grape/tracer_spec.rb'
303
+ - 'spec/ddtrace/contrib/http/miniapp_spec.rb'
304
+ - 'spec/ddtrace/contrib/http/request_spec.rb'
305
+ - 'spec/ddtrace/contrib/mongodb/regression_issue_1235_spec.rb'
306
+ - 'spec/ddtrace/contrib/presto/client_spec.rb'
307
+ - 'spec/ddtrace/contrib/rails/cache_spec.rb'
308
+ - 'spec/ddtrace/contrib/rails/database_spec.rb'
309
+ - 'spec/ddtrace/contrib/rails/rails_active_job_spec.rb'
310
+ - 'spec/ddtrace/contrib/rails/railtie_spec.rb'
311
+ - 'spec/ddtrace/contrib/rails/redis_cache_spec.rb'
312
+ - 'spec/ddtrace/contrib/redis/miniapp_spec.rb'
313
+ - 'spec/ddtrace/diagnostics/environment_logger_spec.rb'
314
+ - 'spec/ddtrace/opentracer/rack_propagator_spec.rb'
315
+ - 'spec/ddtrace/opentracer/span_spec.rb'
316
+ - 'spec/ddtrace/opentracer/text_map_propagator_spec.rb'
317
+ - 'spec/ddtrace/tracer_spec.rb'
318
+ - 'spec/ddtrace/workers/loop_spec.rb'
319
+
320
+ # Offense count: 2
321
+ RSpec/UnspecifiedException:
322
+ Exclude:
323
+ - 'spec/ddtrace/contrib/delayed_job/plugin_spec.rb'
324
+ - 'spec/ddtrace/contrib/sidekiq/tracer_configure_spec.rb'
325
+
326
+ # Offense count: 421
327
+ # Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
328
+ RSpec/VerifiedDoubles:
329
+ Exclude:
330
+ - 'spec/datadog/ci/contrib/cucumber/formatter_spec.rb'
331
+ - 'spec/ddtrace/buffer_spec.rb'
332
+ - 'spec/ddtrace/configuration/base_spec.rb'
333
+ - 'spec/ddtrace/configuration/components_spec.rb'
334
+ - 'spec/ddtrace/configuration/option_definition_spec.rb'
335
+ - 'spec/ddtrace/configuration/option_spec.rb'
336
+ - 'spec/ddtrace/configuration/options_spec.rb'
337
+ - 'spec/ddtrace/configuration/settings_spec.rb'
338
+ - 'spec/ddtrace/configuration_spec.rb'
339
+ - 'spec/ddtrace/context_provider_spec.rb'
340
+ - 'spec/ddtrace/context_spec.rb'
341
+ - 'spec/ddtrace/contrib/action_cable/patcher_spec.rb'
342
+ - 'spec/ddtrace/contrib/active_support/notifications/event_spec.rb'
343
+ - 'spec/ddtrace/contrib/active_support/notifications/subscriber_spec.rb'
344
+ - 'spec/ddtrace/contrib/active_support/notifications/subscription_spec.rb'
345
+ - 'spec/ddtrace/contrib/analytics_spec.rb'
346
+ - 'spec/ddtrace/contrib/configuration/resolver_spec.rb'
347
+ - 'spec/ddtrace/contrib/configuration/settings_spec.rb'
348
+ - 'spec/ddtrace/contrib/delayed_job/plugin_spec.rb'
349
+ - 'spec/ddtrace/contrib/ethon/easy_patch_spec.rb'
350
+ - 'spec/ddtrace/contrib/extensions_spec.rb'
351
+ - 'spec/ddtrace/contrib/mongodb/client_spec.rb'
352
+ - 'spec/ddtrace/contrib/patchable_spec.rb'
353
+ - 'spec/ddtrace/contrib/rails/action_controller_spec.rb'
354
+ - 'spec/ddtrace/contrib/rails/cache_spec.rb'
355
+ - 'spec/ddtrace/contrib/rake/instrumentation_spec.rb'
356
+ - 'spec/ddtrace/contrib/registry_spec.rb'
357
+ - 'spec/ddtrace/contrib/shoryuken/tracer_spec.rb'
358
+ - 'spec/ddtrace/contrib/sneakers/tracer_spec.rb'
359
+ - 'spec/ddtrace/correlation_spec.rb'
360
+ - 'spec/ddtrace/environment_spec.rb'
361
+ - 'spec/ddtrace/forced_tracing_spec.rb'
362
+ - 'spec/ddtrace/integration_spec.rb'
363
+ - 'spec/ddtrace/metrics_spec.rb'
364
+ - 'spec/ddtrace/opentracer/global_tracer_spec.rb'
365
+ - 'spec/ddtrace/opentracer/rack_propagator_spec.rb'
366
+ - 'spec/ddtrace/opentracer/text_map_propagator_spec.rb'
367
+ - 'spec/ddtrace/opentracer/tracer_spec.rb'
368
+ - 'spec/ddtrace/patcher_spec.rb'
369
+ - 'spec/ddtrace/pin_spec.rb'
370
+ - 'spec/ddtrace/profiling/backtrace_location_spec.rb'
371
+ - 'spec/ddtrace/profiling/collectors/stack_spec.rb'
372
+ - 'spec/ddtrace/profiling/encoding/profile_spec.rb'
373
+ - 'spec/ddtrace/profiling/events/stack_spec.rb'
374
+ - 'spec/ddtrace/profiling/exporter_spec.rb'
375
+ - 'spec/ddtrace/profiling/ext/cthread_spec.rb'
376
+ - 'spec/ddtrace/profiling/ext/forking_spec.rb'
377
+ - 'spec/ddtrace/profiling/flush_spec.rb'
378
+ - 'spec/ddtrace/profiling/pprof/builder_spec.rb'
379
+ - 'spec/ddtrace/profiling/pprof/converter_spec.rb'
380
+ - 'spec/ddtrace/profiling/pprof/message_set_spec.rb'
381
+ - 'spec/ddtrace/profiling/pprof/payload_spec.rb'
382
+ - 'spec/ddtrace/profiling/pprof/template_spec.rb'
383
+ - 'spec/ddtrace/profiling/transport/http/api/endpoint_spec.rb'
384
+ - 'spec/ddtrace/profiling/transport/http/api/instance_spec.rb'
385
+ - 'spec/ddtrace/profiling/transport/http/builder_spec.rb'
386
+ - 'spec/ddtrace/profiling/transport/http/client_spec.rb'
387
+ - 'spec/ddtrace/profiling/transport/http/response_spec.rb'
388
+ - 'spec/ddtrace/profiling/transport/http_spec.rb'
389
+ - 'spec/ddtrace/profiling/transport/io/client_spec.rb'
390
+ - 'spec/ddtrace/profiling/transport/io/response_spec.rb'
391
+ - 'spec/ddtrace/profiling/transport/io_spec.rb'
392
+ - 'spec/ddtrace/profiling/transport/parcel_spec.rb'
393
+ - 'spec/ddtrace/profiling_spec.rb'
394
+ - 'spec/ddtrace/runtime/metrics_spec.rb'
395
+ - 'spec/ddtrace/tasks/exec_spec.rb'
396
+ - 'spec/ddtrace/tracer_spec.rb'
397
+ - 'spec/ddtrace/transport/http/adapters/net_spec.rb'
398
+ - 'spec/ddtrace/transport/http/adapters/registry_spec.rb'
399
+ - 'spec/ddtrace/transport/http/adapters/test_spec.rb'
400
+ - 'spec/ddtrace/transport/http/adapters/unix_socket_spec.rb'
401
+ - 'spec/ddtrace/transport/http/api/endpoint_spec.rb'
402
+ - 'spec/ddtrace/transport/http/api/instance_spec.rb'
403
+ - 'spec/ddtrace/transport/http/builder_spec.rb'
404
+ - 'spec/ddtrace/transport/http/client_spec.rb'
405
+ - 'spec/ddtrace/transport/http/response_spec.rb'
406
+ - 'spec/ddtrace/transport/http/statistics_spec.rb'
407
+ - 'spec/ddtrace/transport/http/traces_spec.rb'
408
+ - 'spec/ddtrace/transport/http_spec.rb'
409
+ - 'spec/ddtrace/transport/io/client_spec.rb'
410
+ - 'spec/ddtrace/transport/io/response_spec.rb'
411
+ - 'spec/ddtrace/transport/io/traces_spec.rb'
412
+ - 'spec/ddtrace/transport/parcel_spec.rb'
413
+ - 'spec/ddtrace/transport/traces_spec.rb'
414
+ - 'spec/ddtrace/utils/object_set_spec.rb'
415
+ - 'spec/ddtrace/utils/string_table_spec.rb'
416
+ - 'spec/ddtrace/worker_spec.rb'
417
+ - 'spec/ddtrace/workers/async_spec.rb'
418
+ - 'spec/ddtrace/workers/loop_spec.rb'
419
+ - 'spec/ddtrace/workers/polling_spec.rb'
420
+ - 'spec/ddtrace/workers/queue_spec.rb'
421
+ - 'spec/ddtrace/workers/runtime_metrics_spec.rb'
422
+ - 'spec/ddtrace/workers/trace_writer_spec.rb'
423
+ - 'spec/ddtrace/workers_integration_spec.rb'
424
+ - 'spec/ddtrace/writer_spec.rb'
425
+ - 'spec/support/statsd_helpers.rb'
426
+
427
+ # Offense count: 24
428
+ Style/ClassVars:
429
+ Exclude:
430
+ - 'spec/ddtrace/contrib/rails/support/rails3.rb'
431
+ - 'spec/ddtrace/contrib/rails/support/rails4.rb'
432
+ - 'spec/ddtrace/contrib/rails/support/rails5.rb'
433
+ - 'spec/ddtrace/contrib/rails/support/rails6.rb'
434
+
435
+ # Offense count: 1
436
+ Style/MixinUsage:
437
+ Exclude:
438
+ - 'test/benchmark_test.rb'
data/.simplecov CHANGED
@@ -1,3 +1,9 @@
1
+ # Enable branch coverage reporting.
2
+ # SimpleCov only supports branch coverage in
3
+ # Ruby >= 2.5.
4
+ SimpleCov.enable_coverage :branch if RUBY_VERSION >= '2.5.0'
5
+
6
+ # Categorize SimpleCov report, for easier reading
1
7
  SimpleCov.add_group 'contrib', '/lib/ddtrace/contrib'
2
8
  SimpleCov.add_group 'transport', '/lib/ddtrace/transport'
3
9
  SimpleCov.add_group 'spec', '/spec/'
data/Appraisals CHANGED
@@ -10,104 +10,6 @@ end
10
10
 
11
11
  if Gem::Version.new(RUBY_VERSION) < Gem::Version.new(Datadog::VERSION::MINIMUM_RUBY_VERSION)
12
12
  raise NotImplementedError, "Ruby versions < #{Datadog::VERSION::MINIMUM_RUBY_VERSION} are not supported!"
13
- elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
14
- && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.1.0')
15
- if RUBY_PLATFORM != 'java'
16
- appraise 'rails30-postgres' do
17
- gem 'test-unit'
18
- gem 'rails', '3.0.20'
19
- gem 'pg', '0.15.1', platform: :ruby
20
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
21
- gem 'rack-cache', '1.7.1'
22
- gem 'lograge', '< 0.4'
23
- end
24
-
25
- appraise 'rails30-postgres-sidekiq' do
26
- gem 'test-unit'
27
- gem 'rails', '3.0.20'
28
- gem 'pg', '0.15.1', platform: :ruby
29
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
30
- gem 'sidekiq', '4.0.0'
31
- gem 'rack-cache', '1.7.1'
32
- gem 'lograge', '< 0.4'
33
- end
34
-
35
- appraise 'rails32-mysql2' do
36
- gem 'test-unit'
37
- gem 'rails', '3.2.22.5'
38
- gem 'mysql2', '0.3.21', platform: :ruby
39
- gem 'activerecord-mysql-adapter', platform: :ruby
40
- gem 'activerecord-jdbcmysql-adapter', platform: :jruby
41
- gem 'rack-cache', '1.7.1'
42
- gem 'sqlite3', '~> 1.3.5'
43
- gem 'lograge', '< 0.4'
44
- end
45
-
46
- appraise 'rails32-postgres' do
47
- gem 'test-unit'
48
- gem 'rails', '3.2.22.5'
49
- gem 'pg', '0.15.1', platform: :ruby
50
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
51
- gem 'rack-cache', '1.7.1'
52
- gem 'lograge', '< 0.4'
53
- end
54
-
55
- appraise 'rails32-postgres-redis' do
56
- gem 'test-unit'
57
- gem 'rails', '3.2.22.5'
58
- gem 'pg', '0.15.1', platform: :ruby
59
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
60
- gem 'redis-rails'
61
- gem 'redis', '< 4.0'
62
- gem 'rack-cache', '1.7.1'
63
- gem 'lograge', '< 0.4'
64
- end
65
-
66
- appraise 'rails32-postgres-sidekiq' do
67
- gem 'test-unit'
68
- gem 'rails', '3.2.22.5'
69
- gem 'pg', '0.15.1', platform: :ruby
70
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
71
- gem 'sidekiq', '4.0.0'
72
- gem 'rack-cache', '1.7.1'
73
- gem 'lograge', '< 0.4'
74
- end
75
-
76
- appraise 'contrib-old' do
77
- gem 'active_model_serializers', '~> 0.9.0'
78
- gem 'activerecord', '3.2.22.5'
79
- gem 'activerecord-mysql-adapter', platform: :ruby
80
- gem 'aws-sdk', '~> 2.0'
81
- gem 'concurrent-ruby'
82
- gem 'dalli'
83
- gem 'delayed_job'
84
- gem 'delayed_job_active_record'
85
- gem 'elasticsearch-transport'
86
- gem 'ethon'
87
- gem 'excon'
88
- gem 'hiredis'
89
- gem 'http'
90
- gem 'httpclient'
91
- gem 'mongo', '< 2.5'
92
- gem 'mysql2', '0.3.21', platform: :ruby
93
- gem 'pg', '< 1.0', platform: :ruby
94
- gem 'rack', '1.4.7'
95
- gem 'rack-cache', '1.7.1'
96
- gem 'rack-test', '0.7.0'
97
- gem 'rake', '< 12.3'
98
- gem 'redis', '< 4.0'
99
- gem 'rest-client'
100
- gem 'resque', '< 2.0'
101
- gem 'rspec', '>= 3.0.0'
102
- gem 'sequel', '~> 4.0', '< 4.37'
103
- gem 'sidekiq', '~> 3.5.4'
104
- gem 'sinatra', '1.4.5'
105
- gem 'sqlite3', '~> 1.3.6'
106
- gem 'sucker_punch'
107
- gem 'timers', '< 4.2'
108
- gem 'typhoeus'
109
- end
110
- end
111
13
  elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
112
14
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.2.0')
113
15
  if RUBY_PLATFORM != 'java'
@@ -139,6 +41,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
139
41
  gem 'rack-cache', '1.7.1'
140
42
  gem 'sqlite3', '~> 1.3.5'
141
43
  gem 'lograge', '< 0.4'
44
+ gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
142
45
  end
143
46
 
144
47
  appraise 'rails32-postgres' do
@@ -213,6 +116,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
213
116
  gem 'hiredis'
214
117
  gem 'http'
215
118
  gem 'httpclient'
119
+ gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
216
120
  gem 'mongo', '< 2.5'
217
121
  gem 'mysql2', '0.3.21', platform: :ruby
218
122
  gem 'pg', '< 1.0', platform: :ruby
@@ -234,6 +138,10 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
234
138
  gem 'timers', '< 4.2'
235
139
  gem 'typhoeus'
236
140
  end
141
+
142
+ appraise 'core-old' do
143
+ gem 'dogstatsd-ruby', '~> 4'
144
+ end
237
145
  end
238
146
  elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
239
147
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')
@@ -339,6 +247,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
339
247
  gem 'mysql2', '< 1', platform: :ruby
340
248
  gem 'sprockets', '< 4'
341
249
  gem 'lograge'
250
+ gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
342
251
  end
343
252
 
344
253
  appraise 'rails5-postgres' do
@@ -346,6 +255,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
346
255
  gem 'pg', '< 1.0', platform: :ruby
347
256
  gem 'sprockets', '< 4'
348
257
  gem 'lograge'
258
+ gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
349
259
  end
350
260
 
351
261
  appraise 'rails5-postgres-redis' do
@@ -354,6 +264,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
354
264
  gem 'redis', '>= 4.0.1'
355
265
  gem 'sprockets', '< 4'
356
266
  gem 'lograge'
267
+ gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
357
268
  end
358
269
 
359
270
  appraise 'rails5-postgres-redis-activesupport' do
@@ -362,6 +273,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
362
273
  gem 'redis', '>= 4.0.1'
363
274
  gem 'sprockets', '< 4'
364
275
  gem 'lograge'
276
+ gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
365
277
  end
366
278
 
367
279
  appraise 'rails5-postgres-sidekiq' do
@@ -371,6 +283,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
371
283
  gem 'activejob'
372
284
  gem 'sprockets', '< 4'
373
285
  gem 'lograge'
286
+ gem 'mimemagic', '0.3.9' # Pinned until https://github.com/mimemagicrb/mimemagic/issues/142 is resolved.
374
287
  end
375
288
 
376
289
  appraise 'contrib' do
@@ -391,10 +304,11 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
391
304
  gem 'faraday'
392
305
  gem 'grape'
393
306
  gem 'graphql', '>= 1.12.0'
394
- gem 'grpc', '~> 1.21.0' # Last version to support Ruby < 2.3
307
+ gem 'grpc', '~> 1.19.0' # Last version to support Ruby < 2.3 & google-protobuf < 3.7
395
308
  gem 'hiredis'
396
309
  gem 'http'
397
310
  gem 'httpclient'
311
+ gem 'makara', '< 0.5.0' # >= 0.5.0 contain Ruby 2.3+ syntax
398
312
  gem 'mongo', '>= 2.8.0'
399
313
  gem 'mysql2', '< 0.5', platform: :ruby
400
314
  gem 'qless'
@@ -417,6 +331,10 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
417
331
  gem 'typhoeus'
418
332
  gem 'que', '>= 1.0.0.beta2'
419
333
  end
334
+
335
+ appraise 'core-old' do
336
+ gem 'dogstatsd-ruby', '~> 4'
337
+ end
420
338
  end
421
339
  elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
422
340
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.4.0')
@@ -589,6 +507,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
589
507
  gem 'hiredis'
590
508
  gem 'http'
591
509
  gem 'httpclient'
510
+ gem 'makara'
592
511
  gem 'mongo', '>= 2.8.0'
593
512
  gem 'mysql2', '< 0.5', platform: :ruby
594
513
  gem 'pg', platform: :ruby
@@ -617,6 +536,10 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
617
536
  appraise 'contrib-old' do
618
537
  gem 'faraday', '0.17'
619
538
  end
539
+
540
+ appraise 'core-old' do
541
+ gem 'dogstatsd-ruby', '~> 4'
542
+ end
620
543
  end
621
544
  elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
622
545
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.5.0')
@@ -694,6 +617,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
694
617
  gem 'hiredis'
695
618
  gem 'http'
696
619
  gem 'httpclient'
620
+ gem 'makara'
697
621
  gem 'mongo', '>= 2.8.0'
698
622
  gem 'mysql2', '< 0.5', platform: :ruby
699
623
  gem 'pg', platform: :ruby
@@ -722,6 +646,10 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
722
646
  appraise 'contrib-old' do
723
647
  gem 'faraday', '0.17'
724
648
  end
649
+
650
+ appraise 'core-old' do
651
+ gem 'dogstatsd-ruby', '~> 4'
652
+ end
725
653
  end
726
654
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
727
655
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
@@ -731,6 +659,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
731
659
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
732
660
  gem 'sprockets', '< 4'
733
661
  gem 'lograge'
662
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
734
663
  end
735
664
 
736
665
  appraise 'rails5-postgres' do
@@ -739,6 +668,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
739
668
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
740
669
  gem 'sprockets', '< 4'
741
670
  gem 'lograge'
671
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
742
672
  end
743
673
 
744
674
  appraise 'rails5-postgres-redis' do
@@ -748,6 +678,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
748
678
  gem 'redis', '>= 4.0.1'
749
679
  gem 'sprockets', '< 4'
750
680
  gem 'lograge'
681
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
751
682
  end
752
683
 
753
684
  appraise 'rails5-postgres-redis-activesupport' do
@@ -757,6 +688,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
757
688
  gem 'redis', '>= 4.0.1'
758
689
  gem 'sprockets', '< 4'
759
690
  gem 'lograge'
691
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
760
692
  end
761
693
 
762
694
  appraise 'rails5-postgres-sidekiq' do
@@ -767,6 +699,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
767
699
  gem 'activejob'
768
700
  gem 'sprockets', '< 4'
769
701
  gem 'lograge'
702
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
770
703
  end
771
704
 
772
705
  appraise 'rails6-mysql2' do
@@ -775,6 +708,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
775
708
  gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
776
709
  gem 'sprockets', '< 4'
777
710
  gem 'lograge'
711
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
778
712
  end
779
713
 
780
714
  appraise 'rails6-postgres' do
@@ -783,6 +717,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
783
717
  gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
784
718
  gem 'sprockets', '< 4'
785
719
  gem 'lograge'
720
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
786
721
  end
787
722
 
788
723
  appraise 'rails6-postgres-redis' do
@@ -792,6 +727,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
792
727
  gem 'redis', '>= 4.0.1'
793
728
  gem 'sprockets', '< 4'
794
729
  gem 'lograge'
730
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
795
731
  end
796
732
 
797
733
  appraise 'rails6-postgres-redis-activesupport' do
@@ -801,6 +737,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
801
737
  gem 'redis', '>= 4.0.1'
802
738
  gem 'sprockets', '< 4'
803
739
  gem 'lograge'
740
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
804
741
  end
805
742
 
806
743
  appraise 'rails6-postgres-sidekiq' do
@@ -811,6 +748,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
811
748
  gem 'activejob'
812
749
  gem 'sprockets', '< 4'
813
750
  gem 'lograge'
751
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
814
752
  end
815
753
 
816
754
  appraise 'rails61-mysql2' do
@@ -819,6 +757,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
819
757
  gem 'activerecord-jdbcmysql-adapter', '>= 61', platform: :jruby
820
758
  gem 'sprockets', '< 4'
821
759
  gem 'lograge', '~> 0.11'
760
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
822
761
  end
823
762
 
824
763
  appraise 'rails61-postgres' do
@@ -827,6 +766,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
827
766
  gem 'activerecord-jdbcpostgresql-adapter', '>= 61', platform: :jruby
828
767
  gem 'sprockets', '< 4'
829
768
  gem 'lograge', '~> 0.11'
769
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
830
770
  end
831
771
 
832
772
  appraise 'rails61-postgres-redis' do
@@ -836,6 +776,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
836
776
  gem 'redis', '>= 4.2.5'
837
777
  gem 'sprockets', '< 4'
838
778
  gem 'lograge', '~> 0.11'
779
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
839
780
  end
840
781
 
841
782
  appraise 'rails61-postgres-sidekiq' do
@@ -845,6 +786,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
845
786
  gem 'sidekiq', '>= 6.1.2'
846
787
  gem 'sprockets', '< 4'
847
788
  gem 'lograge', '~> 0.11'
789
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
848
790
  end
849
791
 
850
792
  appraise 'resque2-redis3' do
@@ -880,13 +822,15 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
880
822
  gem 'hiredis'
881
823
  gem 'http'
882
824
  gem 'httpclient'
825
+ gem 'i18n', '1.8.7', platform: :jruby # Removal pending: https://github.com/ruby-i18n/i18n/issues/555#issuecomment-772112169
826
+ gem 'makara'
883
827
  gem 'mongo', '>= 2.8.0'
884
828
  gem 'mysql2', '< 1', platform: :ruby
885
829
  gem 'activerecord-jdbcmysql-adapter', '>= 60.2', platform: :jruby
886
830
  gem 'pg', platform: :ruby
887
831
  gem 'activerecord-jdbcpostgresql-adapter', '>= 60.2', platform: :jruby
888
832
  gem 'presto-client', '>= 0.5.14'
889
- gem 'qless'
833
+ gem 'qless', (RUBY_PLATFORM == 'java' ? '0.10.0' : '>= 0') # Newer releases require `rusage`, which is not available for JRuby
890
834
  gem 'racecar', '>= 0.3.5'
891
835
  gem 'rack'
892
836
  gem 'rack-test'
@@ -911,6 +855,10 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
911
855
  appraise 'contrib-old' do
912
856
  gem 'faraday', '0.17'
913
857
  end
858
+
859
+ appraise 'core-old' do
860
+ gem 'dogstatsd-ruby', '~> 4'
861
+ end
914
862
  elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
915
863
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
916
864
  if RUBY_PLATFORM != 'java'
@@ -1055,6 +1003,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
1055
1003
  gem 'hiredis'
1056
1004
  gem 'http'
1057
1005
  gem 'httpclient'
1006
+ gem 'makara'
1058
1007
  gem 'mongo', '>= 2.8.0'
1059
1008
  gem 'mysql2', '< 1', platform: :ruby
1060
1009
  gem 'pg', platform: :ruby
@@ -1083,6 +1032,10 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
1083
1032
  appraise 'contrib-old' do
1084
1033
  gem 'faraday', '0.17'
1085
1034
  end
1035
+
1036
+ appraise 'core-old' do
1037
+ gem 'dogstatsd-ruby', '~> 4'
1038
+ end
1086
1039
  end
1087
1040
  elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION) \
1088
1041
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.0.0')
@@ -1231,6 +1184,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION) \
1231
1184
  gem 'hiredis'
1232
1185
  gem 'http'
1233
1186
  gem 'httpclient'
1187
+ gem 'makara'
1234
1188
  gem 'mongo', '>= 2.8.0'
1235
1189
  gem 'mysql2', '< 1', platform: :ruby
1236
1190
  gem 'pg', platform: :ruby
@@ -1259,6 +1213,10 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION) \
1259
1213
  appraise 'contrib-old' do
1260
1214
  gem 'faraday', '0.17'
1261
1215
  end
1216
+
1217
+ appraise 'core-old' do
1218
+ gem 'dogstatsd-ruby', '~> 4'
1219
+ end
1262
1220
  end
1263
1221
  elsif Gem::Version.new('3.0.0') <= Gem::Version.new(RUBY_VERSION)
1264
1222
  appraise 'rails61-mysql2' do
@@ -1319,10 +1277,11 @@ elsif Gem::Version.new('3.0.0') <= Gem::Version.new(RUBY_VERSION)
1319
1277
  gem 'excon'
1320
1278
  gem 'grape'
1321
1279
  gem 'graphql', '>= 1.12.0'
1322
- # gem 'grpc' # Pending 3.0 support by transient protobuf dependency https://github.com/protocolbuffers/protobuf/issues/7922
1280
+ gem 'grpc', '>= 1.38.0' # Minimum version with Ruby 3.0 support
1323
1281
  gem 'hiredis'
1324
1282
  gem 'http'
1325
1283
  gem 'httpclient'
1284
+ gem 'makara', '>= 0.6.0.pre' # Ruby 3 requires >= 0.6.0, which is currently in pre-release: https://rubygems.org/gems/makara/versions
1326
1285
  gem 'mongo', '>= 2.8.0'
1327
1286
  gem 'mysql2', '>= 0.5.3', platform: :ruby
1328
1287
  gem 'pg', '>= 1.1', platform: :ruby
@@ -1347,4 +1306,18 @@ elsif Gem::Version.new('3.0.0') <= Gem::Version.new(RUBY_VERSION)
1347
1306
  gem 'typhoeus'
1348
1307
  gem 'que', '>= 1.0.0.beta2'
1349
1308
  end
1309
+
1310
+ appraise 'core-old' do
1311
+ gem 'dogstatsd-ruby', '~> 4'
1312
+ end
1313
+ end
1314
+
1315
+ ruby_runtime = if defined?(RUBY_ENGINE_VERSION)
1316
+ "#{RUBY_ENGINE}-#{RUBY_ENGINE_VERSION}"
1317
+ else
1318
+ "#{RUBY_ENGINE}-#{RUBY_VERSION}" # For Ruby < 2.3
1319
+ end
1320
+
1321
+ appraisals.each do |appraisal|
1322
+ appraisal.name.prepend("#{ruby_runtime}-")
1350
1323
  end