Releases: DataDog/dd-trace-php
1.7.2
Tracer
Fixed
- Fallback to writing shared memory files to
/tmp
, ifshm_open()
returnsENOTSUP
DataDog/libdatadog#910
Profiling
Fixed
1.7.1
1.7.0
Note
This release adds experimental I/O profiling to the profiler. This is off by default. Enable it with the environment variable DD_PROFILING_EXPERIMENTAL_IO_ENABLED=1
or INI setting datadog.profiling.experimental_io_enabled=1
.
Tracer
Added
Fixed
- Fix fork handling of sidecar #3077
- Work around preloaded enums being broken on early PHP 8.4 versions with observers #3093
- Missing Predis Service Override #3098
- Lazily init cadence client DataDog/libdatadog#890
- This will work around unnecessarily many sidecar threads being created.
- Fix possible race confition when adding, then removing remote config services DataDog/libdatadog#882
- This aims to solve watchdog timeouts of the sidecar (a cause of broken pipes).
- Handle a zero-sized file for mmap()ing DataDog/libdatadog#838
Internal
- Generate Markdown Table of Supported Versions #3062
- Ensuring latest version of composer package are tested #3041
- Fix UserAvailableConstantsTest::testAllTypesAreTested #3042
Profiling
Added
Changed
- switch to pthread_atfork() for fork barrier handling #3058
Application Security Management
Added
Changed
- Update user login and signup events collection #2976
Fixed
1.6.4
Tracer
Fixed
- Add track_error: false on ignored caught exceptions #3074
- Log fd opening on windows #3076
- Validate
DD_TRACE_AGENT_URL
#3050
Profiler
Fixed
- Combine thread timeout errors properly #3081
- Avoid dlclose if threads did not join #3075
- guard VERSION against CRLF characters #3049
Chore
- Apply cargo fmt and fix feature builds #3064
Internal
AppSec
Internal
- Trim CRLF chars on version file on Remote Config #3051
1.6.3
1.6.2
1.6.1
1.6.0
Warning
This version can crash when calling SpanLink::fromHeaders()
in the tracer with no or invalid propagated tags and may cause metrics to not be computed and services to be hidden in the Datadog Interface. Please upgrade to v1.6.2
or newer. You can read about the technical details in #3025
Tracer
Added
Changed
- Leave a hint at what to do if the temp dir is not writable in installer #3015
Fixed
- JIT enabled detection in SSI loader #2971
- Block signals for more functions #2999
- Use-after-free with live-debugger #2989
- root span name in Slim V4 #3020
- PHP 8.4 deprecations #2981 (thanks @JeppeKnockaert)
- Avoid repeated processing of internal functions #3022
Internal
library_entrypoint.start
metric #3009- Bump rust to 1.78 #3005
- Exit if execv failed #2983
- Compatibility with newest arginfo gen_stub from PHP 8.4 #2973
Application Security Management
Added
- Support for endpoint, header, network and session fingerprints #2955
- WAF telemetry #2735
- Implement LFI #2770
- ASM Standalone #2903, #3001
Changed
- Upgrade libddwaf to v1.22.0 #3007
Fixed
- Restart usleep() on EINTR #3002
- recv/writev calls in the face of interrupting signals #3008
- Blocking from a hook is not stopping code execution #2836
Profiling
Fixed
- crash on PHP 8.4 #3019 (thanks @SanderVerkuil)
- Mismatch in UTF8 handling #2990
1.5.1
Warning
This version can crash on PHP 8.4 with profiling enabled, when using a web server (CLI is unaffected). Please upgrade to v1.6.0
or newer. You can read about the technical details in #3019
Tracer
Added
- Add mysqli_real_query to MysqliIntegration #2965
Application Security Management
Fixed
- Bridge more musl/glibc diffs in aarch64 DataDog/nginx-datadog#140
1.5.0
Warning
There is a known issue with the Application Security Management module on aarch64 architectures in this release. If you use datadog.appsec.enabled=0
, this won't affect you. Otherwise it might happen that the datadog-ipc-helper process crashes immediately.
Warning
This version can crash on PHP 8.4 with profiling enabled, when using a web server (CLI is unaffected). Please upgrade to v1.6.0
or newer. You can read about the technical details in #3019
Tracer
Added
- PHP 8.4 support #2758
- Support Tag Keys for DD_TRACE_HEADER_TAGS #2922
- Add stubs for the Public PHP API #2933
- These are available as datadog_tracer.stubs.php release asset
- Collect agent info and apply the env for remote config #2930
Changed
- Increase read timeout of sidecar for synchronous flushes #2910
- Implement Universal Service Tracking Consistency #2896
- Updating Default Rate Limit Value and Usage Based on Sample Rate #2912
Fixed
- Fix a possible crash in zai config #2906
- Fix crash when yielding from generators are destroyed #2908
- Fix bad hasThis() check on PHP 7.0 #2911
- Fix RootSpanData writer interception on consecutive calls #2919
- Fix DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXP Empty Value Behavior #2909
- Handle hooks on trampoline fake closures #2925
- Fix crash with locals collection in generator close sequence #2932
- Avoid the hook frame in mysqli connection error tracking #2937
- Support multiple PHP_INI_SCAN_DIR's #2941
- Fix use-after-free in exception replay #2947
- Fully disable the sidecar on lambda by setting all related configs to false #2948
- Fix Symfony Messenger propagation to non-instrumented clients #2956
- Fix JIT crash: There may or may not be a readable ZEND_TRACE_OP_INFO() #2942
- Block remote config signals during ftp functions #2957
- Deduplicate Debugger diagnostics in sidecar DataDog/libdatadog#736
- Handle case where the applictaion is stopped without other telemetry sent DataDog/libdatadog#743
Internal
- Create many tiny artifacts for faster download #2951
- Using datadog-setup.php will now download less than 50 MB for a single PHP version
- Add names to memfds DataDog/libdatadog#714
- Allow attaching to the sidecar via gdb DataDog/libdatadog#687
SSI Loader changes
Profiling
Added
- Add fatals and thread start/end events to timeline #2820
- Add thread names #2934
- Add timeline active check for fatals #2945
- Add stream_select()-type functions to timeline #2943
- Visualise opcache restarts in the timeline #2946
Application Security Management
Changed
- Disable helper when appsec is fully disabled #2935
Fixed
- Fix heap corruption after apache reloads (appsec) #2928