# Release proposal for libdd-data-pipeline and its dependencies
This PR contains version bumps based on public API changes and commits
since last release.
## libdd-common
**Next version:** `2.0.0`
**Semver bump:** `major`
**Tag:** `libdd-common-v2.0.0`
### Commits
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat!: enable non-blocking DNS for reqwest (#1558)
- feat: unify Azure tags (#1553)
- feat(common): add current thread id API (#1569)
- refactor!: switch from multipart to multer to resolve deprecation
warnings and dependabot alerts (#1540)
- feat: single source of truth for headers (fixes issue in profiling
with missing headers) (#1493)
- refactor!: make reqwest available in common (#1504)
## libdd-ddsketch
**Next version:** `1.0.1`
**Semver bump:** `patch`
**Tag:** `libdd-ddsketch-v1.0.1`
### Commits
- chore: remove manual changelog modifications (#1472)
- build: update `prost` crates (#1426)
- chore: add changelog for every published crate (#1396)
## libdd-trace-protobuf
**Next version:** `1.1.0`
**Semver bump:** `minor`
**Tag:** `libdd-trace-protobuf-v1.1.0`
### Commits
- chore: remove manual changelog modifications (#1472)
- build: update `prost` crates (#1426)
- chore: add changelog for every published crate (#1396)
- Handle null span tag values (#1394)
## libdd-dogstatsd-client
**Next version:** `1.0.1`
**Semver bump:** `patch`
**Tag:** `libdd-dogstatsd-client-v1.0.1`
### Commits
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: add changelog for every published crate (#1396)
- style: fix recent clippy warnings (#1346)
## libdd-telemetry
**Next version:** `3.0.0`
**Semver bump:** `major`
**Tag:** `libdd-telemetry-v3.0.0`
### Commits
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- chore(deps): bump tracing-subscriber to remove regex dep duplicate
(#1608)
- feat(telemetry)!: add process_tags to Application in telemetry (#1459)
- fix(telemetry)!: fix logs payload format [APMSP-2590] (#1498)
- feat(appsec): add endpoints collection (#1182)
## libdd-trace-normalization
**Next version:** `1.0.1`
**Semver bump:** `patch`
**Tag:** `libdd-trace-normalization-v1.0.1`
### Commits
- Prevent span start overflow panic (#1373)
- [CHAOSPLT-932] Add support for internal fuzzing infra (#1372)
- chore: add changelog for every published crate (#1396)
## libdd-trace-utils
**Next version:** `2.0.0`
**Semver bump:** `major`
**Tag:** `libdd-trace-utils-v2.0.0`
### Commits
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat: unify Azure tags (#1553)
- fix(serverless): set hostname on stats from tracer to empty string
(#1530)
- chore: remove manual changelog modifications (#1472)
- feat(sidecar)!: introduce TraceData to unify text and binary data
(#1247)
- chore: release libddcommon-v1.1.0 (#1456)
- fix(test-agent): undo commenting arg in docker cmd (#1439)
- [SLES-2652] Log error details when trace request fails (2) (#1441)
- build: update `prost` crates (#1426)
- chore(trace-utils): bump the test agent version used for integration
tests (#1417)
- [Serverless] Skip AAS metadata tagging when span is from API
Management (#1409)
- chore: add changelog for every published crate (#1396)
- Handle null span tag values (#1394)
- [SVLS-7934] Log error details when trace request fails (#1392)
- Fix trace utils clippy warning (#1397)
- feat(trace_utils): Allow sending trace stats using custom HTTP client
(#1345)
## libdd-trace-stats
**Next version:** `1.0.1`
**Semver bump:** `patch`
**Tag:** `libdd-trace-stats-v1.0.1`
### Commits
- feat(sidecar)!: introduce TraceData to unify text and binary data
(#1247)
- chore: add changelog for every published crate (#1396)
## libdd-data-pipeline
**Next version:** `2.0.0`
**Semver bump:** `major`
**Tag:** `libdd-data-pipeline-v2.0.0`
### Commits
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- refactor(trace_exporter)!: remove Proxy TraceExporter input mode
(#1583)
- refactor(libdd-data-pipeline): health metrics (#1433)
- feat(data-pipeline)!: include reason for chunks dropped telemetry
(#1449)
- feat(sidecar)!: introduce TraceData to unify text and binary data
(#1247)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: prepare libdd-telemetry-v2.0.0 (#1457)
- Allow submitting Vec<Vec<Span>> asynchronously (#1302)
- test(data-pipeline): handle EINTR in test_health_metrics_disabled
(#1430)
- chore: add changelog for every published crate (#1396)
[APMSP-2590]:
https://datadoghq.atlassian.net/browse/APMSP-2590?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
---------
Co-authored-by: dd-octo-sts[bot] <200755185+dd-octo-sts[bot]@users.noreply.github.com>
What does this PR do?
Refactor health metrics emission via common API.
Motivation
Logic was duplicated and would have required to be duplicated again if another usecase arose. Now the core logic can be integrated elsewhere more easiely.
Additional Notes
I don't have the full context of this part of the code, I may have blindspots or problems in the implementation.
How to test the change?
I (mostly AI) added a bunch of tests (maybe too much of them even ?) to validate the changes.