Skip to content

Commit 4b8c7f2

Browse files
committed
Profiling is not available on PHP 7.0
1 parent 2bf80f1 commit 4b8c7f2

File tree

4 files changed

+24
-14
lines changed

4 files changed

+24
-14
lines changed

loader/dd_library_loader.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -739,7 +739,7 @@ static int ddloader_api_no_check(int api_no) {
739739
default:
740740
if (!force_load || api_no < 320151012) {
741741
telemetry_reason reason = api_no < 320151012 ? REASON_EOL_RUNTIME : REASON_INCOMPATIBLE_RUNTIME;
742-
TELEMETRY(reason, NULL, NULL, "Found incompatible runtime (api no: %d). Supported runtimes: PHP 7.0 to 8.3", api_no);
742+
TELEMETRY(reason, NULL, NULL, "Found incompatible runtime (api no: %d). Supported runtimes: PHP 7.0 to 8.4", api_no);
743743

744744
// If we return FAILURE, this Zend extension would be unload, BUT it would produce an error
745745
// similar to "The Zend Engine API version 220100525 which is installed, is newer."

loader/tests/functional/includes/autoload.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,10 @@ function use_valgrind() {
9090
return (bool) (isset($_SERVER['TEST_USE_VALGRIND']) ? $_SERVER['TEST_USE_VALGRIND'] : false);
9191
}
9292

93+
function php_minor_version() {
94+
return PHP_MAJOR_VERSION.'.'.PHP_MINOR_VERSION;
95+
}
96+
9397
function skip_if_php5() {
9498
if (PHP_MAJOR_VERSION <= 5) {
9599
echo "Skip: test is not compatible with PHP 5\n";

loader/tests/functional/test_php_output.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212
$output = runCLI('-v', true);
1313
assertContains($output, 'with ddtrace v');
1414
assertContains($output, 'with dd_library_loader v');
15-
assertContains($output, 'with datadog-profiling v');
15+
if ('7.0' !== php_minor_version()) {
16+
assertContains($output, 'with datadog-profiling v');
17+
}
1618
assertContains($output, 'with ddappsec v');
1719

1820
$output = runCLI('-m', false);
@@ -24,5 +26,7 @@
2426
$output = runCLI('-m', true);
2527
assertContains($output, 'ddtrace');
2628
assertContains($output, 'dd_library_loader');
27-
assertContains($output, 'datadog-profiling');
29+
if ('7.0' !== php_minor_version()) {
30+
assertContains($output, 'datadog-profiling');
31+
}
2832
assertContains($output, 'ddappsec');

tooling/bin/generate-ssi-package.sh

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -64,17 +64,19 @@ for architecture in "${architectures[@]}"; do
6464
# Profiling
6565
########################
6666

67-
mkdir -p ${gnu}/profiling/ext/${php_api} ${musl}/profiling/ext/${php_api}
68-
# gnu
69-
ln ./datadog-profiling/${architecture}-unknown-linux-gnu/lib/php/${php_api}/datadog-profiling.so \
70-
${gnu}/profiling/ext/${php_api}/datadog-profiling.so
71-
ln ./datadog-profiling/${architecture}-unknown-linux-gnu/lib/php/${php_api}/datadog-profiling-zts.so \
72-
${gnu}/profiling/ext/${php_api}/datadog-profiling-zts.so
73-
# musl
74-
ln ./datadog-profiling/${architecture}-alpine-linux-musl/lib/php/${php_api}/datadog-profiling.so \
75-
${musl}/profiling/ext/${php_api}/datadog-profiling.so
76-
ln ./datadog-profiling/${architecture}-alpine-linux-musl/lib/php/${php_api}/datadog-profiling-zts.so \
77-
${musl}/profiling/ext/${php_api}/datadog-profiling-zts.so
67+
if [[ ${php_api} -ge 20160303 ]]; then
68+
mkdir -p ${gnu}/profiling/ext/${php_api} ${musl}/profiling/ext/${php_api}
69+
# gnu
70+
ln ./datadog-profiling/${architecture}-unknown-linux-gnu/lib/php/${php_api}/datadog-profiling.so \
71+
${gnu}/profiling/ext/${php_api}/datadog-profiling.so
72+
ln ./datadog-profiling/${architecture}-unknown-linux-gnu/lib/php/${php_api}/datadog-profiling-zts.so \
73+
${gnu}/profiling/ext/${php_api}/datadog-profiling-zts.so
74+
# musl
75+
ln ./datadog-profiling/${architecture}-alpine-linux-musl/lib/php/${php_api}/datadog-profiling.so \
76+
${musl}/profiling/ext/${php_api}/datadog-profiling.so
77+
ln ./datadog-profiling/${architecture}-alpine-linux-musl/lib/php/${php_api}/datadog-profiling-zts.so \
78+
${musl}/profiling/ext/${php_api}/datadog-profiling-zts.so
79+
fi
7880

7981
########################
8082
# AppSec

0 commit comments

Comments
 (0)