ddtrace 0.44.0 → 0.49.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (774) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +392 -17
  3. data/.circleci/images/primary/Dockerfile-2.0.0 +11 -1
  4. data/.circleci/images/primary/Dockerfile-2.1.10 +11 -1
  5. data/.circleci/images/primary/Dockerfile-2.2.10 +11 -1
  6. data/.circleci/images/primary/Dockerfile-2.3.8 +10 -0
  7. data/.circleci/images/primary/Dockerfile-2.4.6 +10 -0
  8. data/.circleci/images/primary/Dockerfile-2.5.6 +10 -0
  9. data/.circleci/images/primary/Dockerfile-2.6.4 +10 -0
  10. data/.circleci/images/primary/Dockerfile-2.7.0 +10 -0
  11. data/.circleci/images/primary/Dockerfile-jruby-9.2-latest +88 -0
  12. data/.circleci/images/primary/{Dockerfile-jruby-9.2 → Dockerfile-jruby-9.2.0.0} +1 -5
  13. data/.circleci/images/primary/Dockerfile-truffleruby-21.0.0 +73 -0
  14. data/.dockerignore +0 -1
  15. data/.github/workflows/create-next-milestone.yml +2 -2
  16. data/.gitignore +2 -1
  17. data/.gitlab-ci.yml +18 -18
  18. data/.rubocop.yml +281 -7
  19. data/.rubocop_todo.yml +438 -0
  20. data/.simplecov +6 -0
  21. data/Appraisals +97 -9
  22. data/CHANGELOG.md +270 -1
  23. data/Gemfile +63 -3
  24. data/LICENSE-3rdparty.csv +2 -0
  25. data/README.md +1 -0
  26. data/Rakefile +75 -25
  27. data/benchmarks/profiler_sample_loop.rb +69 -0
  28. data/bin/ddtracerb +15 -0
  29. data/ddtrace.gemspec +10 -37
  30. data/docker-compose.yml +69 -25
  31. data/docs/DevelopmentGuide.md +28 -0
  32. data/docs/GettingStarted.md +163 -69
  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.0.0_contrib_old.gemfile +64 -0
  123. data/gemfiles/ruby_2.0.0_contrib_old.gemfile.lock +290 -0
  124. data/gemfiles/ruby_2.0.0_core_old.gemfile +33 -0
  125. data/gemfiles/ruby_2.0.0_core_old.gemfile.lock +118 -0
  126. data/gemfiles/ruby_2.0.0_rails30_postgres.gemfile +39 -0
  127. data/gemfiles/ruby_2.0.0_rails30_postgres.gemfile.lock +196 -0
  128. data/gemfiles/ruby_2.0.0_rails30_postgres_sidekiq.gemfile +40 -0
  129. data/gemfiles/ruby_2.0.0_rails30_postgres_sidekiq.gemfile.lock +205 -0
  130. data/gemfiles/ruby_2.0.0_rails32_mysql2.gemfile +43 -0
  131. data/gemfiles/ruby_2.0.0_rails32_mysql2.gemfile.lock +217 -0
  132. data/gemfiles/ruby_2.0.0_rails32_postgres.gemfile +39 -0
  133. data/gemfiles/ruby_2.0.0_rails32_postgres.gemfile.lock +204 -0
  134. data/gemfiles/ruby_2.0.0_rails32_postgres_redis.gemfile +41 -0
  135. data/gemfiles/ruby_2.0.0_rails32_postgres_redis.gemfile.lock +223 -0
  136. data/gemfiles/ruby_2.0.0_rails32_postgres_sidekiq.gemfile +40 -0
  137. data/gemfiles/ruby_2.0.0_rails32_postgres_sidekiq.gemfile.lock +213 -0
  138. data/gemfiles/ruby_2.1.10_contrib_old.gemfile +66 -0
  139. data/gemfiles/ruby_2.1.10_contrib_old.gemfile.lock +305 -0
  140. data/gemfiles/ruby_2.1.10_core_old.gemfile +33 -0
  141. data/gemfiles/ruby_2.1.10_core_old.gemfile.lock +118 -0
  142. data/gemfiles/ruby_2.1.10_rails30_postgres.gemfile +39 -0
  143. data/gemfiles/ruby_2.1.10_rails30_postgres.gemfile.lock +196 -0
  144. data/gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile +40 -0
  145. data/gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile.lock +205 -0
  146. data/gemfiles/ruby_2.1.10_rails32_mysql2.gemfile +42 -0
  147. data/gemfiles/ruby_2.1.10_rails32_mysql2.gemfile.lock +215 -0
  148. data/gemfiles/ruby_2.1.10_rails32_postgres.gemfile +39 -0
  149. data/gemfiles/ruby_2.1.10_rails32_postgres.gemfile.lock +204 -0
  150. data/gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile +41 -0
  151. data/gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile.lock +223 -0
  152. data/gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile +40 -0
  153. data/gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile.lock +213 -0
  154. data/gemfiles/ruby_2.1.10_rails4_mysql2.gemfile +38 -0
  155. data/gemfiles/ruby_2.1.10_rails4_mysql2.gemfile.lock +218 -0
  156. data/gemfiles/ruby_2.1.10_rails4_postgres.gemfile +38 -0
  157. data/gemfiles/ruby_2.1.10_rails4_postgres.gemfile.lock +218 -0
  158. data/gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile +40 -0
  159. data/gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile.lock +237 -0
  160. data/gemfiles/ruby_2.2.10_contrib.gemfile +73 -0
  161. data/gemfiles/ruby_2.2.10_contrib.gemfile.lock +1450 -0
  162. data/gemfiles/ruby_2.2.10_core_old.gemfile +33 -0
  163. data/gemfiles/ruby_2.2.10_core_old.gemfile.lock +118 -0
  164. data/gemfiles/ruby_2.2.10_rails30_postgres.gemfile +39 -0
  165. data/gemfiles/ruby_2.2.10_rails30_postgres.gemfile.lock +196 -0
  166. data/gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile +40 -0
  167. data/gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile.lock +205 -0
  168. data/gemfiles/ruby_2.2.10_rails32_mysql2.gemfile +41 -0
  169. data/gemfiles/ruby_2.2.10_rails32_mysql2.gemfile.lock +212 -0
  170. data/gemfiles/ruby_2.2.10_rails32_postgres.gemfile +39 -0
  171. data/gemfiles/ruby_2.2.10_rails32_postgres.gemfile.lock +204 -0
  172. data/gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile +41 -0
  173. data/gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile.lock +223 -0
  174. data/gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile +40 -0
  175. data/gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile.lock +213 -0
  176. data/gemfiles/ruby_2.2.10_rails4_mysql2.gemfile +38 -0
  177. data/gemfiles/ruby_2.2.10_rails4_mysql2.gemfile.lock +218 -0
  178. data/gemfiles/ruby_2.2.10_rails4_postgres.gemfile +38 -0
  179. data/gemfiles/ruby_2.2.10_rails4_postgres.gemfile.lock +218 -0
  180. data/gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile +40 -0
  181. data/gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile.lock +237 -0
  182. data/gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile +40 -0
  183. data/gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile.lock +229 -0
  184. data/gemfiles/ruby_2.2.10_rails5_mysql2.gemfile +38 -0
  185. data/gemfiles/ruby_2.2.10_rails5_mysql2.gemfile.lock +234 -0
  186. data/gemfiles/ruby_2.2.10_rails5_postgres.gemfile +38 -0
  187. data/gemfiles/ruby_2.2.10_rails5_postgres.gemfile.lock +234 -0
  188. data/gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile +39 -0
  189. data/gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile.lock +236 -0
  190. data/gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile +39 -0
  191. data/gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile.lock +236 -0
  192. data/gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile +40 -0
  193. data/gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile.lock +245 -0
  194. data/gemfiles/ruby_2.3.8_contrib.gemfile +73 -0
  195. data/gemfiles/ruby_2.3.8_contrib.gemfile.lock +1459 -0
  196. data/gemfiles/ruby_2.3.8_contrib_old.gemfile +34 -0
  197. data/gemfiles/ruby_2.3.8_contrib_old.gemfile.lock +127 -0
  198. data/gemfiles/ruby_2.3.8_core_old.gemfile +33 -0
  199. data/gemfiles/ruby_2.3.8_core_old.gemfile.lock +123 -0
  200. data/gemfiles/ruby_2.3.8_cucumber3.gemfile +34 -0
  201. data/gemfiles/ruby_2.3.8_cucumber3.gemfile.lock +144 -0
  202. data/gemfiles/ruby_2.3.8_cucumber4.gemfile +34 -0
  203. data/gemfiles/ruby_2.3.8_cucumber4.gemfile.lock +174 -0
  204. data/gemfiles/ruby_2.3.8_rails30_postgres.gemfile +39 -0
  205. data/gemfiles/ruby_2.3.8_rails30_postgres.gemfile.lock +201 -0
  206. data/gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile +40 -0
  207. data/gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile.lock +210 -0
  208. data/gemfiles/ruby_2.3.8_rails32_mysql2.gemfile +41 -0
  209. data/gemfiles/ruby_2.3.8_rails32_mysql2.gemfile.lock +217 -0
  210. data/gemfiles/ruby_2.3.8_rails32_postgres.gemfile +39 -0
  211. data/gemfiles/ruby_2.3.8_rails32_postgres.gemfile.lock +209 -0
  212. data/gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile +41 -0
  213. data/gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile.lock +228 -0
  214. data/gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile +40 -0
  215. data/gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile.lock +218 -0
  216. data/gemfiles/ruby_2.3.8_rails4_mysql2.gemfile +38 -0
  217. data/gemfiles/ruby_2.3.8_rails4_mysql2.gemfile.lock +223 -0
  218. data/gemfiles/ruby_2.3.8_rails4_postgres.gemfile +38 -0
  219. data/gemfiles/ruby_2.3.8_rails4_postgres.gemfile.lock +223 -0
  220. data/gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile +40 -0
  221. data/gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile.lock +242 -0
  222. data/gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile +40 -0
  223. data/gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile.lock +234 -0
  224. data/gemfiles/ruby_2.3.8_rails5_mysql2.gemfile +37 -0
  225. data/gemfiles/ruby_2.3.8_rails5_mysql2.gemfile.lock +234 -0
  226. data/gemfiles/ruby_2.3.8_rails5_postgres.gemfile +37 -0
  227. data/gemfiles/ruby_2.3.8_rails5_postgres.gemfile.lock +234 -0
  228. data/gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile +38 -0
  229. data/gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile.lock +236 -0
  230. data/gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile +38 -0
  231. data/gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile.lock +236 -0
  232. data/gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile +39 -0
  233. data/gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile.lock +245 -0
  234. data/gemfiles/ruby_2.3.8_resque2_redis3.gemfile +35 -0
  235. data/gemfiles/ruby_2.3.8_resque2_redis3.gemfile.lock +150 -0
  236. data/gemfiles/ruby_2.3.8_resque2_redis4.gemfile +35 -0
  237. data/gemfiles/ruby_2.3.8_resque2_redis4.gemfile.lock +150 -0
  238. data/gemfiles/ruby_2.4.6_contrib.gemfile +78 -0
  239. data/gemfiles/ruby_2.4.6_contrib.gemfile.lock +1513 -0
  240. data/gemfiles/ruby_2.4.6_contrib_old.gemfile +38 -0
  241. data/gemfiles/ruby_2.4.6_contrib_old.gemfile.lock +155 -0
  242. data/gemfiles/ruby_2.4.6_core_old.gemfile +37 -0
  243. data/gemfiles/ruby_2.4.6_core_old.gemfile.lock +151 -0
  244. data/gemfiles/ruby_2.4.6_cucumber3.gemfile +38 -0
  245. data/gemfiles/ruby_2.4.6_cucumber3.gemfile.lock +172 -0
  246. data/gemfiles/ruby_2.4.6_cucumber4.gemfile +38 -0
  247. data/gemfiles/ruby_2.4.6_cucumber4.gemfile.lock +202 -0
  248. data/gemfiles/ruby_2.4.6_rails5_mysql2.gemfile +41 -0
  249. data/gemfiles/ruby_2.4.6_rails5_mysql2.gemfile.lock +262 -0
  250. data/gemfiles/ruby_2.4.6_rails5_postgres.gemfile +41 -0
  251. data/gemfiles/ruby_2.4.6_rails5_postgres.gemfile.lock +262 -0
  252. data/gemfiles/ruby_2.4.6_rails5_postgres_redis.gemfile +42 -0
  253. data/gemfiles/ruby_2.4.6_rails5_postgres_redis.gemfile.lock +264 -0
  254. data/gemfiles/ruby_2.4.6_rails5_postgres_redis_activesupport.gemfile +42 -0
  255. data/gemfiles/ruby_2.4.6_rails5_postgres_redis_activesupport.gemfile.lock +264 -0
  256. data/gemfiles/ruby_2.4.6_rails5_postgres_sidekiq.gemfile +43 -0
  257. data/gemfiles/ruby_2.4.6_rails5_postgres_sidekiq.gemfile.lock +273 -0
  258. data/gemfiles/ruby_2.4.6_resque2_redis3.gemfile +39 -0
  259. data/gemfiles/ruby_2.4.6_resque2_redis3.gemfile.lock +178 -0
  260. data/gemfiles/ruby_2.4.6_resque2_redis4.gemfile +39 -0
  261. data/gemfiles/ruby_2.4.6_resque2_redis4.gemfile.lock +178 -0
  262. data/gemfiles/ruby_2.5.6_contrib.gemfile +83 -0
  263. data/gemfiles/ruby_2.5.6_contrib.gemfile.lock +1526 -0
  264. data/gemfiles/ruby_2.5.6_contrib_old.gemfile +39 -0
  265. data/gemfiles/ruby_2.5.6_contrib_old.gemfile.lock +165 -0
  266. data/gemfiles/ruby_2.5.6_core_old.gemfile +38 -0
  267. data/gemfiles/ruby_2.5.6_core_old.gemfile.lock +161 -0
  268. data/gemfiles/ruby_2.5.6_cucumber3.gemfile +39 -0
  269. data/gemfiles/ruby_2.5.6_cucumber3.gemfile.lock +182 -0
  270. data/gemfiles/ruby_2.5.6_cucumber4.gemfile +39 -0
  271. data/gemfiles/ruby_2.5.6_cucumber4.gemfile.lock +214 -0
  272. data/gemfiles/ruby_2.5.6_cucumber5.gemfile +39 -0
  273. data/gemfiles/ruby_2.5.6_cucumber5.gemfile.lock +214 -0
  274. data/gemfiles/ruby_2.5.6_rails5_mysql2.gemfile +44 -0
  275. data/gemfiles/ruby_2.5.6_rails5_mysql2.gemfile.lock +276 -0
  276. data/gemfiles/ruby_2.5.6_rails5_postgres.gemfile +44 -0
  277. data/gemfiles/ruby_2.5.6_rails5_postgres.gemfile.lock +276 -0
  278. data/gemfiles/ruby_2.5.6_rails5_postgres_redis.gemfile +45 -0
  279. data/gemfiles/ruby_2.5.6_rails5_postgres_redis.gemfile.lock +278 -0
  280. data/gemfiles/ruby_2.5.6_rails5_postgres_redis_activesupport.gemfile +45 -0
  281. data/gemfiles/ruby_2.5.6_rails5_postgres_redis_activesupport.gemfile.lock +278 -0
  282. data/gemfiles/ruby_2.5.6_rails5_postgres_sidekiq.gemfile +46 -0
  283. data/gemfiles/ruby_2.5.6_rails5_postgres_sidekiq.gemfile.lock +284 -0
  284. data/gemfiles/ruby_2.5.6_rails61_mysql2.gemfile +44 -0
  285. data/gemfiles/ruby_2.5.6_rails61_mysql2.gemfile.lock +295 -0
  286. data/gemfiles/ruby_2.5.6_rails61_postgres.gemfile +44 -0
  287. data/gemfiles/ruby_2.5.6_rails61_postgres.gemfile.lock +295 -0
  288. data/gemfiles/ruby_2.5.6_rails61_postgres_redis.gemfile +45 -0
  289. data/gemfiles/ruby_2.5.6_rails61_postgres_redis.gemfile.lock +297 -0
  290. data/gemfiles/ruby_2.5.6_rails61_postgres_sidekiq.gemfile +45 -0
  291. data/gemfiles/ruby_2.5.6_rails61_postgres_sidekiq.gemfile.lock +302 -0
  292. data/gemfiles/ruby_2.5.6_rails6_mysql2.gemfile +44 -0
  293. data/gemfiles/ruby_2.5.6_rails6_mysql2.gemfile.lock +292 -0
  294. data/gemfiles/ruby_2.5.6_rails6_postgres.gemfile +44 -0
  295. data/gemfiles/ruby_2.5.6_rails6_postgres.gemfile.lock +292 -0
  296. data/gemfiles/ruby_2.5.6_rails6_postgres_redis.gemfile +45 -0
  297. data/gemfiles/ruby_2.5.6_rails6_postgres_redis.gemfile.lock +294 -0
  298. data/gemfiles/ruby_2.5.6_rails6_postgres_redis_activesupport.gemfile +45 -0
  299. data/gemfiles/ruby_2.5.6_rails6_postgres_redis_activesupport.gemfile.lock +294 -0
  300. data/gemfiles/ruby_2.5.6_rails6_postgres_sidekiq.gemfile +46 -0
  301. data/gemfiles/ruby_2.5.6_rails6_postgres_sidekiq.gemfile.lock +300 -0
  302. data/gemfiles/ruby_2.5.6_resque2_redis3.gemfile +40 -0
  303. data/gemfiles/ruby_2.5.6_resque2_redis3.gemfile.lock +188 -0
  304. data/gemfiles/ruby_2.5.6_resque2_redis4.gemfile +40 -0
  305. data/gemfiles/ruby_2.5.6_resque2_redis4.gemfile.lock +188 -0
  306. data/gemfiles/ruby_2.6.4_contrib.gemfile +79 -0
  307. data/gemfiles/ruby_2.6.4_contrib.gemfile.lock +1524 -0
  308. data/gemfiles/ruby_2.6.4_contrib_old.gemfile +39 -0
  309. data/gemfiles/ruby_2.6.4_contrib_old.gemfile.lock +167 -0
  310. data/gemfiles/ruby_2.6.4_core_old.gemfile +38 -0
  311. data/gemfiles/ruby_2.6.4_core_old.gemfile.lock +163 -0
  312. data/gemfiles/ruby_2.6.4_cucumber3.gemfile +39 -0
  313. data/gemfiles/ruby_2.6.4_cucumber3.gemfile.lock +184 -0
  314. data/gemfiles/ruby_2.6.4_cucumber4.gemfile +39 -0
  315. data/gemfiles/ruby_2.6.4_cucumber4.gemfile.lock +216 -0
  316. data/gemfiles/ruby_2.6.4_cucumber5.gemfile +39 -0
  317. data/gemfiles/ruby_2.6.4_cucumber5.gemfile.lock +216 -0
  318. data/gemfiles/ruby_2.6.4_rails5_mysql2.gemfile +42 -0
  319. data/gemfiles/ruby_2.6.4_rails5_mysql2.gemfile.lock +276 -0
  320. data/gemfiles/ruby_2.6.4_rails5_postgres.gemfile +42 -0
  321. data/gemfiles/ruby_2.6.4_rails5_postgres.gemfile.lock +276 -0
  322. data/gemfiles/ruby_2.6.4_rails5_postgres_redis.gemfile +43 -0
  323. data/gemfiles/ruby_2.6.4_rails5_postgres_redis.gemfile.lock +278 -0
  324. data/gemfiles/ruby_2.6.4_rails5_postgres_redis_activesupport.gemfile +43 -0
  325. data/gemfiles/ruby_2.6.4_rails5_postgres_redis_activesupport.gemfile.lock +278 -0
  326. data/gemfiles/ruby_2.6.4_rails5_postgres_sidekiq.gemfile +44 -0
  327. data/gemfiles/ruby_2.6.4_rails5_postgres_sidekiq.gemfile.lock +284 -0
  328. data/gemfiles/ruby_2.6.4_rails61_mysql2.gemfile +42 -0
  329. data/gemfiles/ruby_2.6.4_rails61_mysql2.gemfile.lock +295 -0
  330. data/gemfiles/ruby_2.6.4_rails61_postgres.gemfile +42 -0
  331. data/gemfiles/ruby_2.6.4_rails61_postgres.gemfile.lock +295 -0
  332. data/gemfiles/ruby_2.6.4_rails61_postgres_redis.gemfile +43 -0
  333. data/gemfiles/ruby_2.6.4_rails61_postgres_redis.gemfile.lock +297 -0
  334. data/gemfiles/ruby_2.6.4_rails61_postgres_sidekiq.gemfile +43 -0
  335. data/gemfiles/ruby_2.6.4_rails61_postgres_sidekiq.gemfile.lock +302 -0
  336. data/gemfiles/ruby_2.6.4_rails6_mysql2.gemfile +42 -0
  337. data/gemfiles/ruby_2.6.4_rails6_mysql2.gemfile.lock +292 -0
  338. data/gemfiles/ruby_2.6.4_rails6_postgres.gemfile +42 -0
  339. data/gemfiles/ruby_2.6.4_rails6_postgres.gemfile.lock +292 -0
  340. data/gemfiles/ruby_2.6.4_rails6_postgres_redis.gemfile +43 -0
  341. data/gemfiles/ruby_2.6.4_rails6_postgres_redis.gemfile.lock +294 -0
  342. data/gemfiles/ruby_2.6.4_rails6_postgres_redis_activesupport.gemfile +43 -0
  343. data/gemfiles/ruby_2.6.4_rails6_postgres_redis_activesupport.gemfile.lock +294 -0
  344. data/gemfiles/ruby_2.6.4_rails6_postgres_sidekiq.gemfile +44 -0
  345. data/gemfiles/ruby_2.6.4_rails6_postgres_sidekiq.gemfile.lock +300 -0
  346. data/gemfiles/ruby_2.6.4_resque2_redis3.gemfile +40 -0
  347. data/gemfiles/ruby_2.6.4_resque2_redis3.gemfile.lock +190 -0
  348. data/gemfiles/ruby_2.6.4_resque2_redis4.gemfile +40 -0
  349. data/gemfiles/ruby_2.6.4_resque2_redis4.gemfile.lock +190 -0
  350. data/gemfiles/ruby_2.7.0_contrib.gemfile +78 -0
  351. data/gemfiles/ruby_2.7.0_contrib.gemfile.lock +1523 -0
  352. data/gemfiles/ruby_2.7.0_contrib_old.gemfile +39 -0
  353. data/gemfiles/ruby_2.7.0_contrib_old.gemfile.lock +167 -0
  354. data/gemfiles/ruby_2.7.0_core_old.gemfile +38 -0
  355. data/gemfiles/ruby_2.7.0_core_old.gemfile.lock +163 -0
  356. data/gemfiles/ruby_2.7.0_cucumber3.gemfile +39 -0
  357. data/gemfiles/ruby_2.7.0_cucumber3.gemfile.lock +184 -0
  358. data/gemfiles/ruby_2.7.0_cucumber4.gemfile +39 -0
  359. data/gemfiles/ruby_2.7.0_cucumber4.gemfile.lock +216 -0
  360. data/gemfiles/ruby_2.7.0_cucumber5.gemfile +39 -0
  361. data/gemfiles/ruby_2.7.0_cucumber5.gemfile.lock +216 -0
  362. data/gemfiles/ruby_2.7.0_rails5_mysql2.gemfile +42 -0
  363. data/gemfiles/ruby_2.7.0_rails5_mysql2.gemfile.lock +276 -0
  364. data/gemfiles/ruby_2.7.0_rails5_postgres.gemfile +42 -0
  365. data/gemfiles/ruby_2.7.0_rails5_postgres.gemfile.lock +276 -0
  366. data/gemfiles/ruby_2.7.0_rails5_postgres_redis.gemfile +44 -0
  367. data/gemfiles/ruby_2.7.0_rails5_postgres_redis.gemfile.lock +295 -0
  368. data/gemfiles/ruby_2.7.0_rails5_postgres_redis_activesupport.gemfile +44 -0
  369. data/gemfiles/ruby_2.7.0_rails5_postgres_redis_activesupport.gemfile.lock +295 -0
  370. data/gemfiles/ruby_2.7.0_rails5_postgres_sidekiq.gemfile +44 -0
  371. data/gemfiles/ruby_2.7.0_rails5_postgres_sidekiq.gemfile.lock +284 -0
  372. data/gemfiles/ruby_2.7.0_rails61_mysql2.gemfile +42 -0
  373. data/gemfiles/ruby_2.7.0_rails61_mysql2.gemfile.lock +295 -0
  374. data/gemfiles/ruby_2.7.0_rails61_postgres.gemfile +42 -0
  375. data/gemfiles/ruby_2.7.0_rails61_postgres.gemfile.lock +295 -0
  376. data/gemfiles/ruby_2.7.0_rails61_postgres_redis.gemfile +43 -0
  377. data/gemfiles/ruby_2.7.0_rails61_postgres_redis.gemfile.lock +297 -0
  378. data/gemfiles/ruby_2.7.0_rails61_postgres_sidekiq.gemfile +43 -0
  379. data/gemfiles/ruby_2.7.0_rails61_postgres_sidekiq.gemfile.lock +302 -0
  380. data/gemfiles/ruby_2.7.0_rails6_mysql2.gemfile +42 -0
  381. data/gemfiles/ruby_2.7.0_rails6_mysql2.gemfile.lock +292 -0
  382. data/gemfiles/ruby_2.7.0_rails6_postgres.gemfile +42 -0
  383. data/gemfiles/ruby_2.7.0_rails6_postgres.gemfile.lock +292 -0
  384. data/gemfiles/ruby_2.7.0_rails6_postgres_redis.gemfile +44 -0
  385. data/gemfiles/ruby_2.7.0_rails6_postgres_redis.gemfile.lock +311 -0
  386. data/gemfiles/ruby_2.7.0_rails6_postgres_redis_activesupport.gemfile +44 -0
  387. data/gemfiles/ruby_2.7.0_rails6_postgres_redis_activesupport.gemfile.lock +311 -0
  388. data/gemfiles/ruby_2.7.0_rails6_postgres_sidekiq.gemfile +44 -0
  389. data/gemfiles/ruby_2.7.0_rails6_postgres_sidekiq.gemfile.lock +300 -0
  390. data/gemfiles/ruby_2.7.0_resque2_redis3.gemfile +40 -0
  391. data/gemfiles/ruby_2.7.0_resque2_redis3.gemfile.lock +190 -0
  392. data/gemfiles/ruby_2.7.0_resque2_redis4.gemfile +40 -0
  393. data/gemfiles/ruby_2.7.0_resque2_redis4.gemfile.lock +190 -0
  394. data/gemfiles/ruby_3.0.0_contrib.gemfile +77 -0
  395. data/gemfiles/ruby_3.0.0_contrib.gemfile.lock +1534 -0
  396. data/gemfiles/ruby_3.0.0_core_old.gemfile +39 -0
  397. data/gemfiles/ruby_3.0.0_core_old.gemfile.lock +165 -0
  398. data/gemfiles/ruby_3.0.0_cucumber3.gemfile +40 -0
  399. data/gemfiles/ruby_3.0.0_cucumber3.gemfile.lock +186 -0
  400. data/gemfiles/ruby_3.0.0_cucumber4.gemfile +40 -0
  401. data/gemfiles/ruby_3.0.0_cucumber4.gemfile.lock +218 -0
  402. data/gemfiles/ruby_3.0.0_cucumber5.gemfile +40 -0
  403. data/gemfiles/ruby_3.0.0_cucumber5.gemfile.lock +218 -0
  404. data/gemfiles/ruby_3.0.0_rails61_mysql2.gemfile +43 -0
  405. data/gemfiles/ruby_3.0.0_rails61_mysql2.gemfile.lock +295 -0
  406. data/gemfiles/ruby_3.0.0_rails61_postgres.gemfile +43 -0
  407. data/gemfiles/ruby_3.0.0_rails61_postgres.gemfile.lock +295 -0
  408. data/gemfiles/ruby_3.0.0_rails61_postgres_redis.gemfile +44 -0
  409. data/gemfiles/ruby_3.0.0_rails61_postgres_redis.gemfile.lock +297 -0
  410. data/gemfiles/ruby_3.0.0_rails61_postgres_sidekiq.gemfile +44 -0
  411. data/gemfiles/ruby_3.0.0_rails61_postgres_sidekiq.gemfile.lock +302 -0
  412. data/gemfiles/ruby_3.0.0_resque2_redis3.gemfile +41 -0
  413. data/gemfiles/ruby_3.0.0_resque2_redis3.gemfile.lock +192 -0
  414. data/gemfiles/ruby_3.0.0_resque2_redis4.gemfile +41 -0
  415. data/gemfiles/ruby_3.0.0_resque2_redis4.gemfile.lock +192 -0
  416. data/integration/README.md +67 -0
  417. data/integration/apps/rack/.dockerignore +1 -0
  418. data/integration/apps/rack/.envrc.sample +1 -0
  419. data/integration/apps/rack/.gitignore +4 -0
  420. data/integration/apps/rack/.rspec +1 -0
  421. data/integration/apps/rack/Dockerfile +28 -0
  422. data/integration/apps/rack/Dockerfile-ci +11 -0
  423. data/integration/apps/rack/Gemfile +24 -0
  424. data/integration/apps/rack/README.md +93 -0
  425. data/integration/apps/rack/app/acme.rb +80 -0
  426. data/integration/apps/rack/app/datadog.rb +17 -0
  427. data/integration/apps/rack/bin/run +22 -0
  428. data/integration/apps/rack/bin/setup +17 -0
  429. data/integration/apps/rack/bin/test +24 -0
  430. data/integration/apps/rack/config.ru +6 -0
  431. data/integration/apps/rack/config/puma.rb +14 -0
  432. data/integration/apps/rack/config/unicorn.rb +23 -0
  433. data/integration/apps/rack/docker-compose.ci.yml +62 -0
  434. data/integration/apps/rack/docker-compose.yml +78 -0
  435. data/integration/apps/rack/script/build-images +38 -0
  436. data/integration/apps/rack/script/ci +50 -0
  437. data/integration/apps/rack/spec/integration/basic_spec.rb +10 -0
  438. data/integration/apps/rack/spec/spec_helper.rb +16 -0
  439. data/integration/apps/rack/spec/support/integration_helper.rb +22 -0
  440. data/integration/apps/rails-five/.dockerignore +1 -0
  441. data/integration/apps/rails-five/.env +3 -0
  442. data/integration/apps/rails-five/.envrc.sample +1 -0
  443. data/integration/apps/rails-five/.gitignore +30 -0
  444. data/integration/apps/rails-five/Dockerfile +25 -0
  445. data/integration/apps/rails-five/Dockerfile-ci +11 -0
  446. data/integration/apps/rails-five/Gemfile +104 -0
  447. data/integration/apps/rails-five/README.md +94 -0
  448. data/integration/apps/rails-five/Rakefile +6 -0
  449. data/integration/apps/rails-five/app/channels/application_cable/channel.rb +4 -0
  450. data/integration/apps/rails-five/app/channels/application_cable/connection.rb +4 -0
  451. data/integration/apps/rails-five/app/controllers/application_controller.rb +2 -0
  452. data/integration/apps/rails-five/app/controllers/basic_controller.rb +36 -0
  453. data/integration/apps/rails-five/app/controllers/concerns/.keep +0 -0
  454. data/integration/apps/rails-five/app/controllers/health_controller.rb +9 -0
  455. data/integration/apps/rails-five/app/controllers/jobs_controller.rb +12 -0
  456. data/integration/apps/rails-five/app/jobs/application_job.rb +2 -0
  457. data/integration/apps/rails-five/app/jobs/test_job.rb +12 -0
  458. data/integration/apps/rails-five/app/mailers/application_mailer.rb +4 -0
  459. data/integration/apps/rails-five/app/models/application_record.rb +3 -0
  460. data/integration/apps/rails-five/app/models/concerns/.keep +0 -0
  461. data/integration/apps/rails-five/app/models/test.rb +2 -0
  462. data/integration/apps/rails-five/app/views/layouts/mailer.html.erb +13 -0
  463. data/integration/apps/rails-five/app/views/layouts/mailer.text.erb +1 -0
  464. data/integration/apps/rails-five/bin/bundle +3 -0
  465. data/integration/apps/rails-five/bin/rails +9 -0
  466. data/integration/apps/rails-five/bin/rake +9 -0
  467. data/integration/apps/rails-five/bin/run +24 -0
  468. data/integration/apps/rails-five/bin/setup +27 -0
  469. data/integration/apps/rails-five/bin/spring +17 -0
  470. data/integration/apps/rails-five/bin/test +21 -0
  471. data/integration/apps/rails-five/bin/update +28 -0
  472. data/integration/apps/rails-five/config.ru +5 -0
  473. data/integration/apps/rails-five/config/application.rb +97 -0
  474. data/integration/apps/rails-five/config/boot.rb +4 -0
  475. data/integration/apps/rails-five/config/cable.yml +10 -0
  476. data/integration/apps/rails-five/config/credentials.yml.enc +1 -0
  477. data/integration/apps/rails-five/config/database.yml +28 -0
  478. data/integration/apps/rails-five/config/environment.rb +5 -0
  479. data/integration/apps/rails-five/config/environments/development.rb +51 -0
  480. data/integration/apps/rails-five/config/environments/production.rb +82 -0
  481. data/integration/apps/rails-five/config/environments/test.rb +43 -0
  482. data/integration/apps/rails-five/config/initializers/datadog.rb +18 -0
  483. data/integration/apps/rails-five/config/initializers/filter_parameter_logging.rb +4 -0
  484. data/integration/apps/rails-five/config/initializers/resque.rb +4 -0
  485. data/integration/apps/rails-five/config/initializers/rollbar.rb +5 -0
  486. data/integration/apps/rails-five/config/initializers/wrap_parameters.rb +14 -0
  487. data/integration/apps/rails-five/config/locales/en.yml +33 -0
  488. data/integration/apps/rails-five/config/puma.rb +24 -0
  489. data/integration/apps/rails-five/config/routes.rb +11 -0
  490. data/integration/apps/rails-five/config/spring.rb +6 -0
  491. data/integration/apps/rails-five/config/unicorn.rb +29 -0
  492. data/integration/apps/rails-five/db/migrate/20190927215052_create_tests.rb +11 -0
  493. data/integration/apps/rails-five/db/schema.rb +23 -0
  494. data/integration/apps/rails-five/db/seeds.rb +7 -0
  495. data/integration/apps/rails-five/docker-compose.ci.yml +98 -0
  496. data/integration/apps/rails-five/docker-compose.yml +100 -0
  497. data/integration/apps/rails-five/lib/tasks/.keep +0 -0
  498. data/integration/apps/rails-five/log/.keep +0 -0
  499. data/integration/apps/rails-five/public/robots.txt +1 -0
  500. data/integration/apps/rails-five/script/build-images +35 -0
  501. data/integration/apps/rails-five/script/ci +50 -0
  502. data/integration/apps/rails-five/spec/integration/basic_spec.rb +10 -0
  503. data/integration/apps/rails-five/spec/spec_helper.rb +16 -0
  504. data/integration/apps/rails-five/spec/support/integration_helper.rb +22 -0
  505. data/integration/apps/rails-five/storage/.keep +0 -0
  506. data/integration/apps/rails-five/tmp/.keep +0 -0
  507. data/integration/apps/rails-five/vendor/.keep +0 -0
  508. data/integration/apps/ruby/.dockerignore +1 -0
  509. data/integration/apps/ruby/.envrc.sample +1 -0
  510. data/integration/apps/ruby/.gitignore +2 -0
  511. data/integration/apps/ruby/Dockerfile +25 -0
  512. data/integration/apps/ruby/Dockerfile-ci +11 -0
  513. data/integration/apps/ruby/Gemfile +11 -0
  514. data/integration/apps/ruby/README.md +70 -0
  515. data/integration/apps/ruby/agent.yaml +3 -0
  516. data/integration/apps/ruby/app/datadog.rb +13 -0
  517. data/integration/apps/ruby/app/fibonacci.rb +58 -0
  518. data/integration/apps/ruby/bin/run +20 -0
  519. data/integration/apps/ruby/bin/setup +17 -0
  520. data/integration/apps/ruby/bin/test +21 -0
  521. data/integration/apps/ruby/docker-compose.ci.yml +51 -0
  522. data/integration/apps/ruby/docker-compose.yml +63 -0
  523. data/integration/apps/ruby/script/build-images +38 -0
  524. data/integration/apps/ruby/script/ci +50 -0
  525. data/integration/images/agent/Dockerfile +2 -0
  526. data/integration/images/agent/agent.yaml +3 -0
  527. data/integration/images/include/datadog/analyzer.rb +71 -0
  528. data/integration/images/include/datadog/demo_env.rb +101 -0
  529. data/integration/images/include/http-health-check +33 -0
  530. data/integration/images/ruby/2.0/Dockerfile +54 -0
  531. data/integration/images/ruby/2.1/Dockerfile +54 -0
  532. data/integration/images/ruby/2.2/Dockerfile +54 -0
  533. data/integration/images/ruby/2.3/Dockerfile +70 -0
  534. data/integration/images/ruby/2.4/Dockerfile +54 -0
  535. data/integration/images/ruby/2.5/Dockerfile +54 -0
  536. data/integration/images/ruby/2.6/Dockerfile +54 -0
  537. data/integration/images/ruby/2.7/Dockerfile +54 -0
  538. data/integration/images/ruby/3.0/Dockerfile +54 -0
  539. data/integration/images/wrk/Dockerfile +33 -0
  540. data/integration/images/wrk/scripts/entrypoint.sh +17 -0
  541. data/integration/images/wrk/scripts/scenarios/basic/default.lua +1 -0
  542. data/integration/images/wrk/scripts/scenarios/basic/fibonacci.lua +1 -0
  543. data/integration/script/build-images +43 -0
  544. data/lib/ddtrace.rb +8 -5
  545. data/lib/ddtrace/analytics.rb +2 -0
  546. data/lib/ddtrace/auto_instrument.rb +3 -0
  547. data/lib/ddtrace/auto_instrument_base.rb +6 -0
  548. data/lib/ddtrace/buffer.rb +4 -4
  549. data/lib/ddtrace/configuration.rb +121 -26
  550. data/lib/ddtrace/configuration/agent_settings_resolver.rb +241 -0
  551. data/lib/ddtrace/configuration/base.rb +1 -1
  552. data/lib/ddtrace/configuration/components.rb +86 -11
  553. data/lib/ddtrace/configuration/option_definition.rb +1 -3
  554. data/lib/ddtrace/configuration/options.rb +4 -7
  555. data/lib/ddtrace/configuration/settings.rb +61 -6
  556. data/lib/ddtrace/context.rb +5 -6
  557. data/lib/ddtrace/context_provider.rb +0 -1
  558. data/lib/ddtrace/contrib/action_cable/event.rb +1 -0
  559. data/lib/ddtrace/contrib/action_cable/integration.rb +7 -0
  560. data/lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb +2 -4
  561. data/lib/ddtrace/contrib/action_pack/integration.rb +7 -0
  562. data/lib/ddtrace/contrib/action_pack/utils.rb +1 -1
  563. data/lib/ddtrace/contrib/action_view/event.rb +1 -1
  564. data/lib/ddtrace/contrib/action_view/integration.rb +7 -0
  565. data/lib/ddtrace/contrib/action_view/utils.rb +1 -1
  566. data/lib/ddtrace/contrib/active_record/configuration/makara_resolver.rb +30 -0
  567. data/lib/ddtrace/contrib/active_record/configuration/resolver.rb +107 -18
  568. data/lib/ddtrace/contrib/active_record/integration.rb +7 -0
  569. data/lib/ddtrace/contrib/active_record/utils.rb +57 -20
  570. data/lib/ddtrace/contrib/active_support/integration.rb +7 -1
  571. data/lib/ddtrace/contrib/active_support/notifications/event.rb +2 -1
  572. data/lib/ddtrace/contrib/active_support/notifications/subscriber.rb +1 -0
  573. data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +9 -5
  574. data/lib/ddtrace/contrib/auto_instrument.rb +48 -0
  575. data/lib/ddtrace/contrib/aws/patcher.rb +1 -0
  576. data/lib/ddtrace/contrib/aws/services.rb +2 -0
  577. data/lib/ddtrace/contrib/configurable.rb +63 -39
  578. data/lib/ddtrace/contrib/configuration/resolver.rb +70 -5
  579. data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +19 -20
  580. data/lib/ddtrace/contrib/configuration/settings.rb +7 -6
  581. data/lib/ddtrace/contrib/cucumber/configuration/settings.rb +0 -10
  582. data/lib/ddtrace/contrib/cucumber/ext.rb +0 -2
  583. data/lib/ddtrace/contrib/cucumber/formatter.rb +5 -11
  584. data/lib/ddtrace/contrib/cucumber/integration.rb +5 -0
  585. data/lib/ddtrace/contrib/dalli/patcher.rb +0 -38
  586. data/lib/ddtrace/contrib/delayed_job/plugin.rb +0 -1
  587. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +1 -0
  588. data/lib/ddtrace/contrib/elasticsearch/quantize.rb +3 -2
  589. data/lib/ddtrace/contrib/ethon/easy_patch.rb +10 -9
  590. data/lib/ddtrace/contrib/excon/middleware.rb +2 -6
  591. data/lib/ddtrace/contrib/extensions.rb +53 -3
  592. data/lib/ddtrace/contrib/faraday/middleware.rb +1 -3
  593. data/lib/ddtrace/contrib/faraday/patcher.rb +0 -36
  594. data/lib/ddtrace/contrib/grape/endpoint.rb +8 -15
  595. data/lib/ddtrace/contrib/grape/patcher.rb +0 -42
  596. data/lib/ddtrace/contrib/grpc/datadog_interceptor.rb +8 -8
  597. data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +1 -0
  598. data/lib/ddtrace/contrib/grpc/patcher.rb +0 -36
  599. data/lib/ddtrace/contrib/http/circuit_breaker.rb +1 -3
  600. data/lib/ddtrace/contrib/http/instrumentation.rb +5 -5
  601. data/lib/ddtrace/contrib/httpclient/configuration/settings.rb +32 -0
  602. data/lib/ddtrace/contrib/httpclient/ext.rb +17 -0
  603. data/lib/ddtrace/contrib/httpclient/instrumentation.rb +147 -0
  604. data/lib/ddtrace/contrib/httpclient/integration.rb +43 -0
  605. data/lib/ddtrace/contrib/httpclient/patcher.rb +38 -0
  606. data/lib/ddtrace/contrib/httprb/instrumentation.rb +14 -20
  607. data/lib/ddtrace/contrib/httprb/patcher.rb +5 -2
  608. data/lib/ddtrace/contrib/mongodb/instrumentation.rb +2 -0
  609. data/lib/ddtrace/contrib/mongodb/subscribers.rb +2 -3
  610. data/lib/ddtrace/contrib/patchable.rb +18 -7
  611. data/lib/ddtrace/contrib/patcher.rb +9 -6
  612. data/lib/ddtrace/contrib/presto/patcher.rb +5 -2
  613. data/lib/ddtrace/contrib/qless/qless_job.rb +1 -0
  614. data/lib/ddtrace/contrib/qless/tracer_cleaner.rb +1 -0
  615. data/lib/ddtrace/contrib/que/ext.rb +19 -19
  616. data/lib/ddtrace/contrib/que/tracer.rb +1 -1
  617. data/lib/ddtrace/contrib/racecar/event.rb +1 -0
  618. data/lib/ddtrace/contrib/rack/configuration/settings.rb +3 -3
  619. data/lib/ddtrace/contrib/rack/integration.rb +7 -0
  620. data/lib/ddtrace/contrib/rack/middlewares.rb +6 -11
  621. data/lib/ddtrace/contrib/rack/patcher.rb +1 -3
  622. data/lib/ddtrace/contrib/rack/request_queue.rb +6 -1
  623. data/lib/ddtrace/contrib/rails/auto_instrument_railtie.rb +10 -0
  624. data/lib/ddtrace/contrib/rails/patcher.rb +6 -2
  625. data/lib/ddtrace/contrib/rails/utils.rb +4 -0
  626. data/lib/ddtrace/contrib/rake/instrumentation.rb +4 -2
  627. data/lib/ddtrace/contrib/rake/integration.rb +1 -1
  628. data/lib/ddtrace/contrib/redis/configuration/resolver.rb +11 -4
  629. data/lib/ddtrace/contrib/redis/quantize.rb +1 -0
  630. data/lib/ddtrace/contrib/redis/vendor/LICENSE +20 -0
  631. data/lib/ddtrace/contrib/redis/vendor/resolver.rb +6 -7
  632. data/lib/ddtrace/contrib/registry.rb +2 -2
  633. data/lib/ddtrace/contrib/resque/configuration/settings.rb +17 -1
  634. data/lib/ddtrace/contrib/resque/integration.rb +1 -1
  635. data/lib/ddtrace/contrib/resque/patcher.rb +4 -4
  636. data/lib/ddtrace/contrib/resque/resque_job.rb +24 -1
  637. data/lib/ddtrace/contrib/rest_client/request_patch.rb +1 -3
  638. data/lib/ddtrace/contrib/rspec/configuration/settings.rb +0 -10
  639. data/lib/ddtrace/contrib/rspec/example.rb +24 -10
  640. data/lib/ddtrace/contrib/rspec/ext.rb +0 -3
  641. data/lib/ddtrace/contrib/rspec/integration.rb +6 -1
  642. data/lib/ddtrace/contrib/rspec/patcher.rb +0 -2
  643. data/lib/ddtrace/contrib/sequel/utils.rb +5 -6
  644. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +1 -0
  645. data/lib/ddtrace/contrib/shoryuken/tracer.rb +7 -4
  646. data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +2 -7
  647. data/lib/ddtrace/contrib/sidekiq/tracing.rb +0 -1
  648. data/lib/ddtrace/contrib/sinatra/env.rb +1 -3
  649. data/lib/ddtrace/contrib/sinatra/headers.rb +1 -3
  650. data/lib/ddtrace/contrib/sinatra/tracer.rb +1 -3
  651. data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +3 -3
  652. data/lib/ddtrace/contrib/sneakers/ext.rb +11 -11
  653. data/lib/ddtrace/contrib/sneakers/tracer.rb +2 -4
  654. data/lib/ddtrace/contrib/status_code_matcher.rb +5 -3
  655. data/lib/ddtrace/contrib/sucker_punch/instrumentation.rb +4 -0
  656. data/lib/ddtrace/correlation.rb +1 -0
  657. data/lib/ddtrace/diagnostics/environment_logger.rb +3 -2
  658. data/lib/ddtrace/distributed_tracing/headers/headers.rb +1 -0
  659. data/lib/ddtrace/distributed_tracing/headers/helpers.rb +1 -3
  660. data/lib/ddtrace/error.rb +86 -8
  661. data/lib/ddtrace/ext/ci.rb +43 -10
  662. data/lib/ddtrace/ext/distributed.rb +1 -1
  663. data/lib/ddtrace/ext/git.rb +0 -1
  664. data/lib/ddtrace/ext/http.rb +1 -1
  665. data/lib/ddtrace/ext/profiling.rb +53 -0
  666. data/lib/ddtrace/ext/runtime.rb +3 -1
  667. data/lib/ddtrace/ext/transport.rb +2 -0
  668. data/lib/ddtrace/forced_tracing.rb +2 -0
  669. data/lib/ddtrace/logger.rb +1 -1
  670. data/lib/ddtrace/metrics.rb +14 -6
  671. data/lib/ddtrace/opentracer/distributed_headers.rb +3 -0
  672. data/lib/ddtrace/opentracer/span.rb +2 -6
  673. data/lib/ddtrace/opentracer/thread_local_scope.rb +1 -0
  674. data/lib/ddtrace/patcher.rb +25 -4
  675. data/lib/ddtrace/pin.rb +8 -61
  676. data/lib/ddtrace/pipeline/span_filter.rb +1 -1
  677. data/lib/ddtrace/profiling.rb +105 -0
  678. data/lib/ddtrace/profiling/backtrace_location.rb +32 -0
  679. data/lib/ddtrace/profiling/buffer.rb +41 -0
  680. data/lib/ddtrace/profiling/collectors/stack.rb +259 -0
  681. data/lib/ddtrace/profiling/encoding/profile.rb +31 -0
  682. data/lib/ddtrace/profiling/event.rb +13 -0
  683. data/lib/ddtrace/profiling/events/stack.rb +102 -0
  684. data/lib/ddtrace/profiling/exporter.rb +23 -0
  685. data/lib/ddtrace/profiling/ext/cpu.rb +52 -0
  686. data/lib/ddtrace/profiling/ext/cthread.rb +157 -0
  687. data/lib/ddtrace/profiling/ext/forking.rb +97 -0
  688. data/lib/ddtrace/profiling/flush.rb +41 -0
  689. data/lib/ddtrace/profiling/pprof/builder.rb +121 -0
  690. data/lib/ddtrace/profiling/pprof/converter.rb +85 -0
  691. data/lib/ddtrace/profiling/pprof/message_set.rb +12 -0
  692. data/lib/ddtrace/profiling/pprof/payload.rb +18 -0
  693. data/lib/ddtrace/profiling/pprof/pprof.proto +212 -0
  694. data/lib/ddtrace/profiling/pprof/pprof_pb.rb +81 -0
  695. data/lib/ddtrace/profiling/pprof/stack_sample.rb +90 -0
  696. data/lib/ddtrace/profiling/pprof/string_table.rb +10 -0
  697. data/lib/ddtrace/profiling/pprof/template.rb +114 -0
  698. data/lib/ddtrace/profiling/preload.rb +3 -0
  699. data/lib/ddtrace/profiling/profiler.rb +30 -0
  700. data/lib/ddtrace/profiling/recorder.rb +95 -0
  701. data/lib/ddtrace/profiling/scheduler.rb +105 -0
  702. data/lib/ddtrace/profiling/tasks/setup.rb +77 -0
  703. data/lib/ddtrace/profiling/transport/client.rb +12 -0
  704. data/lib/ddtrace/profiling/transport/http.rb +118 -0
  705. data/lib/ddtrace/profiling/transport/http/api.rb +43 -0
  706. data/lib/ddtrace/profiling/transport/http/api/endpoint.rb +91 -0
  707. data/lib/ddtrace/profiling/transport/http/api/instance.rb +36 -0
  708. data/lib/ddtrace/profiling/transport/http/api/spec.rb +40 -0
  709. data/lib/ddtrace/profiling/transport/http/builder.rb +28 -0
  710. data/lib/ddtrace/profiling/transport/http/client.rb +33 -0
  711. data/lib/ddtrace/profiling/transport/http/response.rb +21 -0
  712. data/lib/ddtrace/profiling/transport/io.rb +30 -0
  713. data/lib/ddtrace/profiling/transport/io/client.rb +27 -0
  714. data/lib/ddtrace/profiling/transport/io/response.rb +16 -0
  715. data/lib/ddtrace/profiling/transport/parcel.rb +17 -0
  716. data/lib/ddtrace/profiling/transport/request.rb +15 -0
  717. data/lib/ddtrace/profiling/transport/response.rb +8 -0
  718. data/lib/ddtrace/propagation/grpc_propagator.rb +1 -0
  719. data/lib/ddtrace/propagation/http_propagator.rb +17 -2
  720. data/lib/ddtrace/quantization/http.rb +1 -0
  721. data/lib/ddtrace/runtime/cgroup.rb +2 -2
  722. data/lib/ddtrace/runtime/container.rb +43 -29
  723. data/lib/ddtrace/runtime/identity.rb +8 -0
  724. data/lib/ddtrace/sampler.rb +1 -1
  725. data/lib/ddtrace/sampling/rule_sampler.rb +4 -9
  726. data/lib/ddtrace/span.rb +7 -7
  727. data/lib/ddtrace/sync_writer.rb +12 -12
  728. data/lib/ddtrace/tasks/exec.rb +48 -0
  729. data/lib/ddtrace/tasks/help.rb +14 -0
  730. data/lib/ddtrace/tracer.rb +35 -33
  731. data/lib/ddtrace/transport/http.rb +41 -31
  732. data/lib/ddtrace/transport/http/adapters/net.rb +27 -8
  733. data/lib/ddtrace/transport/http/adapters/registry.rb +1 -0
  734. data/lib/ddtrace/transport/http/adapters/unix_socket.rb +2 -4
  735. data/lib/ddtrace/transport/http/builder.rb +7 -1
  736. data/lib/ddtrace/transport/http/env.rb +8 -0
  737. data/lib/ddtrace/transport/http/traces.rb +2 -3
  738. data/lib/ddtrace/transport/io.rb +1 -1
  739. data/lib/ddtrace/transport/io/client.rb +15 -8
  740. data/lib/ddtrace/transport/io/response.rb +1 -3
  741. data/lib/ddtrace/transport/io/traces.rb +6 -0
  742. data/lib/ddtrace/transport/parcel.rb +4 -0
  743. data/lib/ddtrace/transport/traces.rb +18 -1
  744. data/lib/ddtrace/utils/compression.rb +27 -0
  745. data/lib/ddtrace/utils/object_set.rb +41 -0
  746. data/lib/ddtrace/utils/only_once.rb +40 -0
  747. data/lib/ddtrace/utils/sequence.rb +17 -0
  748. data/lib/ddtrace/utils/string_table.rb +45 -0
  749. data/lib/ddtrace/utils/time.rb +32 -1
  750. data/lib/ddtrace/vendor/active_record/MIT-LICENSE +20 -0
  751. data/lib/ddtrace/vendor/multipart-post/LICENSE +11 -0
  752. data/lib/ddtrace/vendor/multipart-post/multipart.rb +12 -0
  753. data/lib/ddtrace/vendor/multipart-post/multipart/post.rb +8 -0
  754. data/lib/ddtrace/vendor/multipart-post/multipart/post/composite_read_io.rb +116 -0
  755. data/lib/ddtrace/vendor/multipart-post/multipart/post/multipartable.rb +57 -0
  756. data/lib/ddtrace/vendor/multipart-post/multipart/post/parts.rb +135 -0
  757. data/lib/ddtrace/vendor/multipart-post/multipart/post/version.rb +9 -0
  758. data/lib/ddtrace/vendor/multipart-post/net/http/post/multipart.rb +32 -0
  759. data/lib/ddtrace/version.rb +15 -1
  760. data/lib/ddtrace/workers.rb +5 -0
  761. data/lib/ddtrace/workers/async.rb +11 -3
  762. data/lib/ddtrace/workers/loop.rb +30 -4
  763. data/lib/ddtrace/workers/polling.rb +1 -0
  764. data/lib/ddtrace/workers/queue.rb +1 -0
  765. data/lib/ddtrace/workers/runtime_metrics.rb +14 -1
  766. data/lib/ddtrace/workers/trace_writer.rb +11 -14
  767. data/lib/ddtrace/writer.rb +11 -5
  768. metadata +604 -383
  769. data/lib/ddtrace/augmentation.rb +0 -13
  770. data/lib/ddtrace/augmentation/method_wrapper.rb +0 -20
  771. data/lib/ddtrace/augmentation/method_wrapping.rb +0 -38
  772. data/lib/ddtrace/augmentation/shim.rb +0 -102
  773. data/lib/ddtrace/contrib/rspec/example_group.rb +0 -61
  774. data/lib/ddtrace/monkey.rb +0 -58
