Releases: DataDog/dd-trace-cpp
v2.0.0
What's Changed
- fix: Apply "version" tag only when the span service name matches the default service name by @zacharycmontoya in #157
 - feat!: Change default value of DD_TRACE_RATE_LIMIT to 100 by @zacharycmontoya in #159
 - feat!: Set a default service name (DD_SERVICE) when no service is configured by @zacharycmontoya in #158
 - refactor!: expose telemetry module by @dmehala in #166
 - fix: telemetry support for sub-seconds intervals by @dmehala in #168
 - Properly support setting DD_TRACE_TRANSPORT to "none" by @kristjanvalur in #172
 - fix: Remote config service/env validation by @zacharycmontoya in #177
 - perf: parse w3c traceparent using a custom parser by @dmehala in #178
 - fix(telemetry): Handle empty configuration payload properly by @dmehala in #186
 - feat: store tracer configuration in an in-memory file by @dmehala in #184
 - feat: add telemetry logs by @dmehala in #185
 - feat!: default to null logger by @dmehala in #187
 - feat: add baggage API by @dmehala in #179
 - fix(sampling): update condition by @dmehala in #198
 - deps(nlohmann-json): upgrade to 3.12.0 by @dmehala in #210
 - perf: improve mutex contention by @dmehala in #208
 - feat(telemetry): track tracer and telemetry usage by @dmehala in #209
 - feat: support origin detection by @dmehala in #214
 - feat: support additional cgroup formats for container-id parsing by @zacharycmontoya in #222
 - feat: support disablement of APM Tracing (the product) by @dmehala in #224
 - fix(system-tests): set end time when a span is closed by @dmehala in #228
 - deps(nlohmann-json): 
FetchContentrely onfind_packageby @dmehala in #231 - fix: edge cases parsing of 
DD_TAGSby @dmehala in #233 - fix(rc): improve trace sampling rules parsing by @dmehala in #232
 - fix(rc): rework remote configuration handling by @dmehala in #234
 - fix(rc): handle null values in RC APM Tracing payloads by @dmehala in #236
 - feat(telemetry): report malformed baggage header by @rachelyangdog in #240
 - Replace Abseil extension with bazel_dep and eliminate source patching by @mmorel-35 in #243
 - chore(cmake): overall improvements by @dmehala in #242
 
New Contributors
- @kristjanvalur made their first contribution in #172
 - @tlhunter made their first contribution in #175
 - @mabdinur made their first contribution in #170
 - @xopham made their first contribution in #180
 - @dependabot[bot] made their first contribution in #182
 - @ddyurchenko made their first contribution in #225
 - @rachelyangdog made their first contribution in #240
 
Full Changelog: v1.0.0...v2.0.0
v1.0.0
This version introduces breaking changes and improvements. There is no special significance behind the version number, the shift to v1.0.0 reflects breaking changes and new feature updates.
Breaking Changes
- API Update: Major updates to the tracer API. This may require modifications to existing integrations. #131 by @dmehala
 - Separation of public and private headers: Public and private headers have been reorganized, leading to a cleaner structure. Public headers are now located in 
include/directory. #144 by @dmehala 
What's Changed
- Bug Fix: Trimmed inspected headers to improve performance and accuracy. #137 by @dmehala
 - New Feature: Ensured that 
tracecontextheaders take precedence over Datadog headers (AIT-10281). #142 by @zacharycmontoya - Refactor: Refined Remote Configuration support to enhance stability. #130 by @dmehala
 - Dependency Update: Bumped 
libcurlto version 8.8.0. #135 by @dmehala 
New Contributors
We are thrilled to welcome the following new contributors to the project:
- @cbeauchesne made their first contribution in #139
 - @zacharycmontoya made their first contribution in #142
 - @cataphract made their first contribution in #143
 - @dubloom made their first contribution in #153
 
Full Changelog: Compare v0.2.2...v1.0.0
v0.2.2
v0.2.1
This update bring significant improvements to the functionality, compatibility, and flexibility of dd-trace-cpp. We encourage all users to update to the latest version to take advantage of these enhancements and fixes. Below is a comprehensive list of meaningful changes included in this release:
New Features
- Windows Support: We are pleased to announce that dd-trace-cpp now supports Windows, broadening the range of environments in which it can be used. #119 by @dmehala
 - Datadog/W3C interoperability: This enhancement prepare ground for better interoperability between Datadog and W3C Tracecontext propagation style. #115 by @dmehala
 - Remote Config Sampling Rules: This feature adds support for remote configuration of sampling rules, providing more control over how traces are sampled. #116 by @dmehala
 - Expose Numeric Tags: This enhancement allows users to set numeric tags, providing greater flexibility and insight into your trace data. #111 by @Anilm3
 - Report Host Information: Host informations are now included in telemetry reports, enhancing the granularity and utility of collected data. #118 by @dmehala
 
Bug Fixes
- Glob Matching: Fixed an issue with case sensitivity in glob matching, ensuring consistent behavior across tracers. #112 by @dmehala
 - Remote Configuration polling interval: Resolved a bug allowing 
DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDSto accept floating-point input, allowing sub-second polling interval of remote configuration. #123 by @dmehala 
Full Changelog: v0.2.0...v0.2.1
Thank you to all contributors who made this release possible!
New Contributors
v0.2.0
What's Changed
- Implemented support for APM Remote Configuration by @dmehala (#74).
 - Enhanced telemetry reporting with integration and integration_version by @dmehala (#82).
 - Introduced sampling delegation by @dmehala @dgoffredo (#59).
 - Added support for DD_TAGS via dynamic configuration by @dmehala (#94).
 - Added support for DD_TRACE_ENABLED via dynamic configuration through by @dmehala (#96).
 - Applied SET(CURL_ZLIB OFF) in the build process by @dgoffredo (#99).
 - Integrated active configuration feature by @dmehala (#97).
 - Bazel-related chore: Added MODULE.bazel files for bzlmod by @mmorel-35 (#102).
 - Fixed splitting of DD_TAGS by space or comma by @dmehala (#105).
 
Breaking Changes
- Renamed 
config.defaults.*toconfig.*e.gconfig.defaults.service -> config.service 
Full Changelog: v0.1.12...v0.2.0
v0.1.12
This release contains the following changes:
- The default trace propagation style is now "datadog, tracecontext" instead of "datadog" (#72).
 - When "tracecontext" is among the configured propagation styles, the 
tracestateheader will not be ignored in some cases where previously it would have been ignored (#72). - The tracer now generates 128-bit trace IDs by default (#71).
 - Requests made to the Datadog Agent now have a configurable timeout (#66).
 - Internal telemetry sends less data on tracer startup (#68).
 
v0.1.11
This release contains the following changes:
- The default trace context propagation style is now "datadog" instead of "tracecontext, datadog".
 - Telemetry metrics are now published to the Datadog Agent.
 - The library now builds on ARM64 platforms.
 - The library now builds on Darwin.
 
v0.1.10
v0.1.9
This release contains changes that don't affect the behavior of the library:
- CMake build changes to easier integrate with nginx-datadog, as well as some code refactoring
 - new microbenchmarks under 
benchmark/ - a new usage example under 
examples/http-server/