Releases: DataDog/dd-trace-php
Releases · DataDog/dd-trace-php
0.74.0
Tracer
Added
- Add configurations for retaining select query string parameters in resources and http.url #1566
Changed
- Respect autofinish on flush(), add warnings in debug mode when having unbalanced spans #1564, #1569
- Loose restrictions around distributed tracing context setting #1571
Fixed
- Fix dispatch resetting #1570
- Fix run_time_cache initialization for closure calls with foreign scope on PHP 7.4-8.1 #1578
- Eliminate the separate span id stack, fix distributed tracing trace_id #1586
- Fix handling of INI and ENV changes post minit, pre runtime #1593
- Fix inconsistent module load and unload sequence #1585
- Fix installer setting check for extensions #1584
Internal changes
- Pin composer on PHP 7 docker containers to version 2.2 #1565
- Disable flaky test on PHP 5.4 #1583
- Remove Symfony 4.2 from PHP 7.4 web tests #1587
- Add the scenario name to the randomized test docker name #1590
- Fix ownership of files within release artifact tars #1591
Profiling (v0.6.1)
Fixed
- Bump profiling to v0.6.1 #1588. This re-initializes static variables on startup/minit which may help prevent Apache reload from crashing.
- Enable profiling installation on PHP 8.1 #1576
Application Security Monitoring (v0.3.2)
Fixed
- Fix hybrid extension initialisation #92
0.73.0
Application Security Monitoring
Breaking Changes
- Rename ini settings from
datadog.appsec.rules_path
todatadog.appsec.rules
#74 - Interpret
datadog.appsec.waf_timeout
as microseconds rather than milliseconds #74
Fixes
- Add obfuscator strings when initialising WAF from client settings #83
- Fix relative module order with ddtrace on PHP 7.3 issue #88 - #86
Additions
- Add WAF metrics and errors to traces #79
- Actor IP resolution from request headers #80
- Add support for WAF event obfuscator #82
- Add obfuscator regex for values #84
Miscellaneous Changes
0.72.0
Added
- Add support for memcached on PHP 8 #1558
Fixed
Internal changes
- Add gdbinit files for php 8.0 and 8.1 #1556
- Add system tests in CI #1552
- Use latest 8.0.17 in buster images #1559
- Update flex to v1.18.5 in composer.lock files for Symfony 4.0 and 5.0 #1560
- Add a single test to xfail after upgrade of docker image to 8.0.18 #1561
- Update link to download 0.71.1 in the reliability environment #1555
0.71.1
⚠ This release fixes a critical issue in this library that exists for PHP 8.1.4+ and PHP 8.0.18+ ⚠
Fixed
- Use -1 as uninitialized op_array_extension marker #1550 (thanks @blazarecki for the report)
Internal changes
0.71.0
Not supported with PHP 8.1.4+ and PHP 8.0.18+
Due to a subtle behaviour change in PHP 8.1.4 and PHP 8.0.18 respectively, all versions of the datadog tracer up to 0.71.0 are not compatible with PHP versions newer than PHP 8.1.4 or PHP 8.0.18.
Changed
- Do not disable tracing when ionCube loader and ZendGuard loader are detected #1520
Added
- Added ES integration support for newer PHP and ES versions #1516
- Add support for wordpress on PHP 8 and use a different hook #1522
- Add Code Hotspots #1517
- Implement split by instance in PDO #1498
Fixed
- Trigger profiling interrupt function before internal observer_end #1499
- Fix compatibility with PHP 8.2 (master) #1521
Internal changes
- Clean up Tea SAPI and allow ddtrace to run there #1502
- Use a new curl session for each writer iteration and clear it after #1504
- Increase bgs backlog by 20% #1506
- Always include the Tea SAPI Catch2 test header #1507
- Add is_nil function to UUID component #1515
- Fix randomized testsuite memory limits and background sender curl handling #1525
- Run cmake-format on TEA's CMakeLists.txt #1527
- Simplify calls (zai symbols), add support for generators #1529
- Update profiling to v0.5.0 #1537
- Update profiling to v0.5.1 #1541
- Move from checking status code reported by vegeta to check error logs #1540
- Fix ZAI symbols on PHP 7.3+ (randomized tests failures) #1536
- Add a test case for guzzle url no schema + split by domain #1534
- Point rel-env deployment to GH release 0.70.1 #1531
- Tea ZE Suppport #1526
- Show curl response status code in tests #1524
- Add long running script memory check to randomized tests #1356
- Add a test for sub path and wildcards normalization #1505
0.70.1
Changed
- Disable x-datadog-tags header propagation #1528
Fixed
- Fix Laravel exceptions being over-reported #1361
- Fix too aggressive symbol exporting #1523
- Hide the dummy span during trace hooks away #1519
- (PHP 5) Remove empty multi_curl handles hashtables #1513
- Do not mess with the span duration in curl integration #1512
- Fix #1510 post-install not detecting required extension #1511
- Explicitly depend on ext/standard and fix in-tree builds #1509
0.70.0
Changed
- Make the legacy API a pure proxy to internal spans #1471
- Load the legacy tracer only when actually used #1449
- Update profiling to v0.4.0 #1495
Added
Fixed
- Always emit NoopSpans if the tracer extension is disabled #1475
- fix dd_update_upstream_services on php5 #1476
- Setup: Error if profiling is given but unavailable #1477
- Ensure dropped spans are distinguishable from unfinished spans #1480
- Fix Span::setError docblock #1481
- Fix invalid reads in background sender #1483
- Restore support for manual distributed tracing #1484
- Remove version number from datadog-setup.php's help output #1487
- Improve error detection for datadog-setup.php #1489
Internal changes
- Add parallelism to makefile for builds and test runs #1382
- Add profiling module to randomized tests #1412
- Run randomized internal API stress testing in CI #1445
- Switch to Symbols interface, cleanup tests #1465
- Improve Symbol Call interface, introduce closure support #1467
- Support in-tree builds of Tea #1472
- Sandbox Bailout #1473
- Patch zend_alloc.c to not crash in CI for PHP 7.0 to 7.2 #1478
- build tea once during development #1479
- Update PHP 8.1 dependencies, include laravel testing #1482
- Inline queue function pointers #1490
- Adjust stack sample max stack depth #1491
- Remove unused profiling components #1492
0.69.0
⚠ Breaking changes
- Query string is now not included in
http.url
in Nette integration and in generic web frameworks tracing.
Added
- Implement x-datadog-tag propagation and _dd.p.upstream_services #1405
Changed
- Get rid of ini-ignoring and redundant checking of ddtrace being enabled #1448
- Strip query string from http.url in generic web tracing #1454
- Use internal root spans in Integrations in place of using the legacy API #1383
- Hard-code version in installer, remove --url option, rename it #1463
- Remove generator support on PHP 7 #1464
Fixed
- Ensure a proper sampling decision is also evaluated when distributed tracing is used #1450
- Fix ObjectKVStore compatibility with throwing autoloaders #1451
- Properly report error for artisan command in Laravel 7+ #1456 (thank you @ls-paul-julien-vauthier)
Internal changes
- Migrate ZAI tests to use ZAI SAPI harness #1457
- Move ZAI SAPI to root directory #1411 #1443
- ZAI methods on PHP 5: Args and retval #1401
- Implement ZAI Value interface #1453
- Implement ZAI SAPI test harness (catch2) #1455
- Implement ZAI SAPI test fixture (catch2) #1458
- Refactor ZAI SAPI into Tea SAPI, brings various improvements #1462
- Implement ZAI Symbols interface #1452
- Address Sanitizer check for ZAI SAPI - 1459
- Fix ZaiSapi_ROOT path in Makefile #1443