@@ -21,6 +21,7 @@ module Datadog
21
21
  def stop_loop
22
22
  mutex.synchronize do
23
23
  return false unless run_loop?
24
+
24
25
  @run_loop = false
25
26
  shutdown.signal
26
27
  end
@@ -34,6 +35,7 @@ module Datadog
34
35
 
35
36
  def run_loop?
36
37
  return false unless instance_variable_defined?(:@run_loop)
38
+
37
39
  @run_loop == true
38
40
  end
39
41
 
@@ -53,12 +55,29 @@ module Datadog
53
55
  @loop_wait_time ||= loop_base_interval
54
56
  end
55
57
 
58
+ def loop_wait_time=(value)
59
+ @loop_wait_time = value
60
+ end
61
+
62
+ def reset_loop_wait_time
63
+ self.loop_wait_time = loop_base_interval
64
+ end
65
+
66
+ # Should the loop "back off" when there's no work?
56
67
  def loop_back_off?
57
68
  false
58
69
  end
59
70
 
60
- def loop_back_off!(amount = nil)
61
- @loop_wait_time = amount || [loop_wait_time * BACK_OFF_RATIO, BACK_OFF_MAX].min
71
+ def loop_back_off!
72
+ self.loop_wait_time = [loop_wait_time * BACK_OFF_RATIO, BACK_OFF_MAX].min
73
+ end
74
+
75
+ # Should perform_loop just straight into work, or start by waiting?
76
+ #
77
+ # The use case is if we want to report some information (like profiles) from time to time, we may not want to
78
+ # report empty/zero/some residual value immediately when the worker starts.
79
+ def loop_wait_before_first_iteration?
80
+ false
62
81
  end
