github DataDog/dd-trace-py v3.19.0rc1
3.19.0rc1

pre-release15 hours ago

Estimated end-of-life date, accurate to within three months: 08-2026
See the support level definitions for more information.

Upgrade Notes

  • profiling
    • This updates echion (the Python stack sampler) to the latest version, which introduces an experimental faster memory copy function.

Deprecation Notes

  • tracing
    • Span.finished setter is deprecated, use Span.finish() method instead.
    • Span.finish_with_ancestors() is deprecated with no alternative.
  • LLM Observability
    • The ExperimentResult class' rows and summary_evaluations attributes are deprecated and will be removed in the next major release. ExperimentResult.rows/summary_evaluations attributes will only store the results of the first run iteration for multi-run experiments. Use the ExperimentResult.runs attribute instead to access experiment results and summary evaluations.

New Features

  • AAP
    • This introduces security response id for easy identification of blocking responses.
  • LLM Observability
    • Experiments can now be run multiple times by using the optional runs argument, to assess the true performance of an experiment in the face of the non determinism of LLMs. Use the new ExperimentResult class' runs attribute to access the results and summary evaluations by run iteration.
    • Non-root experiment spans are now tagged with experiment ID, run ID, and run iteration tags.
    • Adds additional tags to MCP client session and tool call spans to power LLM Observability MCP tool call features.
  • mcp
    • Marks client mcp tool call spans as errors when the corresponding server tool call errored

Bug Fixes

  • CI Visibility
    • This fix resolves an issue where repo tags would be fetched while unshallowing to extract commit metadata, causing performance issues for repos with a large number of tags.
  • data_streams
    • This fix resolves an issue where payload size statistics were not being sent to the backend for Data Streams Monitoring (DSM).
  • core
    • This fix resolves an issue where forksafe locks used patched threading primitives from the profiling module, causing performance issues. The forksafe module now uses unpatched threading primitives (Lock, RLock, Event).
  • LLM Observability
    • Add support for HTTPS_PROXY.
  • Error Tracking
    • Modifies the way exception events are stored such that the exception id is stored instead of the exception object, to prevent TypeErrors with custom exception objects.
  • profiling
    • This fix resolves an issue where importing the profiler module after an asyncio Event Loop had been started would make the Profiler blind to the existing Event Loop and its Tasks.
  • other
    • Prevent a potential ResourceWarning in multiprocess scenarios.
    • Prevent startup failure when a temporary directory is not available.

Other Changes

  • profiling
    • This removes the wrapt library dependency from the Lock Profiler implementation, improving performance and reducing overhead during lock instrumentation.

Don't miss a new dd-trace-py release

NewReleases is sending notifications on new releases.