-
Notifications
You must be signed in to change notification settings - Fork 318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v5.39.0 proposal #5337
v5.39.0 proposal #5337
Conversation
* add `DD_TRACE_AWS_ADD_SPAN_POINTERS` env var & update DD_AWS_SDK_DYNAMODB_TABLE_PRIMARY_KEYS to DD_TRACE_DYNAMODB_TABLE_PRIMARY_KEYS
…ly injected into commands (#5306) * comment has to be assigned back to the input ops to ensure incoming command is modified before execution * input comment to injectDbmCommand * rename injectDbmCommand to injectDbmComment
* Add stack id in location as a string * get stackId from location * remove stack id from format vuln
* [DI] Remove source map cache for Node.js 18 This is the second attempt at a workaround for a bug in Node.js core, that sometimes triggers when, among other things, a timer is created. This makes the call to `setTimeout` throw an un-catchable error from within `AsyncLocalStorage._propagate` with the following TypeError: Cannot read properties of undefined (reading 'Symbol(kResourceStore)') * Adjust cache timings
The timeout and the flush can be handled without any variables. This way nothing is added to the instance.
* add dynamodb payload tagging * add tests for ddb payload tagging * lint and remove version dependent checks
* lazy load dsm only when needed * code cleanup * refactor and add comments
Uses @eslint/config-inspector to generate a report of our current ESLint configuraton.
* ESLint: Add eslint-plugin-unicorn * ESLint: Clean up config * Enable recommended unicorn rules that doesn't error
- Remove actions installing old Node.js versions no longer used (`14` and `16`) - Rename `latest` action to `active-lts` to clearly signal intent (a separate `latest` or `current` action that tests non-lts, can be created in a follow up commit) - Remove `18` action, and replace any usage of it with `oldest-maintenance-lts` - Remove `setup` action and replace any usage of it with `active-lts` - Move `install` action to after the first Node.js install action that actually needs it, instead of first installing one Node.js version, only to install another right after - Change any direct usage of `actions/setup-node` to use our own Node.js installation actions instead, when a matrix is not used.
* - Allow for context.context not being defined (newer pprof-nodejs won't attach it to idle samples) - Bail out faster when it's not present - Handle soon-to-be-introduced context.asyncId * Add a comment, better express type expectations * Test the label generator
If a function is marked as async, V8 will create a few extra promises behind the scenes when awaiting it. If the function doesn't itself contain any awaits, these extra promises just adds overhead that isn't needed. The `require-await` rule isn't enabled in tests, where the extra created promises doesn't harm anyone.
Overall package sizeSelf size: 8.81 MB Dependency sizes| name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.4.0 | 29.44 MB | 29.44 MB | | @datadog/native-appsec | 8.4.0 | 19.25 MB | 19.26 MB | | @datadog/native-iast-taint-tracking | 3.3.0 | 13.77 MB | 13.78 MB | | @datadog/pprof | 5.5.1 | 9.79 MB | 10.17 MB | | protobufjs | 7.2.5 | 2.77 MB | 5.16 MB | | @datadog/native-iast-rewriter | 2.8.0 | 2.6 MB | 2.74 MB | | @opentelemetry/core | 1.14.0 | 872.87 kB | 1.47 MB | | @datadog/native-metrics | 3.1.0 | 1.06 MB | 1.46 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.11.2 | 112.74 kB | 835.4 kB | | source-map | 0.7.4 | 226 kB | 226 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | lru-cache | 7.18.3 | 133.92 kB | 133.92 kB | | pprof-format | 2.1.0 | 111.69 kB | 111.69 kB | | @datadog/sketches-js | 2.1.0 | 109.9 kB | 109.9 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 5.3.2 | 53.63 kB | 53.63 kB | | shell-quote | 1.8.1 | 44.96 kB | 44.96 kB | | istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB | | rfdc | 1.3.1 | 25.21 kB | 25.21 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | dc-polyfill | 0.1.4 | 23.1 kB | 23.1 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | semifies | 1.0.0 | 15.84 kB | 15.84 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | ttl-set | 1.0.0 | 4.61 kB | 9.69 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | koalas | 1.0.2 | 6.47 kB | 6.47 kB | | module-details-from-path | 1.0.3 | 4.47 kB | 4.47 kB |🤖 This report was automatically generated by heaviest-objects-in-the-universe |
Datadog ReportBranch report: ✅ 0 Failed, 668 Passed, 0 Skipped, 11m 21.29s Total Time |
BenchmarksBenchmark execution time: 2025-02-27 12:48:09 Comparing candidate commit 668778e in PR branch Found 107 performance improvements and 1 performance regressions! Performance is the same for 807 metrics, 18 unstable metrics. scenario:appsec-appsec-enabled-18
scenario:appsec-appsec-enabled-20
scenario:appsec-appsec-enabled-22
scenario:appsec-appsec-enabled-with-attacks-18
scenario:appsec-appsec-enabled-with-attacks-20
scenario:appsec-appsec-enabled-with-attacks-22
scenario:appsec-control-18
scenario:appsec-control-20
scenario:appsec-control-22
scenario:appsec-control-with-attacks-18
scenario:appsec-control-with-attacks-20
scenario:appsec-control-with-attacks-22
scenario:appsec-iast-no-vulnerability-control-18
scenario:appsec-iast-no-vulnerability-control-20
scenario:appsec-iast-no-vulnerability-control-22
scenario:appsec-iast-startup-time-iast-enabled-20
scenario:appsec-iast-with-vulnerability-control-18
scenario:appsec-startup-time-control-20
scenario:log-skip-log-18
scenario:log-skip-log-22
scenario:log-with-debug-18
scenario:log-with-debug-22
scenario:log-with-error-18
scenario:log-with-error-22
scenario:log-without-log-18
scenario:log-without-log-22
scenario:net-with-tracer-18
scenario:net-with-tracer-20
scenario:net-with-tracer-22
scenario:plugin-bluebird-with-tracer-18
scenario:plugin-bluebird-with-tracer-20
scenario:plugin-bluebird-with-tracer-22
scenario:plugin-dns-with-tracer-18
scenario:plugin-dns-with-tracer-20
scenario:plugin-dns-with-tracer-22
scenario:plugin-http-client-with-tracer-18
scenario:plugin-http-client-with-tracer-20
scenario:plugin-http-client-with-tracer-22
scenario:plugin-http-server-querystring-obfuscation-22
scenario:plugin-http-server-with-tracer-22
scenario:plugin-q-with-tracer-20
scenario:plugin-q-with-tracer-22
scenario:spans-finish-later-22
scenario:startup-with-tracer-18
scenario:startup-with-tracer-20
scenario:startup-with-tracer-22
|
9bc5d3440a
] - (SEMVER-PATCH) ESLint: Require await inside async functions (Thomas Watson) #5263991e77a547
] - (SEMVER-PATCH) fix shimmer double wrapping for non-method functions (Roch Devost) #5329806877279d
] - (SEMVER-MINOR) Various improvements to profiling sample label generator (Attila Szegedi) #53165963c08821
] - (SEMVER-PATCH) only load the naming schema version that is used (Roch Devost) #5318c9b9d086f3
] - (SEMVER-PATCH) lazy load fetch instrumentation only when needed (Roch Devost) #53172070869ffd
] - (SEMVER-PATCH) CI: Clean up Node.js installation in GitHub actions (Thomas Watson) #53222c9ab130df
] - (SEMVER-MINOR) Automated Session Tracking (simon-id) #50608cd547ee13
] - (SEMVER-PATCH) [DI] Improve code comment (Thomas Watson) #53198e6c297179
] - (SEMVER-PATCH) ESLint: Add eslint-plugin-unicorn (Thomas Watson) #5297696cf86ac2
] - (SEMVER-PATCH) ESLint: Add yarn lint:inspect command (Thomas Watson) #5309a1cd027712
] - (SEMVER-PATCH) lazy load span leak detection only when used (Roch Devost) #5259bcf7e6129b
] - (SEMVER-PATCH) lazy load dsm only when needed (Roch Devost) #5305487ea6f6ef
] - (SEMVER-PATCH) lazy load runtime metrics only when needed (Roch Devost) #52547fc2f9856e
] - (SEMVER-PATCH) fix logging when extracting from w3c traceparent (Roch Devost) #5227f97f991636
] - (SEMVER-PATCH) only load fetch plugin when fetch is used (Roch Devost) #5272f87acc237a
] - (SEMVER-PATCH) security: fix VULN-9754 (Thomas Hunter II) #5315ddcbcbba70
] - (SEMVER-MINOR) Ddd dynamodb payload tagging (Joey Zhao) #52249f5b7c47ef
] - (SEMVER-PATCH) Do not expose internals (Ruben Bridgewater) #53137aae4fcb8b
] - (SEMVER-PATCH) [DI] Remove source map cache in Node.js 18 (Thomas Watson) #5302f07a03ac71
] - (SEMVER-PATCH) refactor: move remote_config code to the root of dd-trace (Thomas Watson) #4475b046c06060
] - (SEMVER-PATCH) [test optimization] Fix wronglog.error
if quarantined tests are empty (Juan Antonio Fernández de Alba) #5296996e8fbfd4
] - (SEMVER-PATCH) Add stack id in location as a string (Ilyas Shabi) #5250fd425151b5
] - (SEMVER-PATCH) Update .gitlab-ci.yml (Laplie Anderson) #5301e6a9d8dd72
] - (SEMVER-PATCH) lazy load telemetry entrypoint only when needed (Roch Devost) #5258ac25f3005b
] - (SEMVER-PATCH) refactor custom metrics to be self-contained (Bryan English) #506185c5c4fd6e
] - (SEMVER-PATCH) fix tracer flare log (Bryan English) #5143c4f2921527
] - (SEMVER-PATCH) move otel to datadog context conversion on otel side (Roch Devost) #5260519fbce483
] - (SEMVER-PATCH) Fix MongoDB DBM propagation issue where trace comments are not properly injected into commands (Zhengda Lu) #5306f7cc3445bf
] - (SEMVER-MINOR) Update span pointer env vars (Nicholas Hulston) #5266c8940851ed
] - (SEMVER-MINOR) [DSM] Add messaging.destination tag to spans so they show up in queue pages (Eric Firth) #5239