63
82
 
64
83
  protected
@@ -75,16 +94,22 @@ module Datadog
75
94
  private
76
95
 
77
96
  def perform_loop
78
- @run_loop = true
97
+ mutex.synchronize do
98
+ @run_loop = true
99
+
100
+ shutdown.wait(mutex, loop_wait_time) if loop_wait_before_first_iteration?
101
+ end
79
102
 
80
103
  loop do
81
104
  if work_pending?
105
+ # There's work to do...
82
106
  # Run the task
83
107
  yield
84
108
 
85
109
  # Reset the wait interval
86
- loop_back_off!(loop_base_interval)
110
+ reset_loop_wait_time if loop_back_off?
87
111
  elsif loop_back_off?
112
+ # There's no work to do...
88
113
  # Back off the wait interval a bit
89
114
  loop_back_off!
90
115
  end
@@ -92,6 +117,7 @@ module Datadog
92
117
  # Wait for an interval, unless shutdown has been signaled.
93
118
  mutex.synchronize do
94
119
  return unless run_loop? || work_pending?
120
+
95
121
  shutdown.wait(mutex, loop_wait_time) if run_loop?
96
122
  end
97
123
  end
@@ -35,6 +35,7 @@ module Datadog
35
35
 
36
36
  def enabled?
37
37
  return true unless instance_variable_defined?(:@enabled)
