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

PHP 8.4 support

Open realFlowControl opened this issue 1 year ago • 6 comments

Description

This PR will bring support for PHP 8.4 🎉

PROF-10137

Reviewer checklist

  • [ ] Test coverage seems ok.
  • [x] Appropriate labels assigned.

realFlowControl avatar Jul 12 '24 10:07 realFlowControl

Codecov Report

Attention: Patch coverage is 66.66667% with 1 line in your changes missing coverage. Please review.

Project coverage is 78.24%. Comparing base (093ef34) to head (2c614f2). Report is 459 commits behind head on master.

Files with missing lines Patch % Lines
appsec/src/extension/backtrace.c 66.66% 0 Missing and 1 partial :warning:

:x: Your patch status has failed because the patch coverage (66.66%) is below the target coverage (90.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff              @@
##             master    #2758      +/-   ##
============================================
+ Coverage     78.21%   78.24%   +0.02%     
  Complexity     2526     2526              
============================================
  Files           173      135      -38     
  Lines         18752    14400    -4352     
  Branches        988      989       +1     
============================================
- Hits          14667    11267    -3400     
+ Misses         3544     2591     -953     
- Partials        541      542       +1     
Flag Coverage Δ
appsec-extension 68.36% <66.66%> (-0.01%) :arrow_down:
tracer-extension ?
tracer-php 82.09% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
appsec/src/extension/configuration.c 62.62% <ø> (ø)
appsec/src/extension/ddappsec.c 70.56% <ø> (ø)
appsec/src/extension/ddtrace.c 60.00% <ø> (ø)
appsec/src/extension/helper_process.c 62.23% <ø> (ø)
appsec/src/extension/ip_extraction.c 75.00% <ø> (ø)
appsec/src/extension/logging.c 71.11% <ø> (ø)
appsec/src/extension/logging.h 100.00% <ø> (ø)
appsec/src/extension/msgpack_helpers.c 55.05% <ø> (ø)
appsec/src/extension/php_objects.c 85.71% <ø> (ø)
appsec/src/extension/request_abort.c 72.28% <ø> (ø)
... and 3 more

... and 38 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 093ef34...2c614f2. Read the comment docs.

: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-commenter avatar Jul 12 '24 10:07 codecov-commenter

Benchmarks

Benchmark execution time: 2024-09-12 13:37:00

Comparing candidate commit 29864d4253b8bbb7e9780a997ed37831f2123398 in PR branch florian/php-8.4 with baseline commit ddf15fee772bf1bddf9f3fc50dbc7aa8807243c6 in branch master.

Found 1 performance improvements and 2 performance regressions! Performance is the same for 175 metrics, 0 unstable metrics.

scenario:PDOBench/benchPDOBaseline-opcache

  • 🟥 execution_time [+12.483µs; +14.526µs] or [+6.994%; +8.139%]

scenario:PDOBench/benchPDOOverhead-opcache

  • 🟥 execution_time [+13.733µs; +16.923µs] or [+4.781%; +5.892%]

scenario:WordPressBench/benchWordPressOverhead

  • 🟩 execution_time [-21.857ms; -21.671ms] or [-82.926%; -82.218%]

pr-commenter[bot] avatar Jul 16 '24 12:07 pr-commenter[bot]

Benchmarks [ profiler ]

Benchmark execution time: 2024-10-29 19:00:54

Comparing candidate commit 2c614f2fc13f775ce09711a9704a59d85899f1b9 in PR branch florian/php-8.4 with baseline commit 093ef34caa83c8b83d53d10cffc130f0fd88a1df in branch master.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 29 metrics, 7 unstable metrics.

pr-commenter[bot] avatar Sep 30 '24 06:09 pr-commenter[bot]

Benchmarks [ tracer ]

Benchmark execution time: 2024-10-29 19:13:52

Comparing candidate commit 2c614f2fc13f775ce09711a9704a59d85899f1b9 in PR branch florian/php-8.4 with baseline commit 093ef34caa83c8b83d53d10cffc130f0fd88a1df in branch master.

Found 1 performance improvements and 2 performance regressions! Performance is the same for 175 metrics, 0 unstable metrics.

scenario:EmptyFileBench/benchEmptyFileOverhead-opcache

  • 🟩 execution_time [-247.237µs; -112.423µs] or [-7.274%; -3.308%]

scenario:SamplingRuleMatchingBench/benchRegexMatching2

  • 🟥 execution_time [+191.498ns; +538.502ns] or [+2.887%; +8.118%]

scenario:TraceFlushBench/benchFlushTrace

  • 🟥 execution_time [+1000.000ns; +1000.000ns] or [+100.000%; +100.000%]

pr-commenter[bot] avatar Sep 30 '24 07:09 pr-commenter[bot]

Benchmarks [ appsec ]

Benchmark execution time: 2024-10-29 19:31:01

Comparing candidate commit 2c614f2fc13f775ce09711a9704a59d85899f1b9 in PR branch florian/php-8.4 with baseline commit 093ef34caa83c8b83d53d10cffc130f0fd88a1df in branch master.

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

pr-commenter[bot] avatar Sep 30 '24 07:09 pr-commenter[bot]

I've tentatively added a commit which removes the zend_execute_internal bits on PHP 8.4. It's probably a slight abuse of cfg(php_frameless) but whatever, allows us to test it.

morrisonlevi avatar Oct 15 '24 16:10 morrisonlevi