ddtrace 0.48.0 → 0.51.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (656) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +250 -68
  3. data/.circleci/images/primary/Dockerfile-2.1.10 +1 -1
  4. data/.circleci/images/primary/Dockerfile-2.2.10 +1 -1
  5. data/.circleci/images/primary/Dockerfile-2.3.8 +4 -2
  6. data/.circleci/images/primary/{Dockerfile-2.6.4 → Dockerfile-2.4.10} +5 -3
  7. data/.circleci/images/primary/{Dockerfile-2.4.6 → Dockerfile-2.5.9} +3 -3
  8. data/.circleci/images/primary/{Dockerfile-2.5.6 → Dockerfile-2.6.7} +3 -3
  9. data/.circleci/images/primary/{Dockerfile-2.7.0 → Dockerfile-2.7.3} +3 -3
  10. data/.circleci/images/primary/{Dockerfile-3.0.0 → Dockerfile-3.0.1} +3 -3
  11. data/.circleci/images/primary/Dockerfile-jruby-9.2-latest +3 -3
  12. data/.circleci/images/primary/Dockerfile-jruby-9.2.0.0 +1 -1
  13. data/.circleci/images/primary/{Dockerfile-truffleruby-21.0.0 → Dockerfile-truffleruby-21.1.0} +2 -2
  14. data/.dd-ci/ci-app-spec.json +31 -0
  15. data/.dockerignore +0 -1
  16. data/.gitattributes +1 -0
  17. data/.github/workflows/test-head.yaml +34 -0
  18. data/.gitignore +0 -1
  19. data/.rubocop.yml +13 -9
  20. data/.rubocop_todo.yml +7 -8
  21. data/Appraisals +206 -182
  22. data/CHANGELOG.md +154 -0
  23. data/Gemfile +6 -3
  24. data/Rakefile +331 -333
  25. data/benchmarks/data/profiler-submission-marshal.gz +0 -0
  26. data/benchmarks/profiler_sample_loop.rb +69 -0
  27. data/benchmarks/profiler_submission.rb +93 -0
  28. data/ddtrace.gemspec +2 -2
  29. data/docker-compose.yml +14 -68
  30. data/docs/GettingStarted.md +59 -13
  31. data/gemfiles/jruby_9.2.0.0_contrib.gemfile +82 -0
  32. data/gemfiles/jruby_9.2.0.0_contrib.gemfile.lock +1571 -0
  33. data/gemfiles/jruby_9.2.0.0_contrib_old.gemfile +36 -0
  34. data/gemfiles/jruby_9.2.0.0_contrib_old.gemfile.lock +159 -0
  35. data/gemfiles/jruby_9.2.0.0_core_old.gemfile +35 -0
  36. data/gemfiles/jruby_9.2.0.0_core_old.gemfile.lock +155 -0
  37. data/gemfiles/jruby_9.2.0.0_cucumber3.gemfile +36 -0
  38. data/gemfiles/jruby_9.2.0.0_cucumber3.gemfile.lock +176 -0
  39. data/gemfiles/jruby_9.2.0.0_cucumber4.gemfile +36 -0
  40. data/gemfiles/jruby_9.2.0.0_cucumber4.gemfile.lock +208 -0
  41. data/gemfiles/jruby_9.2.0.0_cucumber5.gemfile +36 -0
  42. data/gemfiles/jruby_9.2.0.0_cucumber5.gemfile.lock +208 -0
  43. data/gemfiles/jruby_9.2.0.0_rails5_mysql2.gemfile +41 -0
  44. data/gemfiles/jruby_9.2.0.0_rails5_mysql2.gemfile.lock +273 -0
  45. data/gemfiles/jruby_9.2.0.0_rails5_postgres.gemfile +41 -0
  46. data/gemfiles/jruby_9.2.0.0_rails5_postgres.gemfile.lock +273 -0
  47. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis.gemfile +42 -0
  48. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis.gemfile.lock +275 -0
  49. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis_activesupport.gemfile +42 -0
  50. data/gemfiles/jruby_9.2.0.0_rails5_postgres_redis_activesupport.gemfile.lock +275 -0
  51. data/gemfiles/jruby_9.2.0.0_rails5_postgres_sidekiq.gemfile +43 -0
  52. data/gemfiles/jruby_9.2.0.0_rails5_postgres_sidekiq.gemfile.lock +281 -0
  53. data/gemfiles/jruby_9.2.0.0_rails5_semantic_logger.gemfile +41 -0
  54. data/gemfiles/jruby_9.2.0.0_rails5_semantic_logger.gemfile.lock +272 -0
  55. data/gemfiles/jruby_9.2.0.0_rails61_mysql2.gemfile +41 -0
  56. data/gemfiles/jruby_9.2.0.0_rails61_mysql2.gemfile.lock +292 -0
  57. data/gemfiles/jruby_9.2.0.0_rails61_postgres.gemfile +41 -0
  58. data/gemfiles/jruby_9.2.0.0_rails61_postgres.gemfile.lock +292 -0
  59. data/gemfiles/jruby_9.2.0.0_rails61_postgres_redis.gemfile +42 -0
  60. data/gemfiles/jruby_9.2.0.0_rails61_postgres_redis.gemfile.lock +294 -0
  61. data/gemfiles/jruby_9.2.0.0_rails61_postgres_sidekiq.gemfile +42 -0
  62. data/gemfiles/jruby_9.2.0.0_rails61_postgres_sidekiq.gemfile.lock +299 -0
  63. data/gemfiles/jruby_9.2.0.0_rails61_semantic_logger.gemfile +41 -0
  64. data/gemfiles/jruby_9.2.0.0_rails61_semantic_logger.gemfile.lock +291 -0
  65. data/gemfiles/jruby_9.2.0.0_rails6_mysql2.gemfile +41 -0
  66. data/gemfiles/jruby_9.2.0.0_rails6_mysql2.gemfile.lock +289 -0
  67. data/gemfiles/jruby_9.2.0.0_rails6_postgres.gemfile +41 -0
  68. data/gemfiles/jruby_9.2.0.0_rails6_postgres.gemfile.lock +289 -0
  69. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis.gemfile +42 -0
  70. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis.gemfile.lock +291 -0
  71. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis_activesupport.gemfile +42 -0
  72. data/gemfiles/jruby_9.2.0.0_rails6_postgres_redis_activesupport.gemfile.lock +291 -0
  73. data/gemfiles/jruby_9.2.0.0_rails6_postgres_sidekiq.gemfile +43 -0
  74. data/gemfiles/jruby_9.2.0.0_rails6_postgres_sidekiq.gemfile.lock +297 -0
  75. data/gemfiles/jruby_9.2.0.0_rails6_semantic_logger.gemfile +41 -0
  76. data/gemfiles/jruby_9.2.0.0_rails6_semantic_logger.gemfile.lock +288 -0
  77. data/gemfiles/jruby_9.2.0.0_resque2_redis3.gemfile +37 -0
  78. data/gemfiles/jruby_9.2.0.0_resque2_redis3.gemfile.lock +182 -0
  79. data/gemfiles/jruby_9.2.0.0_resque2_redis4.gemfile +37 -0
  80. data/gemfiles/jruby_9.2.0.0_resque2_redis4.gemfile.lock +182 -0
  81. data/gemfiles/jruby_9.2.18.0_contrib.gemfile +82 -0
  82. data/gemfiles/jruby_9.2.18.0_contrib.gemfile.lock +1571 -0
  83. data/gemfiles/jruby_9.2.18.0_contrib_old.gemfile +36 -0
  84. data/gemfiles/jruby_9.2.18.0_contrib_old.gemfile.lock +159 -0
  85. data/gemfiles/jruby_9.2.18.0_core_old.gemfile +35 -0
  86. data/gemfiles/jruby_9.2.18.0_core_old.gemfile.lock +155 -0
  87. data/gemfiles/jruby_9.2.18.0_cucumber3.gemfile +36 -0
  88. data/gemfiles/jruby_9.2.18.0_cucumber3.gemfile.lock +176 -0
  89. data/gemfiles/jruby_9.2.18.0_cucumber4.gemfile +36 -0
  90. data/gemfiles/jruby_9.2.18.0_cucumber4.gemfile.lock +208 -0
  91. data/gemfiles/jruby_9.2.18.0_cucumber5.gemfile +36 -0
  92. data/gemfiles/jruby_9.2.18.0_cucumber5.gemfile.lock +208 -0
  93. data/gemfiles/jruby_9.2.18.0_rails5_mysql2.gemfile +41 -0
  94. data/gemfiles/jruby_9.2.18.0_rails5_mysql2.gemfile.lock +273 -0
  95. data/gemfiles/jruby_9.2.18.0_rails5_postgres.gemfile +41 -0
  96. data/gemfiles/jruby_9.2.18.0_rails5_postgres.gemfile.lock +273 -0
  97. data/gemfiles/jruby_9.2.18.0_rails5_postgres_redis.gemfile +42 -0
  98. data/gemfiles/jruby_9.2.18.0_rails5_postgres_redis.gemfile.lock +275 -0
  99. data/gemfiles/jruby_9.2.18.0_rails5_postgres_redis_activesupport.gemfile +42 -0
  100. data/gemfiles/jruby_9.2.18.0_rails5_postgres_redis_activesupport.gemfile.lock +275 -0
  101. data/gemfiles/jruby_9.2.18.0_rails5_postgres_sidekiq.gemfile +43 -0
  102. data/gemfiles/jruby_9.2.18.0_rails5_postgres_sidekiq.gemfile.lock +281 -0
  103. data/gemfiles/jruby_9.2.18.0_rails5_semantic_logger.gemfile +41 -0
  104. data/gemfiles/jruby_9.2.18.0_rails5_semantic_logger.gemfile.lock +272 -0
  105. data/gemfiles/jruby_9.2.18.0_rails61_mysql2.gemfile +41 -0
  106. data/gemfiles/jruby_9.2.18.0_rails61_mysql2.gemfile.lock +292 -0
  107. data/gemfiles/jruby_9.2.18.0_rails61_postgres.gemfile +41 -0
  108. data/gemfiles/jruby_9.2.18.0_rails61_postgres.gemfile.lock +292 -0
  109. data/gemfiles/jruby_9.2.18.0_rails61_postgres_redis.gemfile +42 -0
  110. data/gemfiles/jruby_9.2.18.0_rails61_postgres_redis.gemfile.lock +294 -0
  111. data/gemfiles/jruby_9.2.18.0_rails61_postgres_sidekiq.gemfile +42 -0
  112. data/gemfiles/jruby_9.2.18.0_rails61_postgres_sidekiq.gemfile.lock +299 -0
  113. data/gemfiles/jruby_9.2.18.0_rails61_semantic_logger.gemfile +41 -0
  114. data/gemfiles/jruby_9.2.18.0_rails61_semantic_logger.gemfile.lock +291 -0
  115. data/gemfiles/jruby_9.2.18.0_rails6_mysql2.gemfile +41 -0
  116. data/gemfiles/jruby_9.2.18.0_rails6_mysql2.gemfile.lock +289 -0
  117. data/gemfiles/jruby_9.2.18.0_rails6_postgres.gemfile +41 -0
  118. data/gemfiles/jruby_9.2.18.0_rails6_postgres.gemfile.lock +289 -0
  119. data/gemfiles/jruby_9.2.18.0_rails6_postgres_redis.gemfile +42 -0
  120. data/gemfiles/jruby_9.2.18.0_rails6_postgres_redis.gemfile.lock +291 -0
  121. data/gemfiles/jruby_9.2.18.0_rails6_postgres_redis_activesupport.gemfile +42 -0
  122. data/gemfiles/jruby_9.2.18.0_rails6_postgres_redis_activesupport.gemfile.lock +291 -0
  123. data/gemfiles/jruby_9.2.18.0_rails6_postgres_sidekiq.gemfile +43 -0
  124. data/gemfiles/jruby_9.2.18.0_rails6_postgres_sidekiq.gemfile.lock +297 -0
  125. data/gemfiles/jruby_9.2.18.0_rails6_semantic_logger.gemfile +41 -0
  126. data/gemfiles/jruby_9.2.18.0_rails6_semantic_logger.gemfile.lock +288 -0
  127. data/gemfiles/jruby_9.2.18.0_resque2_redis3.gemfile +37 -0
  128. data/gemfiles/jruby_9.2.18.0_resque2_redis3.gemfile.lock +182 -0
  129. data/gemfiles/jruby_9.2.18.0_resque2_redis4.gemfile +37 -0
  130. data/gemfiles/jruby_9.2.18.0_resque2_redis4.gemfile.lock +182 -0
  131. data/gemfiles/ruby_2.1.10_contrib_old.gemfile +68 -0
  132. data/gemfiles/ruby_2.1.10_contrib_old.gemfile.lock +310 -0
  133. data/gemfiles/ruby_2.1.10_core_old.gemfile +34 -0
  134. data/gemfiles/ruby_2.1.10_core_old.gemfile.lock +120 -0
  135. data/gemfiles/ruby_2.1.10_rails30_postgres.gemfile +39 -0
  136. data/gemfiles/ruby_2.1.10_rails30_postgres.gemfile.lock +193 -0
  137. data/gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile +40 -0
  138. data/gemfiles/ruby_2.1.10_rails30_postgres_sidekiq.gemfile.lock +202 -0
  139. data/gemfiles/ruby_2.1.10_rails32_mysql2.gemfile +42 -0
  140. data/gemfiles/ruby_2.1.10_rails32_mysql2.gemfile.lock +212 -0
  141. data/gemfiles/ruby_2.1.10_rails32_postgres.gemfile +39 -0
  142. data/gemfiles/ruby_2.1.10_rails32_postgres.gemfile.lock +201 -0
  143. data/gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile +41 -0
  144. data/gemfiles/ruby_2.1.10_rails32_postgres_redis.gemfile.lock +220 -0
  145. data/gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile +40 -0
  146. data/gemfiles/ruby_2.1.10_rails32_postgres_sidekiq.gemfile.lock +210 -0
  147. data/gemfiles/ruby_2.1.10_rails4_mysql2.gemfile +39 -0
  148. data/gemfiles/ruby_2.1.10_rails4_mysql2.gemfile.lock +220 -0
  149. data/gemfiles/ruby_2.1.10_rails4_postgres.gemfile +39 -0
  150. data/gemfiles/ruby_2.1.10_rails4_postgres.gemfile.lock +220 -0
  151. data/gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile +41 -0
  152. data/gemfiles/ruby_2.1.10_rails4_postgres_redis.gemfile.lock +239 -0
  153. data/gemfiles/ruby_2.1.10_rails4_semantic_logger.gemfile +39 -0
  154. data/gemfiles/ruby_2.1.10_rails4_semantic_logger.gemfile.lock +218 -0
  155. data/gemfiles/ruby_2.2.10_contrib.gemfile +76 -0
  156. data/gemfiles/ruby_2.2.10_contrib.gemfile.lock +1499 -0
  157. data/gemfiles/ruby_2.2.10_core_old.gemfile +34 -0
  158. data/gemfiles/ruby_2.2.10_core_old.gemfile.lock +120 -0
  159. data/gemfiles/ruby_2.2.10_rails30_postgres.gemfile +39 -0
  160. data/gemfiles/ruby_2.2.10_rails30_postgres.gemfile.lock +193 -0
  161. data/gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile +40 -0
  162. data/gemfiles/ruby_2.2.10_rails30_postgres_sidekiq.gemfile.lock +202 -0
  163. data/gemfiles/ruby_2.2.10_rails32_mysql2.gemfile +41 -0
  164. data/gemfiles/ruby_2.2.10_rails32_mysql2.gemfile.lock +209 -0
  165. data/gemfiles/ruby_2.2.10_rails32_postgres.gemfile +39 -0
  166. data/gemfiles/ruby_2.2.10_rails32_postgres.gemfile.lock +201 -0
  167. data/gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile +41 -0
  168. data/gemfiles/ruby_2.2.10_rails32_postgres_redis.gemfile.lock +220 -0
  169. data/gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile +40 -0
  170. data/gemfiles/ruby_2.2.10_rails32_postgres_sidekiq.gemfile.lock +210 -0
  171. data/gemfiles/ruby_2.2.10_rails4_mysql2.gemfile +39 -0
  172. data/gemfiles/ruby_2.2.10_rails4_mysql2.gemfile.lock +220 -0
  173. data/gemfiles/ruby_2.2.10_rails4_postgres.gemfile +39 -0
  174. data/gemfiles/ruby_2.2.10_rails4_postgres.gemfile.lock +220 -0
  175. data/gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile +41 -0
  176. data/gemfiles/ruby_2.2.10_rails4_postgres_redis.gemfile.lock +239 -0
  177. data/gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile +41 -0
  178. data/gemfiles/ruby_2.2.10_rails4_postgres_sidekiq.gemfile.lock +231 -0
  179. data/gemfiles/ruby_2.2.10_rails4_semantic_logger.gemfile +39 -0
  180. data/gemfiles/ruby_2.2.10_rails4_semantic_logger.gemfile.lock +218 -0
  181. data/gemfiles/ruby_2.2.10_rails5_mysql2.gemfile +39 -0
  182. data/gemfiles/ruby_2.2.10_rails5_mysql2.gemfile.lock +236 -0
  183. data/gemfiles/ruby_2.2.10_rails5_postgres.gemfile +39 -0
  184. data/gemfiles/ruby_2.2.10_rails5_postgres.gemfile.lock +236 -0
  185. data/gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile +40 -0
  186. data/gemfiles/ruby_2.2.10_rails5_postgres_redis.gemfile.lock +238 -0
  187. data/gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile +40 -0
  188. data/gemfiles/ruby_2.2.10_rails5_postgres_redis_activesupport.gemfile.lock +238 -0
  189. data/gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile +41 -0
  190. data/gemfiles/ruby_2.2.10_rails5_postgres_sidekiq.gemfile.lock +247 -0
  191. data/gemfiles/ruby_2.2.10_rails5_semantic_logger.gemfile +39 -0
  192. data/gemfiles/ruby_2.2.10_rails5_semantic_logger.gemfile.lock +234 -0
  193. data/gemfiles/ruby_2.3.8_contrib.gemfile +75 -0
  194. data/gemfiles/ruby_2.3.8_contrib.gemfile.lock +1508 -0
  195. data/gemfiles/ruby_2.3.8_contrib_old.gemfile +34 -0
  196. data/gemfiles/ruby_2.3.8_contrib_old.gemfile.lock +123 -0
  197. data/gemfiles/ruby_2.3.8_core_old.gemfile +33 -0
  198. data/gemfiles/ruby_2.3.8_core_old.gemfile.lock +119 -0
  199. data/gemfiles/ruby_2.3.8_cucumber3.gemfile +34 -0
  200. data/gemfiles/ruby_2.3.8_cucumber3.gemfile.lock +140 -0
  201. data/gemfiles/ruby_2.3.8_cucumber4.gemfile +34 -0
  202. data/gemfiles/ruby_2.3.8_cucumber4.gemfile.lock +170 -0
  203. data/gemfiles/ruby_2.3.8_rails30_postgres.gemfile +38 -0
  204. data/gemfiles/ruby_2.3.8_rails30_postgres.gemfile.lock +192 -0
  205. data/gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile +39 -0
  206. data/gemfiles/ruby_2.3.8_rails30_postgres_sidekiq.gemfile.lock +201 -0
  207. data/gemfiles/ruby_2.3.8_rails32_mysql2.gemfile +40 -0
  208. data/gemfiles/ruby_2.3.8_rails32_mysql2.gemfile.lock +208 -0
  209. data/gemfiles/ruby_2.3.8_rails32_postgres.gemfile +38 -0
  210. data/gemfiles/ruby_2.3.8_rails32_postgres.gemfile.lock +200 -0
  211. data/gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile +40 -0
  212. data/gemfiles/ruby_2.3.8_rails32_postgres_redis.gemfile.lock +219 -0
  213. data/gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile +39 -0
  214. data/gemfiles/ruby_2.3.8_rails32_postgres_sidekiq.gemfile.lock +209 -0
  215. data/gemfiles/ruby_2.3.8_rails4_mysql2.gemfile +38 -0
  216. data/gemfiles/ruby_2.3.8_rails4_mysql2.gemfile.lock +219 -0
  217. data/gemfiles/ruby_2.3.8_rails4_postgres.gemfile +38 -0
  218. data/gemfiles/ruby_2.3.8_rails4_postgres.gemfile.lock +219 -0
  219. data/gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile +40 -0
  220. data/gemfiles/ruby_2.3.8_rails4_postgres_redis.gemfile.lock +238 -0
  221. data/gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile +40 -0
  222. data/gemfiles/ruby_2.3.8_rails4_postgres_sidekiq.gemfile.lock +230 -0
  223. data/gemfiles/ruby_2.3.8_rails4_semantic_logger.gemfile +38 -0
  224. data/gemfiles/ruby_2.3.8_rails4_semantic_logger.gemfile.lock +218 -0
  225. data/gemfiles/ruby_2.3.8_rails5_mysql2.gemfile +37 -0
  226. data/gemfiles/ruby_2.3.8_rails5_mysql2.gemfile.lock +230 -0
  227. data/gemfiles/ruby_2.3.8_rails5_postgres.gemfile +37 -0
  228. data/gemfiles/ruby_2.3.8_rails5_postgres.gemfile.lock +230 -0
  229. data/gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile +38 -0
  230. data/gemfiles/ruby_2.3.8_rails5_postgres_redis.gemfile.lock +232 -0
  231. data/gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile +38 -0
  232. data/gemfiles/ruby_2.3.8_rails5_postgres_redis_activesupport.gemfile.lock +232 -0
  233. data/gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile +39 -0
  234. data/gemfiles/ruby_2.3.8_rails5_postgres_sidekiq.gemfile.lock +241 -0
  235. data/gemfiles/ruby_2.3.8_rails5_semantic_logger.gemfile +37 -0
  236. data/gemfiles/ruby_2.3.8_rails5_semantic_logger.gemfile.lock +229 -0
  237. data/gemfiles/ruby_2.3.8_resque2_redis3.gemfile +35 -0
  238. data/gemfiles/ruby_2.3.8_resque2_redis3.gemfile.lock +146 -0
  239. data/gemfiles/ruby_2.3.8_resque2_redis4.gemfile +35 -0
  240. data/gemfiles/ruby_2.3.8_resque2_redis4.gemfile.lock +146 -0
  241. data/gemfiles/ruby_2.4.10_contrib.gemfile +81 -0
  242. data/gemfiles/ruby_2.4.10_contrib.gemfile.lock +1596 -0
  243. data/gemfiles/ruby_2.4.10_contrib_old.gemfile +39 -0
  244. data/gemfiles/ruby_2.4.10_contrib_old.gemfile.lock +157 -0
  245. data/gemfiles/ruby_2.4.10_core_old.gemfile +38 -0
  246. data/gemfiles/ruby_2.4.10_core_old.gemfile.lock +153 -0
  247. data/gemfiles/ruby_2.4.10_cucumber3.gemfile +39 -0
  248. data/gemfiles/ruby_2.4.10_cucumber3.gemfile.lock +174 -0
  249. data/gemfiles/ruby_2.4.10_cucumber4.gemfile +39 -0
  250. data/gemfiles/ruby_2.4.10_cucumber4.gemfile.lock +204 -0
  251. data/gemfiles/ruby_2.4.10_rails5_mysql2.gemfile +42 -0
  252. data/gemfiles/ruby_2.4.10_rails5_mysql2.gemfile.lock +264 -0
  253. data/gemfiles/ruby_2.4.10_rails5_postgres.gemfile +42 -0
  254. data/gemfiles/ruby_2.4.10_rails5_postgres.gemfile.lock +264 -0
  255. data/gemfiles/ruby_2.4.10_rails5_postgres_redis.gemfile +43 -0
  256. data/gemfiles/ruby_2.4.10_rails5_postgres_redis.gemfile.lock +266 -0
  257. data/gemfiles/ruby_2.4.10_rails5_postgres_redis_activesupport.gemfile +43 -0
  258. data/gemfiles/ruby_2.4.10_rails5_postgres_redis_activesupport.gemfile.lock +266 -0
  259. data/gemfiles/ruby_2.4.10_rails5_postgres_sidekiq.gemfile +44 -0
  260. data/gemfiles/ruby_2.4.10_rails5_postgres_sidekiq.gemfile.lock +275 -0
  261. data/gemfiles/ruby_2.4.10_rails5_semantic_logger.gemfile +42 -0
  262. data/gemfiles/ruby_2.4.10_rails5_semantic_logger.gemfile.lock +263 -0
  263. data/gemfiles/ruby_2.4.10_resque2_redis3.gemfile +40 -0
  264. data/gemfiles/ruby_2.4.10_resque2_redis3.gemfile.lock +180 -0
  265. data/gemfiles/ruby_2.4.10_resque2_redis4.gemfile +40 -0
  266. data/gemfiles/ruby_2.4.10_resque2_redis4.gemfile.lock +180 -0
  267. data/gemfiles/ruby_2.5.9_contrib.gemfile +86 -0
  268. data/gemfiles/ruby_2.5.9_contrib.gemfile.lock +1608 -0
  269. data/gemfiles/ruby_2.5.9_contrib_old.gemfile +40 -0
  270. data/gemfiles/ruby_2.5.9_contrib_old.gemfile.lock +167 -0
  271. data/gemfiles/ruby_2.5.9_core_old.gemfile +39 -0
  272. data/gemfiles/ruby_2.5.9_core_old.gemfile.lock +163 -0
  273. data/gemfiles/ruby_2.5.9_cucumber3.gemfile +40 -0
  274. data/gemfiles/ruby_2.5.9_cucumber3.gemfile.lock +184 -0
  275. data/gemfiles/ruby_2.5.9_cucumber4.gemfile +40 -0
  276. data/gemfiles/ruby_2.5.9_cucumber4.gemfile.lock +216 -0
  277. data/gemfiles/ruby_2.5.9_cucumber5.gemfile +40 -0
  278. data/gemfiles/ruby_2.5.9_cucumber5.gemfile.lock +216 -0
  279. data/gemfiles/ruby_2.5.9_rails5_mysql2.gemfile +45 -0
  280. data/gemfiles/ruby_2.5.9_rails5_mysql2.gemfile.lock +276 -0
  281. data/gemfiles/ruby_2.5.9_rails5_postgres.gemfile +45 -0
  282. data/gemfiles/ruby_2.5.9_rails5_postgres.gemfile.lock +276 -0
  283. data/gemfiles/ruby_2.5.9_rails5_postgres_redis.gemfile +46 -0
  284. data/gemfiles/ruby_2.5.9_rails5_postgres_redis.gemfile.lock +278 -0
  285. data/gemfiles/ruby_2.5.9_rails5_postgres_redis_activesupport.gemfile +46 -0
  286. data/gemfiles/ruby_2.5.9_rails5_postgres_redis_activesupport.gemfile.lock +278 -0
  287. data/gemfiles/ruby_2.5.9_rails5_postgres_sidekiq.gemfile +47 -0
  288. data/gemfiles/ruby_2.5.9_rails5_postgres_sidekiq.gemfile.lock +284 -0
  289. data/gemfiles/ruby_2.5.9_rails5_semantic_logger.gemfile +45 -0
  290. data/gemfiles/ruby_2.5.9_rails5_semantic_logger.gemfile.lock +275 -0
  291. data/gemfiles/ruby_2.5.9_rails61_mysql2.gemfile +45 -0
  292. data/gemfiles/ruby_2.5.9_rails61_mysql2.gemfile.lock +295 -0
  293. data/gemfiles/ruby_2.5.9_rails61_postgres.gemfile +45 -0
  294. data/gemfiles/ruby_2.5.9_rails61_postgres.gemfile.lock +295 -0
  295. data/gemfiles/ruby_2.5.9_rails61_postgres_redis.gemfile +46 -0
  296. data/gemfiles/ruby_2.5.9_rails61_postgres_redis.gemfile.lock +297 -0
  297. data/gemfiles/ruby_2.5.9_rails61_postgres_sidekiq.gemfile +46 -0
  298. data/gemfiles/ruby_2.5.9_rails61_postgres_sidekiq.gemfile.lock +302 -0
  299. data/gemfiles/ruby_2.5.9_rails61_semantic_logger.gemfile +45 -0
  300. data/gemfiles/ruby_2.5.9_rails61_semantic_logger.gemfile.lock +294 -0
  301. data/gemfiles/ruby_2.5.9_rails6_mysql2.gemfile +45 -0
  302. data/gemfiles/ruby_2.5.9_rails6_mysql2.gemfile.lock +292 -0
  303. data/gemfiles/ruby_2.5.9_rails6_postgres.gemfile +45 -0
  304. data/gemfiles/ruby_2.5.9_rails6_postgres.gemfile.lock +292 -0
  305. data/gemfiles/ruby_2.5.9_rails6_postgres_redis.gemfile +46 -0
  306. data/gemfiles/ruby_2.5.9_rails6_postgres_redis.gemfile.lock +294 -0
  307. data/gemfiles/ruby_2.5.9_rails6_postgres_redis_activesupport.gemfile +46 -0
  308. data/gemfiles/ruby_2.5.9_rails6_postgres_redis_activesupport.gemfile.lock +294 -0
  309. data/gemfiles/ruby_2.5.9_rails6_postgres_sidekiq.gemfile +47 -0
  310. data/gemfiles/ruby_2.5.9_rails6_postgres_sidekiq.gemfile.lock +300 -0
  311. data/gemfiles/ruby_2.5.9_rails6_semantic_logger.gemfile +45 -0
  312. data/gemfiles/ruby_2.5.9_rails6_semantic_logger.gemfile.lock +291 -0
  313. data/gemfiles/ruby_2.5.9_resque2_redis3.gemfile +41 -0
  314. data/gemfiles/ruby_2.5.9_resque2_redis3.gemfile.lock +190 -0
  315. data/gemfiles/ruby_2.5.9_resque2_redis4.gemfile +41 -0
  316. data/gemfiles/ruby_2.5.9_resque2_redis4.gemfile.lock +190 -0
  317. data/gemfiles/ruby_2.6.7_contrib.gemfile +82 -0
  318. data/gemfiles/ruby_2.6.7_contrib.gemfile.lock +1606 -0
  319. data/gemfiles/ruby_2.6.7_contrib_old.gemfile +40 -0
  320. data/gemfiles/ruby_2.6.7_contrib_old.gemfile.lock +169 -0
  321. data/gemfiles/ruby_2.6.7_core_old.gemfile +39 -0
  322. data/gemfiles/ruby_2.6.7_core_old.gemfile.lock +165 -0
  323. data/gemfiles/ruby_2.6.7_cucumber3.gemfile +40 -0
  324. data/gemfiles/ruby_2.6.7_cucumber3.gemfile.lock +186 -0
  325. data/gemfiles/ruby_2.6.7_cucumber4.gemfile +40 -0
  326. data/gemfiles/ruby_2.6.7_cucumber4.gemfile.lock +218 -0
  327. data/gemfiles/ruby_2.6.7_cucumber5.gemfile +40 -0
  328. data/gemfiles/ruby_2.6.7_cucumber5.gemfile.lock +218 -0
  329. data/gemfiles/ruby_2.6.7_rails5_mysql2.gemfile +43 -0
  330. data/gemfiles/ruby_2.6.7_rails5_mysql2.gemfile.lock +276 -0
  331. data/gemfiles/ruby_2.6.7_rails5_postgres.gemfile +43 -0
  332. data/gemfiles/ruby_2.6.7_rails5_postgres.gemfile.lock +276 -0
  333. data/gemfiles/ruby_2.6.7_rails5_postgres_redis.gemfile +44 -0
  334. data/gemfiles/ruby_2.6.7_rails5_postgres_redis.gemfile.lock +278 -0
  335. data/gemfiles/ruby_2.6.7_rails5_postgres_redis_activesupport.gemfile +44 -0
  336. data/gemfiles/ruby_2.6.7_rails5_postgres_redis_activesupport.gemfile.lock +278 -0
  337. data/gemfiles/ruby_2.6.7_rails5_postgres_sidekiq.gemfile +45 -0
  338. data/gemfiles/ruby_2.6.7_rails5_postgres_sidekiq.gemfile.lock +284 -0
  339. data/gemfiles/ruby_2.6.7_rails5_semantic_logger.gemfile +43 -0
  340. data/gemfiles/ruby_2.6.7_rails5_semantic_logger.gemfile.lock +275 -0
  341. data/gemfiles/ruby_2.6.7_rails61_mysql2.gemfile +43 -0
  342. data/gemfiles/ruby_2.6.7_rails61_mysql2.gemfile.lock +295 -0
  343. data/gemfiles/ruby_2.6.7_rails61_postgres.gemfile +43 -0
  344. data/gemfiles/ruby_2.6.7_rails61_postgres.gemfile.lock +295 -0
  345. data/gemfiles/ruby_2.6.7_rails61_postgres_redis.gemfile +44 -0
  346. data/gemfiles/ruby_2.6.7_rails61_postgres_redis.gemfile.lock +297 -0
  347. data/gemfiles/ruby_2.6.7_rails61_postgres_sidekiq.gemfile +44 -0
  348. data/gemfiles/ruby_2.6.7_rails61_postgres_sidekiq.gemfile.lock +302 -0
  349. data/gemfiles/ruby_2.6.7_rails61_semantic_logger.gemfile +43 -0
  350. data/gemfiles/ruby_2.6.7_rails61_semantic_logger.gemfile.lock +294 -0
  351. data/gemfiles/ruby_2.6.7_rails6_mysql2.gemfile +43 -0
  352. data/gemfiles/ruby_2.6.7_rails6_mysql2.gemfile.lock +292 -0
  353. data/gemfiles/ruby_2.6.7_rails6_postgres.gemfile +43 -0
  354. data/gemfiles/ruby_2.6.7_rails6_postgres.gemfile.lock +292 -0
  355. data/gemfiles/ruby_2.6.7_rails6_postgres_redis.gemfile +44 -0
  356. data/gemfiles/ruby_2.6.7_rails6_postgres_redis.gemfile.lock +294 -0
  357. data/gemfiles/ruby_2.6.7_rails6_postgres_redis_activesupport.gemfile +44 -0
  358. data/gemfiles/ruby_2.6.7_rails6_postgres_redis_activesupport.gemfile.lock +294 -0
  359. data/gemfiles/ruby_2.6.7_rails6_postgres_sidekiq.gemfile +45 -0
  360. data/gemfiles/ruby_2.6.7_rails6_postgres_sidekiq.gemfile.lock +300 -0
  361. data/gemfiles/ruby_2.6.7_rails6_semantic_logger.gemfile +43 -0
  362. data/gemfiles/ruby_2.6.7_rails6_semantic_logger.gemfile.lock +291 -0
  363. data/gemfiles/ruby_2.6.7_resque2_redis3.gemfile +41 -0
  364. data/gemfiles/ruby_2.6.7_resque2_redis3.gemfile.lock +192 -0
  365. data/gemfiles/ruby_2.6.7_resque2_redis4.gemfile +41 -0
  366. data/gemfiles/ruby_2.6.7_resque2_redis4.gemfile.lock +192 -0
  367. data/gemfiles/ruby_2.7.3_contrib.gemfile +81 -0
  368. data/gemfiles/ruby_2.7.3_contrib.gemfile.lock +1580 -0
  369. data/gemfiles/ruby_2.7.3_contrib_old.gemfile +40 -0
  370. data/gemfiles/ruby_2.7.3_contrib_old.gemfile.lock +169 -0
  371. data/gemfiles/ruby_2.7.3_core_old.gemfile +39 -0
  372. data/gemfiles/ruby_2.7.3_core_old.gemfile.lock +165 -0
  373. data/gemfiles/ruby_2.7.3_cucumber3.gemfile +40 -0
  374. data/gemfiles/ruby_2.7.3_cucumber3.gemfile.lock +186 -0
  375. data/gemfiles/ruby_2.7.3_cucumber4.gemfile +40 -0
  376. data/gemfiles/ruby_2.7.3_cucumber4.gemfile.lock +218 -0
  377. data/gemfiles/ruby_2.7.3_cucumber5.gemfile +40 -0
  378. data/gemfiles/ruby_2.7.3_cucumber5.gemfile.lock +218 -0
  379. data/gemfiles/ruby_2.7.3_rails5_mysql2.gemfile +43 -0
  380. data/gemfiles/ruby_2.7.3_rails5_mysql2.gemfile.lock +278 -0
  381. data/gemfiles/ruby_2.7.3_rails5_postgres.gemfile +43 -0
  382. data/gemfiles/ruby_2.7.3_rails5_postgres.gemfile.lock +278 -0
  383. data/gemfiles/ruby_2.7.3_rails5_postgres_redis.gemfile +45 -0
  384. data/gemfiles/ruby_2.7.3_rails5_postgres_redis.gemfile.lock +297 -0
  385. data/gemfiles/ruby_2.7.3_rails5_postgres_redis_activesupport.gemfile +45 -0
  386. data/gemfiles/ruby_2.7.3_rails5_postgres_redis_activesupport.gemfile.lock +297 -0
  387. data/gemfiles/ruby_2.7.3_rails5_postgres_sidekiq.gemfile +45 -0
  388. data/gemfiles/ruby_2.7.3_rails5_postgres_sidekiq.gemfile.lock +286 -0
  389. data/gemfiles/ruby_2.7.3_rails5_semantic_logger.gemfile +43 -0
  390. data/gemfiles/ruby_2.7.3_rails5_semantic_logger.gemfile.lock +277 -0
  391. data/gemfiles/ruby_2.7.3_rails61_mysql2.gemfile +43 -0
  392. data/gemfiles/ruby_2.7.3_rails61_mysql2.gemfile.lock +297 -0
  393. data/gemfiles/ruby_2.7.3_rails61_postgres.gemfile +43 -0
  394. data/gemfiles/ruby_2.7.3_rails61_postgres.gemfile.lock +297 -0
  395. data/gemfiles/ruby_2.7.3_rails61_postgres_redis.gemfile +44 -0
  396. data/gemfiles/ruby_2.7.3_rails61_postgres_redis.gemfile.lock +299 -0
  397. data/gemfiles/ruby_2.7.3_rails61_postgres_sidekiq.gemfile +44 -0
  398. data/gemfiles/ruby_2.7.3_rails61_postgres_sidekiq.gemfile.lock +304 -0
  399. data/gemfiles/ruby_2.7.3_rails61_semantic_logger.gemfile +43 -0
  400. data/gemfiles/ruby_2.7.3_rails61_semantic_logger.gemfile.lock +296 -0
  401. data/gemfiles/ruby_2.7.3_rails6_mysql2.gemfile +43 -0
  402. data/gemfiles/ruby_2.7.3_rails6_mysql2.gemfile.lock +294 -0
  403. data/gemfiles/ruby_2.7.3_rails6_postgres.gemfile +43 -0
  404. data/gemfiles/ruby_2.7.3_rails6_postgres.gemfile.lock +294 -0
  405. data/gemfiles/ruby_2.7.3_rails6_postgres_redis.gemfile +45 -0
  406. data/gemfiles/ruby_2.7.3_rails6_postgres_redis.gemfile.lock +313 -0
  407. data/gemfiles/ruby_2.7.3_rails6_postgres_redis_activesupport.gemfile +45 -0
  408. data/gemfiles/ruby_2.7.3_rails6_postgres_redis_activesupport.gemfile.lock +313 -0
  409. data/gemfiles/ruby_2.7.3_rails6_postgres_sidekiq.gemfile +45 -0
  410. data/gemfiles/ruby_2.7.3_rails6_postgres_sidekiq.gemfile.lock +302 -0
  411. data/gemfiles/ruby_2.7.3_rails6_semantic_logger.gemfile +43 -0
  412. data/gemfiles/ruby_2.7.3_rails6_semantic_logger.gemfile.lock +293 -0
  413. data/gemfiles/ruby_2.7.3_resque2_redis3.gemfile +41 -0
  414. data/gemfiles/ruby_2.7.3_resque2_redis3.gemfile.lock +192 -0
  415. data/gemfiles/ruby_2.7.3_resque2_redis4.gemfile +41 -0
  416. data/gemfiles/ruby_2.7.3_resque2_redis4.gemfile.lock +192 -0
  417. data/gemfiles/ruby_3.0.1_contrib.gemfile +80 -0
  418. data/gemfiles/ruby_3.0.1_contrib.gemfile.lock +1583 -0
  419. data/gemfiles/ruby_3.0.1_core_old.gemfile +40 -0
  420. data/gemfiles/ruby_3.0.1_core_old.gemfile.lock +167 -0
  421. data/gemfiles/ruby_3.0.1_cucumber3.gemfile +41 -0
  422. data/gemfiles/ruby_3.0.1_cucumber3.gemfile.lock +188 -0
  423. data/gemfiles/ruby_3.0.1_cucumber4.gemfile +41 -0
  424. data/gemfiles/ruby_3.0.1_cucumber4.gemfile.lock +220 -0
  425. data/gemfiles/ruby_3.0.1_cucumber5.gemfile +41 -0
  426. data/gemfiles/ruby_3.0.1_cucumber5.gemfile.lock +220 -0
  427. data/gemfiles/ruby_3.0.1_rails61_mysql2.gemfile +44 -0
  428. data/gemfiles/ruby_3.0.1_rails61_mysql2.gemfile.lock +297 -0
  429. data/gemfiles/ruby_3.0.1_rails61_postgres.gemfile +44 -0
  430. data/gemfiles/ruby_3.0.1_rails61_postgres.gemfile.lock +297 -0
  431. data/gemfiles/ruby_3.0.1_rails61_postgres_redis.gemfile +45 -0
  432. data/gemfiles/ruby_3.0.1_rails61_postgres_redis.gemfile.lock +299 -0
  433. data/gemfiles/ruby_3.0.1_rails61_postgres_sidekiq.gemfile +46 -0
  434. data/gemfiles/ruby_3.0.1_rails61_postgres_sidekiq.gemfile.lock +311 -0
  435. data/gemfiles/ruby_3.0.1_rails61_semantic_logger.gemfile +44 -0
  436. data/gemfiles/ruby_3.0.1_rails61_semantic_logger.gemfile.lock +296 -0
  437. data/gemfiles/ruby_3.0.1_resque2_redis3.gemfile +42 -0
  438. data/gemfiles/ruby_3.0.1_resque2_redis3.gemfile.lock +194 -0
  439. data/gemfiles/ruby_3.0.1_resque2_redis4.gemfile +42 -0
  440. data/gemfiles/ruby_3.0.1_resque2_redis4.gemfile.lock +194 -0
  441. data/integration/apps/rack/README.md +2 -2
  442. data/integration/apps/rack/script/ci +2 -1
  443. data/integration/apps/rails-five/README.md +2 -2
  444. data/integration/apps/rails-five/script/ci +2 -1
  445. data/integration/apps/rspec/.dockerignore +1 -0
  446. data/integration/apps/rspec/.envrc.sample +1 -0
  447. data/integration/apps/rspec/.gitignore +2 -0
  448. data/integration/apps/rspec/.rspec +1 -0
  449. data/integration/apps/rspec/Dockerfile +25 -0
  450. data/integration/apps/rspec/Dockerfile-ci +11 -0
  451. data/integration/apps/rspec/Gemfile +14 -0
  452. data/integration/apps/rspec/README.md +70 -0
  453. data/integration/apps/rspec/agent.yaml +3 -0
  454. data/integration/apps/rspec/app/datadog.rb +13 -0
  455. data/integration/apps/rspec/app/fibonacci.rb +30 -0
  456. data/integration/apps/rspec/bin/run +20 -0
  457. data/integration/apps/rspec/bin/setup +23 -0
  458. data/integration/apps/rspec/bin/test +21 -0
  459. data/integration/apps/rspec/docker-compose.ci.yml +51 -0
  460. data/integration/apps/rspec/docker-compose.yml +64 -0
  461. data/integration/apps/rspec/script/build-images +37 -0
  462. data/integration/apps/rspec/script/ci +53 -0
  463. data/integration/apps/rspec/spec/fibonacci_spec.rb +16 -0
  464. data/integration/apps/rspec/spec/rspec_spec.rb +58 -0
  465. data/integration/apps/rspec/spec/spec_helper.rb +24 -0
  466. data/integration/apps/ruby/README.md +2 -2
  467. data/integration/apps/ruby/script/ci +2 -1
  468. data/integration/images/include/datadog/demo_env.rb +15 -14
  469. data/lib/datadog/ci.rb +16 -0
  470. data/lib/datadog/ci/configuration/components.rb +30 -0
  471. data/lib/datadog/ci/configuration/settings.rb +36 -0
  472. data/lib/datadog/ci/context_flush.rb +28 -0
  473. data/lib/datadog/ci/contrib/cucumber/configuration/settings.rb +30 -0
  474. data/lib/datadog/ci/contrib/cucumber/ext.rb +19 -0
  475. data/lib/datadog/ci/contrib/cucumber/formatter.rb +97 -0
  476. data/lib/datadog/ci/contrib/cucumber/instrumentation.rb +26 -0
  477. data/lib/datadog/ci/contrib/cucumber/integration.rb +47 -0
  478. data/lib/datadog/ci/contrib/cucumber/patcher.rb +25 -0
  479. data/lib/datadog/ci/contrib/rspec/configuration/settings.rb +30 -0
  480. data/lib/datadog/ci/contrib/rspec/example.rb +73 -0
  481. data/lib/datadog/ci/contrib/rspec/ext.rb +18 -0
  482. data/lib/datadog/ci/contrib/rspec/integration.rb +48 -0
  483. data/lib/datadog/ci/contrib/rspec/patcher.rb +25 -0
  484. data/lib/datadog/ci/ext/app_types.rb +9 -0
  485. data/lib/datadog/ci/ext/environment.rb +438 -0
  486. data/lib/datadog/ci/ext/settings.rb +10 -0
  487. data/lib/datadog/ci/ext/test.rb +34 -0
  488. data/lib/datadog/ci/extensions.rb +17 -0
  489. data/lib/datadog/ci/test.rb +76 -0
  490. data/lib/datadog/core/environment/cgroup.rb +49 -0
  491. data/lib/datadog/core/environment/class_count.rb +19 -0
  492. data/lib/datadog/core/environment/container.rb +88 -0
  493. data/lib/datadog/core/environment/ext.rb +26 -0
  494. data/lib/datadog/core/environment/gc.rb +18 -0
  495. data/lib/datadog/core/environment/identity.rb +50 -0
  496. data/lib/datadog/core/environment/object_space.rb +22 -0
  497. data/lib/datadog/core/environment/socket.rb +16 -0
  498. data/lib/datadog/core/environment/thread_count.rb +18 -0
  499. data/lib/datadog/core/environment/variable_helpers.rb +39 -0
  500. data/lib/ddtrace.rb +2 -2
  501. data/lib/ddtrace/auto_instrument.rb +1 -0
  502. data/lib/ddtrace/buffer.rb +2 -2
  503. data/lib/ddtrace/configuration.rb +1 -23
  504. data/lib/ddtrace/configuration/agent_settings_resolver.rb +230 -0
  505. data/lib/ddtrace/configuration/base.rb +7 -10
  506. data/lib/ddtrace/configuration/components.rb +88 -43
  507. data/lib/ddtrace/configuration/options.rb +2 -2
  508. data/lib/ddtrace/configuration/settings.rb +76 -10
  509. data/lib/ddtrace/context.rb +17 -14
  510. data/lib/ddtrace/context_flush.rb +14 -2
  511. data/lib/ddtrace/contrib/action_cable/event.rb +4 -4
  512. data/lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb +1 -1
  513. data/lib/ddtrace/contrib/action_pack/action_controller/patcher.rb +1 -1
  514. data/lib/ddtrace/contrib/action_pack/utils.rb +1 -1
  515. data/lib/ddtrace/contrib/action_view/event.rb +2 -2
  516. data/lib/ddtrace/contrib/action_view/patcher.rb +4 -4
  517. data/lib/ddtrace/contrib/active_model_serializers/event.rb +2 -2
  518. data/lib/ddtrace/contrib/active_record/event.rb +2 -2
  519. data/lib/ddtrace/contrib/active_record/utils.rb +2 -2
  520. data/lib/ddtrace/contrib/active_support/cache/patcher.rb +7 -7
  521. data/lib/ddtrace/contrib/active_support/cache/redis.rb +1 -5
  522. data/lib/ddtrace/contrib/active_support/notifications/event.rb +2 -2
  523. data/lib/ddtrace/contrib/active_support/notifications/subscriber.rb +1 -1
  524. data/lib/ddtrace/contrib/auto_instrument.rb +1 -2
  525. data/lib/ddtrace/contrib/aws/instrumentation.rb +29 -0
  526. data/lib/ddtrace/contrib/aws/patcher.rb +4 -0
  527. data/lib/ddtrace/contrib/concurrent_ruby/patcher.rb +1 -1
  528. data/lib/ddtrace/contrib/configurable.rb +1 -1
  529. data/lib/ddtrace/contrib/dalli/instrumentation.rb +1 -1
  530. data/lib/ddtrace/contrib/dalli/patcher.rb +1 -1
  531. data/lib/ddtrace/contrib/ethon/easy_patch.rb +1 -1
  532. data/lib/ddtrace/contrib/ethon/multi_patch.rb +1 -1
  533. data/lib/ddtrace/contrib/ethon/patcher.rb +2 -2
  534. data/lib/ddtrace/contrib/extensions.rb +3 -3
  535. data/lib/ddtrace/contrib/faraday/patcher.rb +2 -2
  536. data/lib/ddtrace/contrib/grape/instrumentation.rb +2 -2
  537. data/lib/ddtrace/contrib/grape/patcher.rb +1 -1
  538. data/lib/ddtrace/contrib/grpc/patcher.rb +1 -1
  539. data/lib/ddtrace/contrib/http/instrumentation.rb +1 -1
  540. data/lib/ddtrace/contrib/http/patcher.rb +1 -1
  541. data/lib/ddtrace/contrib/httpclient/instrumentation.rb +1 -1
  542. data/lib/ddtrace/contrib/httpclient/patcher.rb +1 -1
  543. data/lib/ddtrace/contrib/httprb/instrumentation.rb +1 -1
  544. data/lib/ddtrace/contrib/httprb/patcher.rb +1 -1
  545. data/lib/ddtrace/contrib/integration.rb +3 -3
  546. data/lib/ddtrace/contrib/kafka/event.rb +2 -2
  547. data/lib/ddtrace/contrib/lograge/configuration/settings.rb +18 -0
  548. data/lib/ddtrace/contrib/lograge/ext.rb +10 -0
  549. data/lib/ddtrace/contrib/lograge/instrumentation.rb +38 -0
  550. data/lib/ddtrace/contrib/lograge/integration.rb +45 -0
  551. data/lib/ddtrace/contrib/{rspec → lograge}/patcher.rb +6 -4
  552. data/lib/ddtrace/contrib/mongodb/instrumentation.rb +2 -2
  553. data/lib/ddtrace/contrib/mongodb/patcher.rb +2 -2
  554. data/lib/ddtrace/contrib/mysql2/instrumentation.rb +1 -1
  555. data/lib/ddtrace/contrib/mysql2/patcher.rb +1 -1
  556. data/lib/ddtrace/contrib/patchable.rb +2 -2
  557. data/lib/ddtrace/contrib/patcher.rb +2 -2
  558. data/lib/ddtrace/contrib/presto/instrumentation.rb +1 -1
  559. data/lib/ddtrace/contrib/presto/patcher.rb +1 -1
  560. data/lib/ddtrace/contrib/qless/patcher.rb +3 -5
  561. data/lib/ddtrace/contrib/racecar/event.rb +2 -2
  562. data/lib/ddtrace/contrib/rack/middlewares.rb +1 -1
  563. data/lib/ddtrace/contrib/rails/framework.rb +25 -1
  564. data/lib/ddtrace/contrib/rails/log_injection.rb +0 -40
  565. data/lib/ddtrace/contrib/rails/patcher.rb +11 -9
  566. data/lib/ddtrace/contrib/rake/instrumentation.rb +1 -1
  567. data/lib/ddtrace/contrib/rake/patcher.rb +1 -1
  568. data/lib/ddtrace/contrib/registerable.rb +2 -2
  569. data/lib/ddtrace/contrib/resque/patcher.rb +1 -1
  570. data/lib/ddtrace/contrib/rest_client/patcher.rb +1 -1
  571. data/lib/ddtrace/contrib/rest_client/request_patch.rb +1 -1
  572. data/lib/ddtrace/contrib/semantic_logger/configuration/settings.rb +18 -0
  573. data/lib/ddtrace/contrib/semantic_logger/ext.rb +10 -0
  574. data/lib/ddtrace/contrib/semantic_logger/instrumentation.rb +42 -0
  575. data/lib/ddtrace/contrib/semantic_logger/integration.rb +47 -0
  576. data/lib/ddtrace/contrib/semantic_logger/patcher.rb +25 -0
  577. data/lib/ddtrace/contrib/sequel/database.rb +1 -1
  578. data/lib/ddtrace/contrib/sequel/dataset.rb +1 -1
  579. data/lib/ddtrace/contrib/sequel/patcher.rb +2 -2
  580. data/lib/ddtrace/contrib/sinatra/patcher.rb +1 -1
  581. data/lib/ddtrace/contrib/sucker_punch/exception_handler.rb +4 -6
  582. data/lib/ddtrace/contrib/sucker_punch/instrumentation.rb +4 -0
  583. data/lib/ddtrace/correlation.rb +1 -1
  584. data/lib/ddtrace/diagnostics/environment_logger.rb +4 -4
  585. data/lib/ddtrace/error.rb +76 -9
  586. data/lib/ddtrace/ext/app_types.rb +0 -1
  587. data/lib/ddtrace/ext/environment.rb +7 -0
  588. data/lib/ddtrace/ext/git.rb +9 -1
  589. data/lib/ddtrace/ext/profiling.rb +1 -0
  590. data/lib/ddtrace/ext/runtime.rb +0 -9
  591. data/lib/ddtrace/ext/test.rb +2 -18
  592. data/lib/ddtrace/ext/transport.rb +1 -0
  593. data/lib/ddtrace/metrics.rb +64 -13
  594. data/lib/ddtrace/opentelemetry/extensions.rb +1 -1
  595. data/lib/ddtrace/opentracer.rb +20 -39
  596. data/lib/ddtrace/patcher.rb +2 -2
  597. data/lib/ddtrace/profiling.rb +75 -22
  598. data/lib/ddtrace/profiling/collectors/stack.rb +17 -8
  599. data/lib/ddtrace/profiling/encoding/profile.rb +6 -0
  600. data/lib/ddtrace/profiling/ext/cpu.rb +18 -5
  601. data/lib/ddtrace/profiling/ext/cthread.rb +56 -35
  602. data/lib/ddtrace/profiling/ext/forking.rb +7 -7
  603. data/lib/ddtrace/profiling/flush.rb +12 -10
  604. data/lib/ddtrace/profiling/pprof/builder.rb +26 -28
  605. data/lib/ddtrace/profiling/pprof/converter.rb +4 -0
  606. data/lib/ddtrace/profiling/pprof/stack_sample.rb +17 -1
  607. data/lib/ddtrace/profiling/pprof/template.rb +4 -0
  608. data/lib/ddtrace/profiling/profiler.rb +2 -0
  609. data/lib/ddtrace/profiling/recorder.rb +8 -0
  610. data/lib/ddtrace/profiling/scheduler.rb +44 -12
  611. data/lib/ddtrace/profiling/tasks/setup.rb +13 -13
  612. data/lib/ddtrace/profiling/transport/http.rb +58 -62
  613. data/lib/ddtrace/profiling/transport/http/api/endpoint.rb +12 -2
  614. data/lib/ddtrace/runtime/metrics.rb +20 -14
  615. data/lib/ddtrace/span.rb +17 -6
  616. data/lib/ddtrace/sync_writer.rb +4 -3
  617. data/lib/ddtrace/tracer.rb +19 -44
  618. data/lib/ddtrace/transport/http.rb +43 -40
  619. data/lib/ddtrace/transport/http/statistics.rb +2 -2
  620. data/lib/ddtrace/transport/http/traces.rb +3 -3
  621. data/lib/ddtrace/transport/io/traces.rb +1 -1
  622. data/lib/ddtrace/utils/forking.rb +1 -1
  623. data/lib/ddtrace/utils/object_set.rb +3 -5
  624. data/lib/ddtrace/utils/time.rb +1 -3
  625. data/lib/ddtrace/version.rb +15 -5
  626. data/lib/ddtrace/workers.rb +1 -1
  627. data/lib/ddtrace/workers/async.rb +3 -2
  628. data/lib/ddtrace/workers/loop.rb +14 -2
  629. data/lib/ddtrace/workers/polling.rb +11 -5
  630. data/lib/ddtrace/workers/queue.rb +1 -1
  631. data/lib/ddtrace/workers/trace_writer.rb +3 -6
  632. data/lib/ddtrace/writer.rb +6 -3
  633. data/tasks/update_appraisal_gemfiles.rake +36 -0
  634. metadata +493 -33
  635. data/.circleci/images/primary/Dockerfile-2.0.0 +0 -83
  636. data/integration/images/ruby/2.0/Dockerfile +0 -54
  637. data/lib/ddtrace/contrib/cucumber/configuration/settings.rb +0 -28
  638. data/lib/ddtrace/contrib/cucumber/ext.rb +0 -17
  639. data/lib/ddtrace/contrib/cucumber/formatter.rb +0 -98
  640. data/lib/ddtrace/contrib/cucumber/instrumentation.rb +0 -24
  641. data/lib/ddtrace/contrib/cucumber/integration.rb +0 -45
  642. data/lib/ddtrace/contrib/cucumber/patcher.rb +0 -23
  643. data/lib/ddtrace/contrib/rspec/configuration/settings.rb +0 -28
  644. data/lib/ddtrace/contrib/rspec/example.rb +0 -75
  645. data/lib/ddtrace/contrib/rspec/ext.rb +0 -16
  646. data/lib/ddtrace/contrib/rspec/integration.rb +0 -46
  647. data/lib/ddtrace/environment.rb +0 -41
  648. data/lib/ddtrace/ext/ci.rb +0 -297
  649. data/lib/ddtrace/runtime/cgroup.rb +0 -44
  650. data/lib/ddtrace/runtime/class_count.rb +0 -17
  651. data/lib/ddtrace/runtime/container.rb +0 -79
  652. data/lib/ddtrace/runtime/gc.rb +0 -16
  653. data/lib/ddtrace/runtime/identity.rb +0 -48
  654. data/lib/ddtrace/runtime/object_space.rb +0 -19
  655. data/lib/ddtrace/runtime/socket.rb +0 -14
  656. data/lib/ddtrace/runtime/thread_count.rb +0 -16
