Skip to content

Use consistent vocabulary in reference to components and plugins#4806

Merged
jack-berg merged 9 commits intoopen-telemetry:mainfrom
jack-berg:consistent-component-vocabulary
Jan 9, 2026
Merged

Use consistent vocabulary in reference to components and plugins#4806
jack-berg merged 9 commits intoopen-telemetry:mainfrom
jack-berg:consistent-component-vocabulary

Conversation

@jack-berg
Copy link
Copy Markdown
Member

In response to this feedback: #4568 (comment)

The declarative config SDK spec uses "component", "extension plugin interface", "SDK extension plugins" somewhat interchangeable.

This PR makes the vocabulary consistent:

  • component: any part of the SDK, i.e. TracerProvider, SpanExporter, OtlpHttpSpanExporter, Sampler, SpanProcessor, BatchSpanProcessor, etc
  • plugin component: also called a SDK extension plugin interface elsewhere, any SDK component which is pluggable, i.e. Sampler, SpanExporter, SpanProcessor, but not ParentBasedSampler

To facilitate, this PR:

  • Renames ComponentProvider to PluginComponentProvider. This makes it clear that only plugins are being provided rather than all components.
  • Rename ComponentProvider.createPlugin to PluginComponentProvider.createComponent.

There are no functional changes in this PR, just naming updates.

@jack-berg jack-berg requested review from a team as code owners December 15, 2025 21:34
@github-actions
Copy link
Copy Markdown

github-actions bot commented Jan 2, 2026

This PR was marked stale. It will be closed in 14 days without additional activity.

@github-actions github-actions bot added the Stale label Jan 2, 2026
@jack-berg jack-berg removed the Stale label Jan 2, 2026
@jack-berg
Copy link
Copy Markdown
Member Author

Thanks for the review @robsunday!

@jack-berg jack-berg added this pull request to the merge queue Jan 9, 2026
Merged via the queue into open-telemetry:main with commit 55d0572 Jan 9, 2026
8 checks passed
@jack-berg jack-berg deleted the consistent-component-vocabulary branch January 9, 2026 21:07
@carlosalberto carlosalberto mentioned this pull request Feb 11, 2026
github-merge-queue bot pushed a commit that referenced this pull request Feb 13, 2026
### Context

- Deprecate Jaeger propagator and make propagator implementation
optional.

([#4827](#4827))
- Deprecate OT Trace propagator and make propagator implementation
optional.

([#4851](#4851))

### Metrics

- Add normative language to the Metrics API/SDK spec concurrency
requirements.

([#4868](#4868))

### Logs

- Add optional `Exception` parameter to Emit LogRecord.

([#4824](#4824))
- Add normative language to the Logging API/SDK spec concurrency
requirements.

([#4885](#4885))

### Resource

- Refine the handling of OTEL_RESOURCE_ATTRIBUTES.

([#4856](#4856))

### Common

- Add string representation guidance for complex attribute value types
(byte arrays,
  empty values, arrays, and maps) for non-OTLP protocols.

([#4848](#4848))

### Compatibility

- Stabilize Prometheus Counter to OTLP Sum transformation.

([#4862](#4862))
- Stabilize Prometheus Gauge to OTLP Gauge transformation.

([#4871](#4871))

### SDK Configuration

- Swap Tracer/Meter/LoggerConfig `disabled` for `enabled` to avoid
double negatives

([#4823](#4823))
- Declarative configuration: rename `ComponentProvider` to
`PluginComponentProvider`, `CreatePlugin` to `CreateComponent` in effort
to
  use consistent vocabulary

([#4806](#4806))
- Declarative configuration: Update instrumentation config behavior to
return
  empty object when not set

([#4817](#4817))
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.

5 participants