38
+
38
39
  @enabled
39
40
  end
40
41
 
@@ -26,6 +26,7 @@ module Datadog
26
26
  buffer.shift
27
27
  end
28
28
 
29
+ # Are there more items to be processed next?
29
30
  def work_pending?
30
31
  !buffer.empty?
31
32
  end
@@ -20,7 +20,7 @@ module Datadog
20
20
  :metrics
21
21
 
22
22
  def initialize(options = {})
23
- @metrics = options.fetch(:metrics, Runtime::Metrics.new)
23
+ @metrics = options.fetch(:metrics) { Runtime::Metrics.new }
24
24
 
25
25
  # Workers::Async::Thread settings
26
26
  self.fork_policy = options.fetch(:fork_policy, Workers::Async::Thread::FORK_POLICY_STOP)
@@ -43,6 +43,19 @@ module Datadog
43
43
  metrics.associate_with_span(*args).tap { perform }
44
44
  end
45
45
 
46
+ # TODO: `close_metrics` is only needed because
47
+ # Datadog::Components directly manipulates the lifecycle of
48
+ # Runtime::Metrics.statsd instances.
49
+ # This should be avoided, as it prevents this class from
50
+ # ensuring correct resource decommission of its internal
51
+ # dependencies.
52
+ def stop(*args, close_metrics: true)
53
+ self.enabled = false
54
+ result = super(*args)
55
+ @metrics.close if close_metrics
56
+ result
57
+ end
58
+
46
59
  def_delegators \
47
60
  :metrics,
48
61
  :register_service
@@ -16,15 +16,10 @@ module Datadog
16
16
  def initialize(options = {})
17
17
  transport_options = options.fetch(:transport_options, {})
18
18
 
19
- if transport_options.is_a?(Proc)
20
- transport_options = { on_build: transport_options }
21
- end
22
-
23
- transport_options[:hostname] = options[:hostname] if options.key?(:hostname)
24
- transport_options[:port] = options[:port] if options.key?(:port)
19
+ transport_options[:agent_settings] = options[:agent_settings] if options.key?(:agent_settings)
25
20
 
26
21
  @transport = options.fetch(:transport) do
27
- Transport::HTTP.default(transport_options)
22
+ Transport::HTTP.default(**transport_options)
28
23
  end
29
24
  end
30
25
 
@@ -66,9 +61,7 @@ module Datadog
66
61
  next if trace.first.nil?
67
62
 
68
63
  hostname = Datadog::Runtime::Socket.hostname
69
- unless hostname.nil? || hostname.empty?
70
- trace.first.set_tag(Ext::NET::TAG_HOSTNAME, hostname)
71
- end
64
+ trace.first.set_tag(Ext::NET::TAG_HOSTNAME, hostname) unless hostname.nil? || hostname.empty?
72
65
  end
73
66
  end
74
67
 
@@ -84,10 +77,6 @@ module Datadog
84
77
  def initialize
85
78
  super(:flush_completed)
86
79
  end
87
-
88
- def publish(response)
89
- super(response)
90
- end
91
80
  end
92
81
  end
93
82
 
@@ -127,10 +116,15 @@ module Datadog
127
116
 
128
117
  # NOTE: #perform is wrapped by other modules:
129
118
  # Polling --> Async --> IntervalLoop --> AsyncTraceWriter --> TraceWriter
119
+ #
120
+ # WARNING: This method breaks the Liskov Substitution Principle -- TraceWriter#perform is spec'd to return the
121
+ # result from the writer, whereas this method always returns nil.
130
122
  def perform(traces)
131
123
  super(traces).tap do |responses|
132
124
  loop_back_off! if responses.find(&:server_error?)
133
125
  end
126
+
127
+ nil
134
128
  end
135
129
 
136
130
  def stop(*args)
@@ -148,6 +142,7 @@ module Datadog
148
142
  [buffer.pop]
149
143
  end
150
144
 
145
+ # Are there more traces to be processed next?
151
146
  def work_pending?
152
147
  !buffer.empty?
153
148
  end
@@ -187,6 +182,8 @@ module Datadog
187
182
  @async = false if @writer_fork_policy == FORK_POLICY_SYNC
188
183
  end
189
184
 
185
+ # WARNING: This method breaks the Liskov Substitution Principle -- TraceWriter#write is spec'd to return the
186
+ # result from the writer, whereas this method returns something else when running in async mode.
190
187
  def write(trace)
191
188
  # Start worker thread. If the process has forked, it will trigger #after_fork to
192
189
  # reconfigure the worker accordingly.
@@ -3,15 +3,19 @@ require 'json'
3
3
  require 'ddtrace/ext/net'
4
4
  require 'ddtrace/runtime/socket'
5
5
 
6
+ require 'ddtrace/configuration/agent_settings_resolver'
6
7
  require 'ddtrace/transport/http'
7
8
  require 'ddtrace/transport/io'
8
9
  require 'ddtrace/encoding'
9
10
  require 'ddtrace/workers'
10
11
  require 'ddtrace/diagnostics/environment_logger'
12
+ require 'ddtrace/utils/only_once'
11
13
 
12
14
  module Datadog
13
15
  # Processor that sends traces and metadata to the agent
14
16
  class Writer
17
+ DEPRECATION_WARN_ONLY_ONCE = Datadog::Utils::OnlyOnce.new
18
+
15
19
  attr_reader \
16
20
  :priority_sampler,
17
21
  :transport,
@@ -23,6 +27,8 @@ module Datadog
23
27
  @flush_interval = options.fetch(:flush_interval, Workers::AsyncTransport::DEFAULT_FLUSH_INTERVAL)
24
28
  transport_options = options.fetch(:transport_options, {})
25
29
 
30
+ transport_options[:agent_settings] = options[:agent_settings] if options.key?(:agent_settings)
31
+
26
32
  # priority sampling
27
33
  if options[:priority_sampler]
