Skip to content

Releases: DataDog/dd-trace-py

0.29.0

05 Sep 17:25
400d646

Choose a tag to compare

Upgrading to 0.29.0

This release introduces a new contextvars-based context manager in Python 3.7 and adds support for Tornado 5 and 6 with Python 3.7. In addition, the release includes several updates for our Django integration.

Changes

Core

[internal] Add generic rate limiter (#1029)
[internal] Add support for contextvars to tracer in py37 (#990)
[internal] Vendor monotonic package (#1026)
[dev] Update span test utils (#1028)
[dev] Allow extra args to scripts/run-tox-scenario (#1027)
[dev] Remove unused circle env vars for release (#1016)

Integrations

[tornado] minor documentation fix (#1038)
[tornado] document overriding on_finish and log_exception (#1037)
[tornado] Add support for Tornado 5 and 6 with Python 3.7 (#1034)
[pymongo] Add support for PyMongo 3.9 (#1023)
[django] enable distributed tracing by default (#1031)
[django] Create test for empty middleware (#1022 -- thanks @ryanwilsonperkin)
[django] Patch DBs in django app config (#1019 -- thanks @JBKahn)
[django] Setup pytest-django (#995)

Read the full changeset and the release milestone.

0.28.0

16 Aug 16:45
8983055

Choose a tag to compare

Upgrading to 0.28.0

This release introduces container tagging and adds support for gRPC server.

Changes

Integrations

  • [grpc] Add support for GRPC server (#960)
  • [django] Only set sample rate if rate is set (#1009)
  • [django] Update how we get the http.url (#1010)
  • [django] Improve Django docs (#1002 -- thanks @adamchainz)
  • [pylibmc] Fix client when tracer is disabled (#1004)

Core

  • [core] Parse and send container id with payloads to the agent (#1007)
  • [internal] Change log from exception to debug (#1013)
  • documentation bugfix (#1017)
  • Add back release:wheel (#1015)
  • [tests] Adding in helpful default packages (#1008)
  • [dev] Map .git into ddtest for setuptools_scm (#1006)
  • Use setuptools_scm to handle version numbers (#999)
  • Use Python 3 for test_build job (#994)
  • writer: fix deprecated log.warn use (#993 -- thanks @deterralba)
  • Upload wheels on release (#989)

Read the full changeset and the release milestone.

0.27.1

25 Jul 12:32
ba1ceb0

Choose a tag to compare

Upgrading to 0.27.1

This patch release includes performance fix which is highly recommended for anyone currently using 0.27.0.

Changes

  • 0.27 Performance Fix #1000

Read the full changeset

0.27.0

12 Jul 18:45
5c5236e

Choose a tag to compare

Upgrading to 0.27.0

This release introduces improvements to the trace writer. In addition, the release fixes some issues with integrations.

Changes

Core

  • api: implement str (#980)
  • API: add Unix Domain Socket connection support (#975)
  • [core] Remove references to runtime-id (#971)
  • sampler: rewrite RateByServiceSampler without using Lock (#959)
  • Handle HTTP timeout in API writer (#955)
  • payload: raise PayloadFull on full payload (#941)

Integrations

  • [pymongo] Support newer msg requests (#985)
  • pymongo: Add missing 2013 opcode (#961)
  • Refs #983 - Make AIOTracedCursor an async generator (#984 -- thanks @ewjoachim)
  • Fix a typo in AIOTracedCursor docstring (#982 -- thanks @ewjoachim)
  • [sqlalchemy] Only set sample rate if configured (#978)

Documentation

  • LICENSE: Fix copyright holder notice (#977 -- thanks @underyx)

Read the full changeset and the release milestone.

0.26.0

05 Jun 18:49
411f218

Choose a tag to compare

Upgrading to 0.26.0

This release introduces several core improvements and continues addressing pain points in our tooling and testing.

Changes

Core

  • Add a PeriodicWorker base class for periodic tasks (#934)
  • Fix runtime workers not flushing to Dogstatsd (#939)
  • api: simplify _put codepath (#956)
  • make psutil requirement more accurate (#949 -- thanks @chrono)
  • writer: log a message when a trace is dropped (#942)
  • span: use system random source to generate span id (#940)
  • [core] Add config to set hostname tag on trace root span (#938)

Integrations

  • Support keyword 'target' parameter when wrapping GRPC channels (#946 -- thanks @asnr)
  • Record HTTP status code correctly when using abort() with Bottle (#943 -- thanks @equake)
  • boto: add support for Python 3.5+ (#930)

Documentation

  • fix documentation for current_root_span (#950 -- thanks @chrono)

Tooling

  • Run flake8 with Python 3 (#957)
  • tox: fix ignore path for integrations (#954)
  • Remove mention of -dev branch in CircleCI (#931)

Testing

  • [tests] Add benchmarks (#952)
  • [tests] increase deviation for sampler by service test (#948)
  • [tests] Fix thread synchronization (#947)
  • [tests] fix brittle deviation test for tracer (#945)
  • [tests] fix threading synchronization to opentracer test (#944
  • [pyramid] Fix dotted name for autopatched config test (#932)
  • tests: always skip sdist, use develop mode (#928)

Read the full changeset and the release milestone.

0.25.0

07 May 16:22
a78055b

Choose a tag to compare

Upgrading to 0.25.0

This release includes several core improvements and addresses pain points in our testing/CI. The release also adds a new integration for Algolia Search.

Changes

Improvements

  • Type cast port number to avoid surprise unicode type (#892 -- thanks @tancnle)
  • Add support for Python 3.7 (#864)
  • [writer] Enhance Q implementation with a wait based one (#862)
  • [core] Add Span 'manual.keep' and 'manual.drop' tag support (#849)
  • [core] Vendor msgpack dependency (#848)
  • Fix http.url tag inconsitency (#899)
  • aiohttp: do not set query string in http.url tag (#923)
  • tornado: do not include query string in the http.url tag (#922)
  • bottle: fix query string embedded in URL (#921)
  • django: remove query string from http.url tag (#920)

Integrations

  • Implement algolia search (#894)

Tooling

  • [dev/tooling] Enforce single quote strings (#884)
  • [tests] Leverage tox environment listing to simplify CircleCI tox target list (#882)

Testing

  • tests/tornado: enhance test_concurrent_requests (#915)
  • doc: disable fixed sidebar (#906)
  • [opentracer] Refactor time usage (#902)
  • [opentracer] Fix flaky test based on sleep (#901)
  • [internal] Add and use RuntimeWorker.join() to remove race condition in testing (#887)

0.24.0

15 Apr 17:57
4c54d82

Choose a tag to compare

Upgrading to 0.24.0

This release introduces a new feature (disabled by default), supports new versions of integrations and improves our testing and tooling.

Changes

Improvements

  • [core] Enable requests integration by default (#879)
  • [core] Fix logging with unset DATADOG_PATCH_MODULES (#872)
  • [core] Use DEBUG log level for RateSampler initialization (#861 -- thanks @bmurphey)
  • [core] Guard against when there is no current call context (#852)
  • [core] Collect run-time metrics (#819)

Integrations

  • [mysql] Remove mysql-connector 2.1 support (#866)
  • [aiobotocore] Add support for versions up to 0.10.0 (#865)

Tooling

  • [dev/tooling] Update flake8 to 3.7 branch (#856)
  • [dev/tooling] Add script to build wheels (#853)
  • [ci] Use tox.ini checksum to update cache (#850)

Testing

  • [tests] Use a macro to persist result to workspace in CircleCI (#880)
  • [tests] add psycopg2 2.8 support (#878)
  • [aiohttp] Fix race condition in testing (#877)
  • [docs] Remove confusing testing instructions from README (#874)
  • [tests] Add support for aiohttp up to 3.5 (#873)
  • Remove useless future imports (#871)
  • [testing] Remove nose usage (#870)
  • [tests] Add support for pytest4 (#869)
  • [tests] Add testing for Celery 4.3 (#868)
  • [tests] Enable integration tests in docker-compose environment (#863)
  • [tests] Do not test celery 4.2 with Kombu 4.4 (#858)
  • [tests] Fix ddtrace sitecustomize negative test (#857)
  • [tests] Use spotify cassandra image for tests (#855)
  • [tests] Fix requests gevent tests (#854)

0.23.0

19 Mar 18:53

Choose a tag to compare

Upgrading to 0.23.0

With this release we are introducing a new configuration system across integrations to generate APM events for Trace Search & Analytics. The other core changes are the beginnings of a new approach to address issues with tracer loads and improve debugging.

Changes

Improvements

  • Trace search client configuration (#828)
  • [core] fix wrapt wrappers sources (#836)
  • [core] Add Payload class helper (#834)
  • [internal] Add rate limited logger (#822)

Bugs

Read the full changeset and the release milestone.

0.22.0

01 Mar 19:00
7b34bb8

Choose a tag to compare

Upgrading to 0.22.0

This release contains a few improvements for not marking a Celery task as an error if it is an expected and allowed exception, for propagating synthetics origin header, and to vendor our six and wrapt dependencies.

Changes

Improvements

  • [celery] Don't mark expected failures as errors (#820 -- thanks @sciyoshi)
  • [core] Propagate x-datadog-origin (#821)
  • [core] vendor wrapt and six dependencies (#755)

Read the full changeset and the release milestone.

0.21.1

21 Feb 21:57
64e15f5

Choose a tag to compare

Upgrading to 0.21.1

This is a bug fix release that requires no changes to your code.

Included in this release is a fix for some database cursors where we would force Cursor.execute and Cursor.executemany to return a cursor instead of the originally intended output. This caused an issue specifically with MySQL libraries which tried to return the row count and we were returning a cursor instead.

Changes

Bugs

  • [core] Patch logging earlier for ddtrace-run (#832)
  • [dbapi2] Fix dbapi2 execute/executemany return value (#830 )
  • [core] Use case-insensitive comparison of header names during extract (#826 -- thanks @defanator)

Read the full changeset and the release milestone.