Skip to content

[CONFIGURATION] Cleanup build targets and docs - #4486

Open
dbarker wants to merge 6 commits into
open-telemetry:mainfrom
dbarker:config_cleanup_build_targets_and_docs
Open

[CONFIGURATION] Cleanup build targets and docs#4486
dbarker wants to merge 6 commits into
open-telemetry:mainfrom
dbarker:config_cleanup_build_targets_and_docs

Conversation

@dbarker

@dbarker dbarker commented Aug 26, 2026

Copy link
Copy Markdown
Member

Contributes to #4352

This PR is needed to maintain the CMake and Bazel target link interface for the declarative configuration component.

It implements the configuration build target cleanup proposed in #4352 (comment)

configuration                            (Interface to all configuration targets)
├── configuration_core                   (model, builder interfaces, registry, SdkBuilder, ConfiguredSdk)
├── configuration_yaml                   (yaml parser)
│   ├── PUBLIC  configuration_core
│   └── PRIVATE ryml::ryml
├── configuration_trace_builders         (default trace SDK builders)
│   ├── PUBLIC  opentelemetry_trace      
│   └── PUBLIC configuration_core
├── configuration_metrics_builders       (default metrics SDK builders)
│   ├── PUBLIC  opentelemetry_metrics    
│   └── PUBLIC configuration_core
├── configuration_logs_builders          (default logs SDK builders)
│   ├── PUBLIC  opentelemetry_logs      
│   └── PUBLIC configuration_core
└── configuration_registry_factory       (Create a Registry with all default builders )
    ├── PUBLIC  configuration_core
    ├── PRIVATE  configuration_trace_builders
    ├── PRIVATE  configuration_metrics_builders
    └── PRIVATE  configuration_logs_builders

Changes

  • adds the configuration_yaml target and promotes the configuration target to be an interface to all config targets. This change is necessary to keep backwards compatibility with the 1.28 release. Users linking to opentelemetry-cpp::configuration will get all configuration targets needed to parse yaml and build an SDK.
  • Cleans up the example to only link to the configuration interface target
  • Installs each target's pkgconfig file and verifies it in CI
  • Updates install tests and documentation.

Please provide a brief description of the changes here.

For significant contributions please make sure you have completed the following items:

  • CHANGELOG.md updated for non-trivial changes
  • Unit tests have been added
  • Changes in public API reviewed

@dbarker
dbarker marked this pull request as ready for review August 26, 2026 19:47
@dbarker
dbarker requested a review from a team as a code owner August 26, 2026 19:47
@codecov

codecov Bot commented Aug 26, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.13%. Comparing base (06423fb) to head (f754b06).

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #4486   +/-   ##
=======================================
  Coverage   83.13%   83.13%           
=======================================
  Files         519      519           
  Lines       20256    20256           
=======================================
  Hits        16837    16837           
  Misses       3419     3419           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant