dd-trace 5.84.0 → 5.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (625) hide show
  1. package/ci/cypress/polyfills.js +1 -1
  2. package/ci/init.js +5 -5
  3. package/ext/exporters.js +1 -1
  4. package/ext/formats.js +1 -1
  5. package/ext/index.js +1 -1
  6. package/ext/kinds.js +1 -1
  7. package/ext/priority.js +1 -1
  8. package/ext/scopes.js +1 -1
  9. package/ext/tags.js +1 -1
  10. package/ext/types.js +1 -1
  11. package/index.d.ts +76 -23
  12. package/initialize.mjs +47 -31
  13. package/loader-hook.mjs +35 -22
  14. package/package.json +34 -31
  15. package/packages/datadog-code-origin/index.js +12 -10
  16. package/packages/datadog-core/src/utils/src/pick.js +2 -2
  17. package/packages/datadog-esbuild/index.js +75 -79
  18. package/packages/datadog-esbuild/src/log.js +32 -0
  19. package/packages/datadog-esbuild/src/utils.js +12 -8
  20. package/packages/datadog-instrumentations/src/aerospike.js +3 -3
  21. package/packages/datadog-instrumentations/src/ai.js +5 -5
  22. package/packages/datadog-instrumentations/src/amqp10.js +1 -1
  23. package/packages/datadog-instrumentations/src/amqplib.js +1 -1
  24. package/packages/datadog-instrumentations/src/anthropic.js +3 -3
  25. package/packages/datadog-instrumentations/src/apollo-server.js +4 -4
  26. package/packages/datadog-instrumentations/src/apollo.js +2 -2
  27. package/packages/datadog-instrumentations/src/avsc.js +1 -1
  28. package/packages/datadog-instrumentations/src/aws-sdk.js +4 -4
  29. package/packages/datadog-instrumentations/src/azure-event-hubs.js +2 -2
  30. package/packages/datadog-instrumentations/src/azure-functions.js +1 -1
  31. package/packages/datadog-instrumentations/src/azure-service-bus.js +1 -1
  32. package/packages/datadog-instrumentations/src/body-parser.js +2 -2
  33. package/packages/datadog-instrumentations/src/bunyan.js +1 -1
  34. package/packages/datadog-instrumentations/src/cassandra-driver.js +1 -1
  35. package/packages/datadog-instrumentations/src/child_process.js +7 -7
  36. package/packages/datadog-instrumentations/src/confluentinc-kafka-javascript.js +17 -16
  37. package/packages/datadog-instrumentations/src/cookie-parser.js +1 -1
  38. package/packages/datadog-instrumentations/src/couchbase.js +8 -6
  39. package/packages/datadog-instrumentations/src/crypto.js +1 -1
  40. package/packages/datadog-instrumentations/src/cucumber.js +19 -19
  41. package/packages/datadog-instrumentations/src/cypress.js +1 -1
  42. package/packages/datadog-instrumentations/src/dns.js +2 -2
  43. package/packages/datadog-instrumentations/src/elasticsearch.js +2 -2
  44. package/packages/datadog-instrumentations/src/express-mongo-sanitize.js +2 -2
  45. package/packages/datadog-instrumentations/src/express-session.js +1 -1
  46. package/packages/datadog-instrumentations/src/express.js +4 -4
  47. package/packages/datadog-instrumentations/src/fastify.js +1 -1
  48. package/packages/datadog-instrumentations/src/fetch.js +2 -2
  49. package/packages/datadog-instrumentations/src/fs.js +7 -7
  50. package/packages/datadog-instrumentations/src/generic-pool.js +2 -2
  51. package/packages/datadog-instrumentations/src/google-cloud-pubsub.js +8 -8
  52. package/packages/datadog-instrumentations/src/google-cloud-vertexai.js +4 -4
  53. package/packages/datadog-instrumentations/src/google-genai.js +1 -1
  54. package/packages/datadog-instrumentations/src/graphql.js +10 -10
  55. package/packages/datadog-instrumentations/src/grpc/client.js +9 -13
  56. package/packages/datadog-instrumentations/src/grpc/types.js +1 -1
  57. package/packages/datadog-instrumentations/src/helpers/bundler-register.js +1 -1
  58. package/packages/datadog-instrumentations/src/helpers/check-require-cache.js +1 -1
  59. package/packages/datadog-instrumentations/src/helpers/extract-package-and-module-path.js +2 -2
  60. package/packages/datadog-instrumentations/src/helpers/hooks.js +1 -1
  61. package/packages/datadog-instrumentations/src/helpers/register.js +7 -7
  62. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/index.js +1 -1
  63. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/langchain.js +55 -55
  64. package/packages/datadog-instrumentations/src/helpers/rewriter/transforms.js +1 -1
  65. package/packages/datadog-instrumentations/src/helpers/router-helper.js +7 -7
  66. package/packages/datadog-instrumentations/src/helpers/shared-utils.js +1 -1
  67. package/packages/datadog-instrumentations/src/hono.js +6 -6
  68. package/packages/datadog-instrumentations/src/http/client.js +1 -1
  69. package/packages/datadog-instrumentations/src/http/server.js +4 -4
  70. package/packages/datadog-instrumentations/src/http2/server.js +1 -1
  71. package/packages/datadog-instrumentations/src/ioredis.js +1 -1
  72. package/packages/datadog-instrumentations/src/iovalkey.js +1 -1
  73. package/packages/datadog-instrumentations/src/jest.js +162 -57
  74. package/packages/datadog-instrumentations/src/kafkajs.js +9 -8
  75. package/packages/datadog-instrumentations/src/knex.js +2 -2
  76. package/packages/datadog-instrumentations/src/koa.js +3 -1
  77. package/packages/datadog-instrumentations/src/ldapjs.js +1 -1
  78. package/packages/datadog-instrumentations/src/light-my-request.js +1 -1
  79. package/packages/datadog-instrumentations/src/limitd-client.js +1 -1
  80. package/packages/datadog-instrumentations/src/mariadb.js +1 -1
  81. package/packages/datadog-instrumentations/src/memcached.js +1 -1
  82. package/packages/datadog-instrumentations/src/mocha/common.js +3 -3
  83. package/packages/datadog-instrumentations/src/mocha/main.js +24 -24
  84. package/packages/datadog-instrumentations/src/mocha/utils.js +15 -11
  85. package/packages/datadog-instrumentations/src/mocha/worker.js +4 -4
  86. package/packages/datadog-instrumentations/src/moleculer/server.js +1 -1
  87. package/packages/datadog-instrumentations/src/mongodb-core.js +3 -3
  88. package/packages/datadog-instrumentations/src/mongodb.js +7 -7
  89. package/packages/datadog-instrumentations/src/mongoose.js +10 -10
  90. package/packages/datadog-instrumentations/src/mquery.js +6 -6
  91. package/packages/datadog-instrumentations/src/multer.js +1 -1
  92. package/packages/datadog-instrumentations/src/mysql.js +1 -1
  93. package/packages/datadog-instrumentations/src/net.js +6 -6
  94. package/packages/datadog-instrumentations/src/next.js +6 -6
  95. package/packages/datadog-instrumentations/src/nyc.js +34 -2
  96. package/packages/datadog-instrumentations/src/openai.js +24 -24
  97. package/packages/datadog-instrumentations/src/oracledb.js +2 -2
  98. package/packages/datadog-instrumentations/src/otel-sdk-trace.js +1 -1
  99. package/packages/datadog-instrumentations/src/passport-http.js +1 -1
  100. package/packages/datadog-instrumentations/src/passport-local.js +1 -1
  101. package/packages/datadog-instrumentations/src/passport-utils.js +1 -1
  102. package/packages/datadog-instrumentations/src/passport.js +1 -1
  103. package/packages/datadog-instrumentations/src/pg.js +3 -3
  104. package/packages/datadog-instrumentations/src/pino.js +2 -2
  105. package/packages/datadog-instrumentations/src/playwright.js +59 -59
  106. package/packages/datadog-instrumentations/src/prisma.js +24 -78
  107. package/packages/datadog-instrumentations/src/promise-js.js +1 -1
  108. package/packages/datadog-instrumentations/src/promise.js +1 -1
  109. package/packages/datadog-instrumentations/src/protobufjs.js +6 -6
  110. package/packages/datadog-instrumentations/src/q.js +2 -2
  111. package/packages/datadog-instrumentations/src/redis.js +2 -2
  112. package/packages/datadog-instrumentations/src/rhea.js +5 -5
  113. package/packages/datadog-instrumentations/src/router.js +8 -8
  114. package/packages/datadog-instrumentations/src/selenium.js +3 -3
  115. package/packages/datadog-instrumentations/src/sequelize.js +1 -1
  116. package/packages/datadog-instrumentations/src/sharedb.js +2 -2
  117. package/packages/datadog-instrumentations/src/tedious.js +1 -1
  118. package/packages/datadog-instrumentations/src/undici.js +2 -2
  119. package/packages/datadog-instrumentations/src/url.js +5 -5
  120. package/packages/datadog-instrumentations/src/vitest.js +56 -45
  121. package/packages/datadog-instrumentations/src/when.js +1 -1
  122. package/packages/datadog-instrumentations/src/winston.js +1 -1
  123. package/packages/datadog-instrumentations/src/ws.js +128 -41
  124. package/packages/datadog-plugin-aerospike/src/index.js +4 -4
  125. package/packages/datadog-plugin-ai/src/index.js +1 -1
  126. package/packages/datadog-plugin-ai/src/tracing.js +2 -2
  127. package/packages/datadog-plugin-ai/src/utils.js +1 -1
  128. package/packages/datadog-plugin-amqp10/src/consumer.js +2 -2
  129. package/packages/datadog-plugin-amqp10/src/index.js +1 -1
  130. package/packages/datadog-plugin-amqp10/src/producer.js +2 -2
  131. package/packages/datadog-plugin-amqplib/src/client.js +2 -2
  132. package/packages/datadog-plugin-amqplib/src/consumer.js +2 -2
  133. package/packages/datadog-plugin-amqplib/src/index.js +1 -1
  134. package/packages/datadog-plugin-amqplib/src/producer.js +2 -2
  135. package/packages/datadog-plugin-amqplib/src/util.js +1 -1
  136. package/packages/datadog-plugin-anthropic/src/index.js +1 -1
  137. package/packages/datadog-plugin-anthropic/src/tracing.js +2 -2
  138. package/packages/datadog-plugin-apollo/src/gateway/fetch.js +1 -1
  139. package/packages/datadog-plugin-apollo/src/gateway/index.js +1 -1
  140. package/packages/datadog-plugin-apollo/src/gateway/request.js +5 -5
  141. package/packages/datadog-plugin-apollo/src/index.js +1 -1
  142. package/packages/datadog-plugin-avsc/src/schema_iterator.js +3 -3
  143. package/packages/datadog-plugin-aws-sdk/src/base.js +11 -10
  144. package/packages/datadog-plugin-aws-sdk/src/services/bedrockruntime/index.js +1 -1
  145. package/packages/datadog-plugin-aws-sdk/src/services/bedrockruntime/tracing.js +1 -1
  146. package/packages/datadog-plugin-aws-sdk/src/services/bedrockruntime/utils.js +24 -24
  147. package/packages/datadog-plugin-aws-sdk/src/services/cloudwatchlogs.js +1 -1
  148. package/packages/datadog-plugin-aws-sdk/src/services/eventbridge.js +1 -1
  149. package/packages/datadog-plugin-aws-sdk/src/services/kinesis.js +6 -6
  150. package/packages/datadog-plugin-aws-sdk/src/services/lambda.js +3 -3
  151. package/packages/datadog-plugin-aws-sdk/src/services/redshift.js +1 -1
  152. package/packages/datadog-plugin-aws-sdk/src/services/s3.js +1 -1
  153. package/packages/datadog-plugin-aws-sdk/src/services/sns.js +5 -5
  154. package/packages/datadog-plugin-aws-sdk/src/services/sqs.js +12 -12
  155. package/packages/datadog-plugin-aws-sdk/src/util.js +1 -1
  156. package/packages/datadog-plugin-azure-event-hubs/src/index.js +1 -1
  157. package/packages/datadog-plugin-azure-event-hubs/src/producer.js +3 -3
  158. package/packages/datadog-plugin-azure-functions/src/index.js +11 -10
  159. package/packages/datadog-plugin-azure-service-bus/src/index.js +1 -1
  160. package/packages/datadog-plugin-azure-service-bus/src/producer.js +3 -3
  161. package/packages/datadog-plugin-bullmq/src/consumer.js +2 -2
  162. package/packages/datadog-plugin-bullmq/src/index.js +1 -1
  163. package/packages/datadog-plugin-bullmq/src/producer.js +11 -11
  164. package/packages/datadog-plugin-cassandra-driver/src/index.js +2 -2
  165. package/packages/datadog-plugin-child_process/src/index.js +2 -2
  166. package/packages/datadog-plugin-child_process/src/scrub-cmd-params.js +5 -5
  167. package/packages/datadog-plugin-confluentinc-kafka-javascript/src/index.js +1 -1
  168. package/packages/datadog-plugin-couchbase/src/index.js +3 -3
  169. package/packages/datadog-plugin-cucumber/src/index.js +14 -14
  170. package/packages/datadog-plugin-cypress/src/cypress-plugin.js +68 -55
  171. package/packages/datadog-plugin-cypress/src/plugin.js +1 -1
  172. package/packages/datadog-plugin-cypress/src/support.js +56 -9
  173. package/packages/datadog-plugin-dd-trace-api/src/index.js +1 -1
  174. package/packages/datadog-plugin-dns/src/index.js +1 -1
  175. package/packages/datadog-plugin-dns/src/lookup.js +2 -2
  176. package/packages/datadog-plugin-dns/src/lookup_service.js +3 -3
  177. package/packages/datadog-plugin-dns/src/resolve.js +2 -2
  178. package/packages/datadog-plugin-dns/src/reverse.js +2 -2
  179. package/packages/datadog-plugin-elasticsearch/src/index.js +2 -2
  180. package/packages/datadog-plugin-express/src/index.js +1 -1
  181. package/packages/datadog-plugin-fastify/src/index.js +1 -1
  182. package/packages/datadog-plugin-fs/src/index.js +2 -2
  183. package/packages/datadog-plugin-google-cloud-pubsub/src/client.js +2 -2
  184. package/packages/datadog-plugin-google-cloud-pubsub/src/consumer.js +8 -6
  185. package/packages/datadog-plugin-google-cloud-pubsub/src/index.js +1 -1
  186. package/packages/datadog-plugin-google-cloud-pubsub/src/producer.js +11 -10
  187. package/packages/datadog-plugin-google-cloud-pubsub/src/pubsub-push-subscription.js +6 -6
  188. package/packages/datadog-plugin-google-cloud-vertexai/src/index.js +1 -1
  189. package/packages/datadog-plugin-google-cloud-vertexai/src/tracing.js +2 -2
  190. package/packages/datadog-plugin-google-cloud-vertexai/src/utils.js +1 -1
  191. package/packages/datadog-plugin-google-genai/src/index.js +1 -1
  192. package/packages/datadog-plugin-google-genai/src/tracing.js +2 -2
  193. package/packages/datadog-plugin-graphql/src/execute.js +2 -2
  194. package/packages/datadog-plugin-graphql/src/index.js +2 -2
  195. package/packages/datadog-plugin-graphql/src/parse.js +1 -1
  196. package/packages/datadog-plugin-graphql/src/resolve.js +6 -6
  197. package/packages/datadog-plugin-graphql/src/utils.js +1 -1
  198. package/packages/datadog-plugin-graphql/src/validate.js +2 -2
  199. package/packages/datadog-plugin-grpc/src/client.js +3 -3
  200. package/packages/datadog-plugin-grpc/src/index.js +1 -1
  201. package/packages/datadog-plugin-grpc/src/server.js +3 -3
  202. package/packages/datadog-plugin-grpc/src/util.js +2 -2
  203. package/packages/datadog-plugin-http/src/client.js +10 -10
  204. package/packages/datadog-plugin-http/src/index.js +1 -1
  205. package/packages/datadog-plugin-http2/src/client.js +6 -6
  206. package/packages/datadog-plugin-http2/src/index.js +1 -1
  207. package/packages/datadog-plugin-http2/src/server.js +1 -1
  208. package/packages/datadog-plugin-jest/src/index.js +39 -22
  209. package/packages/datadog-plugin-jest/src/util.js +1 -1
  210. package/packages/datadog-plugin-kafkajs/src/consumer.js +5 -5
  211. package/packages/datadog-plugin-kafkajs/src/index.js +1 -1
  212. package/packages/datadog-plugin-kafkajs/src/producer.js +5 -5
  213. package/packages/datadog-plugin-kafkajs/src/utils.js +1 -1
  214. package/packages/datadog-plugin-langchain/src/tokens.js +2 -2
  215. package/packages/datadog-plugin-langchain/src/tracing.js +4 -4
  216. package/packages/datadog-plugin-memcached/src/index.js +2 -2
  217. package/packages/datadog-plugin-mocha/src/index.js +12 -12
  218. package/packages/datadog-plugin-moleculer/src/client.js +1 -1
  219. package/packages/datadog-plugin-moleculer/src/index.js +1 -1
  220. package/packages/datadog-plugin-moleculer/src/server.js +2 -2
  221. package/packages/datadog-plugin-moleculer/src/util.js +1 -1
  222. package/packages/datadog-plugin-mongodb-core/src/index.js +5 -5
  223. package/packages/datadog-plugin-mysql/src/index.js +2 -2
  224. package/packages/datadog-plugin-net/src/ipc.js +2 -2
  225. package/packages/datadog-plugin-net/src/tcp.js +4 -4
  226. package/packages/datadog-plugin-next/src/index.js +4 -4
  227. package/packages/datadog-plugin-nyc/src/index.js +60 -0
  228. package/packages/datadog-plugin-openai/src/index.js +1 -1
  229. package/packages/datadog-plugin-openai/src/services.js +3 -3
  230. package/packages/datadog-plugin-openai/src/stream-helpers.js +1 -1
  231. package/packages/datadog-plugin-openai/src/tracing.js +10 -10
  232. package/packages/datadog-plugin-oracledb/src/connection-parser.js +1 -1
  233. package/packages/datadog-plugin-oracledb/src/index.js +1 -1
  234. package/packages/datadog-plugin-pg/src/index.js +2 -2
  235. package/packages/datadog-plugin-playwright/src/index.js +19 -19
  236. package/packages/datadog-plugin-prisma/src/datadog-tracing-helper.js +95 -0
  237. package/packages/datadog-plugin-prisma/src/index.js +129 -10
  238. package/packages/datadog-plugin-protobufjs/src/schema_iterator.js +3 -3
  239. package/packages/datadog-plugin-redis/src/index.js +2 -2
  240. package/packages/datadog-plugin-restify/src/index.js +1 -1
  241. package/packages/datadog-plugin-rhea/src/consumer.js +2 -2
  242. package/packages/datadog-plugin-rhea/src/index.js +1 -1
  243. package/packages/datadog-plugin-rhea/src/producer.js +2 -2
  244. package/packages/datadog-plugin-router/src/index.js +3 -3
  245. package/packages/datadog-plugin-selenium/src/index.js +2 -2
  246. package/packages/datadog-plugin-sharedb/src/index.js +2 -2
  247. package/packages/datadog-plugin-tedious/src/index.js +2 -2
  248. package/packages/datadog-plugin-undici/src/index.js +5 -5
  249. package/packages/datadog-plugin-vitest/src/index.js +39 -18
  250. package/packages/datadog-plugin-ws/src/close.js +10 -11
  251. package/packages/datadog-plugin-ws/src/index.js +1 -1
  252. package/packages/datadog-plugin-ws/src/producer.js +8 -9
  253. package/packages/datadog-plugin-ws/src/receiver.js +8 -9
  254. package/packages/datadog-plugin-ws/src/server.js +17 -12
  255. package/packages/datadog-plugin-ws/src/util.js +48 -16
  256. package/packages/datadog-shimmer/src/shimmer.js +3 -3
  257. package/packages/dd-trace/index.js +2 -2
  258. package/packages/dd-trace/src/agent/info.js +2 -2
  259. package/packages/dd-trace/src/agent/url.js +1 -1
  260. package/packages/dd-trace/src/aiguard/client.js +3 -3
  261. package/packages/dd-trace/src/aiguard/sdk.js +6 -6
  262. package/packages/dd-trace/src/aiguard/tags.js +1 -1
  263. package/packages/dd-trace/src/analytics_sampler.js +1 -1
  264. package/packages/dd-trace/src/appsec/activation.js +1 -1
  265. package/packages/dd-trace/src/appsec/addresses.js +1 -1
  266. package/packages/dd-trace/src/appsec/api_security_sampler.js +1 -1
  267. package/packages/dd-trace/src/appsec/blocked_templates.js +1 -1
  268. package/packages/dd-trace/src/appsec/blocking.js +5 -5
  269. package/packages/dd-trace/src/appsec/channels.js +1 -1
  270. package/packages/dd-trace/src/appsec/graphql.js +13 -13
  271. package/packages/dd-trace/src/appsec/iast/analyzers/analyzers.js +1 -1
  272. package/packages/dd-trace/src/appsec/iast/analyzers/cookie-analyzer.js +1 -1
  273. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-base-analyzer.js +6 -5
  274. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-password-rules.js +2 -2
  275. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-rule-type.js +1 -1
  276. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-secret-rules.js +148 -148
  277. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-secrets-rules.js +148 -148
  278. package/packages/dd-trace/src/appsec/iast/analyzers/index.js +1 -1
  279. package/packages/dd-trace/src/appsec/iast/analyzers/missing-header-analyzer.js +1 -1
  280. package/packages/dd-trace/src/appsec/iast/analyzers/nosql-injection-mongodb-analyzer.js +7 -8
  281. package/packages/dd-trace/src/appsec/iast/analyzers/path-traversal-analyzer.js +2 -2
  282. package/packages/dd-trace/src/appsec/iast/analyzers/set-cookies-header-interceptor.js +2 -2
  283. package/packages/dd-trace/src/appsec/iast/analyzers/unvalidated-redirect-analyzer.js +2 -2
  284. package/packages/dd-trace/src/appsec/iast/analyzers/vulnerability-analyzer.js +3 -3
  285. package/packages/dd-trace/src/appsec/iast/analyzers/weak-cipher-analyzer.js +1 -1
  286. package/packages/dd-trace/src/appsec/iast/analyzers/weak-hash-analyzer.js +2 -2
  287. package/packages/dd-trace/src/appsec/iast/context/context-plugin.js +3 -3
  288. package/packages/dd-trace/src/appsec/iast/iast-context.js +6 -3
  289. package/packages/dd-trace/src/appsec/iast/iast-plugin.js +17 -9
  290. package/packages/dd-trace/src/appsec/iast/index.js +2 -2
  291. package/packages/dd-trace/src/appsec/iast/overhead-controller.js +9 -9
  292. package/packages/dd-trace/src/appsec/iast/path-line.js +6 -6
  293. package/packages/dd-trace/src/appsec/iast/security-controls/index.js +11 -11
  294. package/packages/dd-trace/src/appsec/iast/security-controls/parser.js +49 -17
  295. package/packages/dd-trace/src/appsec/iast/tags.js +1 -1
  296. package/packages/dd-trace/src/appsec/iast/taint-tracking/constants.js +1 -1
  297. package/packages/dd-trace/src/appsec/iast/taint-tracking/csi-methods.js +2 -2
  298. package/packages/dd-trace/src/appsec/iast/taint-tracking/filter.js +1 -1
  299. package/packages/dd-trace/src/appsec/iast/taint-tracking/index.js +2 -2
  300. package/packages/dd-trace/src/appsec/iast/taint-tracking/operations-taint-object.js +3 -6
  301. package/packages/dd-trace/src/appsec/iast/taint-tracking/operations.js +2 -2
  302. package/packages/dd-trace/src/appsec/iast/taint-tracking/plugin.js +5 -5
  303. package/packages/dd-trace/src/appsec/iast/taint-tracking/rewriter-esm.mjs +4 -4
  304. package/packages/dd-trace/src/appsec/iast/taint-tracking/rewriter.js +5 -5
  305. package/packages/dd-trace/src/appsec/iast/taint-tracking/secure-marks.js +6 -4
  306. package/packages/dd-trace/src/appsec/iast/taint-tracking/source-types.js +1 -1
  307. package/packages/dd-trace/src/appsec/iast/taint-tracking/taint-tracking-impl.js +8 -8
  308. package/packages/dd-trace/src/appsec/iast/telemetry/iast-metric.js +4 -4
  309. package/packages/dd-trace/src/appsec/iast/telemetry/namespaces.js +2 -2
  310. package/packages/dd-trace/src/appsec/iast/telemetry/span-tags.js +6 -6
  311. package/packages/dd-trace/src/appsec/iast/telemetry/verbosity.js +2 -2
  312. package/packages/dd-trace/src/appsec/iast/utils.js +3 -3
  313. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/constants.js +1 -1
  314. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/range-utils.js +1 -1
  315. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-analyzers/hardcoded-password-analyzer.js +1 -1
  316. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-analyzers/sql-sensitive-analyzer.js +6 -6
  317. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-analyzers/tainted-range-based-sensitive-analyzer.js +1 -1
  318. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-handler.js +8 -8
  319. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-regex.js +1 -1
  320. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/index.js +12 -11
  321. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/utils.js +5 -5
  322. package/packages/dd-trace/src/appsec/iast/vulnerabilities.js +1 -1
  323. package/packages/dd-trace/src/appsec/iast/vulnerability-reporter.js +4 -4
  324. package/packages/dd-trace/src/appsec/index.js +20 -22
  325. package/packages/dd-trace/src/appsec/rasp/command_injection.js +3 -3
  326. package/packages/dd-trace/src/appsec/rasp/fs-plugin.js +4 -4
  327. package/packages/dd-trace/src/appsec/rasp/index.js +2 -2
  328. package/packages/dd-trace/src/appsec/rasp/lfi.js +5 -5
  329. package/packages/dd-trace/src/appsec/rasp/sql_injection.js +2 -2
  330. package/packages/dd-trace/src/appsec/rasp/ssrf.js +1 -1
  331. package/packages/dd-trace/src/appsec/rasp/utils.js +4 -4
  332. package/packages/dd-trace/src/appsec/rc-products.js +1 -1
  333. package/packages/dd-trace/src/appsec/remote_config.js +3 -3
  334. package/packages/dd-trace/src/appsec/reporter.js +11 -11
  335. package/packages/dd-trace/src/appsec/rule_manager.js +1 -1
  336. package/packages/dd-trace/src/appsec/sdk/index.js +1 -1
  337. package/packages/dd-trace/src/appsec/sdk/set_user.js +2 -2
  338. package/packages/dd-trace/src/appsec/sdk/track_event.js +7 -7
  339. package/packages/dd-trace/src/appsec/sdk/user_blocking.js +1 -1
  340. package/packages/dd-trace/src/appsec/sdk/utils.js +1 -1
  341. package/packages/dd-trace/src/appsec/stack_trace.js +5 -5
  342. package/packages/dd-trace/src/appsec/telemetry/common.js +3 -3
  343. package/packages/dd-trace/src/appsec/telemetry/index.js +5 -5
  344. package/packages/dd-trace/src/appsec/telemetry/rasp.js +3 -3
  345. package/packages/dd-trace/src/appsec/telemetry/user.js +4 -4
  346. package/packages/dd-trace/src/appsec/telemetry/waf.js +3 -3
  347. package/packages/dd-trace/src/appsec/user_tracking.js +7 -7
  348. package/packages/dd-trace/src/appsec/waf/diagnostics.js +2 -2
  349. package/packages/dd-trace/src/appsec/waf/index.js +1 -1
  350. package/packages/dd-trace/src/appsec/waf/waf_context_wrapper.js +2 -2
  351. package/packages/dd-trace/src/azure_metadata.js +16 -9
  352. package/packages/dd-trace/src/baggage.js +1 -1
  353. package/packages/dd-trace/src/ci-visibility/coverage-report-discovery.js +82 -0
  354. package/packages/dd-trace/src/ci-visibility/dynamic-instrumentation/index.js +5 -5
  355. package/packages/dd-trace/src/ci-visibility/dynamic-instrumentation/worker/index.js +9 -9
  356. package/packages/dd-trace/src/ci-visibility/early-flake-detection/get-known-tests.js +8 -8
  357. package/packages/dd-trace/src/ci-visibility/exporters/agent-proxy/index.js +8 -7
  358. package/packages/dd-trace/src/ci-visibility/exporters/agentless/coverage-writer.js +4 -3
  359. package/packages/dd-trace/src/ci-visibility/exporters/agentless/di-logs-writer.js +5 -3
  360. package/packages/dd-trace/src/ci-visibility/exporters/agentless/index.js +2 -0
  361. package/packages/dd-trace/src/ci-visibility/exporters/agentless/writer.js +4 -3
  362. package/packages/dd-trace/src/ci-visibility/exporters/ci-visibility-exporter.js +37 -11
  363. package/packages/dd-trace/src/ci-visibility/exporters/git/git_metadata.js +22 -22
  364. package/packages/dd-trace/src/ci-visibility/exporters/test-worker/index.js +1 -1
  365. package/packages/dd-trace/src/ci-visibility/exporters/test-worker/writer.js +1 -1
  366. package/packages/dd-trace/src/ci-visibility/intelligent-test-runner/get-skippable-suites.js +8 -8
  367. package/packages/dd-trace/src/ci-visibility/log-submission/log-submission-plugin.js +3 -3
  368. package/packages/dd-trace/src/ci-visibility/requests/get-library-configuration.js +17 -12
  369. package/packages/dd-trace/src/ci-visibility/requests/upload-coverage-report.js +92 -0
  370. package/packages/dd-trace/src/ci-visibility/telemetry.js +2 -2
  371. package/packages/dd-trace/src/ci-visibility/test-api-manual/test-api-manual-plugin.js +1 -1
  372. package/packages/dd-trace/src/ci-visibility/test-management/get-test-management-tests.js +6 -6
  373. package/packages/dd-trace/src/ci-visibility/test-optimization-cache.js +61 -0
  374. package/packages/dd-trace/src/config/defaults.js +1 -1
  375. package/packages/dd-trace/src/config/git_properties.js +1 -1
  376. package/packages/dd-trace/src/config/helper.js +2 -2
  377. package/packages/dd-trace/src/config/index.js +612 -622
  378. package/packages/dd-trace/src/config/remote_config.js +1 -1
  379. package/packages/dd-trace/src/config/stable.js +2 -2
  380. package/packages/dd-trace/src/config/supported-configurations.json +1 -0
  381. package/packages/dd-trace/src/constants.js +3 -3
  382. package/packages/dd-trace/src/crashtracking/crashtracker.js +6 -6
  383. package/packages/dd-trace/src/datastreams/checkpointer.js +1 -1
  384. package/packages/dd-trace/src/datastreams/context.js +1 -1
  385. package/packages/dd-trace/src/datastreams/encoding.js +1 -1
  386. package/packages/dd-trace/src/datastreams/fnv.js +1 -1
  387. package/packages/dd-trace/src/datastreams/index.js +8 -8
  388. package/packages/dd-trace/src/datastreams/pathway.js +5 -3
  389. package/packages/dd-trace/src/datastreams/processor.js +14 -12
  390. package/packages/dd-trace/src/datastreams/schemas/schema_builder.js +27 -25
  391. package/packages/dd-trace/src/datastreams/schemas/schema_sampler.js +1 -1
  392. package/packages/dd-trace/src/datastreams/size.js +3 -3
  393. package/packages/dd-trace/src/datastreams/writer.js +3 -3
  394. package/packages/dd-trace/src/debugger/config.js +2 -1
  395. package/packages/dd-trace/src/debugger/constants.js +7 -0
  396. package/packages/dd-trace/src/debugger/devtools_client/breakpoints.js +14 -10
  397. package/packages/dd-trace/src/debugger/devtools_client/condition.js +2 -2
  398. package/packages/dd-trace/src/debugger/devtools_client/config.js +4 -5
  399. package/packages/dd-trace/src/debugger/devtools_client/defaults.js +1 -1
  400. package/packages/dd-trace/src/debugger/devtools_client/index.js +32 -25
  401. package/packages/dd-trace/src/debugger/devtools_client/inspector_promises_polyfill.js +1 -1
  402. package/packages/dd-trace/src/debugger/devtools_client/log.js +1 -1
  403. package/packages/dd-trace/src/debugger/devtools_client/send.js +54 -10
  404. package/packages/dd-trace/src/debugger/devtools_client/snapshot/collector.js +94 -37
  405. package/packages/dd-trace/src/debugger/devtools_client/snapshot/index.js +4 -4
  406. package/packages/dd-trace/src/debugger/devtools_client/snapshot/processor.js +7 -7
  407. package/packages/dd-trace/src/debugger/devtools_client/snapshot/redaction.js +2 -2
  408. package/packages/dd-trace/src/debugger/devtools_client/snapshot/symbols.js +1 -1
  409. package/packages/dd-trace/src/debugger/devtools_client/snapshot-pruner.js +1 -1
  410. package/packages/dd-trace/src/debugger/devtools_client/source-maps.js +10 -1
  411. package/packages/dd-trace/src/debugger/devtools_client/state.js +65 -8
  412. package/packages/dd-trace/src/debugger/devtools_client/status.js +9 -8
  413. package/packages/dd-trace/src/debugger/index.js +95 -37
  414. package/packages/dd-trace/src/dogstatsd.js +14 -9
  415. package/packages/dd-trace/src/encode/0.4.js +7 -6
  416. package/packages/dd-trace/src/encode/agentless-ci-visibility.js +8 -8
  417. package/packages/dd-trace/src/encode/coverage-ci-visibility.js +3 -3
  418. package/packages/dd-trace/src/encode/span-stats.js +2 -2
  419. package/packages/dd-trace/src/encode/tags-processors.js +1 -1
  420. package/packages/dd-trace/src/exporters/agent/index.js +1 -1
  421. package/packages/dd-trace/src/exporters/agent/writer.js +2 -2
  422. package/packages/dd-trace/src/exporters/common/agents.js +1 -1
  423. package/packages/dd-trace/src/exporters/common/buffering-exporter.js +2 -2
  424. package/packages/dd-trace/src/exporters/common/docker.js +11 -7
  425. package/packages/dd-trace/src/exporters/common/request.js +28 -8
  426. package/packages/dd-trace/src/exporters/common/url-to-http-options-polyfill.js +2 -2
  427. package/packages/dd-trace/src/exporters/common/writer.js +2 -0
  428. package/packages/dd-trace/src/exporters/span-stats/index.js +1 -1
  429. package/packages/dd-trace/src/exporters/span-stats/writer.js +3 -3
  430. package/packages/dd-trace/src/external-logger/src/index.js +4 -4
  431. package/packages/dd-trace/src/flare/index.js +3 -3
  432. package/packages/dd-trace/src/guardrails/telemetry.js +1 -1
  433. package/packages/dd-trace/src/heap_snapshots.js +1 -1
  434. package/packages/dd-trace/src/id.js +1 -1
  435. package/packages/dd-trace/src/iitm.js +1 -1
  436. package/packages/dd-trace/src/lambda/handler.js +1 -1
  437. package/packages/dd-trace/src/lambda/runtime/errors.js +1 -1
  438. package/packages/dd-trace/src/lambda/runtime/ritm.js +3 -3
  439. package/packages/dd-trace/src/llmobs/constants/tags.js +1 -1
  440. package/packages/dd-trace/src/llmobs/constants/text.js +1 -1
  441. package/packages/dd-trace/src/llmobs/constants/writers.js +1 -1
  442. package/packages/dd-trace/src/llmobs/index.js +2 -4
  443. package/packages/dd-trace/src/llmobs/noop.js +2 -2
  444. package/packages/dd-trace/src/llmobs/plugins/ai/index.js +8 -8
  445. package/packages/dd-trace/src/llmobs/plugins/ai/util.js +2 -2
  446. package/packages/dd-trace/src/llmobs/plugins/anthropic.js +5 -5
  447. package/packages/dd-trace/src/llmobs/plugins/base.js +1 -1
  448. package/packages/dd-trace/src/llmobs/plugins/bedrockruntime.js +8 -8
  449. package/packages/dd-trace/src/llmobs/plugins/genai/index.js +2 -2
  450. package/packages/dd-trace/src/llmobs/plugins/genai/util.js +15 -15
  451. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/chat_model.js +2 -2
  452. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/index.js +5 -5
  453. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/vectorstore.js +1 -1
  454. package/packages/dd-trace/src/llmobs/plugins/langchain/index.js +3 -3
  455. package/packages/dd-trace/src/llmobs/plugins/openai/constants.js +1 -1
  456. package/packages/dd-trace/src/llmobs/plugins/openai/index.js +17 -17
  457. package/packages/dd-trace/src/llmobs/plugins/openai/utils.js +3 -3
  458. package/packages/dd-trace/src/llmobs/plugins/vertexai.js +6 -6
  459. package/packages/dd-trace/src/llmobs/sdk.js +11 -11
  460. package/packages/dd-trace/src/llmobs/span_processor.js +6 -6
  461. package/packages/dd-trace/src/llmobs/tagger.js +4 -4
  462. package/packages/dd-trace/src/llmobs/telemetry.js +8 -8
  463. package/packages/dd-trace/src/llmobs/util.js +1 -1
  464. package/packages/dd-trace/src/llmobs/writers/base.js +9 -9
  465. package/packages/dd-trace/src/llmobs/writers/evaluations.js +5 -5
  466. package/packages/dd-trace/src/llmobs/writers/spans.js +3 -3
  467. package/packages/dd-trace/src/llmobs/writers/util.js +1 -1
  468. package/packages/dd-trace/src/log/channels.js +2 -2
  469. package/packages/dd-trace/src/log/index.js +2 -2
  470. package/packages/dd-trace/src/log/log.js +1 -1
  471. package/packages/dd-trace/src/log/writer.js +1 -1
  472. package/packages/dd-trace/src/noop/span.js +2 -2
  473. package/packages/dd-trace/src/openfeature/constants/constants.js +1 -1
  474. package/packages/dd-trace/src/openfeature/flagging_provider.js +4 -4
  475. package/packages/dd-trace/src/openfeature/index.js +2 -2
  476. package/packages/dd-trace/src/openfeature/noop.js +3 -3
  477. package/packages/dd-trace/src/openfeature/remote_config.js +1 -1
  478. package/packages/dd-trace/src/openfeature/writers/base.js +12 -12
  479. package/packages/dd-trace/src/openfeature/writers/exposures.js +10 -10
  480. package/packages/dd-trace/src/openfeature/writers/util.js +1 -1
  481. package/packages/dd-trace/src/opentelemetry/context_manager.js +48 -29
  482. package/packages/dd-trace/src/opentelemetry/logs/index.js +2 -2
  483. package/packages/dd-trace/src/opentelemetry/logs/logger_provider.js +2 -2
  484. package/packages/dd-trace/src/opentelemetry/logs/otlp_transformer.js +10 -10
  485. package/packages/dd-trace/src/opentelemetry/metrics/constants.js +3 -3
  486. package/packages/dd-trace/src/opentelemetry/metrics/index.js +2 -2
  487. package/packages/dd-trace/src/opentelemetry/metrics/instruments.js +3 -3
  488. package/packages/dd-trace/src/opentelemetry/metrics/meter.js +1 -1
  489. package/packages/dd-trace/src/opentelemetry/metrics/otlp_transformer.js +11 -11
  490. package/packages/dd-trace/src/opentelemetry/metrics/periodic_metric_reader.js +18 -18
  491. package/packages/dd-trace/src/opentelemetry/otlp/otlp_http_exporter_base.js +6 -6
  492. package/packages/dd-trace/src/opentelemetry/otlp/otlp_transformer_base.js +10 -7
  493. package/packages/dd-trace/src/opentelemetry/otlp/protobuf_loader.js +3 -3
  494. package/packages/dd-trace/src/opentelemetry/span.js +8 -8
  495. package/packages/dd-trace/src/opentelemetry/span_context.js +1 -1
  496. package/packages/dd-trace/src/opentelemetry/span_processor.js +1 -1
  497. package/packages/dd-trace/src/opentelemetry/tracer.js +4 -4
  498. package/packages/dd-trace/src/opentracing/propagation/log.js +2 -2
  499. package/packages/dd-trace/src/opentracing/propagation/text_map.js +14 -12
  500. package/packages/dd-trace/src/opentracing/propagation/text_map_dsm.js +2 -0
  501. package/packages/dd-trace/src/opentracing/span.js +20 -20
  502. package/packages/dd-trace/src/opentracing/span_context.js +3 -3
  503. package/packages/dd-trace/src/opentracing/tracer.js +3 -3
  504. package/packages/dd-trace/src/payload-tagging/config/index.js +1 -1
  505. package/packages/dd-trace/src/payload-tagging/index.js +1 -1
  506. package/packages/dd-trace/src/payload-tagging/tagging.js +2 -2
  507. package/packages/dd-trace/src/plugin_manager.js +6 -6
  508. package/packages/dd-trace/src/plugins/apollo.js +4 -4
  509. package/packages/dd-trace/src/plugins/ci_plugin.js +101 -36
  510. package/packages/dd-trace/src/plugins/database.js +1 -1
  511. package/packages/dd-trace/src/plugins/index.js +1 -1
  512. package/packages/dd-trace/src/plugins/log_plugin.js +2 -2
  513. package/packages/dd-trace/src/plugins/outbound.js +9 -8
  514. package/packages/dd-trace/src/plugins/plugin.js +17 -7
  515. package/packages/dd-trace/src/plugins/producer.js +6 -5
  516. package/packages/dd-trace/src/plugins/tracing.js +37 -8
  517. package/packages/dd-trace/src/plugins/util/ci.js +40 -40
  518. package/packages/dd-trace/src/plugins/util/env.js +2 -2
  519. package/packages/dd-trace/src/plugins/util/git-cache.js +2 -2
  520. package/packages/dd-trace/src/plugins/util/git.js +20 -18
  521. package/packages/dd-trace/src/plugins/util/inferred_proxy.js +6 -6
  522. package/packages/dd-trace/src/plugins/util/ip_extractor.js +3 -3
  523. package/packages/dd-trace/src/plugins/util/llm.js +1 -1
  524. package/packages/dd-trace/src/plugins/util/stacktrace.js +3 -3
  525. package/packages/dd-trace/src/plugins/util/tags.js +1 -1
  526. package/packages/dd-trace/src/plugins/util/test.js +46 -40
  527. package/packages/dd-trace/src/plugins/util/url.js +1 -1
  528. package/packages/dd-trace/src/plugins/util/urlfilter.js +1 -1
  529. package/packages/dd-trace/src/plugins/util/user-provided-git.js +2 -2
  530. package/packages/dd-trace/src/plugins/util/web.js +12 -12
  531. package/packages/dd-trace/src/priority_sampler.js +4 -4
  532. package/packages/dd-trace/src/process-tags/index.js +2 -2
  533. package/packages/dd-trace/src/profiler.js +1 -1
  534. package/packages/dd-trace/src/profiling/config.js +8 -8
  535. package/packages/dd-trace/src/profiling/constants.js +2 -2
  536. package/packages/dd-trace/src/profiling/exporter_cli.js +3 -3
  537. package/packages/dd-trace/src/profiling/exporters/agent.js +5 -5
  538. package/packages/dd-trace/src/profiling/exporters/event_serializer.js +8 -8
  539. package/packages/dd-trace/src/profiling/index.js +1 -1
  540. package/packages/dd-trace/src/profiling/libuv-size.js +1 -1
  541. package/packages/dd-trace/src/profiling/loggers/console.js +1 -1
  542. package/packages/dd-trace/src/profiling/profiler.js +21 -23
  543. package/packages/dd-trace/src/profiling/profilers/event_plugins/event.js +1 -1
  544. package/packages/dd-trace/src/profiling/profilers/event_plugins/fs.js +3 -3
  545. package/packages/dd-trace/src/profiling/profilers/events.js +27 -19
  546. package/packages/dd-trace/src/profiling/profilers/shared.js +2 -2
  547. package/packages/dd-trace/src/profiling/profilers/wall.js +4 -4
  548. package/packages/dd-trace/src/profiling/tagger.js +1 -1
  549. package/packages/dd-trace/src/profiling/webspan-utils.js +2 -2
  550. package/packages/dd-trace/src/proxy.js +13 -13
  551. package/packages/dd-trace/src/remote_config/apply_states.js +1 -1
  552. package/packages/dd-trace/src/remote_config/index.js +15 -15
  553. package/packages/dd-trace/src/remote_config/scheduler.js +1 -1
  554. package/packages/dd-trace/src/ritm.js +1 -1
  555. package/packages/dd-trace/src/runtime_metrics/index.js +2 -2
  556. package/packages/dd-trace/src/runtime_metrics/runtime_metrics.js +3 -3
  557. package/packages/dd-trace/src/serverless.js +1 -1
  558. package/packages/dd-trace/src/service-naming/extra-services.js +1 -1
  559. package/packages/dd-trace/src/service-naming/index.js +1 -1
  560. package/packages/dd-trace/src/service-naming/schemas/v0/graphql.js +3 -3
  561. package/packages/dd-trace/src/service-naming/schemas/v0/messaging.js +25 -25
  562. package/packages/dd-trace/src/service-naming/schemas/v0/serverless.js +3 -3
  563. package/packages/dd-trace/src/service-naming/schemas/v0/storage.js +18 -18
  564. package/packages/dd-trace/src/service-naming/schemas/v0/web.js +23 -23
  565. package/packages/dd-trace/src/service-naming/schemas/v0/websocket.js +9 -9
  566. package/packages/dd-trace/src/service-naming/schemas/v1/graphql.js +3 -3
  567. package/packages/dd-trace/src/service-naming/schemas/v1/messaging.js +21 -21
  568. package/packages/dd-trace/src/service-naming/schemas/v1/serverless.js +3 -3
  569. package/packages/dd-trace/src/service-naming/schemas/v1/storage.js +17 -17
  570. package/packages/dd-trace/src/service-naming/schemas/v1/web.js +23 -23
  571. package/packages/dd-trace/src/service-naming/schemas/v1/websocket.js +9 -9
  572. package/packages/dd-trace/src/span_format.js +4 -4
  573. package/packages/dd-trace/src/span_sampler.js +1 -1
  574. package/packages/dd-trace/src/span_stats.js +11 -11
  575. package/packages/dd-trace/src/spanleak.js +1 -1
  576. package/packages/dd-trace/src/standalone/index.js +1 -1
  577. package/packages/dd-trace/src/standalone/product.js +2 -2
  578. package/packages/dd-trace/src/standalone/tracesource.js +1 -1
  579. package/packages/dd-trace/src/startup-log.js +2 -2
  580. package/packages/dd-trace/src/tagger.js +3 -1
  581. package/packages/dd-trace/src/telemetry/dependencies.js +4 -4
  582. package/packages/dd-trace/src/telemetry/endpoints.js +4 -4
  583. package/packages/dd-trace/src/telemetry/index.js +1 -1
  584. package/packages/dd-trace/src/telemetry/logs/index.js +2 -2
  585. package/packages/dd-trace/src/telemetry/logs/log-collector.js +2 -2
  586. package/packages/dd-trace/src/telemetry/metrics.js +6 -6
  587. package/packages/dd-trace/src/telemetry/send-data.js +5 -5
  588. package/packages/dd-trace/src/telemetry/telemetry.js +10 -10
  589. package/packages/dd-trace/src/tracer.js +3 -2
  590. package/packages/dd-trace/src/util.js +1 -1
  591. package/scripts/preinstall.js +1 -1
  592. package/vendor/dist/@datadog/sketches-js/index.js +1 -1
  593. package/vendor/dist/@datadog/source-map/index.js +1 -1
  594. package/vendor/dist/@isaacs/ttlcache/index.js +1 -1
  595. package/vendor/dist/@opentelemetry/core/index.js +1 -1
  596. package/vendor/dist/@opentelemetry/resources/index.js +1 -1
  597. package/vendor/dist/astring/index.js +1 -1
  598. package/vendor/dist/crypto-randomuuid/index.js +1 -1
  599. package/vendor/dist/escape-string-regexp/index.js +1 -1
  600. package/vendor/dist/esquery/index.js +1 -1
  601. package/vendor/dist/ignore/index.js +1 -1
  602. package/vendor/dist/istanbul-lib-coverage/index.js +1 -1
  603. package/vendor/dist/jest-docblock/index.js +1 -1
  604. package/vendor/dist/jsonpath-plus/index.js +1 -1
  605. package/vendor/dist/limiter/index.js +1 -1
  606. package/vendor/dist/lodash.sortby/index.js +1 -1
  607. package/vendor/dist/lru-cache/index.js +1 -1
  608. package/vendor/dist/meriyah/index.js +1 -1
  609. package/vendor/dist/module-details-from-path/index.js +1 -1
  610. package/vendor/dist/mutexify/promise/index.js +1 -1
  611. package/vendor/dist/opentracing/index.js +1 -1
  612. package/vendor/dist/path-to-regexp/index.js +1 -1
  613. package/vendor/dist/pprof-format/index.js +1 -1
  614. package/vendor/dist/protobufjs/index.js +1 -1
  615. package/vendor/dist/protobufjs/minimal/index.js +1 -1
  616. package/vendor/dist/retry/index.js +1 -1
  617. package/vendor/dist/rfdc/index.js +1 -1
  618. package/vendor/dist/semifies/index.js +1 -1
  619. package/vendor/dist/shell-quote/index.js +1 -1
  620. package/vendor/dist/source-map/index.js +1 -1
  621. package/vendor/dist/source-map/lib/util/index.js +1 -1
  622. package/vendor/dist/tlhunter-sorted-set/index.js +1 -1
  623. package/vendor/dist/ttl-set/index.js +1 -1
  624. package/packages/datadog-plugin-prisma/src/client.js +0 -60
  625. package/packages/datadog-plugin-prisma/src/engine.js +0 -81
@@ -13,17 +13,18 @@ const {
13
13
  getIsFaultyEarlyFlakeDetection,
14
14
  JEST_WORKER_LOGS_PAYLOAD_CODE,
15
15
  getTestEndLine,
16
- isModifiedTest
16
+ isModifiedTest,
17
17
  } = require('../../dd-trace/src/plugins/util/test')
18
18
  const {
19
19
  getFormattedJestTestParameters,
20
20
  getJestTestName,
21
- getJestSuitesToRun
21
+ getJestSuitesToRun,
22
22
  } = require('../../datadog-plugin-jest/src/util')
23
23
  const { addHook, channel } = require('./helpers/instrument')
24
24
 
25
25
  const testSessionStartCh = channel('ci:jest:session:start')
26
26
  const testSessionFinishCh = channel('ci:jest:session:finish')
27
+ const codeCoverageReportCh = channel('ci:jest:coverage-report')
27
28
 
28
29
  const testSessionConfigurationCh = channel('ci:jest:session:configuration')
29
30
 
@@ -284,7 +285,7 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
284
285
  return {
285
286
  attemptToFix: [],
286
287
  disabled: [],
287
- quarantined: []
288
+ quarantined: [],
288
289
  }
289
290
  }
290
291
  let testManagementTestsForSuite = testManagementTests
@@ -297,10 +298,10 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
297
298
  const result = {
298
299
  attemptToFix: [],
299
300
  disabled: [],
300
- quarantined: []
301
+ quarantined: [],
301
302
  }
302
303
 
303
- Object.entries(testManagementTestsForSuite).forEach(([testName, { properties }]) => {
304
+ for (const [testName, { properties }] of Object.entries(testManagementTestsForSuite)) {
304
305
  if (properties?.attempt_to_fix) {
305
306
  result.attemptToFix.push(testName)
306
307
  }
@@ -310,7 +311,7 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
310
311
  if (properties?.quarantined) {
311
312
  result.quarantined.push(testName)
312
313
  }
313
- })
314
+ }
314
315
 
315
316
  return result
316
317
  }
@@ -319,7 +320,7 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
319
320
  retryTest ({
320
321
  jestEvent,
321
322
  retryCount,
322
- retryType
323
+ retryType,
323
324
  }) {
324
325
  const { testName, fn, timeout } = jestEvent
325
326
  for (let retryIndex = 0; retryIndex < retryCount; retryIndex++) {
@@ -428,7 +429,7 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
428
429
  isDisabled,
429
430
  isQuarantined,
430
431
  isModified,
431
- testSuiteAbsolutePath: this.testSuiteAbsolutePath
432
+ testSuiteAbsolutePath: this.testSuiteAbsolutePath,
432
433
  }
433
434
  testContexts.set(event.test, ctx)
434
435
 
@@ -475,7 +476,7 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
475
476
  this.retryTest({
476
477
  jestEvent: event,
477
478
  retryCount: testManagementAttemptToFixRetries,
478
- retryType: 'Test Management (Attempt to Fix)'
479
+ retryType: 'Test Management (Attempt to Fix)',
479
480
  })
480
481
  }
481
482
  if (!isAttemptToFix && this.isImpactedTestsEnabled) {
@@ -494,7 +495,7 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
494
495
  this.retryTest({
495
496
  jestEvent: event,
496
497
  retryCount: earlyFlakeDetectionNumRetries,
497
- retryType: 'Impacted tests'
498
+ retryType: 'Impacted tests',
498
499
  })
499
500
  }
500
501
  }
@@ -507,7 +508,7 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
507
508
  this.retryTest({
508
509
  jestEvent: event,
509
510
  retryCount: earlyFlakeDetectionNumRetries,
510
- retryType: 'Early flake detection'
511
+ retryType: 'Early flake detection',
511
512
  })
512
513
  }
513
514
  }
@@ -560,8 +561,8 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
560
561
 
561
562
  let isEfdRetry = false
562
563
  // We'll store the test statuses of the retries
564
+ const testName = getJestTestName(event.test, this.getShouldStripSeedFromTestName())
563
565
  if (this.isKnownTestsEnabled) {
564
- const testName = getJestTestName(event.test, this.getShouldStripSeedFromTestName())
565
566
  const isNewTest = retriedTestsToNumAttempts.has(testName)
566
567
  if (isNewTest) {
567
568
  if (newTestsTestStatuses.has(testName)) {
@@ -576,18 +577,27 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
576
577
  const promises = {}
577
578
  const numRetries = this.global[RETRY_TIMES]
578
579
  const numTestExecutions = event.test?.invocations
579
- const willBeRetried = numRetries > 0 && numTestExecutions - 1 < numRetries
580
+ const willBeRetriedByFailedTestReplay = numRetries > 0 && numTestExecutions - 1 < numRetries
580
581
  const mightHitBreakpoint = this.isDiEnabled && numTestExecutions >= 2
581
582
 
582
583
  const ctx = testContexts.get(event.test)
583
584
 
585
+ const finalStatus = this.getFinalStatus(testName,
586
+ status,
587
+ !!ctx?.isNew,
588
+ !!ctx?.isModified,
589
+ isEfdRetry,
590
+ isAttemptToFix,
591
+ numTestExecutions)
592
+
584
593
  if (status === 'fail') {
585
- const shouldSetProbe = this.isDiEnabled && willBeRetried && numTestExecutions === 1
594
+ const shouldSetProbe = this.isDiEnabled && willBeRetriedByFailedTestReplay && numTestExecutions === 1
586
595
  testErrCh.publish({
587
596
  ...ctx.currentStore,
588
597
  error: formatJestError(event.test.errors[0]),
589
598
  shouldSetProbe,
590
- promises
599
+ promises,
600
+ finalStatus,
591
601
  })
592
602
  }
593
603
 
@@ -613,7 +623,8 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
613
623
  attemptToFixPassed,
614
624
  failedAllTests,
615
625
  attemptToFixFailed,
616
- isAtrRetry
626
+ isAtrRetry,
627
+ finalStatus,
617
628
  })
618
629
 
619
630
  if (promises.isProbeReady) {
@@ -635,13 +646,102 @@ function getWrappedEnvironment (BaseEnvironment, jestVersion) {
635
646
  testSourceFile: this.testSourceFile,
636
647
  displayName: this.displayName,
637
648
  frameworkVersion: jestVersion,
638
- testStartLine: getTestLineStart(event.test.asyncError, this.testSuite)
649
+ testStartLine: getTestLineStart(event.test.asyncError, this.testSuite),
639
650
  },
640
- isDisabled: this.testManagementTestsForThisSuite?.disabled?.includes(testName)
651
+ isDisabled: this.testManagementTestsForThisSuite?.disabled?.includes(testName),
641
652
  })
