You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(openfeature): lazy-load adapter via separate bridge file (PHP 8.0+ gate)
OpenFeature adapter code uses PHP 8.0+ syntax (match, union types,
constructor promotion). Baking it into _files_tracer.php caused the
concatenated _generated_tracer.php to fail parsing on PHP 7.x, which
cascaded into autoload failures like "add DDTrace\\Transport to bridge/
_files.php" because the whole file aborted before registering earlier
classes.
Mirror the OpenTelemetry lazy-load pattern:
- Move OpenFeature entries from _files_tracer.php into new
_files_openfeature.php.
- Add openfeature_is_loaded state flag (DDTRACE_G + preload save/restore).
- In dd_perform_autoload, match ddtrace\\openfeature\\ before the
legacy-tracer branch, gated on PHP_VERSION_ID >= 80000. On 7.x
return NULL — the adapter is unavailable but does not break the
rest of the tracer.
- Wire _generated_openfeature.php into tooling/generation so the
compiled bridge exists alongside the non-compiled _files_ fallback.
0 commit comments