28
34
  @priority_sampler = options[:priority_sampler]
@@ -31,7 +37,7 @@ module Datadog
31
37
 
32
38
  # transport and buffers
33
39
  @transport = options.fetch(:transport) do
34
- Transport::HTTP.default(transport_options)
40
+ Transport::HTTP.default(**transport_options)
35
41
  end
36
42
 
37
43
  # handles the thread creation after an eventual fork
@@ -56,6 +62,7 @@ module Datadog
56
62
 
57
63
  pid = Process.pid
58
64
  return if @worker && pid == @pid
65
+
59
66
  @pid = pid
60
67
 
61
68
  start_worker
@@ -90,6 +97,7 @@ module Datadog
90
97
  @stopped = true
91
98
 
92
99
  return if @worker.nil?
100
+
93
101
  @worker.stop
94
102
  @worker = nil
95
103
 
@@ -125,7 +133,7 @@ module Datadog
125
133
  # enqueue the trace for submission to the API
126
134
  def write(trace, services = nil)
127
135
  unless services.nil?
128
- Datadog::Patcher.do_once('Writer#write') do
136
+ DEPRECATION_WARN_ONLY_ONCE.run do
129
137
  Datadog.logger.warn(%(
130
138
  write: Writing services has been deprecated and no longer need to be provided.
131
139
  write(traces, services) can be updated to write(traces)
@@ -174,9 +182,7 @@ module Datadog
174
182
  next if trace.first.nil?
175
183
 
176
184
  hostname = Datadog::Runtime::Socket.hostname
177
- unless hostname.nil? || hostname.empty?
178
- trace.first.set_tag(Ext::NET::TAG_HOSTNAME, hostname)
179
- end
185
+ trace.first.set_tag(Ext::NET::TAG_HOSTNAME, hostname) unless hostname.nil? || hostname.empty?
180
186
  end
181
187
  end
182
188
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ddtrace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.44.0
4
+ version: 0.49.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Datadog, Inc.
8
- autorequire:
9
- bindir: exe
8
+ autorequire:
9
+ bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-06 00:00:00.000000000 Z
11
+ date: 2021-05-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: msgpack
@@ -25,390 +25,27 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: dogstatsd-ruby
28
+ name: ffi
29
29
  requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 3.3.0
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: 3.3.0
41
- - !ruby/object:Gem::Dependency
42
- name: opentracing
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: 0.4.1
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: 0.4.1
55
- - !ruby/object:Gem::Dependency
56
- name: concurrent-ruby
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: rake
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '10.5'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '10.5'
83
- - !ruby/object:Gem::Dependency
84
- name: rubocop
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - '='
88
- - !ruby/object:Gem::Version
89
- version: 0.49.1
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - '='
95
- - !ruby/object:Gem::Version
96
- version: 0.49.1
97
- - !ruby/object:Gem::Dependency
98
- name: rspec
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '3.0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '3.0'
111
- - !ruby/object:Gem::Dependency
112
- name: rspec-collection_matchers
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '1.1'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: '1.1'
125
- - !ruby/object:Gem::Dependency
126
- name: ruby-prof
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: '1.4'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: '1.4'
139
- - !ruby/object:Gem::Dependency
140
- name: minitest
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - '='
144
- - !ruby/object:Gem::Version
145
- version: 5.10.1
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - '='
151
- - !ruby/object:Gem::Version
152
- version: 5.10.1
153
- - !ruby/object:Gem::Dependency
154
- name: minitest-around
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - '='
158
- - !ruby/object:Gem::Version
159
- version: 0.5.0
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - '='
165
- - !ruby/object:Gem::Version
166
- version: 0.5.0
167
- - !ruby/object:Gem::Dependency
168
- name: minitest-stub_any_instance
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - '='
172
- - !ruby/object:Gem::Version
173
- version: 1.0.2
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - '='
179
- - !ruby/object:Gem::Version
180
- version: 1.0.2
181
- - !ruby/object:Gem::Dependency
182
- name: pimpmychangelog
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: 0.1.2
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - ">="
193
- - !ruby/object:Gem::Version
194
- version: 0.1.2
195
- - !ruby/object:Gem::Dependency
196
- name: appraisal
197
- requirement: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - "~>"
200
- - !ruby/object:Gem::Version
201
- version: '2.2'
202
- type: :development
203
- prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
205
- requirements:
206
- - - "~>"
207
- - !ruby/object:Gem::Version
208
- version: '2.2'
209
- - !ruby/object:Gem::Dependency
210
- name: yard
211
- requirement: !ruby/object:Gem::Requirement
212
- requirements:
213
- - - "~>"
214
- - !ruby/object:Gem::Version
215
- version: '0.9'
216
- type: :development
217
- prerelease: false
218
- version_requirements: !ruby/object:Gem::Requirement
219
30
  requirements:
220
31
  - - "~>"
221
32
  - !ruby/object:Gem::Version
222
- version: '0.9'
223
- - !ruby/object:Gem::Dependency
224
- name: webmock
225
- requirement: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - ">="
228
- - !ruby/object:Gem::Version
229
- version: 3.10.0
230
- type: :development
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- requirements:
234
- - - ">="
235
- - !ruby/object:Gem::Version
236
- version: 3.10.0
237
- - !ruby/object:Gem::Dependency
238
- name: builder
239
- requirement: !ruby/object:Gem::Requirement
240
- requirements:
241
- - - ">="
242
- - !ruby/object:Gem::Version
243
- version: '0'
244
- type: :development
245
- prerelease: false
246
- version_requirements: !ruby/object:Gem::Requirement
247
- requirements:
248
- - - ">="
249
- - !ruby/object:Gem::Version
250
- version: '0'
251
- - !ruby/object:Gem::Dependency
252
- name: climate_control
253
- requirement: !ruby/object:Gem::Requirement
254
- requirements:
255
- - - "~>"
256
- - !ruby/object:Gem::Version
257
- version: 0.2.0
258
- type: :development
259
- prerelease: false
260
- version_requirements: !ruby/object:Gem::Requirement
261
- requirements:
262
- - - "~>"
263
- - !ruby/object:Gem::Version
264
- version: 0.2.0
265
- - !ruby/object:Gem::Dependency
266
- name: addressable
267
- requirement: !ruby/object:Gem::Requirement
268
- requirements:
269
- - - "~>"
270
- - !ruby/object:Gem::Version
271
- version: 2.4.0
272
- type: :development
273
- prerelease: false
274
- version_requirements: !ruby/object:Gem::Requirement
275
- requirements:
276
- - - "~>"
277
- - !ruby/object:Gem::Version
278
- version: 2.4.0
279
- - !ruby/object:Gem::Dependency
280
- name: benchmark-ips
281
- requirement: !ruby/object:Gem::Requirement
282
- requirements:
283
- - - "~>"
284
- - !ruby/object:Gem::Version
285
- version: '2.8'
286
- type: :development
287
- prerelease: false
288
- version_requirements: !ruby/object:Gem::Requirement
289
- requirements:
290
- - - "~>"
291
- - !ruby/object:Gem::Version
292
- version: '2.8'
293
- - !ruby/object:Gem::Dependency
294
- name: benchmark-memory
295
- requirement: !ruby/object:Gem::Requirement
296
- requirements:
297
- - - "~>"
298
- - !ruby/object:Gem::Version
299
- version: '0.1'
300
- type: :development
301
- prerelease: false
302
- version_requirements: !ruby/object:Gem::Requirement
303
- requirements:
304
- - - "~>"
305
- - !ruby/object:Gem::Version
306
- version: '0.1'
307
- - !ruby/object:Gem::Dependency
308
- name: memory_profiler
309
- requirement: !ruby/object:Gem::Requirement
310
- requirements:
311
- - - "~>"
312
- - !ruby/object:Gem::Version
313
- version: '0.9'
314
- type: :development
315
- prerelease: false
316
- version_requirements: !ruby/object:Gem::Requirement
317
- requirements:
318
- - - "~>"
319
- - !ruby/object:Gem::Version
320
- version: '0.9'
321
- - !ruby/object:Gem::Dependency
322
- name: redcarpet
323
- requirement: !ruby/object:Gem::Requirement
324
- requirements:
325
- - - "~>"
326
- - !ruby/object:Gem::Version
327
- version: '3.4'
328
- type: :development
329
- prerelease: false
330
- version_requirements: !ruby/object:Gem::Requirement
331
- requirements:
332
- - - "~>"
333
- - !ruby/object:Gem::Version
334
- version: '3.4'
335
- - !ruby/object:Gem::Dependency
336
- name: pry
337
- requirement: !ruby/object:Gem::Requirement
338
- requirements:
339
- - - "~>"
340
- - !ruby/object:Gem::Version
341
- version: 0.12.2
342
- type: :development
343
- prerelease: false
344
- version_requirements: !ruby/object:Gem::Requirement
345
- requirements:
346
- - - "~>"
347
- - !ruby/object:Gem::Version
348
- version: 0.12.2
349
- - !ruby/object:Gem::Dependency
350
- name: pry-nav
351
- requirement: !ruby/object:Gem::Requirement
352
- requirements:
353
- - - "~>"
354
- - !ruby/object:Gem::Version
355
- version: 0.3.0
356
- type: :development
357
- prerelease: false
358
- version_requirements: !ruby/object:Gem::Requirement
359
- requirements:
360
- - - "~>"
361
- - !ruby/object:Gem::Version
362
- version: 0.3.0
363
- - !ruby/object:Gem::Dependency
364
- name: pry-stack_explorer
365
- requirement: !ruby/object:Gem::Requirement
366
- requirements:
367
- - - "~>"
368
- - !ruby/object:Gem::Version
369
- version: 0.4.9
370
- type: :development
371
- prerelease: false
372
- version_requirements: !ruby/object:Gem::Requirement
373
- requirements:
374
- - - "~>"
375
- - !ruby/object:Gem::Version
376
- version: 0.4.9
377
- - !ruby/object:Gem::Dependency
378
- name: simplecov
379
- requirement: !ruby/object:Gem::Requirement
380
- requirements:
381
- - - "~>"
382
- - !ruby/object:Gem::Version
383
- version: '0.17'
384
- type: :development
385
- prerelease: false
386
- version_requirements: !ruby/object:Gem::Requirement
387
- requirements:
388
- - - "~>"
389
- - !ruby/object:Gem::Version
390
- version: '0.17'
391
- - !ruby/object:Gem::Dependency
392
- name: warning
393
- requirement: !ruby/object:Gem::Requirement
394
- requirements:
395
- - - "~>"
396
- - !ruby/object:Gem::Version
397
- version: '1'
398
- type: :development
33
+ version: '1.0'
34
+ type: :runtime
399
35
  prerelease: false
400
36
  version_requirements: !ruby/object:Gem::Requirement
401
37
  requirements:
402
38
  - - "~>"
403
39
  - !ruby/object:Gem::Version
404
- version: '1'
40
+ version: '1.0'
405
41
  description: |
406
42
  ddtrace is Datadog’s tracing client for Ruby. It is used to trace requests
407
43
  as they flow across web servers, databases and microservices so that developers
408
44
  have great visiblity into bottlenecks and troublesome requests.
409
45
  email:
410
46
  - dev@datadoghq.com
411
- executables: []
47
+ executables:
48
+ - ddtracerb
412
49
  extensions: []
413
50
  extra_rdoc_files: []
414
51
  files:
@@ -422,7 +59,9 @@ files:
422
59
  - ".circleci/images/primary/Dockerfile-2.6.4"
423
60
  - ".circleci/images/primary/Dockerfile-2.7.0"
424
61
  - ".circleci/images/primary/Dockerfile-3.0.0"
425
- - ".circleci/images/primary/Dockerfile-jruby-9.2"
62
+ - ".circleci/images/primary/Dockerfile-jruby-9.2-latest"
63
+ - ".circleci/images/primary/Dockerfile-jruby-9.2.0.0"
64
+ - ".circleci/images/primary/Dockerfile-truffleruby-21.0.0"
426
65
  - ".dockerignore"
427
66
  - ".env"
428
67
  - ".github/CODEOWNERS"
@@ -432,6 +71,7 @@ files:
432
71
  - ".gitlab-ci.yml"
433
72
  - ".rspec"
434
73
  - ".rubocop.yml"
74
+ - ".rubocop_todo.yml"
435
75
  - ".simplecov"
436
76
  - ".yardopts"
437
77
  - Appraisals
@@ -439,26 +79,539 @@ files:
439
79
  - CONTRIBUTING.md
440
80
  - Gemfile
441
81
  - LICENSE
82
+ - LICENSE-3rdparty.csv
442
83
  - LICENSE.Apache
443
84
  - LICENSE.BSD3
444
85
  - NOTICE
445
86
  - README.md
446
87
  - Rakefile
447
88
  - benchmarks/postgres_database.yml
89
+ - benchmarks/profiler_sample_loop.rb
448
90
  - benchmarks/sidekiq_test.rb
91
+ - bin/ddtracerb
449
92
  - ddtrace.gemspec
450
93
  - docker-compose.yml
451
94
  - docs/DevelopmentGuide.md
452
95
  - docs/GettingStarted.md
96
+ - docs/ProfilingDevelopment.md
97
+ - gemfiles/jruby_9.2.0.0_contrib.gemfile
98
+ - gemfiles/jruby_9.2.0.0_contrib.gemfile.lock
99
+ - gemfiles/jruby_9.2.0.0_contrib_old.gemfile
100
+ - gemfiles/jruby_9.2.0.0_contrib_old.gemfile.lock
101
+ - gemfiles/jruby_9.2.0.0_core_old.gemfile
102
+ - gemfiles/jruby_9.2.0.0_core_old.gemfile.lock
103
+ - gemfiles/jruby_9.2.0.0_cucumber3.gemfile
104
+ - gemfiles/jruby_9.2.0.0_cucumber3.gemfile.lock
105
+ - gemfiles/jruby_9.2.0.0_cucumber4.gemfile
106
+ - gemfiles/jruby_9.2.0.0_cucumber4.gemfile.lock
107
+ - gemfiles/jruby_9.2.0.0_cucumber5.gemfile
108
+ - gemfiles/jruby_9.2.0.0_cucumber5.gemfile.lock
109
+ - gemfiles/jruby_9.2.0.0_rails5_mysql2.gemfile
110
+ - gemfiles/jruby_9.2.0.0_rails5_mysql2.gemfile.lock
111
+ - gemfiles/jruby_9.2.0.0_rails5_postgres.gemfile
112
+ - gemfiles/jruby_9.2.0.0_rails5_postgres.gemfile.lock
113
+ - gemfiles/jruby_9.2.0.0_rails5_postgres_redis.gemfile
114
+ - gemfiles/jruby_9.2.0.0_rails5_postgres_redis.gemfile.lock
115
+ - gemfiles/jruby_9.2.0.0_rails5_postgres_redis_activesupport.gemfile
116
+ - gemfiles/jruby_9.2.0.0_rails5_postgres_redis_activesupport.gemfile.lock
117
+ - gemfiles/jruby_9.2.0.0_rails5_postgres_sidekiq.gemfile
118
+ - gemfiles/jruby_9.2.0.0_rails5_postgres_sidekiq.gemfile.lock
119
+ - gemfiles/jruby_9.2.0.0_rails61_mysql2.gemfile
120
+ - gemfiles/jruby_9.2.0.0_rails61_mysql2.gemfile.lock
121
+ - gemfiles/jruby_9.2.0.0_rails61_postgres.gemfile
122
+ - gemfiles/jruby_9.2.0.0_rails61_postgres.gemfile.lock
123
+ - gemfiles/jruby_9.2.0.0_rails61_postgres_redis.gemfile
124
+ - gemfiles/jruby_9.2.0.0_rails61_postgres_redis.gemfile.lock
125
+ - gemfiles/jruby_9.2.0.0_rails61_postgres_sidekiq.gemfile
126
+ - gemfiles/jruby_9.2.0.0_rails61_postgres_sidekiq.gemfile.lock
127
+ - gemfiles/jruby_9.2.0.0_rails6_mysql2.gemfile
128
+ - gemfiles/jruby_9.2.0.0_rails6_mysql2.gemfile.lock
129
+ - gemfiles/jruby_9.2.0.0_rails6_postgres.gemfile
130
+ - gemfiles/jruby_9.2.0.0_rails6_postgres.gemfile.lock
131
+ - gemfiles/jruby_9.2.0.0_rails6_postgres_redis.gemfile
132
+ - gemfiles/jruby_9.2.0.0_rails6_postgres_redis.gemfile.lock
133
+ - gemfiles/jruby_9.2.0.0_rails6_postgres_redis_activesupport.gemfile
134
+ - gemfiles/jruby_9.2.0.0_rails6_postgres_redis_activesupport.gemfile.lock
135
+ - gemfiles/jruby_9.2.0.0_rails6_postgres_sidekiq.gemfile
136
+ - gemfiles/jruby_9.2.0.0_rails6_postgres_sidekiq.gemfile.lock
137
+ - gemfiles/jruby_9.2.0.0_resque2_redis3.gemfile
138
+ - gemfiles/jruby_9.2.0.0_resque2_redis3.gemfile.lock
139
+ - gemfiles/jruby_9.2.0.0_resque2_redis4.gemfile
140
+ - gemfiles/jruby_9.2.0.0_resque2_redis4.gemfile.lock
141
+ - gemfiles/jruby_9.2.11.1_contrib.gemfile
142
+ - gemfiles/jruby_9.2.11.1_contrib.gemfile.lock
143
+ - gemfiles/jruby_9.2.11.1_contrib_old.gemfile
144
+ - gemfiles/jruby_9.2.11.1_contrib_old.gemfile.lock
145
+ - gemfiles/jruby_9.2.11.1_core_old.gemfile
146
+ - gemfiles/jruby_9.2.11.1_core_old.gemfile.lock
147
+ - gemfiles/jruby_9.2.11.1_cucumber3.gemfile
148
+ - gemfiles/jruby_9.2.11.1_cucumber3.gemfile.lock
149
+ - gemfiles/jruby_9.2.11.1_cucumber4.gemfile
150
+ - gemfiles/jruby_9.2.11.1_cucumber4.gemfile.lock
151
+ - gemfiles/jruby_9.2.11.1_cucumber5.gemfile
152
+ - gemfiles/jruby_9.2.11.1_cucumber5.gemfile.lock
153
+ - gemfiles/jruby_9.2.11.1_rails5_mysql2.gemfile
154
+ - gemfiles/jruby_9.2.11.1_rails5_mysql2.gemfile.lock
155
+ - gemfiles/jruby_9.2.11.1_rails5_postgres.gemfile
156
+ - gemfiles/jruby_9.2.11.1_rails5_postgres.gemfile.lock
157
+ - gemfiles/jruby_9.2.11.1_rails5_postgres_redis.gemfile
158
+ - gemfiles/jruby_9.2.11.1_rails5_postgres_redis.gemfile.lock
159
+ - gemfiles/jruby_9.2.11.1_rails5_postgres_redis_activesupport.gemfile
160
+ - gemfiles/jruby_9.2.11.1_rails5_postgres_redis_activesupport.gemfile.lock
161
+ - gemfiles/jruby_9.2.11.1_rails5_postgres_sidekiq.gemfile
162
+ - gemfiles/jruby_9.2.11.1_rails5_postgres_sidekiq.gemfile.lock
163
+ - gemfiles/jruby_9.2.11.1_rails61_mysql2.gemfile
164
+ - gemfiles/jruby_9.2.11.1_rails61_mysql2.gemfile.lock
165
+ - gemfiles/jruby_9.2.11.1_rails61_postgres.gemfile
166
+ - gemfiles/jruby_9.2.11.1_rails61_postgres.gemfile.lock
167
+ - gemfiles/jruby_9.2.11.1_rails61_postgres_redis.gemfile
168
+ - gemfiles/jruby_9.2.11.1_rails61_postgres_redis.gemfile.lock
169
+ - gemfiles/jruby_9.2.11.1_rails61_postgres_sidekiq.gemfile
170
+ - gemfiles/jruby_9.2.11.1_rails61_postgres_sidekiq.gemfile.lock
171
+ - gemfiles/jruby_9.2.11.1_rails6_mysql2.gemfile
172
+ - gemfiles/jruby_9.2.11.1_rails6_mysql2.gemfile.lock
173
+ - gemfiles/jruby_9.2.11.1_rails6_postgres.gemfile
174
+ - gemfiles/jruby_9.2.11.1_rails6_postgres.gemfile.lock
175
+ - gemfiles/jruby_9.2.11.1_rails6_postgres_redis.gemfile
176
+ - gemfiles/jruby_9.2.11.1_rails6_postgres_redis.gemfile.lock
177
+ - gemfiles/jruby_9.2.11.1_rails6_postgres_redis_activesupport.gemfile
178
+ - gemfiles/jruby_9.2.11.1_rails6_postgres_redis_activesupport.gemfile.lock
179
+ - gemfiles/jruby_9.2.11.1_rails6_postgres_sidekiq.gemfile
180
+ - gemfiles/jruby_9.2.11.1_rails6_postgres_sidekiq.gemfile.lock
181
+ - gemfiles/jruby_9.2.11.1_resque2_redis3.gemfile
182
+ - gemfiles/jruby_9.2.11.1_resque2_redis3.gemfile.lock
183
+ - gemfiles/jruby_9.2.11.1_resque2_redis4.gemfile
184
+ - gemfiles/jruby_9.2.11.1_resque2_redis4.gemfile.lock
185
+ - gemfiles/ruby_2.0.0_contrib_old.gemfile
186
+ - gemfiles/ruby_2.0.0_contrib_old.gemfile.lock
187
+ - gemfiles/ruby_2.0.0_core_old.gemfile
188
+ - gemfiles/ruby_2.0.0_core_old.gemfile.lock
189
+ - gemfiles/ruby_2.0.0_rails30_postgres.gemfile
190
+ - gemfiles/ruby_2.0.0_rails30_postgres.gemfile.lock
191
+ - gemfiles/ruby_2.0.0_rails30_postgres_sidekiq.gemfile
192
+ - gemfiles/ruby_2.0.0_rails30_postgres_sidekiq.gemfile.lock
193
+ - gemfiles/ruby_2.0.0_rails32_mysql2.gemfile
194
+ - gemfiles/ruby_2.0.0_rails32_mysql2.gemfile.lock
195
+ - gemfiles/ruby_2.0.0_rails32_postgres.gemfile
196
+ - gemfiles/ruby_2.0.0_rails32_postgres.gemfile.lock
197
+ - gemfiles/ruby_2.0.0_rails32_postgres_redis.gemfile
198
+ - gemfiles/ruby_2.0.0_rails32_postgres_redis.gemfile.lock
199
+ - gemfiles/ruby_2.0.0_rails32_postgres_sidekiq.gemfile
200
+ - gemfiles/ruby_2.0.0_rails32_postgres_sidekiq.gemfile.lock
201
+ - gemfiles/ruby_2.1.10_contrib_old.gemfile
202
+ - gemfiles/ruby_2.1.10_contrib_old.gemfile.lock
203
+ - gemfiles/ruby_2.1.10_core_old.gemfile
204
+ - gemfiles/ruby_2.1.10_core_old.gemfile.lock
205
+ - gemfiles/ruby_2.1.10_rails30_postgres.gemfile
206
+ - gemfiles/ruby_2.1.10_rails30_postgres.gemfile.lock
207
+ - gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile
208
+ - gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile.lock
209
+ - gemfiles/ruby_2.1.10_rails32_mysql2.gemfile
210
+ - gemfiles/ruby_2.1.10_rails32_mysql2.gemfile.lock
211
+ - gemfiles/ruby_2.1.10_rails32_postgres.gemfile
212
+ - gemfiles/ruby_2.1.10_rails32_postgres.gemfile.lock
213
+ - gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile
214
+ - gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile.lock
215
+ - gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile
216
+ - gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile.lock
217
+ - gemfiles/ruby_2.1.10_rails4_mysql2.gemfile
218
+ - gemfiles/ruby_2.1.10_rails4_mysql2.gemfile.lock
219
+ - gemfiles/ruby_2.1.10_rails4_postgres.gemfile
220
+ - gemfiles/ruby_2.1.10_rails4_postgres.gemfile.lock
221
+ - gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile
222
+ - gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile.lock
223
+ - gemfiles/ruby_2.2.10_contrib.gemfile
224
+ - gemfiles/ruby_2.2.10_contrib.gemfile.lock
225
+ - gemfiles/ruby_2.2.10_core_old.gemfile
226
+ - gemfiles/ruby_2.2.10_core_old.gemfile.lock
227
+ - gemfiles/ruby_2.2.10_rails30_postgres.gemfile
228
+ - gemfiles/ruby_2.2.10_rails30_postgres.gemfile.lock
229
+ - gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile
230
+ - gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile.lock
231
+ - gemfiles/ruby_2.2.10_rails32_mysql2.gemfile
232
+ - gemfiles/ruby_2.2.10_rails32_mysql2.gemfile.lock
233
+ - gemfiles/ruby_2.2.10_rails32_postgres.gemfile
234
+ - gemfiles/ruby_2.2.10_rails32_postgres.gemfile.lock
235
+ - gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile
236
+ - gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile.lock
237
+ - gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile
238
+ - gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile.lock
239
+ - gemfiles/ruby_2.2.10_rails4_mysql2.gemfile
240
+ - gemfiles/ruby_2.2.10_rails4_mysql2.gemfile.lock
241
+ - gemfiles/ruby_2.2.10_rails4_postgres.gemfile
242
+ - gemfiles/ruby_2.2.10_rails4_postgres.gemfile.lock
243
+ - gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile
244
+ - gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile.lock
245
+ - gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile
246
+ - gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile.lock
247
+ - gemfiles/ruby_2.2.10_rails5_mysql2.gemfile
248
+ - gemfiles/ruby_2.2.10_rails5_mysql2.gemfile.lock
249
+ - gemfiles/ruby_2.2.10_rails5_postgres.gemfile
250
+ - gemfiles/ruby_2.2.10_rails5_postgres.gemfile.lock
251
+ - gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile
252
+ - gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile.lock
253
+ - gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile
254
+ - gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile.lock
255
+ - gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile
256
+ - gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile.lock
257
+ - gemfiles/ruby_2.3.8_contrib.gemfile
258
+ - gemfiles/ruby_2.3.8_contrib.gemfile.lock
259
+ - gemfiles/ruby_2.3.8_contrib_old.gemfile
260
+ - gemfiles/ruby_2.3.8_contrib_old.gemfile.lock
261
+ - gemfiles/ruby_2.3.8_core_old.gemfile
262
+ - gemfiles/ruby_2.3.8_core_old.gemfile.lock
263
+ - gemfiles/ruby_2.3.8_cucumber3.gemfile
264
+ - gemfiles/ruby_2.3.8_cucumber3.gemfile.lock
265
+ - gemfiles/ruby_2.3.8_cucumber4.gemfile
266
+ - gemfiles/ruby_2.3.8_cucumber4.gemfile.lock
267
+ - gemfiles/ruby_2.3.8_rails30_postgres.gemfile
268
+ - gemfiles/ruby_2.3.8_rails30_postgres.gemfile.lock
269
+ - gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile
270
+ - gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile.lock
271
+ - gemfiles/ruby_2.3.8_rails32_mysql2.gemfile
272
+ - gemfiles/ruby_2.3.8_rails32_mysql2.gemfile.lock
273
+ - gemfiles/ruby_2.3.8_rails32_postgres.gemfile
274
+ - gemfiles/ruby_2.3.8_rails32_postgres.gemfile.lock
275
+ - gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile
276
+ - gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile.lock
277
+ - gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile
278
+ - gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile.lock
279
+ - gemfiles/ruby_2.3.8_rails4_mysql2.gemfile
280
+ - gemfiles/ruby_2.3.8_rails4_mysql2.gemfile.lock
281
+ - gemfiles/ruby_2.3.8_rails4_postgres.gemfile
282
+ - gemfiles/ruby_2.3.8_rails4_postgres.gemfile.lock
283
+ - gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile
284
+ - gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile.lock
285
+ - gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile
286
+ - gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile.lock
287
+ - gemfiles/ruby_2.3.8_rails5_mysql2.gemfile
288
+ - gemfiles/ruby_2.3.8_rails5_mysql2.gemfile.lock
289
+ - gemfiles/ruby_2.3.8_rails5_postgres.gemfile
290
+ - gemfiles/ruby_2.3.8_rails5_postgres.gemfile.lock
291
+ - gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile
292
+ - gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile.lock
293
+ - gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile
294
+ - gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile.lock
295
+ - gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile
296
+ - gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile.lock
297
+ - gemfiles/ruby_2.3.8_resque2_redis3.gemfile
298
+ - gemfiles/ruby_2.3.8_resque2_redis3.gemfile.lock
299
+ - gemfiles/ruby_2.3.8_resque2_redis4.gemfile
300
+ - gemfiles/ruby_2.3.8_resque2_redis4.gemfile.lock
301
+ - gemfiles/ruby_2.4.6_contrib.gemfile
302
+ - gemfiles/ruby_2.4.6_contrib.gemfile.lock
303
+ - gemfiles/ruby_2.4.6_contrib_old.gemfile
304
+ - gemfiles/ruby_2.4.6_contrib_old.gemfile.lock
305
+ - gemfiles/ruby_2.4.6_core_old.gemfile
306
+ - gemfiles/ruby_2.4.6_core_old.gemfile.lock
307
+ - gemfiles/ruby_2.4.6_cucumber3.gemfile
308
+ - gemfiles/ruby_2.4.6_cucumber3.gemfile.lock
309
+ - gemfiles/ruby_2.4.6_cucumber4.gemfile
310
+ - gemfiles/ruby_2.4.6_cucumber4.gemfile.lock
311
+ - gemfiles/ruby_2.4.6_rails5_mysql2.gemfile
312
+ - gemfiles/ruby_2.4.6_rails5_mysql2.gemfile.lock
313
+ - gemfiles/ruby_2.4.6_rails5_postgres.gemfile
314
+ - gemfiles/ruby_2.4.6_rails5_postgres.gemfile.lock
315
+ - gemfiles/ruby_2.4.6_rails5_postgres_redis.gemfile
316
+ - gemfiles/ruby_2.4.6_rails5_postgres_redis.gemfile.lock
317
+ - gemfiles/ruby_2.4.6_rails5_postgres_redis_activesupport.gemfile
318
+ - gemfiles/ruby_2.4.6_rails5_postgres_redis_activesupport.gemfile.lock
319
+ - gemfiles/ruby_2.4.6_rails5_postgres_sidekiq.gemfile
320
+ - gemfiles/ruby_2.4.6_rails5_postgres_sidekiq.gemfile.lock
321
+ - gemfiles/ruby_2.4.6_resque2_redis3.gemfile
322
+ - gemfiles/ruby_2.4.6_resque2_redis3.gemfile.lock
323
+ - gemfiles/ruby_2.4.6_resque2_redis4.gemfile
324
+ - gemfiles/ruby_2.4.6_resque2_redis4.gemfile.lock
325
+ - gemfiles/ruby_2.5.6_contrib.gemfile
326
+ - gemfiles/ruby_2.5.6_contrib.gemfile.lock
327
+ - gemfiles/ruby_2.5.6_contrib_old.gemfile
328
+ - gemfiles/ruby_2.5.6_contrib_old.gemfile.lock
329
+ - gemfiles/ruby_2.5.6_core_old.gemfile
330
+ - gemfiles/ruby_2.5.6_core_old.gemfile.lock
331
+ - gemfiles/ruby_2.5.6_cucumber3.gemfile
332
+ - gemfiles/ruby_2.5.6_cucumber3.gemfile.lock
333
+ - gemfiles/ruby_2.5.6_cucumber4.gemfile
334
+ - gemfiles/ruby_2.5.6_cucumber4.gemfile.lock
335
+ - gemfiles/ruby_2.5.6_cucumber5.gemfile
336
+ - gemfiles/ruby_2.5.6_cucumber5.gemfile.lock
337
+ - gemfiles/ruby_2.5.6_rails5_mysql2.gemfile
338
+ - gemfiles/ruby_2.5.6_rails5_mysql2.gemfile.lock
339
+ - gemfiles/ruby_2.5.6_rails5_postgres.gemfile
340
+ - gemfiles/ruby_2.5.6_rails5_postgres.gemfile.lock
341
+ - gemfiles/ruby_2.5.6_rails5_postgres_redis.gemfile
342
+ - gemfiles/ruby_2.5.6_rails5_postgres_redis.gemfile.lock
343
+ - gemfiles/ruby_2.5.6_rails5_postgres_redis_activesupport.gemfile
344
+ - gemfiles/ruby_2.5.6_rails5_postgres_redis_activesupport.gemfile.lock
345
+ - gemfiles/ruby_2.5.6_rails5_postgres_sidekiq.gemfile
346
+ - gemfiles/ruby_2.5.6_rails5_postgres_sidekiq.gemfile.lock
347
+ - gemfiles/ruby_2.5.6_rails61_mysql2.gemfile
348
+ - gemfiles/ruby_2.5.6_rails61_mysql2.gemfile.lock
349
+ - gemfiles/ruby_2.5.6_rails61_postgres.gemfile
350
+ - gemfiles/ruby_2.5.6_rails61_postgres.gemfile.lock
351
+ - gemfiles/ruby_2.5.6_rails61_postgres_redis.gemfile
352
+ - gemfiles/ruby_2.5.6_rails61_postgres_redis.gemfile.lock
353
+ - gemfiles/ruby_2.5.6_rails61_postgres_sidekiq.gemfile
354
+ - gemfiles/ruby_2.5.6_rails61_postgres_sidekiq.gemfile.lock
355
+ - gemfiles/ruby_2.5.6_rails6_mysql2.gemfile
356
+ - gemfiles/ruby_2.5.6_rails6_mysql2.gemfile.lock
357
+ - gemfiles/ruby_2.5.6_rails6_postgres.gemfile
358
+ - gemfiles/ruby_2.5.6_rails6_postgres.gemfile.lock
359
+ - gemfiles/ruby_2.5.6_rails6_postgres_redis.gemfile
360
+ - gemfiles/ruby_2.5.6_rails6_postgres_redis.gemfile.lock
361
+ - gemfiles/ruby_2.5.6_rails6_postgres_redis_activesupport.gemfile
362
+ - gemfiles/ruby_2.5.6_rails6_postgres_redis_activesupport.gemfile.lock
363
+ - gemfiles/ruby_2.5.6_rails6_postgres_sidekiq.gemfile
364
+ - gemfiles/ruby_2.5.6_rails6_postgres_sidekiq.gemfile.lock
365
+ - gemfiles/ruby_2.5.6_resque2_redis3.gemfile
366
+ - gemfiles/ruby_2.5.6_resque2_redis3.gemfile.lock
367
+ - gemfiles/ruby_2.5.6_resque2_redis4.gemfile
368
+ - gemfiles/ruby_2.5.6_resque2_redis4.gemfile.lock
369
+ - gemfiles/ruby_2.6.4_contrib.gemfile
370
+ - gemfiles/ruby_2.6.4_contrib.gemfile.lock
371
+ - gemfiles/ruby_2.6.4_contrib_old.gemfile
372
+ - gemfiles/ruby_2.6.4_contrib_old.gemfile.lock
373
+ - gemfiles/ruby_2.6.4_core_old.gemfile
374
+ - gemfiles/ruby_2.6.4_core_old.gemfile.lock
375
+ - gemfiles/ruby_2.6.4_cucumber3.gemfile
376
+ - gemfiles/ruby_2.6.4_cucumber3.gemfile.lock
377
+ - gemfiles/ruby_2.6.4_cucumber4.gemfile
378
+ - gemfiles/ruby_2.6.4_cucumber4.gemfile.lock
379
+ - gemfiles/ruby_2.6.4_cucumber5.gemfile
380
+ - gemfiles/ruby_2.6.4_cucumber5.gemfile.lock
381
+ - gemfiles/ruby_2.6.4_rails5_mysql2.gemfile
382
+ - gemfiles/ruby_2.6.4_rails5_mysql2.gemfile.lock
383
+ - gemfiles/ruby_2.6.4_rails5_postgres.gemfile
384
+ - gemfiles/ruby_2.6.4_rails5_postgres.gemfile.lock
385
+ - gemfiles/ruby_2.6.4_rails5_postgres_redis.gemfile
386
+ - gemfiles/ruby_2.6.4_rails5_postgres_redis.gemfile.lock
387
+ - gemfiles/ruby_2.6.4_rails5_postgres_redis_activesupport.gemfile
388
+ - gemfiles/ruby_2.6.4_rails5_postgres_redis_activesupport.gemfile.lock
389
+ - gemfiles/ruby_2.6.4_rails5_postgres_sidekiq.gemfile
390
+ - gemfiles/ruby_2.6.4_rails5_postgres_sidekiq.gemfile.lock
391
+ - gemfiles/ruby_2.6.4_rails61_mysql2.gemfile
392
+ - gemfiles/ruby_2.6.4_rails61_mysql2.gemfile.lock
393
+ - gemfiles/ruby_2.6.4_rails61_postgres.gemfile
394
+ - gemfiles/ruby_2.6.4_rails61_postgres.gemfile.lock
395
+ - gemfiles/ruby_2.6.4_rails61_postgres_redis.gemfile
396
+ - gemfiles/ruby_2.6.4_rails61_postgres_redis.gemfile.lock
397
+ - gemfiles/ruby_2.6.4_rails61_postgres_sidekiq.gemfile
398
+ - gemfiles/ruby_2.6.4_rails61_postgres_sidekiq.gemfile.lock
399
+ - gemfiles/ruby_2.6.4_rails6_mysql2.gemfile
400
+ - gemfiles/ruby_2.6.4_rails6_mysql2.gemfile.lock
401
+ - gemfiles/ruby_2.6.4_rails6_postgres.gemfile
402
+ - gemfiles/ruby_2.6.4_rails6_postgres.gemfile.lock
403
+ - gemfiles/ruby_2.6.4_rails6_postgres_redis.gemfile
404
+ - gemfiles/ruby_2.6.4_rails6_postgres_redis.gemfile.lock
405
+ - gemfiles/ruby_2.6.4_rails6_postgres_redis_activesupport.gemfile
406
+ - gemfiles/ruby_2.6.4_rails6_postgres_redis_activesupport.gemfile.lock
407
+ - gemfiles/ruby_2.6.4_rails6_postgres_sidekiq.gemfile
408
+ - gemfiles/ruby_2.6.4_rails6_postgres_sidekiq.gemfile.lock
409
+ - gemfiles/ruby_2.6.4_resque2_redis3.gemfile
410
+ - gemfiles/ruby_2.6.4_resque2_redis3.gemfile.lock
411
+ - gemfiles/ruby_2.6.4_resque2_redis4.gemfile
412
+ - gemfiles/ruby_2.6.4_resque2_redis4.gemfile.lock
413
+ - gemfiles/ruby_2.7.0_contrib.gemfile
414
+ - gemfiles/ruby_2.7.0_contrib.gemfile.lock
415
+ - gemfiles/ruby_2.7.0_contrib_old.gemfile
416
+ - gemfiles/ruby_2.7.0_contrib_old.gemfile.lock
417
+ - gemfiles/ruby_2.7.0_core_old.gemfile
418
+ - gemfiles/ruby_2.7.0_core_old.gemfile.lock
419
+ - gemfiles/ruby_2.7.0_cucumber3.gemfile
420
+ - gemfiles/ruby_2.7.0_cucumber3.gemfile.lock
421
+ - gemfiles/ruby_2.7.0_cucumber4.gemfile
422
+ - gemfiles/ruby_2.7.0_cucumber4.gemfile.lock
423
+ - gemfiles/ruby_2.7.0_cucumber5.gemfile
424
+ - gemfiles/ruby_2.7.0_cucumber5.gemfile.lock
425
+ - gemfiles/ruby_2.7.0_rails5_mysql2.gemfile
426
+ - gemfiles/ruby_2.7.0_rails5_mysql2.gemfile.lock
427
+ - gemfiles/ruby_2.7.0_rails5_postgres.gemfile
428
+ - gemfiles/ruby_2.7.0_rails5_postgres.gemfile.lock
429
+ - gemfiles/ruby_2.7.0_rails5_postgres_redis.gemfile
430
+ - gemfiles/ruby_2.7.0_rails5_postgres_redis.gemfile.lock
431
+ - gemfiles/ruby_2.7.0_rails5_postgres_redis_activesupport.gemfile
432
+ - gemfiles/ruby_2.7.0_rails5_postgres_redis_activesupport.gemfile.lock
433
+ - gemfiles/ruby_2.7.0_rails5_postgres_sidekiq.gemfile
434
+ - gemfiles/ruby_2.7.0_rails5_postgres_sidekiq.gemfile.lock
435
+ - gemfiles/ruby_2.7.0_rails61_mysql2.gemfile
436
+ - gemfiles/ruby_2.7.0_rails61_mysql2.gemfile.lock
437
+ - gemfiles/ruby_2.7.0_rails61_postgres.gemfile
438
+ - gemfiles/ruby_2.7.0_rails61_postgres.gemfile.lock
439
+ - gemfiles/ruby_2.7.0_rails61_postgres_redis.gemfile
440
+ - gemfiles/ruby_2.7.0_rails61_postgres_redis.gemfile.lock
441
+ - gemfiles/ruby_2.7.0_rails61_postgres_sidekiq.gemfile
442
+ - gemfiles/ruby_2.7.0_rails61_postgres_sidekiq.gemfile.lock
443
+ - gemfiles/ruby_2.7.0_rails6_mysql2.gemfile
444
+ - gemfiles/ruby_2.7.0_rails6_mysql2.gemfile.lock
445
+ - gemfiles/ruby_2.7.0_rails6_postgres.gemfile
446
+ - gemfiles/ruby_2.7.0_rails6_postgres.gemfile.lock
447
+ - gemfiles/ruby_2.7.0_rails6_postgres_redis.gemfile
448
+ - gemfiles/ruby_2.7.0_rails6_postgres_redis.gemfile.lock
449
+ - gemfiles/ruby_2.7.0_rails6_postgres_redis_activesupport.gemfile
450
+ - gemfiles/ruby_2.7.0_rails6_postgres_redis_activesupport.gemfile.lock
451
+ - gemfiles/ruby_2.7.0_rails6_postgres_sidekiq.gemfile
452
+ - gemfiles/ruby_2.7.0_rails6_postgres_sidekiq.gemfile.lock
453
+ - gemfiles/ruby_2.7.0_resque2_redis3.gemfile
454
+ - gemfiles/ruby_2.7.0_resque2_redis3.gemfile.lock
455
+ - gemfiles/ruby_2.7.0_resque2_redis4.gemfile
456
+ - gemfiles/ruby_2.7.0_resque2_redis4.gemfile.lock
457
+ - gemfiles/ruby_3.0.0_contrib.gemfile
458
+ - gemfiles/ruby_3.0.0_contrib.gemfile.lock
459
+ - gemfiles/ruby_3.0.0_core_old.gemfile
460
+ - gemfiles/ruby_3.0.0_core_old.gemfile.lock
461
+ - gemfiles/ruby_3.0.0_cucumber3.gemfile
462
+ - gemfiles/ruby_3.0.0_cucumber3.gemfile.lock
463
+ - gemfiles/ruby_3.0.0_cucumber4.gemfile
464
+ - gemfiles/ruby_3.0.0_cucumber4.gemfile.lock
465
+ - gemfiles/ruby_3.0.0_cucumber5.gemfile
466
+ - gemfiles/ruby_3.0.0_cucumber5.gemfile.lock
467
+ - gemfiles/ruby_3.0.0_rails61_mysql2.gemfile
468
+ - gemfiles/ruby_3.0.0_rails61_mysql2.gemfile.lock
469
+ - gemfiles/ruby_3.0.0_rails61_postgres.gemfile
470
+ - gemfiles/ruby_3.0.0_rails61_postgres.gemfile.lock
471
+ - gemfiles/ruby_3.0.0_rails61_postgres_redis.gemfile
472
+ - gemfiles/ruby_3.0.0_rails61_postgres_redis.gemfile.lock
473
+ - gemfiles/ruby_3.0.0_rails61_postgres_sidekiq.gemfile
474
+ - gemfiles/ruby_3.0.0_rails61_postgres_sidekiq.gemfile.lock
475
+ - gemfiles/ruby_3.0.0_resque2_redis3.gemfile
476
+ - gemfiles/ruby_3.0.0_resque2_redis3.gemfile.lock
477
+ - gemfiles/ruby_3.0.0_resque2_redis4.gemfile
478
+ - gemfiles/ruby_3.0.0_resque2_redis4.gemfile.lock
479
+ - integration/README.md
480
+ - integration/apps/rack/.dockerignore
481
+ - integration/apps/rack/.envrc.sample
482
+ - integration/apps/rack/.gitignore
483
+ - integration/apps/rack/.rspec
484
+ - integration/apps/rack/Dockerfile
485
+ - integration/apps/rack/Dockerfile-ci
486
+ - integration/apps/rack/Gemfile
487
+ - integration/apps/rack/README.md
488
+ - integration/apps/rack/app/acme.rb
489
+ - integration/apps/rack/app/datadog.rb
490
+ - integration/apps/rack/bin/run
491
+ - integration/apps/rack/bin/setup
492
+ - integration/apps/rack/bin/test
493
+ - integration/apps/rack/config.ru
494
+ - integration/apps/rack/config/puma.rb
495
+ - integration/apps/rack/config/unicorn.rb
496
+ - integration/apps/rack/docker-compose.ci.yml
497
+ - integration/apps/rack/docker-compose.yml
498
+ - integration/apps/rack/script/build-images
499
+ - integration/apps/rack/script/ci
500
+ - integration/apps/rack/spec/integration/basic_spec.rb
501
+ - integration/apps/rack/spec/spec_helper.rb
502
+ - integration/apps/rack/spec/support/integration_helper.rb
503
+ - integration/apps/rails-five/.dockerignore
504
+ - integration/apps/rails-five/.env
505
+ - integration/apps/rails-five/.envrc.sample
506
+ - integration/apps/rails-five/.gitignore
507
+ - integration/apps/rails-five/Dockerfile
508
+ - integration/apps/rails-five/Dockerfile-ci
509
+ - integration/apps/rails-five/Gemfile
510
+ - integration/apps/rails-five/README.md
511
+ - integration/apps/rails-five/Rakefile
512
+ - integration/apps/rails-five/app/channels/application_cable/channel.rb
513
+ - integration/apps/rails-five/app/channels/application_cable/connection.rb
514
+ - integration/apps/rails-five/app/controllers/application_controller.rb
515
+ - integration/apps/rails-five/app/controllers/basic_controller.rb
516
+ - integration/apps/rails-five/app/controllers/concerns/.keep
517
+ - integration/apps/rails-five/app/controllers/health_controller.rb
518
+ - integration/apps/rails-five/app/controllers/jobs_controller.rb
519
+ - integration/apps/rails-five/app/jobs/application_job.rb
520
+ - integration/apps/rails-five/app/jobs/test_job.rb
521
+ - integration/apps/rails-five/app/mailers/application_mailer.rb
522
+ - integration/apps/rails-five/app/models/application_record.rb
523
+ - integration/apps/rails-five/app/models/concerns/.keep
524
+ - integration/apps/rails-five/app/models/test.rb
525
+ - integration/apps/rails-five/app/views/layouts/mailer.html.erb
526
+ - integration/apps/rails-five/app/views/layouts/mailer.text.erb
527
+ - integration/apps/rails-five/bin/bundle
528
+ - integration/apps/rails-five/bin/rails
529
+ - integration/apps/rails-five/bin/rake
530
+ - integration/apps/rails-five/bin/run
531
+ - integration/apps/rails-five/bin/setup
532
+ - integration/apps/rails-five/bin/spring
533
+ - integration/apps/rails-five/bin/test
534
+ - integration/apps/rails-five/bin/update
535
+ - integration/apps/rails-five/config.ru
536
+ - integration/apps/rails-five/config/application.rb
537
+ - integration/apps/rails-five/config/boot.rb
538
+ - integration/apps/rails-five/config/cable.yml
539
+ - integration/apps/rails-five/config/credentials.yml.enc
540
+ - integration/apps/rails-five/config/database.yml
541
+ - integration/apps/rails-five/config/environment.rb
542
+ - integration/apps/rails-five/config/environments/development.rb
543
+ - integration/apps/rails-five/config/environments/production.rb
544
+ - integration/apps/rails-five/config/environments/test.rb
545
+ - integration/apps/rails-five/config/initializers/datadog.rb
546
+ - integration/apps/rails-five/config/initializers/filter_parameter_logging.rb
547
+ - integration/apps/rails-five/config/initializers/resque.rb
548
+ - integration/apps/rails-five/config/initializers/rollbar.rb
549
+ - integration/apps/rails-five/config/initializers/wrap_parameters.rb
550
+ - integration/apps/rails-five/config/locales/en.yml
551
+ - integration/apps/rails-five/config/puma.rb
552
+ - integration/apps/rails-five/config/routes.rb
553
+ - integration/apps/rails-five/config/spring.rb
554
+ - integration/apps/rails-five/config/unicorn.rb
555
+ - integration/apps/rails-five/db/migrate/20190927215052_create_tests.rb
556
+ - integration/apps/rails-five/db/schema.rb
557
+ - integration/apps/rails-five/db/seeds.rb
558
+ - integration/apps/rails-five/docker-compose.ci.yml
559
+ - integration/apps/rails-five/docker-compose.yml
560
+ - integration/apps/rails-five/lib/tasks/.keep
561
+ - integration/apps/rails-five/log/.keep
562
+ - integration/apps/rails-five/public/robots.txt
563
+ - integration/apps/rails-five/script/build-images
564
+ - integration/apps/rails-five/script/ci
565
+ - integration/apps/rails-five/spec/integration/basic_spec.rb
566
+ - integration/apps/rails-five/spec/spec_helper.rb
567
+ - integration/apps/rails-five/spec/support/integration_helper.rb
568
+ - integration/apps/rails-five/storage/.keep
569
+ - integration/apps/rails-five/tmp/.keep
570
+ - integration/apps/rails-five/vendor/.keep
571
+ - integration/apps/ruby/.dockerignore
572
+ - integration/apps/ruby/.envrc.sample
573
+ - integration/apps/ruby/.gitignore
574
+ - integration/apps/ruby/Dockerfile
575
+ - integration/apps/ruby/Dockerfile-ci
576
+ - integration/apps/ruby/Gemfile
577
+ - integration/apps/ruby/README.md
578
+ - integration/apps/ruby/agent.yaml
579
+ - integration/apps/ruby/app/datadog.rb
580
+ - integration/apps/ruby/app/fibonacci.rb
581
+ - integration/apps/ruby/bin/run
582
+ - integration/apps/ruby/bin/setup
583
+ - integration/apps/ruby/bin/test
584
+ - integration/apps/ruby/docker-compose.ci.yml
585
+ - integration/apps/ruby/docker-compose.yml
586
+ - integration/apps/ruby/script/build-images
587
+ - integration/apps/ruby/script/ci
588
+ - integration/images/agent/Dockerfile
589
+ - integration/images/agent/agent.yaml
590
+ - integration/images/include/datadog/analyzer.rb
591
+ - integration/images/include/datadog/demo_env.rb
592
+ - integration/images/include/http-health-check
593
+ - integration/images/ruby/2.0/Dockerfile
594
+ - integration/images/ruby/2.1/Dockerfile
595
+ - integration/images/ruby/2.2/Dockerfile
596
+ - integration/images/ruby/2.3/Dockerfile
597
+ - integration/images/ruby/2.4/Dockerfile
598
+ - integration/images/ruby/2.5/Dockerfile
599
+ - integration/images/ruby/2.6/Dockerfile
600
+ - integration/images/ruby/2.7/Dockerfile
601
+ - integration/images/ruby/3.0/Dockerfile
602
+ - integration/images/wrk/Dockerfile
603
+ - integration/images/wrk/scripts/entrypoint.sh
604
+ - integration/images/wrk/scripts/scenarios/basic/default.lua
605
+ - integration/images/wrk/scripts/scenarios/basic/fibonacci.lua
606
+ - integration/script/build-images
453
607
  - lib/ddtrace.rb
454
608
  - lib/ddtrace/analytics.rb
455
- - lib/ddtrace/augmentation.rb
456
- - lib/ddtrace/augmentation/method_wrapper.rb
457
- - lib/ddtrace/augmentation/method_wrapping.rb
458
- - lib/ddtrace/augmentation/shim.rb
609
+ - lib/ddtrace/auto_instrument.rb
610
+ - lib/ddtrace/auto_instrument_base.rb
459
611
  - lib/ddtrace/buffer.rb
460
612
  - lib/ddtrace/chunker.rb
461
613
  - lib/ddtrace/configuration.rb
614
+ - lib/ddtrace/configuration/agent_settings_resolver.rb
462
615
  - lib/ddtrace/configuration/base.rb
463
616
  - lib/ddtrace/configuration/components.rb
464
617
  - lib/ddtrace/configuration/dependency_resolver.rb
@@ -508,6 +661,7 @@ files:
508
661
  - lib/ddtrace/contrib/active_model_serializers/ext.rb
509
662
  - lib/ddtrace/contrib/active_model_serializers/integration.rb
510
663
  - lib/ddtrace/contrib/active_model_serializers/patcher.rb
664
+ - lib/ddtrace/contrib/active_record/configuration/makara_resolver.rb
511
665
  - lib/ddtrace/contrib/active_record/configuration/resolver.rb
512
666
  - lib/ddtrace/contrib/active_record/configuration/settings.rb
513
667
  - lib/ddtrace/contrib/active_record/event.rb
@@ -529,6 +683,7 @@ files:
529
683
  - lib/ddtrace/contrib/active_support/notifications/subscription.rb
530
684
  - lib/ddtrace/contrib/active_support/patcher.rb
531
685
  - lib/ddtrace/contrib/analytics.rb
686
+ - lib/ddtrace/contrib/auto_instrument.rb
532
687
  - lib/ddtrace/contrib/aws/configuration/settings.rb
533
688
  - lib/ddtrace/contrib/aws/ext.rb
534
689
  - lib/ddtrace/contrib/aws/instrumentation.rb
@@ -612,6 +767,11 @@ files:
612
767
  - lib/ddtrace/contrib/http/integration.rb
613
768
  - lib/ddtrace/contrib/http/patcher.rb
614
769
  - lib/ddtrace/contrib/http_annotation_helper.rb
770
+ - lib/ddtrace/contrib/httpclient/configuration/settings.rb
771
+ - lib/ddtrace/contrib/httpclient/ext.rb
772
+ - lib/ddtrace/contrib/httpclient/instrumentation.rb
773
+ - lib/ddtrace/contrib/httpclient/integration.rb
774
+ - lib/ddtrace/contrib/httpclient/patcher.rb
615
775
  - lib/ddtrace/contrib/httprb/configuration/settings.rb
616
776
  - lib/ddtrace/contrib/httprb/ext.rb
617
777
  - lib/ddtrace/contrib/httprb/instrumentation.rb
@@ -680,6 +840,7 @@ files:
680
840
  - lib/ddtrace/contrib/rack/middlewares.rb
681
841
  - lib/ddtrace/contrib/rack/patcher.rb
682
842
  - lib/ddtrace/contrib/rack/request_queue.rb
843
+ - lib/ddtrace/contrib/rails/auto_instrument_railtie.rb
683
844
  - lib/ddtrace/contrib/rails/configuration/settings.rb
684
845
  - lib/ddtrace/contrib/rails/ext.rb
685
846
  - lib/ddtrace/contrib/rails/framework.rb
@@ -701,6 +862,7 @@ files:
701
862
  - lib/ddtrace/contrib/redis/patcher.rb
702
863
  - lib/ddtrace/contrib/redis/quantize.rb
703
864
  - lib/ddtrace/contrib/redis/tags.rb
865
+ - lib/ddtrace/contrib/redis/vendor/LICENSE
704
866
  - lib/ddtrace/contrib/redis/vendor/resolver.rb
705
867
  - lib/ddtrace/contrib/registerable.rb
706
868
  - lib/ddtrace/contrib/registry.rb
@@ -716,7 +878,6 @@ files:
716
878
  - lib/ddtrace/contrib/rest_client/request_patch.rb
717
879
  - lib/ddtrace/contrib/rspec/configuration/settings.rb
718
880
  - lib/ddtrace/contrib/rspec/example.rb
719
- - lib/ddtrace/contrib/rspec/example_group.rb
720
881
  - lib/ddtrace/contrib/rspec/ext.rb
721
882
  - lib/ddtrace/contrib/rspec/integration.rb
722
883
  - lib/ddtrace/contrib/rspec/patcher.rb
@@ -787,6 +948,7 @@ files:
787
948
  - lib/ddtrace/ext/metrics.rb
788
949
  - lib/ddtrace/ext/net.rb
789
950
  - lib/ddtrace/ext/priority.rb
951
+ - lib/ddtrace/ext/profiling.rb
790
952
  - lib/ddtrace/ext/runtime.rb
791
953
  - lib/ddtrace/ext/sampling.rb
792
954
  - lib/ddtrace/ext/sql.rb
@@ -795,7 +957,6 @@ files:
795
957
  - lib/ddtrace/forced_tracing.rb
796
958
  - lib/ddtrace/logger.rb
797
959
  - lib/ddtrace/metrics.rb
798
- - lib/ddtrace/monkey.rb
799
960
  - lib/ddtrace/opentelemetry/extensions.rb
800
961
  - lib/ddtrace/opentelemetry/span.rb
801
962
  - lib/ddtrace/opentracer.rb
@@ -819,6 +980,47 @@ files:
819
980
  - lib/ddtrace/pipeline.rb
820
981
  - lib/ddtrace/pipeline/span_filter.rb
821
982
  - lib/ddtrace/pipeline/span_processor.rb
983
+ - lib/ddtrace/profiling.rb
984
+ - lib/ddtrace/profiling/backtrace_location.rb
985
+ - lib/ddtrace/profiling/buffer.rb
986
+ - lib/ddtrace/profiling/collectors/stack.rb
987
+ - lib/ddtrace/profiling/encoding/profile.rb
988
+ - lib/ddtrace/profiling/event.rb
989
+ - lib/ddtrace/profiling/events/stack.rb
990
+ - lib/ddtrace/profiling/exporter.rb
991
+ - lib/ddtrace/profiling/ext/cpu.rb
992
+ - lib/ddtrace/profiling/ext/cthread.rb
993
+ - lib/ddtrace/profiling/ext/forking.rb
994
+ - lib/ddtrace/profiling/flush.rb
995
+ - lib/ddtrace/profiling/pprof/builder.rb
996
+ - lib/ddtrace/profiling/pprof/converter.rb
997
+ - lib/ddtrace/profiling/pprof/message_set.rb
998
+ - lib/ddtrace/profiling/pprof/payload.rb
999
+ - lib/ddtrace/profiling/pprof/pprof.proto
1000
+ - lib/ddtrace/profiling/pprof/pprof_pb.rb
1001
+ - lib/ddtrace/profiling/pprof/stack_sample.rb
1002
+ - lib/ddtrace/profiling/pprof/string_table.rb
1003
+ - lib/ddtrace/profiling/pprof/template.rb
1004
+ - lib/ddtrace/profiling/preload.rb
1005
+ - lib/ddtrace/profiling/profiler.rb
1006
+ - lib/ddtrace/profiling/recorder.rb
1007
+ - lib/ddtrace/profiling/scheduler.rb
1008
+ - lib/ddtrace/profiling/tasks/setup.rb
1009
+ - lib/ddtrace/profiling/transport/client.rb
1010
+ - lib/ddtrace/profiling/transport/http.rb
1011
+ - lib/ddtrace/profiling/transport/http/api.rb
1012
+ - lib/ddtrace/profiling/transport/http/api/endpoint.rb
1013
+ - lib/ddtrace/profiling/transport/http/api/instance.rb
1014
+ - lib/ddtrace/profiling/transport/http/api/spec.rb
1015
+ - lib/ddtrace/profiling/transport/http/builder.rb
1016
+ - lib/ddtrace/profiling/transport/http/client.rb
1017
+ - lib/ddtrace/profiling/transport/http/response.rb
1018
+ - lib/ddtrace/profiling/transport/io.rb
1019
+ - lib/ddtrace/profiling/transport/io/client.rb
1020
+ - lib/ddtrace/profiling/transport/io/response.rb
1021
+ - lib/ddtrace/profiling/transport/parcel.rb
1022
+ - lib/ddtrace/profiling/transport/request.rb
1023
+ - lib/ddtrace/profiling/transport/response.rb
822
1024
  - lib/ddtrace/propagation/grpc_propagator.rb
823
1025
  - lib/ddtrace/propagation/http_propagator.rb
824
1026
  - lib/ddtrace/quantization/hash.rb
@@ -840,6 +1042,8 @@ files:
840
1042
  - lib/ddtrace/sampling/rule_sampler.rb
841
1043
  - lib/ddtrace/span.rb
842
1044
  - lib/ddtrace/sync_writer.rb
1045
+ - lib/ddtrace/tasks/exec.rb
1046
+ - lib/ddtrace/tasks/help.rb
843
1047
  - lib/ddtrace/tracer.rb
844
1048
  - lib/ddtrace/transport/http.rb
845
1049
  - lib/ddtrace/transport/http/adapters/net.rb
@@ -868,10 +1072,24 @@ files:
868
1072
  - lib/ddtrace/transport/statistics.rb
869
1073
  - lib/ddtrace/transport/traces.rb
870
1074
  - lib/ddtrace/utils.rb
1075
+ - lib/ddtrace/utils/compression.rb
871
1076
  - lib/ddtrace/utils/database.rb
872
1077
  - lib/ddtrace/utils/forking.rb
1078
+ - lib/ddtrace/utils/object_set.rb
1079
+ - lib/ddtrace/utils/only_once.rb
1080
+ - lib/ddtrace/utils/sequence.rb
1081
+ - lib/ddtrace/utils/string_table.rb
873
1082
  - lib/ddtrace/utils/time.rb
1083
+ - lib/ddtrace/vendor/active_record/MIT-LICENSE
874
1084
  - lib/ddtrace/vendor/active_record/connection_specification.rb
1085
+ - lib/ddtrace/vendor/multipart-post/LICENSE
1086
+ - lib/ddtrace/vendor/multipart-post/multipart.rb
1087
+ - lib/ddtrace/vendor/multipart-post/multipart/post.rb
1088
+ - lib/ddtrace/vendor/multipart-post/multipart/post/composite_read_io.rb
1089
+ - lib/ddtrace/vendor/multipart-post/multipart/post/multipartable.rb
1090
+ - lib/ddtrace/vendor/multipart-post/multipart/post/parts.rb
1091
+ - lib/ddtrace/vendor/multipart-post/multipart/post/version.rb
1092
+ - lib/ddtrace/vendor/multipart-post/net/http/post/multipart.rb
875
1093
  - lib/ddtrace/version.rb
876
1094
  - lib/ddtrace/worker.rb
877
1095
  - lib/ddtrace/workers.rb
@@ -888,7 +1106,7 @@ licenses:
888
1106
  - BSD-3-Clause
889
1107
  metadata:
890
1108
  allowed_push_host: https://rubygems.org
891
- post_install_message:
1109
+ post_install_message:
892
1110
  rdoc_options: []
893
1111
  require_paths:
894
1112
  - lib
@@ -897,14 +1115,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
897
1115
  - - ">="
898
1116
  - !ruby/object:Gem::Version
899
1117
  version: 2.0.0
1118
+ - - "<"
1119
+ - !ruby/object:Gem::Version
1120
+ version: '3.2'
900
1121
  required_rubygems_version: !ruby/object:Gem::Requirement
901
1122
  requirements:
902
1123
  - - ">="
903
1124
  - !ruby/object:Gem::Version
904
1125
  version: 2.0.0
905
1126
  requirements: []
906
- rubygems_version: 3.2.3
907
- signing_key:
1127
+ rubygems_version: 3.0.3
1128
+ signing_key:
908
1129
  specification_version: 4
909
1130
  summary: Datadog tracing code for your Ruby applications
910
1131
  test_files: []