642
653
  }
643
654
  }
644
655
 
656
+ getEfdResult ({ testName, isNewTest, isModifiedTest, isEfdRetry, numberOfExecutedRetries }) {
657
+ const isEfdEnabled = this.isEarlyFlakeDetectionEnabled
658
+ const isEfdActive = isEfdEnabled && (isNewTest || isModifiedTest)
659
+ const isLastEfdRetry = isEfdRetry && numberOfExecutedRetries >= (earlyFlakeDetectionNumRetries + 1)
660
+ const isFinalEfdTestExecution = isEfdActive && isLastEfdRetry
661
+
662
+ let finalStatus
663
+ if (isEfdActive && isFinalEfdTestExecution) {
664
+ // For EFD: The framework reports 'pass' if ANY attempt passed (flaky but not failing)
665
+ const testStatuses = newTestsTestStatuses.get(testName)
666
+ finalStatus = testStatuses && testStatuses.includes('pass') ? 'pass' : 'fail'
667
+ }
668
+
669
+ return { isEfdEnabled, isEfdActive, isFinalEfdTestExecution, finalStatus }
670
+ }
671
+
672
+ getAtrResult ({ status, isEfdRetry, isAttemptToFix, numberOfTestInvocations }) {
673
+ const isAtrEnabled =
674
+ this.isFlakyTestRetriesEnabled &&
675
+ !isEfdRetry &&
676
+ !isAttemptToFix &&
677
+ Number.isFinite(this.global[RETRY_TIMES])
678
+ const isLastAtrRetry =
679
+ status === 'pass' || numberOfTestInvocations >= (Number(this.global[RETRY_TIMES]) + 1)
680
+ const isFinalAtrTestExecution = isAtrEnabled && isLastAtrRetry
681
+
682
+ // For ATR: The last execution's status is what the framework reports
683
+ return { isAtrEnabled, isFinalAtrTestExecution, finalStatus: status }
684
+ }
685
+
686
+ getAttemptToFixResult ({ testName, isAttemptToFix, numberOfExecutedRetries }) {
687
+ const isAttemptToFixEnabled =
688
+ this.isTestManagementTestsEnabled &&
689
+ isAttemptToFix &&
690
+ Number.isFinite(testManagementAttemptToFixRetries)
691
+ const isFinalAttemptToFixExecution = isAttemptToFixEnabled &&
692
+ numberOfExecutedRetries >= (testManagementAttemptToFixRetries + 1)
693
+
694
+ let finalStatus
695
+ if (isAttemptToFixEnabled && isFinalAttemptToFixExecution) {
696
+ // For Attempt to Fix: 'pass' only if ALL attempts passed, 'fail' if ANY failed
697
+ const testStatuses = attemptToFixRetriedTestsStatuses.get(testName)
698
+ finalStatus = testStatuses && testStatuses.every(status => status === 'pass') ? 'pass' : 'fail'
699
+ }
700
+
701
+ return { isAttemptToFixEnabled, isFinalAttemptToFixExecution, finalStatus }
702
+ }
703
+
704
+ getFinalStatus (testName, status, isNewTest, isModifiedTest, isEfdRetry, isAttemptToFix, numberOfTestInvocations) {
705
+ const numberOfExecutedRetries = retriedTestsToNumAttempts.get(testName) ?? 0
706
+
707
+ const efdResult = this.getEfdResult({
708
+ testName,
709
+ isNewTest,
710
+ isModifiedTest,
711
+ isEfdRetry,
712
+ numberOfExecutedRetries,
713
+ })
714
+ const atrResult = this.getAtrResult({ status, isEfdRetry, isAttemptToFix, numberOfTestInvocations })
715
+ const attemptToFixResult = this.getAttemptToFixResult({
716
+ testName,
717
+ isAttemptToFix,
718
+ numberOfExecutedRetries,
719
+ })
720
+
721
+ // When no retry features are active, every test execution is final
722
+ const noRetryFeaturesActive =
723
+ !efdResult.isEfdActive &&
724
+ !atrResult.isAtrEnabled &&
725
+ !attemptToFixResult.isAttemptToFixEnabled
726
+ const isFinalTestExecution = noRetryFeaturesActive ||
727
+ efdResult.isFinalEfdTestExecution ||
728
+ atrResult.isFinalAtrTestExecution ||
729
+ attemptToFixResult.isFinalAttemptToFixExecution
730
+
731
+ if (!isFinalTestExecution) {
732
+ return
733
+ }
734
+
735
+ // If the test is quarantined, regardless of its actual execution result,
736
+ // the final status of its last execution should be reported as 'skip'.
737
+ if (this.isTestManagementTestsEnabled &&
738
+ this.testManagementTestsForThisSuite?.quarantined?.includes(testName)) {
739
+ return 'skip'
740
+ }
741
+
742
+ return efdResult.finalStatus || attemptToFixResult.finalStatus || atrResult.finalStatus
743
+ }
744
+
645
745
  teardown () {
646
746
  if (this._globalProxy?.propertyToValue) {
647
747
  for (const [key] of this._globalProxy.propertyToValue) {
@@ -667,7 +767,7 @@ function getTestEnvironment (pkg, jestVersion) {
667
767
  return wrappedTestEnvironment
668
768
  }
669
769
  return target[prop]
670
- }
770
+ },
671
771
  })
