dd-trace-js
dd-trace-js copied to clipboard
WIP: added module list to pass into IITM hook
What does this PR do?
We are modifying IITM to be able to take in a set of modules to patch.
https://github.com/DataDog/import-in-the-middle/pull/65
This PR creates a module dependency list of files that need IITM patching, and pass this list into IITM createHook
Motivation
Plugin Checklist
- [ ] Unit tests.
- [ ] TypeScript definitions.
- [ ] TypeScript tests.
- [ ] API documentation.
- [ ] CircleCI jobs/workflows.
- [ ] Plugin is exported.
Additional Notes
Security
Datadog employees:
- [ ] If this PR touches code that signs or publishes builds or packages, or handles credentials of any kind, I've requested a review from
@DataDog/security-design-and-guidance. - [ ] This PR doesn't touch any of that.
Unsure? Have a question? Request a review!
Overall package size
Self size: 6.27 MB Deduped: 60.75 MB No deduping: 61.03 MB
Dependency sizes
| name | version | self size | total size |
|---|---|---|---|
| @datadog/native-iast-taint-tracking | 1.7.0 | 16.71 MB | 16.72 MB |
| @datadog/native-appsec | 7.1.0 | 14.37 MB | 14.38 MB |
| @datadog/pprof | 5.2.0 | 8.84 MB | 9.21 MB |
| protobufjs | 7.2.5 | 2.77 MB | 6.56 MB |
| @datadog/native-iast-rewriter | 2.3.0 | 2.15 MB | 2.24 MB |
| @opentelemetry/core | 1.14.0 | 872.87 kB | 1.47 MB |
| @datadog/native-metrics | 2.0.0 | 898.77 kB | 1.3 MB |
| @opentelemetry/api | 1.4.1 | 780.32 kB | 780.32 kB |
| import-in-the-middle | 1.7.3 | 67.62 kB | 731.01 kB |
| msgpack-lite | 0.1.26 | 201.16 kB | 281.59 kB |
| opentracing | 0.14.7 | 194.81 kB | 194.81 kB |
| semver | 7.5.4 | 93.4 kB | 123.8 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 |
| lru-cache | 7.14.0 | 74.95 kB | 74.95 kB |
| ipaddr.js | 2.1.0 | 60.23 kB | 60.23 kB |
| ignore | 5.2.4 | 51.22 kB | 51.22 kB |
| int64-buffer | 0.1.10 | 49.18 kB | 49.18 kB |
| shell-quote | 1.8.1 | 44.96 kB | 44.96 kB |
| istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 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 |
| node-abort-controller | 3.1.1 | 16.89 kB | 16.89 kB |
| jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB |
| crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB |
| path-to-regexp | 0.1.7 | 6.78 kB | 6.78 kB |
| koalas | 1.0.2 | 6.47 kB | 6.47 kB |
| methods | 1.1.2 | 5.29 kB | 5.29 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
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 85.10%. Comparing base (
c9e1082) to head (41d859c). Report is 611 commits behind head on master.
Additional details and impacted files
@@ Coverage Diff @@
## master #4187 +/- ##
==========================================
+ Coverage 85.06% 85.10% +0.03%
==========================================
Files 247 245 -2
Lines 10953 10781 -172
Branches 33 33
==========================================
- Hits 9317 9175 -142
+ Misses 1636 1606 -30
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Benchmarks
Benchmark execution time: 2024-03-28 15:01:49
Comparing candidate commit 41d859c7499c5fc39a1e676ae655875e4c992ff5 in PR branch ida613/iitm-module-filter with baseline commit c9e10822c125fb3c42cc0006dd1d8b01fb76fbe4 in branch master.
Found 2 performance improvements and 0 performance regressions! Performance is the same for 259 metrics, 5 unstable metrics.
scenario:plugin-graphql-with-depth-off-18
- 🟩
max_rss_usage[-99.543MB; -95.953MB] or [-10.640%; -10.257%]
scenario:plugin-graphql-with-depth-on-max-18
- 🟩
max_rss_usage[-143.047MB; -133.637MB] or [-14.774%; -13.802%]