Changelog
### 0.23.0
```
With this release we are introducing a new configuration system across integrations to generate APM events for [Trace Search & Analytics](https://docs.datadoghq.com/tracing/visualization/search/). 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
* Fix for broken celery tests (839 -- thanks JackWink)
Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.22.0...v0.23.0) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/39?closed=1).
```
### 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](https://github.com/DataDog/dd-trace-py/compare/v0.21.1...v0.22.0) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/36?closed=1).
```
### 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](https://github.com/DataDog/dd-trace-py/compare/v0.21.0...v0.21.1) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/38?closed=1).
```
### 0.21.0
```
With this release we are moving distributed tracing settings to be enabled by default. This change means that you no longer need to explicitly enable distributed tracing for any integration.
Changes
Improvements
- Enable distributed tracing by default (818)
- aiohttp
- bottle
- flask
- molten
- pylons
- pyramid
- requests
- tornado
- [testing] Ensure consistent use of override_config and override_env (815)
- [core] Break up ddtrace.settings into sub-modules (814)
- [tests] Simplify elasticsearch CI test commands (813)
- [core] Remove sending of service info (811)
- [core] Add import hook module (769)
Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.4...v0.21) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/35?closed=1).
```
### 0.20.4
```
This is a bug fix release, no code changes are required.
In this release we have fixed a bug that caused some configuration values to not get updated when set.
Changes
Bug fixes
* [bug] Integration config keys not being updated (816)
Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.3...v0.20.4) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/37?closed=1).
```
### 0.20.3
```
This is a bug fix release that requires no changes.
This release includes a fix for context propagation with `futures`. Under the right conditions we could incorrectly share a trace context between multiple `futures` threads which result in multiple traces being joined together in one.
Changes
Bug fixes
* [core] Allow futures to skip creating new context if one doesn't exist (806)
Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.2...v0.20.3) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/37?closed=1).
```
### 0.20.2
```
No changes are needed to upgrade to `0.20.2`.
This big fix release includes changes to ensure we properly read the HTTP response body from the trace agent before we close the HTTP connection.
Changes
Bug fixes
- [core] Call HTTPResponse.read() before HTTPConnection.close() (800)
Improvements
- [tests] limit grpcio version to >=1.8.0,<1.18.0 (802)
- [tools] Add confirmation to 'rake pypi:release' task (791 )
Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.1...v0.20.2) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/36?closed=1).
```
### 0.20.1
```
No changes are needed to upgrade
Changes
Bug fixes
[celery] Ensure `celery.run` span is closed when task is retried (787)
Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.0...v0.20.1) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/36?closed=1).
```
### 0.20.0
```
We have added support for logs injection to the tracer. If you are already using `ddtrace-run`, the integration can be enabled with setting the environment variable `DD_LOGS_INJECTION=true`. The default behavior once logs injection is enabled is to have trace information inserted into all log entries. If you prefer more customization, you can manually instrument and configure a log formatter with the tracer information.
Changes
New Integrations
* [mako] Add Mako integration (779 -- thanks wklken)
Enhancements
* [core] Tracer and logs integration (777)
Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.19.0...v0.20.0) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/34?closed=1).
```
Links
- PyPI: https://pypi.org/project/ddtrace
- Changelog: https://pyup.io/changelogs/ddtrace/
- Repo: https://github.com/DataDog/dd-trace-py
This PR updates ddtrace from 0.19.0 to 0.24.0.
Changelog
### 0.23.0 ``` With this release we are introducing a new configuration system across integrations to generate APM events for [Trace Search & Analytics](https://docs.datadoghq.com/tracing/visualization/search/). 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 * Fix for broken celery tests (839 -- thanks JackWink) Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.22.0...v0.23.0) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/39?closed=1). ``` ### 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](https://github.com/DataDog/dd-trace-py/compare/v0.21.1...v0.22.0) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/36?closed=1). ``` ### 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](https://github.com/DataDog/dd-trace-py/compare/v0.21.0...v0.21.1) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/38?closed=1). ``` ### 0.21.0 ``` With this release we are moving distributed tracing settings to be enabled by default. This change means that you no longer need to explicitly enable distributed tracing for any integration. Changes Improvements - Enable distributed tracing by default (818) - aiohttp - bottle - flask - molten - pylons - pyramid - requests - tornado - [testing] Ensure consistent use of override_config and override_env (815) - [core] Break up ddtrace.settings into sub-modules (814) - [tests] Simplify elasticsearch CI test commands (813) - [core] Remove sending of service info (811) - [core] Add import hook module (769) Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.4...v0.21) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/35?closed=1). ``` ### 0.20.4 ``` This is a bug fix release, no code changes are required. In this release we have fixed a bug that caused some configuration values to not get updated when set. Changes Bug fixes * [bug] Integration config keys not being updated (816) Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.3...v0.20.4) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/37?closed=1). ``` ### 0.20.3 ``` This is a bug fix release that requires no changes. This release includes a fix for context propagation with `futures`. Under the right conditions we could incorrectly share a trace context between multiple `futures` threads which result in multiple traces being joined together in one. Changes Bug fixes * [core] Allow futures to skip creating new context if one doesn't exist (806) Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.2...v0.20.3) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/37?closed=1). ``` ### 0.20.2 ``` No changes are needed to upgrade to `0.20.2`. This big fix release includes changes to ensure we properly read the HTTP response body from the trace agent before we close the HTTP connection. Changes Bug fixes - [core] Call HTTPResponse.read() before HTTPConnection.close() (800) Improvements - [tests] limit grpcio version to >=1.8.0,<1.18.0 (802) - [tools] Add confirmation to 'rake pypi:release' task (791 ) Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.1...v0.20.2) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/36?closed=1). ``` ### 0.20.1 ``` No changes are needed to upgrade Changes Bug fixes [celery] Ensure `celery.run` span is closed when task is retried (787) Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.20.0...v0.20.1) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/36?closed=1). ``` ### 0.20.0 ``` We have added support for logs injection to the tracer. If you are already using `ddtrace-run`, the integration can be enabled with setting the environment variable `DD_LOGS_INJECTION=true`. The default behavior once logs injection is enabled is to have trace information inserted into all log entries. If you prefer more customization, you can manually instrument and configure a log formatter with the tracer information. Changes New Integrations * [mako] Add Mako integration (779 -- thanks wklken) Enhancements * [core] Tracer and logs integration (777) Read the [full changeset](https://github.com/DataDog/dd-trace-py/compare/v0.19.0...v0.20.0) and the [release milestone](https://github.com/DataDog/dd-trace-py/milestone/34?closed=1). ```Links
- PyPI: https://pypi.org/project/ddtrace - Changelog: https://pyup.io/changelogs/ddtrace/ - Repo: https://github.com/DataDog/dd-trace-py