672
772
  }
673
773
  return getWrappedEnvironment(pkg, jestVersion)
@@ -676,9 +776,7 @@ function getTestEnvironment (pkg, jestVersion) {
676
776
  function applySuiteSkipping (originalTests, rootDir, frameworkVersion) {
677
777
  const jestSuitesToRun = getJestSuitesToRun(skippableSuites, originalTests, rootDir || process.cwd())
678
778
  hasFilteredSkippableSuites = true
679
- log.debug(
680
- () => `${jestSuitesToRun.suitesToRun.length} out of ${originalTests.length} suites are going to run.`
681
- )
779
+ log.debug('%d out of %d suites are going to run.', jestSuitesToRun.suitesToRun.length, originalTests.length)
682
780
  hasUnskippableSuites = jestSuitesToRun.hasUnskippableSuites
683
781
  hasForcedToRunSuites = jestSuitesToRun.hasForcedToRunSuites
684
782
 
@@ -692,17 +790,17 @@ function applySuiteSkipping (originalTests, rootDir, frameworkVersion) {
692
790
 
693
791
  addHook({
694
792
  name: 'jest-environment-node',
695
- versions: ['>=24.8.0']
793
+ versions: ['>=24.8.0'],
696
794
  }, getTestEnvironment)
697
795
 
698
796
  addHook({
699
797
  name: 'jest-environment-jsdom',
700
- versions: ['>=24.8.0']
798
+ versions: ['>=24.8.0'],
701
799
  }, getTestEnvironment)
702
800
 
703
801
  addHook({
704
802
  name: '@happy-dom/jest-environment',
705
- versions: ['>=10.0.0']
803
+ versions: ['>=10.0.0'],
706
804
  }, getTestEnvironment)
707
805
 
708
806
  function getWrappedScheduleTests (scheduleTests, frameworkVersion) {
@@ -892,8 +990,8 @@ function getCliWrapper (isNewJestVersion) {
892
990
  numFailedTestSuites,
893
991
  numFailedTests,
894
992
  numTotalTests,
895
- numTotalTestSuites
896
- }
993
+ numTotalTestSuites,
994
+ },
897
995
  } = result
898
996
 
899
997
  let testCodeCoverageLinesTotal
@@ -1009,7 +1107,7 @@ function getCliWrapper (isNewJestVersion) {
1009
1107
  isEarlyFlakeDetectionEnabled,
1010
1108
  isEarlyFlakeDetectionFaulty,
1011
1109
  isTestManagementTestsEnabled,
1012
- onDone
1110
+ onDone,
1013
1111
  })
1014
1112
 
1015
1113
  const waitingResult = await Promise.race([flushPromise, timeoutPromise])
@@ -1018,11 +1116,18 @@ function getCliWrapper (isNewJestVersion) {
1018
1116
  log.error('Timeout waiting for the tracer to flush')
1019
1117
  }
1020
1118
 
1119
+ if (codeCoverageReportCh.hasSubscribers) {
1120
+ const rootDir = result.globalConfig?.rootDir || process.cwd()
1121
+ await new Promise((resolve) => {
1122
+ codeCoverageReportCh.publish({ rootDir, onDone: resolve })
1123
+ })
1124
+ }
1125
+
1021
1126
  numSkippedSuites = 0
1022
1127
 
1023
1128
  return result
1024
1129
  }, {
1025
- replaceGetter: true
1130
+ replaceGetter: true,
1026
1131
  })
