dd-trace-js icon indicating copy to clipboard operation
dd-trace-js copied to clipboard

Upgrade tap from v16 to v19

Open watson opened this issue 1 year ago • 8 comments
trafficstars

watson avatar Oct 01 '24 10:10 watson

This stack of pull requests is managed by Graphite. Learn more about stacking.

watson avatar Oct 01 '24 10:10 watson

Overall package size

Self size: 9.77 MB Deduped: 106.28 MB No deduping: 106.8 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.7.0 | 35.02 MB | 35.02 MB | | @datadog/native-appsec | 8.5.2 | 19.33 MB | 19.34 MB | | @datadog/native-iast-taint-tracking | 4.0.0 | 11.72 MB | 11.73 MB | | @datadog/pprof | 5.8.2 | 9.56 MB | 9.93 MB | | @opentelemetry/core | 1.30.1 | 908.66 kB | 7.16 MB | | protobufjs | 7.5.3 | 2.95 MB | 5.6 MB | | @datadog/wasm-js-rewriter | 4.0.1 | 2.85 MB | 3.58 MB | | @datadog/native-metrics | 3.1.1 | 1.02 MB | 1.43 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.14.0 | 120.58 kB | 841 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.1 | 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 | | istanbul-lib-coverage | 3.2.2 | 34.37 kB | 34.37 kB | | rfdc | 1.4.1 | 27.15 kB | 27.15 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | dc-polyfill | 0.1.9 | 25.11 kB | 25.11 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | shell-quote | 1.8.2 | 23.54 kB | 23.54 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 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 | | mutexify | 1.4.0 | 5.71 kB | 8.74 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.4 | 3.96 kB | 3.96 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

github-actions[bot] avatar Oct 01 '24 10:10 github-actions[bot]

Benchmarks

Benchmark execution time: 2025-06-25 21:09:34

Comparing candidate commit 16b6b34dbf1e23496032475c1dfae8497df8c6e5 in PR branch watson/10-01-upgrade_tap_from_v16_to_v19 with baseline commit 1ddb718a0151da622814071ab774c8adf538ae37 in branch master.

Found 0 performance improvements and 24 performance regressions! Performance is the same for 1245 metrics, 54 unstable metrics.

scenario:startup-control-everything-18

  • 🟥 cpu_user_time [+272.510ms; +296.269ms] or [+16.412%; +17.843%]
  • 🟥 execution_time [+305.982ms; +332.796ms] or [+15.849%; +17.237%]
  • 🟥 instructions [+1.1G instructions; +1.1G instructions] or [+26.413%; +26.984%]
  • 🟥 max_rss_usage [+25.830MB; +26.843MB] or [+14.911%; +15.496%]

scenario:startup-control-everything-20

  • 🟥 cpu_user_time [+236.472ms; +265.340ms] or [+11.837%; +13.282%]
  • 🟥 execution_time [+266.636ms; +299.885ms] or [+11.472%; +12.902%]
  • 🟥 instructions [+1.1G instructions; +1.1G instructions] or [+20.399%; +20.875%]
  • 🟥 max_rss_usage [+23.357MB; +27.608MB] or [+13.043%; +15.417%]

scenario:startup-control-everything-22

  • 🟥 cpu_user_time [+246.889ms; +281.091ms] or [+12.013%; +13.677%]
  • 🟥 execution_time [+268.914ms; +306.890ms] or [+10.672%; +12.179%]
  • 🟥 instructions [+1.0G instructions; +1.1G instructions] or [+17.939%; +18.412%]
  • 🟥 max_rss_usage [+17.022MB; +20.031MB] or [+8.607%; +10.128%]

scenario:startup-with-tracer-everything-18

  • 🟥 cpu_user_time [+249.610ms; +274.336ms] or [+11.527%; +12.669%]
  • 🟥 execution_time [+290.837ms; +316.859ms] or [+11.515%; +12.546%]
  • 🟥 instructions [+1.1G instructions; +1.1G instructions] or [+20.682%; +21.085%]
  • 🟥 max_rss_usage [+19.236MB; +21.646MB] or [+10.433%; +11.740%]

scenario:startup-with-tracer-everything-20

  • 🟥 cpu_user_time [+254.634ms; +282.024ms] or [+10.576%; +11.714%]
  • 🟥 execution_time [+298.371ms; +329.693ms] or [+10.642%; +11.759%]
  • 🟥 instructions [+1.1G instructions; +1.1G instructions] or [+17.516%; +17.808%]
  • 🟥 max_rss_usage [+30.702MB; +34.727MB] or [+16.880%; +19.093%]

scenario:startup-with-tracer-everything-22

  • 🟥 cpu_user_time [+238.739ms; +278.603ms] or [+9.454%; +11.032%]
  • 🟥 execution_time [+274.656ms; +313.319ms] or [+8.558%; +9.763%]
  • 🟥 instructions [+1.1G instructions; +1.1G instructions] or [+14.349%; +14.619%]
  • 🟥 max_rss_usage [+20.889MB; +24.619MB] or [+10.339%; +12.186%]

pr-commenter[bot] avatar Oct 01 '24 10:10 pr-commenter[bot]

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 85.90%. Comparing base (1ddb718) to head (16b6b34). Report is 16 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4744      +/-   ##
==========================================
+ Coverage   78.75%   85.90%   +7.15%     
==========================================
  Files         448      222     -226     
  Lines       19562     7373   -12189     
==========================================
- Hits        15406     6334    -9072     
+ Misses       4156     1039    -3117     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

codecov[bot] avatar Oct 01 '24 10:10 codecov[bot]

It also had a lot of failing tests. I can't remember the issues at the moment, but I'll try to re-run them so we can see

watson avatar Feb 25 '25 08:02 watson

Ah, yes... I start to remember some of the issues: The new version of tap changes how code coverage is generated, so the way we configure that needs to be refactored as well

watson avatar Feb 25 '25 09:02 watson

Datadog Report

Branch report: watson/10-01-upgrade_tap_from_v16_to_v19 Commit report: 61ba175 Test service: dd-trace-js-integration-tests

:white_check_mark: 0 Failed, 1254 Passed, 0 Skipped, 20m 4.36s Total Time

@watson do you think you could find some time to look into it? Or should we maybe discuss how we could unify our tests suits generally in a proper way? I know there were a few attempts so far.

BridgeAR avatar May 28 '25 23:05 BridgeAR

The way beforeEach and friends work in newer versions of tap is incompatible with our usage, so we can never upgrade without so much work that it becomes unfeasible. Therefore I'm closing this PR as the we will have to use something else than tap.

watson avatar Jun 27 '25 13:06 watson