data/CHANGELOG.md CHANGED
@@ -2,6 +2,116 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.51.1] - 2021-07-13
6
+
7
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.51.1
8
+
9
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.51.0...v0.51.1
10
+
11
+ ### Fixed
12
+
13
+ - AWS-SDK instrumentation without `aws-sdk-s3` ([#1592][])
14
+
15
+ ## [0.51.0] - 2021-07-12
16
+
17
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.51.0
18
+
19
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.50.0...v0.51.0
20
+
21
+ ### Added
22
+
23
+ - Semantic Logger trace correlation injection ([#1566][])
24
+ - New and improved Lograge trace correlation injection ([#1555][])
25
+ - Profiler: Start profiler on `ddtrace/auto_instrument`
26
+ - CI-App: Add runtime and OS information ([#1587][])
27
+ - CI-App: Read metadata from local git repository ([#1561][])
28
+
29
+ ### Changed
30
+
31
+ - Rename `Datadog::Runtime` to `Datadog::Core::Environment` ([#1570][])
32
+
33
+ As we prepare the `Datadog` Ruby namespace to better accommodate new products, we are moving a few internal modules to a different location to avoid conflicts.
34
+
35
+ None of the affected files are exposed publicly in our documentation, and they are only expected to be used internally and may change at any time, even between patch releases.
36
+
37
+ * The following modules have been moved:
38
+ ```ruby
39
+ Datadog::Runtime::Cgroup -> Datadog::Core::Environment::Cgroup
40
+ Datadog::Runtime::ClassCount -> Datadog::Core::Environment::ClassCount
41
+ Datadog::Runtime::Container -> Datadog::Core::Environment::Container
42
+ Datadog::Runtime::GC -> Datadog::Core::Environment::GC
43
+ Datadog::Runtime::Identity -> Datadog::Core::Environment::Identity
44
+ Datadog::Runtime::ObjectSpace -> Datadog::Core::Environment::ObjectSpace
45
+ Datadog::Runtime::Socket -> Datadog::Core::Environment::Socket
46
+ Datadog::Runtime::ThreadCount -> Datadog::Core::Environment::ThreadCount
47
+ ```
48
+ * Most constants from `Datadog::Ext::Runtime` have been moved to a new module: `Datadog::Core::Environment::Ext`.
49
+ - Skip CPU time instrumentation if logging gem is detected ([#1557][])
50
+
51
+ ### Fixed
52
+
53
+ - Initialize `dogstatsd-ruby` in single threaded mode ([#1576][])
54
+
55
+ This should alleviate any existing issues with `dogstatsd-ruby` resource leaks.
56
+
57
+ - Do not use configured `dogstatsd-ruby` instance when it's an incompatible version ([#1560][])
58
+ - Ensure tags with special Datadog processing are consistently serialized ([#1556][])
59
+ - Profiler: NameError during initialization ([#1552][])
60
+
61
+ ### Refactored
62
+ - Improvements to test suite & CI ([#1586][])
63
+ - Improvements to documentation ([#1397][])
64
+
65
+ ## [0.50.0] - 2021-06-07
66
+
67
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.50.0
68
+
69
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.49.0...v0.50.0
70
+
71
+ ### Added
72
+
73
+ - Add warning, update documentation, for incompatible dogstastd-ruby version ([#1544][][#1533][])
74
+ - Add CI mode and Test mode feature ([#1504][])
75
+ - Add Gem.loaded_specs fallback behavior if protobuf or dogstatsd-ruby already loaded([#1506][][#1510][])
76
+
77
+ ### Changed
78
+
79
+ - Declare EOL for Ruby 2.0 support ([#1534][])
80
+ - Rename Thread#native_thread_id to #pthread_thread_id to avoid conflict with Ruby 3.1 ([#1537][])
81
+
82
+ ### Fixed
83
+
84
+ - Fix tracer ignoring value for service tag (service.name) in DD_TAGS ([#1543][])
85
+ - Fix nested error reporting to correctly walk clause chain ([#1535][])
86
+ - Fix AWS integration to prevent S3 URL presigning from generating a remote request span ([#1494][])
87
+ - Fix backtrace handling of exception classes that return nil message ([#1500][]) ([@masato-hi][])
88
+
89
+ ### Refactored
90
+
91
+ - Cleanup Ruby 2.0 Code (dropping Ruby 2.0 support) ([#1529][][#1523][][#1524][][#1509][][#1507][][#1503][][#1502][])
92
+
93
+ ## [0.49.0] - 2021-05-12
94
+
95
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.49.0
96
+
97
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.48.0...v0.49.0
98
+
99
+ ### Added
100
+
101
+ - Add cause to error stack trace ([#1472][])
102
+
103
+ ### Changed
104
+
105
+ ### Fixed
106
+
107
+ - Prevent double initialization when auto instrumenting non-Rails applications ([#1497][])
108
+ - Support kwargs in Ruby 3.0 for sucker_punch ([#1495][]) ([@lloeki][])
109
+ - Fargate fixes and Container parsing for CGroups ([#1487][][#1480][][#1475][])
110
+ - Fix ActionPack instrumentation `#starts_with?` error([#1489][])
111
+ - Doc fixes ([#1473][]) ([@kexoth][])
112
+
113
+ ### Refactored
114
+
5
115
  ## [0.48.0] - 2021-04-19
6
116
 
7
117
  Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.48.0
@@ -1663,6 +1773,8 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
1663
1773
  Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
1664
1774
 
1665
1775
  [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.48.0...master
1776
+ [0.51.1]: https://github.com/DataDog/dd-trace-rb/compare/v0.51.0...v0.51.1
1777
+ [0.51.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.50.0...v0.51.0
1666
1778
  [0.48.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.47.0...v0.48.0
1667
1779
  [0.47.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.46.0...v0.47.0
1668
1780
  [0.46.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.45.0...v0.46.0
@@ -2309,6 +2421,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2309
2421
  [#1393]: https://github.com/DataDog/dd-trace-rb/issues/1393
2310
2422
  [#1394]: https://github.com/DataDog/dd-trace-rb/issues/1394
2311
2423
  [#1396]: https://github.com/DataDog/dd-trace-rb/issues/1396
2424
+ [#1397]: https://github.com/DataDog/dd-trace-rb/issues/1397
2312
2425
  [#1398]: https://github.com/DataDog/dd-trace-rb/issues/1398
2313
2426
  [#1399]: https://github.com/DataDog/dd-trace-rb/issues/1399
2314
2427
  [#1400]: https://github.com/DataDog/dd-trace-rb/issues/1400
@@ -2343,6 +2456,44 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2343
2456
  [#1456]: https://github.com/DataDog/dd-trace-rb/issues/1456
2344
2457
  [#1457]: https://github.com/DataDog/dd-trace-rb/issues/1457
2345
2458
  [#1461]: https://github.com/DataDog/dd-trace-rb/issues/1461
2459
+ [#1472]: https://github.com/DataDog/dd-trace-rb/issues/1472
2460
+ [#1473]: https://github.com/DataDog/dd-trace-rb/issues/1473
2461
+ [#1475]: https://github.com/DataDog/dd-trace-rb/issues/1475
2462
+ [#1480]: https://github.com/DataDog/dd-trace-rb/issues/1480
2463
+ [#1487]: https://github.com/DataDog/dd-trace-rb/issues/1487
2464
+ [#1489]: https://github.com/DataDog/dd-trace-rb/issues/1489
2465
+ [#1494]: https://github.com/DataDog/dd-trace-rb/issues/1494
2466
+ [#1495]: https://github.com/DataDog/dd-trace-rb/issues/1495
2467
+ [#1497]: https://github.com/DataDog/dd-trace-rb/issues/1497
2468
+ [#1500]: https://github.com/DataDog/dd-trace-rb/issues/1500
2469
+ [#1502]: https://github.com/DataDog/dd-trace-rb/issues/1502
2470
+ [#1503]: https://github.com/DataDog/dd-trace-rb/issues/1503
2471
+ [#1504]: https://github.com/DataDog/dd-trace-rb/issues/1504
2472
+ [#1506]: https://github.com/DataDog/dd-trace-rb/issues/1506
2473
+ [#1507]: https://github.com/DataDog/dd-trace-rb/issues/1507
2474
+ [#1509]: https://github.com/DataDog/dd-trace-rb/issues/1509
2475
+ [#1510]: https://github.com/DataDog/dd-trace-rb/issues/1510
2476
+ [#1523]: https://github.com/DataDog/dd-trace-rb/issues/1523
2477
+ [#1524]: https://github.com/DataDog/dd-trace-rb/issues/1524
2478
+ [#1529]: https://github.com/DataDog/dd-trace-rb/issues/1529
2479
+ [#1533]: https://github.com/DataDog/dd-trace-rb/issues/1533
2480
+ [#1534]: https://github.com/DataDog/dd-trace-rb/issues/1534
2481
+ [#1535]: https://github.com/DataDog/dd-trace-rb/issues/1535
2482
+ [#1537]: https://github.com/DataDog/dd-trace-rb/issues/1537
2483
+ [#1543]: https://github.com/DataDog/dd-trace-rb/issues/1543
2484
+ [#1544]: https://github.com/DataDog/dd-trace-rb/issues/1544
2485
+ [#1552]: https://github.com/DataDog/dd-trace-rb/issues/1552
2486
+ [#1555]: https://github.com/DataDog/dd-trace-rb/issues/1555
2487
+ [#1556]: https://github.com/DataDog/dd-trace-rb/issues/1556
2488
+ [#1557]: https://github.com/DataDog/dd-trace-rb/issues/1557
2489
+ [#1560]: https://github.com/DataDog/dd-trace-rb/issues/1560
2490
+ [#1561]: https://github.com/DataDog/dd-trace-rb/issues/1561
2491
+ [#1566]: https://github.com/DataDog/dd-trace-rb/issues/1566
2492
+ [#1570]: https://github.com/DataDog/dd-trace-rb/issues/1570
2493
+ [#1576]: https://github.com/DataDog/dd-trace-rb/issues/1576
2494
+ [#1586]: https://github.com/DataDog/dd-trace-rb/issues/1586
2495
+ [#1587]: https://github.com/DataDog/dd-trace-rb/issues/1587
2496
+ [#1592]: https://github.com/DataDog/dd-trace-rb/issues/1592
2346
2497
  [@AdrianLC]: https://github.com/AdrianLC
2347
2498
  [@Azure7111]: https://github.com/Azure7111
2348
2499
  [@BabyGroot]: https://github.com/BabyGroot
@@ -2411,11 +2562,14 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2411
2562
  [@jpaulgs]: https://github.com/jpaulgs
2412
2563
  [@jvalanen]: https://github.com/jvalanen
2413
2564
  [@kelvin-acosta]: https://github.com/kelvin-acosta
2565
+ [@kexoth]: https://github.com/kexoth
2414
2566
  [@kissrobber]: https://github.com/kissrobber
2415
2567
  [@kitop]: https://github.com/kitop
2416
2568
  [@letiesperon]: https://github.com/letiesperon
2417
2569
  [@link04]: https://github.com/link04
2570
+ [@lloeki]: https://github.com/lloeki
2418
2571
  [@mantrala]: https://github.com/mantrala
2572
+ [@masato-hi]: https://github.com/masato-hi
2419
2573
  [@matchbookmac]: https://github.com/matchbookmac
2420
2574
  [@mberlanda]: https://github.com/mberlanda
2421
2575
  [@mdehoog]: https://github.com/mdehoog
data/Gemfile CHANGED
@@ -15,6 +15,7 @@ gem 'memory_profiler', '~> 0.9'
15
15
  gem 'minitest', '= 5.10.1'
16
16
  gem 'minitest-around', '0.5.0'
17
17
  gem 'minitest-stub_any_instance', '1.0.2'
18
+ gem 'os', '~> 1.1'
18
19
  gem 'pimpmychangelog', '>= 0.1.2'
19
20
  gem 'pry'
20
21
  if RUBY_PLATFORM != 'java'
@@ -25,12 +26,12 @@ if RUBY_PLATFORM != 'java'
25
26
  else
26
27
  gem 'pry-debugger-jruby'
27
28
  end
28
- gem 'rake', '>= 10.5'
29
+ gem 'rake', '>= 10.5', '< 13.0.4' # Locking rake until https://github.com/thoughtbot/appraisal/pull/184 is released
29
30
  gem 'redcarpet', '~> 3.4' if RUBY_PLATFORM != 'java'
30
31
  gem 'rspec', '~> 3.10'
31
32
  gem 'rspec-collection_matchers', '~> 1.1'
32
33
  gem 'rspec_junit_formatter', '>= 0.4.1'
33
- gem 'rspec_n', '~> 1.3' if RUBY_VERSION >= '2.3.0'
34
+ gem 'rspec_n', '~> 1.3' if RUBY_VERSION >= '2.4.0'
34
35
  gem 'ruby-prof', '~> 1.4' if RUBY_PLATFORM != 'java' && RUBY_VERSION >= '2.4.0'
35
36
  if RUBY_VERSION >= '2.5.0'
36
37
  # Merging branch coverage results does not work for old, unsupported rubies.
@@ -58,7 +59,9 @@ end
58
59
 
59
60
  # Optional extensions
60
61
  # TODO: Move this to Appraisals?
61
- gem 'dogstatsd-ruby', '>= 3.3.0'
62
+ # dogstatsd v5, but lower than 5.2, has possible memory leak with ddtrace.
63
+ # @see https://github.com/DataDog/dogstatsd-ruby/issues/182
64
+ gem 'dogstatsd-ruby', '>= 3.3.0', '!= 5.0.0', '!= 5.0.1', '!= 5.1.0'
62
65
  gem 'opentracing', '>= 0.4.1'
63
66
 
64
67
  # Profiler optional dependencies
data/Rakefile CHANGED
@@ -39,7 +39,8 @@ namespace :spec do
39
39
 
40
40
  RSpec::Core::RakeTask.new(:rails) do |t, args|
41
41
  t.pattern = 'spec/ddtrace/contrib/rails/**/*_spec.rb'
42
- t.exclude_pattern = 'spec/ddtrace/contrib/rails/**/*{active_job,disable_env,redis_cache,auto_instrument}*_spec.rb'
42
+ t.exclude_pattern = 'spec/ddtrace/contrib/rails/**/*{active_job,disable_env,redis_cache,auto_instrument,'\
43
+ 'semantic_logger}*_spec.rb'
43
44
  t.rspec_opts = args.to_a.join(' ')
44
45
  end
45
46
 
@@ -68,6 +69,14 @@ namespace :spec do
68
69
  t.rspec_opts = args.to_a.join(' ')
69
70
  end
70
71
 
72
+ # rails_semantic_logger is the dog at the dog park that doesnt play nicely with other
73
+ # logging gems, aka it tries to bite/monkeypatch them, so we have to put it in its own appraisal and rake task
74
+ # in order to isolate its effects for rails logs auto injection
75
+ RSpec::Core::RakeTask.new(:railssemanticlogger) do |t, args|
76
+ t.pattern = 'spec/ddtrace/contrib/rails/**/*rails_semantic_logger*_spec.rb'
77
+ t.rspec_opts = args.to_a.join(' ')
78
+ end
79
+
71
80
  RSpec::Core::RakeTask.new(:contrib) do |t, args|
72
81
  contrib_paths = [
73
82
  'analytics',
@@ -87,6 +96,7 @@ namespace :spec do
87
96
  t.rspec_opts = args.to_a.join(' ')
88
97
  end
89
98
 
99
+ # Datadog Tracing integrations
90
100
  [
91
101
  :action_cable,
92
102
  :action_pack,
@@ -110,6 +120,7 @@ namespace :spec do
110
120
  :httpclient,
111
121
  :httprb,
112
122
  :kafka,
123
+ :lograge,
113
124
  :mongodb,
114
125
  :mysql2,
115
126
  :presto,
@@ -122,6 +133,7 @@ namespace :spec do
122
133
  :resque,
123
134
  :rest_client,
124
135
  :rspec,
136
+ :semantic_logger,
125
137
  :sequel,
126
138
  :shoryuken,
127
139
  :sidekiq,
@@ -135,6 +147,17 @@ namespace :spec do
135
147
  t.rspec_opts = args.to_a.join(' ')
136
148
  end
137
149
  end
150
+
151
+ # Datadog CI integrations
152
+ [
153
+ :cucumber,
154
+ :rspec
155
+ ].each do |contrib|
156
+ RSpec::Core::RakeTask.new(contrib) do |t, args|
157
+ t.pattern = "spec/datadog/ci/contrib/#{contrib}/**/*_spec.rb"
158
+ t.rspec_opts = args.to_a.join(' ')
159
+ end
160
+ end
138
161
  end
139
162
 
140
163
  namespace :test do
@@ -191,6 +214,14 @@ def declare(*args)
191
214
  total_executors = ENV.key?('CIRCLE_NODE_TOTAL') ? ENV['CIRCLE_NODE_TOTAL'].to_i : nil
192
215
  current_executor = ENV.key?('CIRCLE_NODE_INDEX') ? ENV['CIRCLE_NODE_INDEX'].to_i : nil
193
216
 
217
+ ruby_runtime = if defined?(RUBY_ENGINE_VERSION)
218
+ "#{RUBY_ENGINE}-#{RUBY_ENGINE_VERSION}"
219
+ else
220
+ "#{RUBY_ENGINE}-#{RUBY_VERSION}" # For Ruby < 2.3
221
+ end
222
+
223
+ args[0].sub!(/^bundle exec appraisal /, "bundle exec appraisal #{ruby_runtime}-")
224
+
194
225
  if total_executors && current_executor && total_executors > 1
195
226
  @execution_count ||= 0
196
227
  @execution_count += 1
@@ -204,63 +235,6 @@ desc 'CI task; it runs all tests for current version of Ruby'
204
235
  task :ci do
205
236
  if Gem::Version.new(RUBY_VERSION) < Gem::Version.new(Datadog::VERSION::MINIMUM_RUBY_VERSION)
206
237
  raise NotImplementedError, "Ruby versions < #{Datadog::VERSION::MINIMUM_RUBY_VERSION} are not supported!"
207
- elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
208
- && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.1.0')
209
- # Main library
210
- declare 'bundle exec rake test:main'
211
- declare 'bundle exec rake spec:main'
212
- declare 'bundle exec appraisal core-old rake spec:main'
213
- declare 'bundle exec rake spec:contrib'
214
-
215
- if RUBY_PLATFORM != 'java'
216
- # Contrib specs
217
- declare 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
218
- declare 'bundle exec appraisal contrib-old rake spec:active_record'
219
- declare 'bundle exec appraisal contrib-old rake spec:active_support'
220
- declare 'bundle exec appraisal contrib-old rake spec:autoinstrument'
221
- declare 'bundle exec appraisal contrib-old rake spec:aws'
222
- declare 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
223
- declare 'bundle exec appraisal contrib-old rake spec:dalli'
224
- declare 'bundle exec appraisal contrib-old rake spec:delayed_job'
225
- declare 'bundle exec appraisal contrib-old rake spec:elasticsearch'
226
- declare 'bundle exec appraisal contrib-old rake spec:ethon'
227
- declare 'bundle exec appraisal contrib-old rake spec:excon'
228
- declare 'bundle exec appraisal contrib-old rake spec:faraday'
229
- declare 'bundle exec appraisal contrib-old rake spec:http'
230
- declare 'bundle exec appraisal contrib-old rake spec:httpclient'
231
- declare 'bundle exec appraisal contrib-old rake spec:httprb'
232
- declare 'bundle exec appraisal contrib-old rake spec:mongodb'
233
- declare 'bundle exec appraisal contrib-old rake spec:mysql2'
234
- declare 'bundle exec appraisal contrib-old rake spec:rack'
235
- declare 'bundle exec appraisal contrib-old rake spec:rake'
236
- declare 'bundle exec appraisal contrib-old rake spec:redis'
237
- declare 'bundle exec appraisal contrib-old rake spec:resque'
238
- declare 'bundle exec appraisal contrib-old rake spec:rest_client'
239
- declare 'bundle exec appraisal contrib-old rake spec:rspec'
240
- declare 'bundle exec appraisal contrib-old rake spec:sequel'
241
- declare 'bundle exec appraisal contrib-old rake spec:sidekiq'
242
- declare 'bundle exec appraisal contrib-old rake spec:sinatra'
243
- declare 'bundle exec appraisal contrib-old rake spec:sucker_punch'
244
- declare 'bundle exec appraisal contrib-old rake spec:suite'
245
- # Rails minitests
246
- declare 'bundle exec appraisal rails30-postgres rake test:rails'
247
- declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
248
- declare 'bundle exec appraisal rails30-postgres rake spec:railsautoinstrument'
249
- declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
250
- declare 'bundle exec appraisal rails32-postgres rake test:rails'
251
- declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
252
- declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
253
- declare 'bundle exec appraisal rails32-postgres rake spec:railsautoinstrument'
254
- # Rails specs
255
- declare 'bundle exec appraisal rails30-postgres rake spec:rails'
256
- declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
257
- declare 'bundle exec appraisal rails32-postgres rake spec:rails'
258
- # Rails suite specs
259
- declare 'bundle exec appraisal rails32-postgres rake spec:action_pack'
260
- declare 'bundle exec appraisal rails32-postgres rake spec:action_view'
261
- declare 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
262
- declare 'bundle exec appraisal rails32-postgres rake spec:active_support'
263
- end
264
238
  elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
265
239
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.2.0')
266
240
  # Main library
@@ -270,64 +244,64 @@ task :ci do
270
244
  declare 'bundle exec rake spec:contrib'
271
245
  declare 'bundle exec rake spec:opentracer'
272
246
 
273
- if RUBY_PLATFORM != 'java'
274
- # Contrib specs
275
- declare 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
276
- declare 'bundle exec appraisal contrib-old rake spec:active_record'
277
- declare 'bundle exec appraisal contrib-old rake spec:active_support'
278
- declare 'bundle exec appraisal contrib-old rake spec:autoinstrument'
279
- declare 'bundle exec appraisal contrib-old rake spec:aws'
280
- declare 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
281
- declare 'bundle exec appraisal contrib-old rake spec:dalli'
282
- declare 'bundle exec appraisal contrib-old rake spec:delayed_job'
283
- declare 'bundle exec appraisal contrib-old rake spec:elasticsearch'
284
- declare 'bundle exec appraisal contrib-old rake spec:ethon'
285
- declare 'bundle exec appraisal contrib-old rake spec:excon'
286
- declare 'bundle exec appraisal contrib-old rake spec:faraday'
287
- declare 'bundle exec appraisal contrib-old rake spec:http'
288
- declare 'bundle exec appraisal contrib-old rake spec:httpclient'
289
- declare 'bundle exec appraisal contrib-old rake spec:httprb'
290
- declare 'bundle exec appraisal contrib-old rake spec:kafka'
291
- declare 'bundle exec appraisal contrib-old rake spec:mongodb'
292
- declare 'bundle exec appraisal contrib-old rake spec:mysql2'
293
- declare 'bundle exec appraisal contrib-old rake spec:presto'
294
- declare 'bundle exec appraisal contrib-old rake spec:rack'
295
- declare 'bundle exec appraisal contrib-old rake spec:rake'
296
- declare 'bundle exec appraisal contrib-old rake spec:redis'
297
- declare 'bundle exec appraisal contrib-old rake spec:resque'
298
- declare 'bundle exec appraisal contrib-old rake spec:rest_client'
299
- declare 'bundle exec appraisal contrib-old rake spec:rspec'
300
- declare 'bundle exec appraisal contrib-old rake spec:sequel'
301
- declare 'bundle exec appraisal contrib-old rake spec:sidekiq'
302
- declare 'bundle exec appraisal contrib-old rake spec:sinatra'
303
- declare 'bundle exec appraisal contrib-old rake spec:sucker_punch'
304
- declare 'bundle exec appraisal contrib-old rake spec:suite'
305
- # Rails minitests
306
- declare 'bundle exec appraisal rails30-postgres rake test:rails'
307
- declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
308
- declare 'bundle exec appraisal rails30-postgres rake spec:railsautoinstrument'
309
- declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
310
- declare 'bundle exec appraisal rails32-postgres rake test:rails'
311
- declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
312
- declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
313
- declare 'bundle exec appraisal rails32-postgres rake spec:railsautoinstrument'
314
- declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
315
- declare 'bundle exec appraisal rails4-postgres rake test:rails'
316
- declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
317
- declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
318
- declare 'bundle exec appraisal rails4-postgres rake spec:railsautoinstrument'
319
- # Rails specs
320
- declare 'bundle exec appraisal rails30-postgres rake spec:rails'
321
- declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
322
- declare 'bundle exec appraisal rails32-postgres rake spec:rails'
323
- declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
324
- declare 'bundle exec appraisal rails4-postgres rake spec:rails'
325
- # Rails suite specs
326
- declare 'bundle exec appraisal rails32-postgres rake spec:action_pack'
327
- declare 'bundle exec appraisal rails32-postgres rake spec:action_view'
328
- declare 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
329
- declare 'bundle exec appraisal rails32-postgres rake spec:active_support'
330
- end
247
+ # Contrib specs
248
+ declare 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
249
+ declare 'bundle exec appraisal contrib-old rake spec:active_record'
250
+ declare 'bundle exec appraisal contrib-old rake spec:active_support'
251
+ declare 'bundle exec appraisal contrib-old rake spec:autoinstrument'
252
+ declare 'bundle exec appraisal contrib-old rake spec:aws'
253
+ declare 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
254
+ declare 'bundle exec appraisal contrib-old rake spec:dalli'
255
+ declare 'bundle exec appraisal contrib-old rake spec:delayed_job'
256
+ declare 'bundle exec appraisal contrib-old rake spec:elasticsearch'
257
+ declare 'bundle exec appraisal contrib-old rake spec:ethon'
258
+ declare 'bundle exec appraisal contrib-old rake spec:excon'
259
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
260
+ declare 'bundle exec appraisal contrib-old rake spec:http'
261
+ declare 'bundle exec appraisal contrib-old rake spec:httpclient'
262
+ declare 'bundle exec appraisal contrib-old rake spec:httprb'
263
+ declare 'bundle exec appraisal contrib-old rake spec:kafka'
264
+ declare 'bundle exec appraisal contrib-old rake spec:mongodb'
265
+ declare 'bundle exec appraisal contrib-old rake spec:mysql2'
266
+ declare 'bundle exec appraisal contrib-old rake spec:presto'
267
+ declare 'bundle exec appraisal contrib-old rake spec:rack'
268
+ declare 'bundle exec appraisal contrib-old rake spec:rake'
269
+ declare 'bundle exec appraisal contrib-old rake spec:redis'
270
+ declare 'bundle exec appraisal contrib-old rake spec:resque'
271
+ declare 'bundle exec appraisal contrib-old rake spec:rest_client'
272
+ declare 'bundle exec appraisal contrib-old rake spec:rspec'
273
+ declare 'bundle exec appraisal contrib-old rake spec:semantic_logger'
274
+ declare 'bundle exec appraisal contrib-old rake spec:sequel'
275
+ declare 'bundle exec appraisal contrib-old rake spec:sidekiq'
276
+ declare 'bundle exec appraisal contrib-old rake spec:sinatra'
277
+ declare 'bundle exec appraisal contrib-old rake spec:sucker_punch'
278
+ declare 'bundle exec appraisal contrib-old rake spec:suite'
279
+ # Rails minitests
280
+ declare 'bundle exec appraisal rails30-postgres rake test:rails'
281
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
282
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsautoinstrument'
283
+ declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
284
+ declare 'bundle exec appraisal rails32-postgres rake test:rails'
285
+ declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
286
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
287
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsautoinstrument'
288
+ declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
289
+ declare 'bundle exec appraisal rails4-postgres rake test:rails'
290
+ declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
291
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
292
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsautoinstrument'
293
+ declare 'bundle exec appraisal rails4-semantic-logger rake spec:railssemanticlogger'
294
+ # Rails specs
295
+ declare 'bundle exec appraisal rails30-postgres rake spec:rails'
296
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
297
+ declare 'bundle exec appraisal rails32-postgres rake spec:rails'
298
+ declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
299
+ declare 'bundle exec appraisal rails4-postgres rake spec:rails'
300
+ # Rails suite specs
301
+ declare 'bundle exec appraisal rails32-postgres rake spec:action_pack'
302
+ declare 'bundle exec appraisal rails32-postgres rake spec:action_view'
303
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
304
+ declare 'bundle exec appraisal rails32-postgres rake spec:active_support'
331
305
  elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION)\
332
306
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')
333
307
  # Main library
@@ -337,80 +311,82 @@ task :ci do
337
311
  declare 'bundle exec rake spec:contrib'
338
312
  declare 'bundle exec rake spec:opentracer'
339
313
 
340
- if RUBY_PLATFORM != 'java'
341
- # Contrib minitests
342
- # Contrib specs
343
- declare 'bundle exec appraisal contrib rake spec:action_pack'
344
- declare 'bundle exec appraisal contrib rake spec:action_view'
345
- declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
346
- declare 'bundle exec appraisal contrib rake spec:active_record'
347
- declare 'bundle exec appraisal contrib rake spec:active_support'
348
- declare 'bundle exec appraisal contrib rake spec:autoinstrument'
349
- declare 'bundle exec appraisal contrib rake spec:aws'
350
- declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
351
- declare 'bundle exec appraisal contrib rake spec:dalli'
352
- declare 'bundle exec appraisal contrib rake spec:delayed_job'
353
- declare 'bundle exec appraisal contrib rake spec:elasticsearch'
354
- declare 'bundle exec appraisal contrib rake spec:ethon'
355
- declare 'bundle exec appraisal contrib rake spec:excon'
356
- declare 'bundle exec appraisal contrib rake spec:faraday'
357
- declare 'bundle exec appraisal contrib rake spec:grape'
358
- declare 'bundle exec appraisal contrib rake spec:graphql'
359
- declare 'bundle exec appraisal contrib rake spec:grpc'
360
- declare 'bundle exec appraisal contrib rake spec:http'
361
- declare 'bundle exec appraisal contrib rake spec:httpclient'
362
- declare 'bundle exec appraisal contrib rake spec:httprb'
363
- declare 'bundle exec appraisal contrib rake spec:kafka'
364
- declare 'bundle exec appraisal contrib rake spec:mongodb'
365
- declare 'bundle exec appraisal contrib rake spec:mysql2'
366
- declare 'bundle exec appraisal contrib rake spec:presto'
367
- declare 'bundle exec appraisal contrib rake spec:qless'
368
- declare 'bundle exec appraisal contrib rake spec:que'
369
- declare 'bundle exec appraisal contrib rake spec:racecar'
370
- declare 'bundle exec appraisal contrib rake spec:rack'
371
- declare 'bundle exec appraisal contrib rake spec:rake'
372
- declare 'bundle exec appraisal contrib rake spec:redis'
373
- declare 'bundle exec appraisal contrib rake spec:resque'
374
- declare 'bundle exec appraisal contrib rake spec:rest_client'
375
- declare 'bundle exec appraisal contrib rake spec:rspec'
376
- declare 'bundle exec appraisal contrib rake spec:sequel'
377
- declare 'bundle exec appraisal contrib rake spec:shoryuken'
378
- declare 'bundle exec appraisal contrib rake spec:sidekiq'
379
- declare 'bundle exec appraisal contrib rake spec:sinatra'
380
- declare 'bundle exec appraisal contrib rake spec:sneakers'
381
- declare 'bundle exec appraisal contrib rake spec:sucker_punch'
382
- declare 'bundle exec appraisal contrib rake spec:suite'
383
- # Rails minitests
384
- declare 'bundle exec appraisal rails30-postgres rake test:rails'
385
- declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
386
- declare 'bundle exec appraisal rails30-postgres rake spec:railsautoinstrument'
387
- declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
388
- declare 'bundle exec appraisal rails32-postgres rake test:rails'
389
- declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
390
- declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
391
- declare 'bundle exec appraisal rails32-postgres rake spec:railsautoinstrument'
392
- declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
393
- declare 'bundle exec appraisal rails4-postgres rake test:rails'
394
- declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
395
- declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
396
- declare 'bundle exec appraisal rails4-postgres rake spec:railsautoinstrument'
397
- declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
398
- declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
399
- declare 'bundle exec appraisal rails5-postgres rake test:rails'
400
- declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
401
- declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
402
- declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
403
- declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
404
- declare 'bundle exec appraisal rails5-postgres rake spec:railsautoinstrument'
405
- # Rails specs
406
- declare 'bundle exec appraisal rails30-postgres rake spec:rails'
407
- declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
408
- declare 'bundle exec appraisal rails32-postgres rake spec:rails'
409
- declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
410
- declare 'bundle exec appraisal rails4-postgres rake spec:rails'
411
- declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
412
- declare 'bundle exec appraisal rails5-postgres rake spec:rails'
413
- end
314
+ # Contrib minitests
315
+ # Contrib specs
316
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
317
+ declare 'bundle exec appraisal contrib rake spec:action_view'
318
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
319
+ declare 'bundle exec appraisal contrib rake spec:active_record'
320
+ declare 'bundle exec appraisal contrib rake spec:active_support'
321
+ declare 'bundle exec appraisal contrib rake spec:autoinstrument'
322
+ declare 'bundle exec appraisal contrib rake spec:aws'
323
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
324
+ declare 'bundle exec appraisal contrib rake spec:dalli'
325
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
326
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
327
+ declare 'bundle exec appraisal contrib rake spec:ethon'
328
+ declare 'bundle exec appraisal contrib rake spec:excon'
329
+ declare 'bundle exec appraisal contrib rake spec:faraday'
330
+ declare 'bundle exec appraisal contrib rake spec:grape'
331
+ declare 'bundle exec appraisal contrib rake spec:graphql'
332
+ declare 'bundle exec appraisal contrib rake spec:grpc'
333
+ declare 'bundle exec appraisal contrib rake spec:http'
334
+ declare 'bundle exec appraisal contrib rake spec:httpclient'
335
+ declare 'bundle exec appraisal contrib rake spec:httprb'
336
+ declare 'bundle exec appraisal contrib rake spec:lograge'
337
+ declare 'bundle exec appraisal contrib rake spec:kafka'
338
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
339
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
340
+ declare 'bundle exec appraisal contrib rake spec:presto'
341
+ declare 'bundle exec appraisal contrib rake spec:qless'
342
+ declare 'bundle exec appraisal contrib rake spec:que'
343
+ declare 'bundle exec appraisal contrib rake spec:racecar'
344
+ declare 'bundle exec appraisal contrib rake spec:rack'
345
+ declare 'bundle exec appraisal contrib rake spec:rake'
346
+ declare 'bundle exec appraisal contrib rake spec:redis'
347
+ declare 'bundle exec appraisal contrib rake spec:resque'
348
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
349
+ declare 'bundle exec appraisal contrib rake spec:rspec'
350
+ declare 'bundle exec appraisal contrib rake spec:semantic_logger'
351
+ declare 'bundle exec appraisal contrib rake spec:sequel'
352
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
353
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
354
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
355
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
356
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
357
+ declare 'bundle exec appraisal contrib rake spec:suite'
358
+ # Rails minitests
359
+ declare 'bundle exec appraisal rails30-postgres rake test:rails'
360
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
361
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsautoinstrument'
362
+ declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
363
+ declare 'bundle exec appraisal rails32-postgres rake test:rails'
364
+ declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
365
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
366
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsautoinstrument'
367
+ declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
368
+ declare 'bundle exec appraisal rails4-postgres rake test:rails'
369
+ declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
370
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
371
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsautoinstrument'
372
+ declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
373
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
374
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
375
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
376
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
377
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
378
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
379
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsautoinstrument'
380
+ declare 'bundle exec appraisal rails4-semantic-logger rake spec:railssemanticlogger'
381
+ declare 'bundle exec appraisal rails5-semantic-logger rake spec:railssemanticlogger'
382
+ # Rails specs
383
+ declare 'bundle exec appraisal rails30-postgres rake spec:rails'
384
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
385
+ declare 'bundle exec appraisal rails32-postgres rake spec:rails'
386
+ declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
387
+ declare 'bundle exec appraisal rails4-postgres rake spec:rails'
388
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
389
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
414
390
  elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
415
391
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.4.0')
416
392
  # Main library
@@ -420,85 +396,87 @@ task :ci do
420
396
  declare 'bundle exec rake spec:contrib'
421
397
  declare 'bundle exec rake spec:opentracer'
422
398
 
423
- if RUBY_PLATFORM != 'java'
424
- # Contrib minitests
425
- # Contrib specs
426
- declare 'bundle exec appraisal contrib rake spec:action_pack'
427
- declare 'bundle exec appraisal contrib rake spec:action_view'
428
- declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
429
- declare 'bundle exec appraisal contrib rake spec:active_record'
430
- declare 'bundle exec appraisal contrib rake spec:active_support'
431
- declare 'bundle exec appraisal contrib rake spec:autoinstrument'
432
- declare 'bundle exec appraisal contrib rake spec:aws'
433
- declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
434
- declare 'bundle exec appraisal contrib rake spec:dalli'
435
- declare 'bundle exec appraisal contrib rake spec:delayed_job'
436
- declare 'bundle exec appraisal contrib rake spec:elasticsearch'
437
- declare 'bundle exec appraisal contrib rake spec:ethon'
438
- declare 'bundle exec appraisal contrib rake spec:excon'
439
- declare 'bundle exec appraisal contrib rake spec:faraday'
440
- declare 'bundle exec appraisal contrib rake spec:grape'
441
- declare 'bundle exec appraisal contrib rake spec:graphql'
442
- declare 'bundle exec appraisal contrib rake spec:grpc'
443
- declare 'bundle exec appraisal contrib rake spec:http'
444
- declare 'bundle exec appraisal contrib rake spec:httpclient'
445
- declare 'bundle exec appraisal contrib rake spec:httprb'
446
- declare 'bundle exec appraisal contrib rake spec:kafka'
447
- declare 'bundle exec appraisal contrib rake spec:mongodb'
448
- declare 'bundle exec appraisal contrib rake spec:mysql2'
449
- declare 'bundle exec appraisal contrib rake spec:presto'
450
- declare 'bundle exec appraisal contrib rake spec:que'
451
- declare 'bundle exec appraisal contrib rake spec:racecar'
452
- declare 'bundle exec appraisal contrib rake spec:rack'
453
- declare 'bundle exec appraisal contrib rake spec:rake'
454
- declare 'bundle exec appraisal contrib rake spec:redis'
455
- declare 'bundle exec appraisal contrib rake spec:resque'
456
- declare 'bundle exec appraisal contrib rake spec:rest_client'
457
- declare 'bundle exec appraisal contrib rake spec:rspec'
458
- declare 'bundle exec appraisal contrib rake spec:sequel'
459
- declare 'bundle exec appraisal contrib rake spec:shoryuken'
460
- declare 'bundle exec appraisal contrib rake spec:sidekiq'
461
- declare 'bundle exec appraisal contrib rake spec:sinatra'
462
- declare 'bundle exec appraisal contrib rake spec:sneakers'
463
- declare 'bundle exec appraisal contrib rake spec:sucker_punch'
464
- declare 'bundle exec appraisal contrib rake spec:suite'
465
- # Contrib specs with old gem versions
466
- declare 'bundle exec appraisal contrib-old rake spec:faraday'
467
- # Rails minitests
468
- declare 'bundle exec appraisal rails30-postgres rake test:rails'
469
- declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
470
- declare 'bundle exec appraisal rails30-postgres rake spec:railsautoinstrument'
471
- declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
472
- declare 'bundle exec appraisal rails32-postgres rake test:rails'
473
- declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
474
- declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
475
- declare 'bundle exec appraisal rails32-postgres rake spec:railsautoinstrument'
476
- declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
477
- declare 'bundle exec appraisal rails4-postgres rake test:rails'
478
- declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
479
- declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
480
- declare 'bundle exec appraisal rails4-postgres rake spec:railsautoinstrument'
481
- declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
482
- declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
483
- declare 'bundle exec appraisal rails5-postgres rake test:rails'
484
- declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
485
- declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
486
- declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
487
- declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
488
- declare 'bundle exec appraisal rails5-postgres rake spec:railsautoinstrument'
489
- # Rails specs
490
- declare 'bundle exec appraisal rails30-postgres rake spec:rails'
491
- declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
492
- declare 'bundle exec appraisal rails32-postgres rake spec:rails'
493
- declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
494
- declare 'bundle exec appraisal rails4-postgres rake spec:rails'
495
- declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
496
- declare 'bundle exec appraisal rails5-postgres rake spec:rails'
399
+ # Contrib minitests
400
+ # Contrib specs
401
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
402
+ declare 'bundle exec appraisal contrib rake spec:action_view'
403
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
404
+ declare 'bundle exec appraisal contrib rake spec:active_record'
405
+ declare 'bundle exec appraisal contrib rake spec:active_support'
406
+ declare 'bundle exec appraisal contrib rake spec:autoinstrument'
407
+ declare 'bundle exec appraisal contrib rake spec:aws'
408
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
409
+ declare 'bundle exec appraisal contrib rake spec:dalli'
410
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
411
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
412
+ declare 'bundle exec appraisal contrib rake spec:ethon'
413
+ declare 'bundle exec appraisal contrib rake spec:excon'
414
+ declare 'bundle exec appraisal contrib rake spec:faraday'
415
+ declare 'bundle exec appraisal contrib rake spec:grape'
416
+ declare 'bundle exec appraisal contrib rake spec:graphql'
417
+ declare 'bundle exec appraisal contrib rake spec:grpc'
418
+ declare 'bundle exec appraisal contrib rake spec:http'
419
+ declare 'bundle exec appraisal contrib rake spec:httpclient'
420
+ declare 'bundle exec appraisal contrib rake spec:httprb'
421
+ declare 'bundle exec appraisal contrib rake spec:lograge'
422
+ declare 'bundle exec appraisal contrib rake spec:kafka'
423
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
424
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
425
+ declare 'bundle exec appraisal contrib rake spec:presto'
426
+ declare 'bundle exec appraisal contrib rake spec:que'
427
+ declare 'bundle exec appraisal contrib rake spec:racecar'
428
+ declare 'bundle exec appraisal contrib rake spec:rack'
429
+ declare 'bundle exec appraisal contrib rake spec:rake'
430
+ declare 'bundle exec appraisal contrib rake spec:redis'
431
+ declare 'bundle exec appraisal contrib rake spec:resque'
432
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
433
+ declare 'bundle exec appraisal contrib rake spec:rspec'
434
+ declare 'bundle exec appraisal contrib rake spec:semantic_logger'
435
+ declare 'bundle exec appraisal contrib rake spec:sequel'
436
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
437
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
438
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
439
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
440
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
441
+ declare 'bundle exec appraisal contrib rake spec:suite'
442
+ # Contrib specs with old gem versions
443
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
444
+ # Rails minitests
445
+ declare 'bundle exec appraisal rails30-postgres rake test:rails'
446
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
447
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsautoinstrument'
448
+ declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
449
+ declare 'bundle exec appraisal rails32-postgres rake test:rails'
450
+ declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
451
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
452
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsautoinstrument'
453
+ declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
454
+ declare 'bundle exec appraisal rails4-postgres rake test:rails'
455
+ declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
456
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
457
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsautoinstrument'
458
+ declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
459
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
460
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
461
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
462
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
463
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
464
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
465
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsautoinstrument'
466
+ declare 'bundle exec appraisal rails4-semantic-logger rake spec:railssemanticlogger'
467
+ declare 'bundle exec appraisal rails5-semantic-logger rake spec:railssemanticlogger'
468
+ # Rails specs
469
+ declare 'bundle exec appraisal rails30-postgres rake spec:rails'
470
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
471
+ declare 'bundle exec appraisal rails32-postgres rake spec:rails'
472
+ declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
473
+ declare 'bundle exec appraisal rails4-postgres rake spec:rails'
474
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
475
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
497
476
 
498
- # explicitly test resque-2x compatability
499
- declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
500
- declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
501
- end
477
+ # explicitly test resque-2x compatability
478
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
479
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
502
480
  elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
503
481
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.5.0')
504
482
  # Main library
@@ -509,71 +487,72 @@ task :ci do
509
487
  declare 'bundle exec rake spec:opentracer'
510
488
  declare 'bundle exec rake spec:opentelemetry'
511
489
 
512
- if RUBY_PLATFORM != 'java'
513
- # Contrib minitests
514
- # Contrib specs
515
- declare 'bundle exec appraisal contrib rake spec:action_pack'
516
- declare 'bundle exec appraisal contrib rake spec:action_view'
517
- declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
518
- declare 'bundle exec appraisal contrib rake spec:active_record'
519
- declare 'bundle exec appraisal contrib rake spec:active_support'
520
- declare 'bundle exec appraisal contrib rake spec:autoinstrument'
521
- declare 'bundle exec appraisal contrib rake spec:aws'
522
- declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
523
- declare 'bundle exec appraisal contrib rake spec:dalli'
524
- declare 'bundle exec appraisal contrib rake spec:delayed_job'
525
- declare 'bundle exec appraisal contrib rake spec:elasticsearch'
526
- declare 'bundle exec appraisal contrib rake spec:ethon'
527
- declare 'bundle exec appraisal contrib rake spec:excon'
528
- declare 'bundle exec appraisal contrib rake spec:faraday'
529
- declare 'bundle exec appraisal contrib rake spec:grape'
530
- declare 'bundle exec appraisal contrib rake spec:graphql'
531
- declare 'bundle exec appraisal contrib rake spec:grpc'
532
- declare 'bundle exec appraisal contrib rake spec:http'
533
- declare 'bundle exec appraisal contrib rake spec:httpclient'
534
- declare 'bundle exec appraisal contrib rake spec:httprb'
535
- declare 'bundle exec appraisal contrib rake spec:kafka'
536
- declare 'bundle exec appraisal contrib rake spec:mongodb'
537
- declare 'bundle exec appraisal contrib rake spec:mysql2'
538
- declare 'bundle exec appraisal contrib rake spec:presto'
539
- declare 'bundle exec appraisal contrib rake spec:que'
540
- declare 'bundle exec appraisal contrib rake spec:racecar'
541
- declare 'bundle exec appraisal contrib rake spec:rack'
542
- declare 'bundle exec appraisal contrib rake spec:rake'
543
- declare 'bundle exec appraisal contrib rake spec:redis'
544
- declare 'bundle exec appraisal contrib rake spec:resque'
545
- declare 'bundle exec appraisal contrib rake spec:rest_client'
546
- declare 'bundle exec appraisal contrib rake spec:rspec'
547
- declare 'bundle exec appraisal contrib rake spec:sequel'
548
- declare 'bundle exec appraisal contrib rake spec:shoryuken'
549
- declare 'bundle exec appraisal contrib rake spec:sidekiq'
550
- declare 'bundle exec appraisal contrib rake spec:sinatra'
551
- declare 'bundle exec appraisal contrib rake spec:sneakers'
552
- declare 'bundle exec appraisal contrib rake spec:sucker_punch'
553
- declare 'bundle exec appraisal contrib rake spec:suite'
554
- # Contrib specs with old gem versions
555
- declare 'bundle exec appraisal contrib-old rake spec:faraday'
556
- # Rails minitests
557
- # We only test Rails 5+ because older versions require Bundler < 2.0
558
- declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
559
- declare 'bundle exec appraisal rails5-postgres rake test:rails'
560
- declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
561
- declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
562
- declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
563
- declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
564
- declare 'bundle exec appraisal rails5-postgres rake spec:railsautoinstrument'
565
- # Rails specs
566
- declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
567
- declare 'bundle exec appraisal rails5-postgres rake spec:rails'
490
+ # Contrib minitests
491
+ # Contrib specs
492
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
493
+ declare 'bundle exec appraisal contrib rake spec:action_view'
494
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
495
+ declare 'bundle exec appraisal contrib rake spec:active_record'
496
+ declare 'bundle exec appraisal contrib rake spec:active_support'
497
+ declare 'bundle exec appraisal contrib rake spec:autoinstrument'
498
+ declare 'bundle exec appraisal contrib rake spec:aws'
499
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
500
+ declare 'bundle exec appraisal contrib rake spec:dalli'
501
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
502
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
503
+ declare 'bundle exec appraisal contrib rake spec:ethon'
504
+ declare 'bundle exec appraisal contrib rake spec:excon'
505
+ declare 'bundle exec appraisal contrib rake spec:faraday'
506
+ declare 'bundle exec appraisal contrib rake spec:grape'
507
+ declare 'bundle exec appraisal contrib rake spec:graphql'
508
+ declare 'bundle exec appraisal contrib rake spec:grpc'
509
+ declare 'bundle exec appraisal contrib rake spec:http'
510
+ declare 'bundle exec appraisal contrib rake spec:httpclient'
511
+ declare 'bundle exec appraisal contrib rake spec:httprb'
512
+ declare 'bundle exec appraisal contrib rake spec:lograge'
513
+ declare 'bundle exec appraisal contrib rake spec:kafka'
514
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
515
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
516
+ declare 'bundle exec appraisal contrib rake spec:presto'
517
+ declare 'bundle exec appraisal contrib rake spec:que'
518
+ declare 'bundle exec appraisal contrib rake spec:racecar'
519
+ declare 'bundle exec appraisal contrib rake spec:rack'
520
+ declare 'bundle exec appraisal contrib rake spec:rake'
521
+ declare 'bundle exec appraisal contrib rake spec:redis'
522
+ declare 'bundle exec appraisal contrib rake spec:resque'
523
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
524
+ declare 'bundle exec appraisal contrib rake spec:rspec'
525
+ declare 'bundle exec appraisal contrib rake spec:semantic_logger'
526
+ declare 'bundle exec appraisal contrib rake spec:sequel'
527
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
528
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
529
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
530
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
531
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
532
+ declare 'bundle exec appraisal contrib rake spec:suite'
533
+ # Contrib specs with old gem versions
534
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
535
+ # Rails minitests
536
+ # We only test Rails 5+ because older versions require Bundler < 2.0
537
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
538
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
539
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
540
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
541
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
542
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
543
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsautoinstrument'
544
+ declare 'bundle exec appraisal rails5-semantic-logger rake spec:railssemanticlogger'
545
+ # Rails specs
546
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
547
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
568
548
 
569
- # explicitly test resque-2x compatability
570
- declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
571
- declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
549
+ # explicitly test resque-2x compatability
550
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
551
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
572
552
 
573
- # explicitly test cucumber compatibility
574
- declare 'bundle exec appraisal cucumber3 rake spec:cucumber'
575
- declare 'bundle exec appraisal cucumber4 rake spec:cucumber'
576
- end
553
+ # explicitly test cucumber compatibility
554
+ declare 'bundle exec appraisal cucumber3 rake spec:cucumber'
555
+ declare 'bundle exec appraisal cucumber4 rake spec:cucumber'
577
556
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
578
557
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
579
558
  # Main library
@@ -606,6 +585,7 @@ task :ci do
606
585
  declare 'bundle exec appraisal contrib rake spec:http'
607
586
  declare 'bundle exec appraisal contrib rake spec:httpclient'
608
587
  declare 'bundle exec appraisal contrib rake spec:httprb'
588
+ declare 'bundle exec appraisal contrib rake spec:lograge'
609
589
  declare 'bundle exec appraisal contrib rake spec:kafka'
610
590
  declare 'bundle exec appraisal contrib rake spec:mongodb'
611
591
  declare 'bundle exec appraisal contrib rake spec:mysql2' if RUBY_PLATFORM != 'java' # built-in jdbc is used instead
@@ -619,6 +599,7 @@ task :ci do
619
599
  declare 'bundle exec appraisal contrib rake spec:resque'
620
600
  declare 'bundle exec appraisal contrib rake spec:rest_client'
621
601
  declare 'bundle exec appraisal contrib rake spec:rspec'
602
+ declare 'bundle exec appraisal contrib rake spec:semantic_logger'
622
603
  declare 'bundle exec appraisal contrib rake spec:sequel'
623
604
  declare 'bundle exec appraisal contrib rake spec:shoryuken'
624
605
  declare 'bundle exec appraisal contrib rake spec:sidekiq'
@@ -644,6 +625,9 @@ task :ci do
644
625
  declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
645
626
  declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
646
627
  declare 'bundle exec appraisal rails6-postgres rake spec:railsautoinstrument'
628
+ declare 'bundle exec appraisal rails5-semantic-logger rake spec:railssemanticlogger'
629
+ declare 'bundle exec appraisal rails6-semantic-logger rake spec:railssemanticlogger'
630
+ declare 'bundle exec appraisal rails61-semantic-logger rake spec:railssemanticlogger'
647
631
  # Rails specs
648
632
  declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
649
633
  declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
@@ -702,6 +686,7 @@ task :ci do
702
686
  declare 'bundle exec appraisal contrib rake spec:http'
703
687
  declare 'bundle exec appraisal contrib rake spec:httpclient'
704
688
  declare 'bundle exec appraisal contrib rake spec:httprb'
689
+ declare 'bundle exec appraisal contrib rake spec:lograge'
705
690
  declare 'bundle exec appraisal contrib rake spec:kafka'
706
691
  declare 'bundle exec appraisal contrib rake spec:mongodb'
707
692
  declare 'bundle exec appraisal contrib rake spec:mysql2'
@@ -715,6 +700,7 @@ task :ci do
715
700
  declare 'bundle exec appraisal contrib rake spec:resque'
716
701
  declare 'bundle exec appraisal contrib rake spec:rest_client'
717
702
  declare 'bundle exec appraisal contrib rake spec:rspec'
703
+ declare 'bundle exec appraisal contrib rake spec:semantic_logger'
718
704
  declare 'bundle exec appraisal contrib rake spec:sequel'
719
705
  declare 'bundle exec appraisal contrib rake spec:shoryuken'
720
706
  declare 'bundle exec appraisal contrib rake spec:sidekiq'
@@ -741,6 +727,9 @@ task :ci do
741
727
  declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
742
728
  declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
743
729
  declare 'bundle exec appraisal rails6-postgres rake spec:railsautoinstrument'
730
+ declare 'bundle exec appraisal rails5-semantic-logger rake spec:railssemanticlogger'
731
+ declare 'bundle exec appraisal rails6-semantic-logger rake spec:railssemanticlogger'
732
+ declare 'bundle exec appraisal rails61-semantic-logger rake spec:railssemanticlogger'
744
733
  # Rails specs
745
734
  declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
746
735
  declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
@@ -800,6 +789,7 @@ task :ci do
800
789
  declare 'bundle exec appraisal contrib rake spec:http'
801
790
  declare 'bundle exec appraisal contrib rake spec:httpclient'
802
791
  declare 'bundle exec appraisal contrib rake spec:httprb'
792
+ declare 'bundle exec appraisal contrib rake spec:lograge'
803
793
  declare 'bundle exec appraisal contrib rake spec:kafka'
804
794
  declare 'bundle exec appraisal contrib rake spec:mongodb'
805
795
  declare 'bundle exec appraisal contrib rake spec:mysql2'
@@ -813,6 +803,7 @@ task :ci do
813
803
  declare 'bundle exec appraisal contrib rake spec:resque'
814
804
  declare 'bundle exec appraisal contrib rake spec:rest_client'
815
805
  declare 'bundle exec appraisal contrib rake spec:rspec'
806
+ declare 'bundle exec appraisal contrib rake spec:semantic_logger'
816
807
  declare 'bundle exec appraisal contrib rake spec:sequel'
817
808
  declare 'bundle exec appraisal contrib rake spec:shoryuken'
818
809
  declare 'bundle exec appraisal contrib rake spec:sidekiq'
@@ -839,6 +830,9 @@ task :ci do
839
830
  declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
840
831
  declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
841
832
  declare 'bundle exec appraisal rails6-postgres rake spec:railsautoinstrument'
833
+ declare 'bundle exec appraisal rails5-semantic-logger rake spec:railssemanticlogger'
834
+ declare 'bundle exec appraisal rails6-semantic-logger rake spec:railssemanticlogger'
835
+ declare 'bundle exec appraisal rails61-semantic-logger rake spec:railssemanticlogger'
842
836
  # Rails specs
843
837
  declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
844
838
  declare 'bundle exec appraisal rails5-postgres rake spec:rails'
@@ -891,10 +885,12 @@ task :ci do
891
885
  declare 'bundle exec appraisal contrib rake spec:faraday'
892
886
  declare 'bundle exec appraisal contrib rake spec:grape'
893
887
  declare 'bundle exec appraisal contrib rake spec:graphql'
894
- # declare 'bundle exec appraisal contrib rake spec:grpc' # Pending https://github.com/protocolbuffers/protobuf/issues/7922
888
+ declare 'bundle exec appraisal contrib rake spec:grpc'
895
889
  declare 'bundle exec appraisal contrib rake spec:http'
896
890
  declare 'bundle exec appraisal contrib rake spec:httpclient'
897
891
  declare 'bundle exec appraisal contrib rake spec:httprb'
892
+ # lograge nested dependancy thor ~> 1.0 conflicts w/qless dependancy thor ~> 0.19.1
893
+ # declare 'bundle exec appraisal contrib rake spec:lograge'
898
894
  declare 'bundle exec appraisal contrib rake spec:kafka'
899
895
  declare 'bundle exec appraisal contrib rake spec:mongodb'
900
896
  declare 'bundle exec appraisal contrib rake spec:mysql2'
@@ -908,6 +904,7 @@ task :ci do
908
904
  declare 'bundle exec appraisal contrib rake spec:resque'
909
905
  declare 'bundle exec appraisal contrib rake spec:rest_client'
910
906
  declare 'bundle exec appraisal contrib rake spec:rspec'
907
+ declare 'bundle exec appraisal contrib rake spec:semantic_logger'
911
908
  declare 'bundle exec appraisal contrib rake spec:sequel'
912
909
  declare 'bundle exec appraisal contrib rake spec:shoryuken'
913
910
  declare 'bundle exec appraisal contrib rake spec:sidekiq'
@@ -925,6 +922,7 @@ task :ci do
925
922
  declare 'bundle exec appraisal rails61-postgres rake test:rails'
926
923
  declare 'bundle exec appraisal rails61-postgres-redis rake spec:railsredis'
927
924
  declare 'bundle exec appraisal rails61-postgres-sidekiq rake spec:railsactivejob'
925
+ declare 'bundle exec appraisal rails61-semantic-logger rake spec:railssemanticlogger'
928
926
 
929
927
  # explicitly test resque-2x compatability
930
928
  declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
@@ -981,4 +979,4 @@ namespace :changelog do
981
979
  end
982
980
  end
983
981
 
984
- task default: :test
982
+ task default: 'spec:main'