1027
1132
  }
1028
1133
  }
@@ -1051,7 +1156,7 @@ function coverageReporterWrapper (coverageReporter) {
1051
1156
  addHook({
1052
1157
  name: '@jest/core',
1053
1158
  file: 'build/TestScheduler.js',
1054
- versions: ['>=27.0.0']
1159
+ versions: ['>=27.0.0'],
1055
1160
  }, (testSchedulerPackage, frameworkVersion) => {
1056
1161
  const oldCreateTestScheduler = testSchedulerPackage.createTestScheduler
1057
1162
  const newCreateTestScheduler = async function () {
@@ -1070,7 +1175,7 @@ addHook({
1070
1175
  addHook({
1071
1176
  name: '@jest/core',
1072
1177
  file: 'build/TestScheduler.js',
1073
- versions: ['>=24.8.0 <27.0.0']
1178
+ versions: ['>=24.8.0 <27.0.0'],
1074
1179
  }, (testSchedulerPackage, frameworkVersion) => {
1075
1180
  shimmer.wrap(
1076
1181
  testSchedulerPackage.default.prototype,
@@ -1081,7 +1186,7 @@ addHook({
1081
1186
 
1082
1187
  addHook({
1083
1188
  name: '@jest/test-sequencer',
1084
- versions: ['>=28']
1189
+ versions: ['>=28'],
1085
1190
  }, (sequencerPackage, frameworkVersion) => {
1086
1191
  shimmer.wrap(sequencerPackage.default.prototype, 'shard', shard => function () {
1087
1192
  const shardedTests = shard.apply(this, arguments)
@@ -1100,18 +1205,18 @@ addHook({
1100
1205
  addHook({
1101
1206
  name: '@jest/reporters',
1102
1207
  file: 'build/coverage_reporter.js',
1103
- versions: ['>=24.8.0 <26.6.2']
1208
+ versions: ['>=24.8.0 <26.6.2'],
1104
1209
  }, coverageReporterWrapper)
1105
1210
 
1106
1211
  addHook({
1107
1212
  name: '@jest/reporters',
1108
1213
  file: 'build/CoverageReporter.js',
1109
- versions: ['>=26.6.2']
1214
+ versions: ['>=26.6.2'],
1110
1215
  }, coverageReporterWrapper)
1111
1216
 
1112
1217
  addHook({
1113
1218
  name: '@jest/reporters',
1114
- versions: ['>=30.0.0']
1219
+ versions: ['>=30.0.0'],
1115
1220
  }, (reporters) => {
1116
1221
  return shimmer.wrap(reporters, 'CoverageReporter', coverageReporterWrapper, { replaceGetter: true })
1117
1222
  })
@@ -1119,12 +1224,12 @@ addHook({
1119
1224
  addHook({
1120
1225
  name: '@jest/core',
1121
1226
  file: 'build/cli/index.js',
1122
- versions: ['>=24.8.0 <30.0.0']
1227
+ versions: ['>=24.8.0 <30.0.0'],
1123
1228
  }, getCliWrapper(false))
1124
1229
 
1125
1230
  addHook({
1126
1231
  name: '@jest/core',
1127
- versions: ['>=30.0.0']
1232
+ versions: ['>=30.0.0'],
1128
1233
  }, getCliWrapper(true))
1129
1234
 
1130
1235
  function jestAdapterWrapper (jestAdapter, jestVersion) {
@@ -1140,7 +1245,7 @@ function jestAdapterWrapper (jestAdapter, jestVersion) {
1140
1245
  testSourceFile: environment.testSourceFile,
1141
1246
  displayName: environment.displayName,
1142
1247
  frameworkVersion: jestVersion,
1143
- testSuiteAbsolutePath: environment.testSuiteAbsolutePath
1248
+ testSuiteAbsolutePath: environment.testSuiteAbsolutePath,
1144
1249
  })
1145
1250
  return adapter.apply(this, arguments).then(suiteResults => {
1146
1251
  const { numFailingTests, skipped, failureMessage: errorMessage } = suiteResults
@@ -1168,7 +1273,7 @@ function jestAdapterWrapper (jestAdapter, jestVersion) {
1168
1273
  coverageFiles,
1169
1274
  testSuite: environment.testSourceFile,
1170
1275
  mockedFiles,
1171
- testSuiteAbsolutePath: environment.testSuiteAbsolutePath
1276
+ testSuiteAbsolutePath: environment.testSuiteAbsolutePath,
1172
1277
  })
1173
1278
  }
1174
1279
  testSuiteFinishCh.publish({ status, errorMessage, testSuiteAbsolutePath: environment.testSuiteAbsolutePath })
@@ -1200,13 +1305,13 @@ function jestAdapterWrapper (jestAdapter, jestVersion) {
1200
1305
  addHook({
1201
1306
  name: 'jest-circus',
1202
1307
  file: 'build/runner.js',
1203
- versions: ['>=30.0.0']
1308
+ versions: ['>=30.0.0'],
1204
1309
  }, jestAdapterWrapper)
1205
1310
 
1206
1311
  addHook({
1207
1312
  name: 'jest-circus',
1208
1313
  file: 'build/legacy-code-todo-rewrite/jestAdapter.js',
1209
- versions: ['>=24.8.0']
1314
+ versions: ['>=24.8.0'],
1210
1315
  }, jestAdapterWrapper)
1211
1316
 
1212
1317
  function configureTestEnvironment (readConfigsResult) {
@@ -1214,9 +1319,9 @@ function configureTestEnvironment (readConfigsResult) {
1214
1319
  testSessionConfigurationCh.publish(configs.map(config => config.testEnvironmentOptions))
1215
1320
  // We can't directly use isCodeCoverageEnabled when reporting coverage in `jestAdapterWrapper`
1216
1321
  // because `jestAdapterWrapper` runs in a different process. We have to go through `testEnvironmentOptions`
1217
- configs.forEach(config => {
1322
+ for (const config of configs) {
1218
1323
  config.testEnvironmentOptions._ddTestCodeCoverageEnabled = isCodeCoverageEnabled
1219
- })
1324
+ }
1220
1325
 
1221
1326
  isUserCodeCoverageEnabled = !!readConfigsResult.globalConfig.collectCoverage
1222
1327
 
@@ -1227,7 +1332,7 @@ function configureTestEnvironment (readConfigsResult) {
1227
1332
  if (isCodeCoverageEnabled) {
1228
1333
  const globalConfig = {
1229
1334
  ...readConfigsResult.globalConfig,
1230
- collectCoverage: true
1335
+ collectCoverage: true,
1231
1336
  }
1232
1337
  readConfigsResult.globalConfig = globalConfig
1233
1338
  }
@@ -1238,7 +1343,7 @@ function configureTestEnvironment (readConfigsResult) {
1238
1343
  const globalConfig = {
1239
1344
  ...readConfigsResult.globalConfig,
1240
1345
  coverageReporters: ['none'],
1241
- passWithNoTests: true
1346
+ passWithNoTests: true,
1242
1347
  }
1243
1348
  readConfigsResult.globalConfig = globalConfig
1244
1349
  }
@@ -1265,7 +1370,7 @@ function jestConfigSyncWrapper (jestConfig) {
1265
1370
  addHook({
1266
1371
  name: '@jest/transform',
1267
1372
  versions: ['>=24.8.0'],
1268
- file: 'build/ScriptTransformer.js'
1373
+ file: 'build/ScriptTransformer.js',
1269
1374
  }, transformPackage => {
1270
1375
  const originalCreateScriptTransformer = transformPackage.createScriptTransformer
1271
1376
 
@@ -1311,18 +1416,18 @@ addHook({
1311
1416
  addHook({
1312
1417
  name: '@jest/core',
1313
1418
  versions: ['>=24.8.0 <30.0.0'],
1314
- file: 'build/SearchSource.js'
1419
+ file: 'build/SearchSource.js',
1315
1420
  }, searchSourceWrapper)
1316
1421
 
1317
1422
  // from 25.1.0 on, readConfigs becomes async
1318
1423
  addHook({
1319
1424
  name: 'jest-config',
1320
- versions: ['>=25.1.0']
1425
+ versions: ['>=25.1.0'],
1321
1426
  }, jestConfigAsyncWrapper)
1322
1427
 
1323
1428
  addHook({
1324
1429
  name: 'jest-config',
1325
- versions: ['24.8.0 - 24.9.0']
1430
+ versions: ['24.8.0 - 24.9.0'],
1326
1431
  }, jestConfigSyncWrapper)
1327
1432
 
1328
1433
  const LIBRARIES_BYPASSING_JEST_REQUIRE_ENGINE = new Set([
@@ -1333,12 +1438,12 @@ const LIBRARIES_BYPASSING_JEST_REQUIRE_ENGINE = new Set([
1333
1438
  'selenium-webdriver/firefox',
1334
1439
  'selenium-webdriver/ie',
1335
1440
  'selenium-webdriver/chromium',
1336
- 'winston'
1441
+ 'winston',
1337
1442
  ])
1338
1443
 
1339
1444
  addHook({
1340
1445
  name: 'jest-runtime',
1341
- versions: ['>=24.8.0']
1446
+ versions: ['>=24.8.0'],
1342
1447
  }, (runtimePackage) => {
1343
1448
  const Runtime = runtimePackage.default ?? runtimePackage
1344
1449
 
@@ -1395,12 +1500,12 @@ addHook({
1395
1500
  const errorMessage = [...this.loggedReferenceErrors][0]
1396
1501
  testSuiteErrorCh.publish({
1397
1502
  errorMessage,
1398
- testSuiteAbsolutePath: this._testPath
1503
+ testSuiteAbsolutePath: this._testPath,
1399
1504
  })
1400
1505
  } else {
1401
1506
  testSuiteErrorCh.publish({
1402
1507
  errorMessage: 'An error occurred while importing a module',
1403
- testSuiteAbsolutePath: this._testPath
1508
+ testSuiteAbsolutePath: this._testPath,
1404
1509
  })
1405
1510
  }
1406
1511
  }
@@ -1466,8 +1571,8 @@ function sendWrapper (send) {
1466
1571
  _ddTestManagementTests: suiteTestManagementTests,
1467
1572
  // TODO: figure out if we can reduce the size of the modified files object
1468
1573
  // Can we use `testSuite` (it'd have to be relative to repository root though)
1469
- _ddModifiedFiles: modifiedFiles
1470
- }
1574
+ _ddModifiedFiles: modifiedFiles,
1575
+ },
1471
1576
  }
1472
1577
  }
1473
1578
  return send.apply(this, arguments)
@@ -1499,7 +1604,7 @@ function enqueueWrapper (enqueue) {
1499
1604
  addHook({
1500
1605
  name: 'jest-worker',
1501
1606
  versions: ['>=24.9.0 <30.0.0'],
1502
- file: 'build/workers/ChildProcessWorker.js'
1607
+ file: 'build/workers/ChildProcessWorker.js',
1503
1608
  }, (childProcessWorker) => {
1504
1609
  const ChildProcessWorker = childProcessWorker.default
1505
1610
  shimmer.wrap(ChildProcessWorker.prototype, 'send', sendWrapper)
@@ -1513,7 +1618,7 @@ addHook({
1513
1618
 
1514
1619
  addHook({
1515
1620
  name: 'jest-worker',
1516
- versions: ['>=30.0.0']
1621
+ versions: ['>=30.0.0'],
1517
1622
  }, (jestWorkerPackage) => {
1518
1623
  shimmer.wrap(jestWorkerPackage.FifoQueue.prototype, 'enqueue', enqueueWrapper)
1519
1624
  shimmer.wrap(jestWorkerPackage.PriorityQueue.prototype, 'enqueue', enqueueWrapper)
@@ -5,7 +5,7 @@ const shimmer = require('../../datadog-shimmer')
5
5
  const log = require('../../dd-trace/src/log')
6
6
  const {
7
7
  channel,
8
- addHook
8
+ addHook,
9
9
  } = require('./helpers/instrument')
10
10
 
11
11
  const producerStartCh = channel('apm:kafkajs:produce:start')
@@ -33,7 +33,7 @@ function commitsFromEvent (event) {
33
33
  groupId,
34
34
  partition,
35
35
  offset,
36
- topic
36
+ topic,
37
37
  })
38
38
  }
39
39
  }
@@ -66,7 +66,7 @@ addHook({ name: 'kafkajs', file: 'src/index.js', versions: ['>=1.4'] }, (BaseKaf
66
66
  clusterId,
67
67
  disableHeaderInjection: disabledHeaderWeakSet.has(producer),
68
68
  messages,
69
- topic
69
+ topic,
70
70
  }
71
71
 
72
72
  for (const message of messages) {
@@ -93,9 +93,10 @@ addHook({ name: 'kafkajs', file: 'src/index.js', versions: ['>=1.4'] }, (BaseKaf
93
93
  // This approach is implemented by other tracers as well.
94
94
  if (err.name === 'KafkaJSProtocolError' && err.type === 'UNKNOWN') {
95
95
  disabledHeaderWeakSet.add(producer)
96
- log.error('Kafka Broker responded with UNKNOWN_SERVER_ERROR (-1). ' +
97
- 'Please look at broker logs for more information. ' +
98
- 'Tracer message header injection for Kafka is disabled.')
96
+ log.error(
97
+ // eslint-disable-next-line @stylistic/max-len
98
+ 'Kafka Broker responded with UNKNOWN_SERVER_ERROR (-1). Please look at broker logs for more information. Tracer message header injection for Kafka is disabled.'
99
+ )
99
100
  }
100
101
  producerErrorCh.publish(err)
101
102
  }
@@ -169,7 +170,7 @@ addHook({ name: 'kafkajs', file: 'src/index.js', versions: ['>=1.4'] }, (BaseKaf
169
170
  eachBatchExtractor,
170
171
  clusterId
171
172
  ),
172
- ...runArgs
173
+ ...runArgs,
173
174
  })
174
175
  }
175
176
 
@@ -193,7 +194,7 @@ const wrappedCallback = (fn, startCh, finishCh, errorCh, extractArgs, clusterId)
193
194
  ? function (...args) {
194
195
  const extractedArgs = extractArgs(args, clusterId)
195
196
  const ctx = {
196
- extractedArgs
197
+ extractedArgs,
197
198
  }
198
199
 
199
200
  return startCh.runStores(ctx, () => {
@@ -16,7 +16,7 @@ function patch (file) {
16
16
  addHook({
17
17
  name: 'knex',
18
18
  versions: ['>=0.8.0'],
19
- file
19
+ file,
20
20
  }, Builder => {
21
21
  shimmer.wrap(Builder.prototype, 'then', wrapThen)
22
22
  return Builder
@@ -30,7 +30,7 @@ function finish (context, cb) {
30
30
  addHook({
31
31
  name: 'knex',
32
32
  versions: ['>=2'],
33
- file: 'lib/knex-builder/Knex.js'
33
+ file: 'lib/knex-builder/Knex.js',
34
34
  }, Knex => {
35
35
  shimmer.wrap(Knex.Client.prototype, 'raw', raw => function () {
36
36
  if (!startRawQueryCh.hasSubscribers) {
@@ -57,7 +57,9 @@ function wrapRouterUse (use) {
57
57
  return function useWithTrace () {
58
58
  const router = use.apply(this, arguments)
59
59
 
60
- router.stack.forEach(wrapStack)
60
+ for (const layer of router.stack) {
61
+ wrapStack(layer)
62
+ }
61
63
 
62
64
  return router
63
65
  }
@@ -4,7 +4,7 @@ const shimmer = require('../../datadog-shimmer')
4
4
  const {
5
5
  channel,
6
6
  addHook,
7
- AsyncResource
7
+ AsyncResource,
8
8
  } = require('./helpers/instrument')
9
9
 
10
10
  function isString (value) {
@@ -14,7 +14,7 @@
14
14
  const shimmer = require('../../datadog-shimmer')
15
15
  const {
16
16
  channel,
17
- addHook
17
+ addHook,
18
18
  } = require('./helpers/instrument')
19
19
 
20
20
  // Reuse the same channels as HTTP server instrumentation
@@ -14,7 +14,7 @@ function wrapRequest (original) {
14
14
  addHook({
15
15
  name: 'limitd-client',
16
16
  versions: ['>=2.8'],
17
- file: ['client.js']
17
+ file: ['client.js'],
18
18
  }, LimitdClient => {
19
19
  shimmer.wrap(LimitdClient.prototype, '_directRequest', wrapRequest)
20
20
  shimmer.wrap(LimitdClient.prototype, '_retriedRequest', wrapRequest)
@@ -65,7 +65,7 @@ function createWrapQuery (options) {
65
65
  finishCh.publish(ctx)
66
66
  return result
67
67
  }, error => {
68
- ctx.error
68
+ ctx.error = error
69
69
  errorCh.publish(ctx)
70
70
  finishCh.publish(ctx)
71
71
  throw error
@@ -3,7 +3,7 @@
3
3
  const shimmer = require('../../datadog-shimmer')
4
4
  const {
5
5
  channel,
6
- addHook
6
+ addHook,
7
7
  } = require('./helpers/instrument')
8
8
 
9
9
  addHook({ name: 'memcached', versions: ['>=2.2'] }, Memcached => {