Skip to content

Releases: open-telemetry/opentelemetry-collector

v1.44.0/v0.138.0

20 Oct 17:01
v0.138.0
8b09905

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.138.0

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • all: Remove deprecated type TracesConfig (#14036)

  • pkg/exporterhelper: Add default values for sending_queue::batch configuration. (#13766)
    Setting sending_queue::batch to an empty value now results in the same setup as the default batch processor configuration.

  • all: Add unified print-config command with mode support (redacted, unredacted), json support (unstable), and validation support. (#11775)
    This replaces the print-initial-config command. See the service package README for more details. The original command name print-initial-config remains an alias, to be retired with the feature flag.

πŸ’‘ Enhancements πŸ’‘

  • all: Add keep_alives_enabled option to ServerConfig to control HTTP keep-alives for all components that create an HTTP server. (#13783)
  • pkg/otelcol: Avoid unnecessary mutex in collector logs, replace by atomic pointer (#14008)
  • cmd/mdatagen: Add lint/ordering validation for metadata.yaml (#13781)
  • pdata/xpdata: Refactor JSON marshaling and unmarshaling to use pcommon.Value instead of AnyValue. (#13837)
  • pkg/exporterhelper: Expose MergeCtx in exporterhelper's queue batch settings` (#13742)

🧰 Bug fixes 🧰

  • all: Fix zstd decoder data corruption due to decoder pooling for all components that create an HTTP server. (#13954)
  • pkg/otelcol: Remove UB when taking internal logs and move them to the final zapcore.Core (#14009)
    This can happen because of a race on accessing logsTaken.
  • pkg/confmap: Fix a potential race condition in confmap by closing the providers first. (#14018)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • pkg/xexporterhelper: Remove definition of Sizer from public API and ability to configure. (#14001)
    Now that Request has both Items/Bytes sizes no need to allow custom sizers.

  • pkg/service: The service.Settings type now requires a telemetry.Factory to be provided (#4970)

🚩 Deprecations 🚩

  • pdata/pprofile: Deprecated PutAttribute helper method (#14016, #14041)
  • pdata/pprofile: Deprecated PutLocation helper method (#14019)

πŸ’‘ Enhancements πŸ’‘

  • all: Add keep_alives_enabled option to ServerConfig to control HTTP keep-alives for all components that create an HTTP server. (#13783)
  • pkg/pdata: Add pcommon.Map helper to add a key to the map if does not exists (#14023)
  • pdata/pprofile: Introduce Equal method on the KeyValueAndUnit type (#14041)
  • pkg/pdata: Add RemoveIf method to primitive slice types (StringSlice, Int64Slice, UInt64Slice, Float64Slice, Int32Slice, ByteSlice) (#14027)
  • pdata/pprofile: Introduce SetAttribute helper method (#14016, #14041)
  • pdata/pprofile: Introduce SetLocation helper method (#14019)
  • pdata/pprofile: Introduce Equal method on the Stack type (#13952)

v1.43.0/v0.137.0

06 Oct 20:22
v0.137.0
3b55554

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.137.0

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • cmd/mdatagen: Improve validation for resource attribute enabled field in metadata files (#12722)
    Resource attributes now require an explicit enabled field in metadata.yaml files, while regular attributes
    are prohibited from having this field. This improves validation and prevents configuration errors.

  • all: Changelog entries will now have their component field checked against a list of valid components. (#13924)
    This will ensure a more standardized changelog format which makes it easier to parse.

  • pkg/pdata: Mark featuregate pdata.useCustomProtoEncoding as stable (#13883)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • pkg/exporterhelper: Remove all experimental symbols in exporterhelper (#11143)
    They have all been moved to xexporterhelper

🚩 Deprecations 🚩

  • all: service/telemetry.TracesConfig is deprecated (#13904)
    This type alias has been added to otelconftelemetry.TracesConfig,
    where the otelconf-based telemetry implementation now lives.

πŸ’‘ Enhancements πŸ’‘

  • all: Mark configoptional as stable (#13403)
  • all: Mark configauth module as 1.0 (#9476)
  • pkg/pdata: Mark featuregate pdata.useCustomProtoEncoding as stable (#13883)

v1.42.0/v0.136.0

22 Sep 20:08
v0.136.0
a2b837e

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.136.0

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • xpdata: Add Serialization and Deserialization of AnyValue (#12826)
  • debugexporter: add support for batching (#13791)
    The default queue size is 1
  • configtls: Add early validation for TLS server configurations to fail fast when certificates are missing instead of failing at runtime. (#13130, #13245)
  • mdatagen: Expose stability level in generated metric documentation (#13748)
  • internal/tools: Add support for modernize in Makefile (#13796)

🧰 Bug fixes 🧰

  • otelcol: Fix a potential deadlock during collector shutdown. (#13740)
  • otlpexporter: fix the validation of unix socket endpoints (#13826)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • exporterhelper: Remove deprecated function NewRequestsSizer (#13803)
  • pdata/pprofile: Upgrade the OTLP protobuf definitions to version 1.8.0 (#13758, #13825, #13839)
  • pdata/pprofile: Remove deprecated ProfilesDictionary method (#13858)

🚩 Deprecations 🚩

  • exporterhelper: Deprecate all experimental symbols in exporterhelper and move them to xexporterhelper (#11143)

πŸ’‘ Enhancements πŸ’‘

  • configoptional: Add GetOrInsertDefault method to configoptional.Optional (#13856)
    This method inserts a default or zero value into a None/Default Optional before Getting its inner value.

  • exporter: Stabilize exporter module. (#12978)
    This does not stabilize the exporterhelper module or configuration

  • pdata: Upgrade the OTLP protobuf definitions to version 1.8.0 (#13758)

v1.41.0/v0.135.0

08 Sep 18:04
a56655d

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.135.0

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • exporterhelper: Add new exporter_queue_batch_send_size and exporter_queue_batch_send_size_bytes metrics, showing the size of telemetry batches from the exporter. (#12894)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • pdata/pprofile: Remove deprecated AddAttribute method (#13764)

πŸ’‘ Enhancements πŸ’‘

  • configmiddleware: Stabilize configmiddleware module (#13422)
    This only stabilizes the configuration interface but does not stabilize the middlewares themselves or the way of implementing them.
  • xpdata: Add experimental MapBuilder struct to optimize pcommon.Map construction (#13617)

v1.40.0/v0.134.0

29 Aug 23:29
v0.134.0
76862b8

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.134.0

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • pdata: Add custom grpc/encoding that replaces proto and calls into the custom marshal/unmarshal logic in pdata. (#13631)
    This change should not affect other gRPC calls since it fallbacks to the default grpc/proto encoding if requests are not pdata/otlp requests.
  • pdata: Avoid copying the pcommon.Map when same origin (#13731)
    This is a very large improvement if using OTTL with map functions since it will avoid a map copy.
  • exporterhelper: Respect num_consumers when batching and partitioning are enabled. (#13607)

🧰 Bug fixes 🧰

  • pdata: Correctly parse OTLP payloads containing non-packed repeated primitive fields (#13727, #13730)
    This bug prevented the Collector from ingesting most Histogram, ExponentialHistogram,
    and Profile payloads.

API Changelog

πŸ’‘ Enhancements πŸ’‘

  • exporterhelper: Split exporterhelper into a separate module (#12985)

v1.39.0/v0.133.0

25 Aug 19:20
v0.133.0
a52db91

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.133.0

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • all: Increase minimum Go version to 1.24 (#13627)

πŸ’‘ Enhancements πŸ’‘

  • otlphttpexporter: Add profiles_endpoint configuration option to allow custom endpoint for profiles data export (#13504)
    The profiles_endpoint configuration follows the same pattern as traces_endpoint, metrics_endpoint, and logs_endpoint.
    When specified, profiles data will be sent to the custom URL instead of the default {endpoint}/v1development/profiles.

  • pdata: Add support for local memory pooling for data objects. (#13678)
    This is still an early experimental (alpha) feature. Do not recommended to be used production. To enable use "--featuregate=+pdata.useProtoPooling"

  • pdata: Optimize CopyTo messages to avoid any copy when same source and destination (#13680)

  • receiverhelper: New feature flag to make receiverhelper distinguish internal vs. downstream errors using new otelcol_receiver_failed_x and otelcol_receiver_requests metrics (#12207, #12802)
    This is a breaking change for the semantics of the otelcol_receiver_refused_metric_points, otelcol_receiver_refused_log_records and otelcol_receiver_refused_spans metrics.
    These new metrics and semantics are enabled through the receiverhelper.newReceiverMetrics feature gate.

  • debugexporter: Add support for entity references in debug exporter output (#13324)

  • pdata: Fix unnecessary allocation of a new state when adding new values to pcommon.Map (#13634)

  • service: Implement refcounting for pipeline data owned memory. (#13631)
    This feature is protected by --featuregate=+pdata.useProtoPooling.

  • service: Add a debug-level log message when a consumer returns an error. (#13357)

  • xpdata: Optimize xpdata/context for persistent queue when only one value for key (#13636)

  • otlpreceiver: Log the listening addresses of the receiver, rather than the configured endpoints. (#13654)

  • pdata: Use the newly added proto marshaler/unmarshaler for the official proto Marshaler/Unmarshaler (#13637)
    If any problems observed with this consider to disable the featuregate --feature-gates=-pdata.useCustomProtoEncoding

  • configtls: Enable X25519MLKEM768 as per draft-ietf-tls-ecdhe-mlkem (#13670)

🧰 Bug fixes 🧰

  • exporterhelper: Prevent uncontrolled goroutines in batcher due to a incorrect worker pool behaviour. (#13689)
  • service: Ensure the insecure configuration is accounted for when normalizing the endpoint. (#13691)
  • configoptional: Allow validating nested types (#13579)
    configoptional.Optional now implements xconfmap.Validator
  • batchprocessor: Fix UB in batch processor when trying to read bytes size after adding request to pipeline (#13698)
    This bug only happens id detailed metrics are enabled and also an async (sending queue enabled) exporter that mutates data is configure.

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • configgrpc: Set tcp as the default transport type (#13657)
    gRPC is generally used with HTTP/2, so this will simplify usage for most components.

🚩 Deprecations 🚩

  • pdata/pprofile: Deprecate Profiles.ProfilesDictionary in favor of Profiles.Dictionary. (#13644)

πŸ’‘ Enhancements πŸ’‘

  • pdata: Add support for local memory pooling for data objects. (#13678)
    This is still an early experimental (alpha) feature. Do not recommended to be used production. To enable use "--featuregate=+pdata.useProtoPooling"

🧰 Bug fixes 🧰

  • configoptional: Allow validating nested types (#13579)
    configoptional.Optional now implements xconfmap.Validator

v1.38.0/v0.132.0

12 Aug 05:41
eaa1a6e

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.132.0

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • componentstatus: Change the signature of the componentstatus.NewEvent to accept multiple options. (#13210)
    Changes the signature of the component.NewEvent to accept multiple EventBuilderOption,
    like the new WithAttributes constructor.

🚩 Deprecations 🚩

  • service: move service.noopTraceProvider feature gate to deprecated stage (#13492)
    The functionality of the feature gate is available via configuration with the following telemetry settings:

    service:
      telemetry:
        traces:
          level: none
    
  • mdatagen: Remove the deletion of generated_component_telemetry_test.go. (#12067)
    This file used to be generated by mdatagen. Starting with 0.122.0, the code deletes that file.
    It is no longer necessary to delete the file, as code has had time to upgrade to mdatagen and delete the file.

  • service: The telemetry.disableHighCardinalityMetrics feature gate is deprecated (#13537)
    The feature gate is now deprecated since metric views can be configured.
    The feature gate will be removed in v0.134.0.

    The metric attributes removed by this feature gate are no longer emitted
    by the Collector by default, but if needed, you can achieve the same
    functionality by configuring the following metric views:

    service:
      telemetry:
        metrics:
          level: detailed
          views:
            - selector:
                meter_name: "go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc"
              stream:
                attribute_keys:
                  excluded: ["net.sock.peer.addr", "net.sock.peer.port", "net.sock.peer.name"]
            - selector:
                meter_name: "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"
              stream:
                attribute_keys:
                  excluded: ["net.host.name", "net.host.port"]

    Note that this requires setting service::telemetry::metrics::level: detailed.
    If you have a strong use case for using views in combination with a different
    level, please show your interest in
    #10769.

πŸ’‘ Enhancements πŸ’‘

  • pdata: Generate Logs/Traces/Metrics/Profiles and p[log|trace|metric|profile]ExportResponse with pdatagen. (#13597)
    This change brings consistency on how these structs are written and remove JSON marshaling/unmarshaling hand written logic.
  • confighttp: Add option to configure ForceAttemptHTTP2 to support HTTP/1 specific transport settings. (#13426)
  • pdata: Avoid unnecessary buffer copy when JSON marshal fails. (#13598)
  • cmd/mdatagen: Use a custom host implementation for lifecycle tests (#13589)
    Use a custom noop host implementation that implements all non-deprecated, publicly-accessible interfaces implemented by the Collector service.
  • processorhelper: Add processor internal duration metric. (#13231)
  • pdata: Improve RemoveIf for slices to not reference anymore the removed memory (#13522)

🧰 Bug fixes 🧰

  • pdata: Fix null pointer access when copying into a slice with larger cap but smaller len. (#13523)

  • confighttp: Fix middleware configuration field name from "middleware" to "middlewares" for consistency with configgrpc (#13444)

  • memorylimiterextension, memorylimiterprocessor: Memory limiter extension and processor shutdown don't throw an error if the component was not started first. (#9687)
    The components would throw an error if they were shut down before being started.
    With this change, they will no longer return an error, conforming to the lifecycle of components expected.

  • confighttp: Reuse zstd Reader objects (#11824)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • componenttest: Remove GetFactory from the host returned by NewNopHost (#13577)
    This method is no longer part of the component.Host interface.

πŸ’‘ Enhancements πŸ’‘

  • exporterhelper: Provide an interface queue_batch.Setting.MergeCtx so users can control how context values are preserved or combined (#13320)
    By supplying a custom mergeCtx function, users can control how context values are preserved or combined.
    The default behavior is to preserve no context values.

  • pdata: Generate Logs/Traces/Metrics/Profiles and p[log|trace|metric|profile]ExportResponse with pdatagen. (#13597)
    This change brings consistency on how these structs are written and remove JSON marshaling/unmarshaling hand written logic.

  • pdata: Avoid unnecessary buffer copy when JSON marshal fails. (#13598)

  • pipeline: Mark module as stable (#12831)

v1.37.0/v0.131.0

29 Jul 15:42
v0.131.0
96f9a35

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.131.0

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • confighttp: Move confighttp.framedSnappy feature gate to beta. (#10584)

πŸ’‘ Enhancements πŸ’‘

  • exporter/debug: Move to alpha stability except profiles (#13487)

  • exporterhelper: Enable exporter.PersistRequestContext feature gate by default. (#13437)
    Request context is now preserved by default when using persistent queues.
    Note that Auth extensions context is not propagated through the persistent queue.

  • pdata: Use pdatagen to generate marshalJSON without using gogo proto jsonpb. (#13450)

  • otlpreceiver: Remove usage of gogo proto which uses reflect.Value.MethodByName. Removes one source of disabling DCE. (#12747)

  • exporterhelper: Fix metrics split logic to consider metrics description into the size. (#13418)

  • service: New pipeline instrumentation now differentiates internal failures from downstream errors (#13234)
    With the telemetry.newPipelineTelemetry feature gate enabled, the "received" and "produced"
    metrics related to a component now distinguish between two types of errors:

    • "outcome = failure" indicates that the component returned an internal error;
    • "outcome = refused" indicates that the component successfully emitted data, but returned an
      error coming from a downstream component processing that data.
  • pdata: Remove usage of text/template from pdata, improves DCE. (#12747)

  • architecture: New Tier 3 platform riscv64 allowing the collector to be built and distributed for this platform. (#13462)

🧰 Bug fixes 🧰

  • exporterhelper: Prevents the exporter for being stuck when telemetry data is bigger than batch.max_size (#12893)
  • mdatagen: Fix import paths for mdatagen component (#13069)
  • otlpreceiver: Error handler correctly fallbacks to content type (#13414)
  • pdata/pprofiles: Fix profiles JSON unmarshal logic for originalPayload. The bytes have to be base64 encoded. (#13483)
  • xpdata: Fix unmarshaling JSON for entities, add e2e tests to avoid this in the future. (#13480)
  • service: Downgrade dependency of prometheus exporter in OTel Go SDK (#13429)
    This fixes the bug where collector's internal metrics are emitted with an unexpected suffix in their names when users configure the service::telemetry::metrics::readers with Prometheus
  • service: Revert Default internal metrics config now enables otel_scope_ labels (#12939, #13344)
    Reverting change temporarily due to prometheus exporter downgrade. This unfortunately re-introduces the bug that instrumentation scope attributes cause errors in Prometheus exporter. See http://github.com/open-telemetry/opentelemetry-collector/issues/12939 for details.
  • builder: Remove undocumented handling of DIST_* environment variables replacements (#13335)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • configgrpc: Update optional fields to use configoptional.Optional field for optional values. (#13252, #13364)
    Specifically, the following fields have been updated to configoptional:

    • KeepaliveServerConfig.ServerParameters (KeepaliveServerParameters type)
    • KeepaliveServerConfig.EnforcementPolicy (KeepaliveEnforcementPolicy type)
  • xexporterhelper: Remove deprecated NewProfilesExporter function from xexporterhelper package (#13391)

πŸ’‘ Enhancements πŸ’‘

  • consumererror: Add new "Downstream" error marker (#13234)
    This new error wrapper type indicates that the error returned by a component's
    Consume method is not an internal failure of the component, but instead
    was passed through from another component further downstream.
    This is used internally by the new pipeline instrumentation feature to
    determine the outcome of a component call. This wrapper is not intended to
    be used by components directly.

  • pdata/pprofile: Introduce Equal method on the Function type (#13222)

  • pdata/pprofile: Introduce Equal method on the Link type (#13223)

  • pdata/pprofile: Add new helper method SetFunction to set a new function on a line. (#13222)

  • pdata/pprofile: Add new helper method SetLink to set a new link on a sample. (#13223)

  • pdata/pprofile: Add new helper method SetString to set or retrieve the index of a value in the StringTable. (#13225)

v1.36.1/v0.130.1

22 Jul 10:50
v0.130.1
d588ee2

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.130.1

End User Changelog

🧰 Bug fixes 🧰

  • service: Fixes bug where internal metrics are emitted with an unexpected suffix in their names when users configure service::telemetry::metrics::readers with Prometheus. (#13449)
    See more details on open-telemetry/opentelemetry-go#7039

API Changelog

v1.36.0/v0.130.0

14 Jul 14:21
v0.130.0
91ec67d

Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.130.0

End User Changelog

❗ Known Issues ❗

  • Due to a bug in the internal telemetry Prometheus exporter, if you are configuring an internal telemetry Prometheus exporter, the collector's internal metrics will be emitted with an unexpected suffix in its name. For example, the metric otelcol_exporter_sent_spans__spans__total instead of otelcol_exporter_sent_spans_total. The workaround is to manually configure without_units: true in your internal telemetry Prometheus exporter config

    service:
      telemetry:
        metrics:
          readers:
            - pull:
                exporter:
                  prometheus:
                    host: 0.0.0.0
                    port: 8888
                    without_units: true

    If you are using the collector's default internal telemetry Prometheus exporter for exporting internal metrics you are unaffected.

This issue has been fixed in v0.130.1. If you are using the Collector builder, please use the builder v0.130.1 to fix this issue.

πŸ›‘ Breaking changes πŸ›‘

  • exporter/otlp: Remove deprecated batcher config from OTLP, use queuebatch (#13339)

πŸ’‘ Enhancements πŸ’‘

  • exporterhelper: Enable items and bytes sizers for persistent queue (#12881)
  • exporterhelper: Refactor persistent storage size backup to always record it. (#12890)
  • exporterhelper: Add support to configure a different Sizer for the batcher than the queue (#13313)
  • yaml: Replaced sigs.k8s.io/yaml with go.yaml.in/yaml for improved support and long-term maintainability. (#13308)

🧰 Bug fixes 🧰

  • exporterhelper: Fix exporter.PersistRequestContext feature gate (#13342)

  • exporterhelper: Preserve all metrics metadata when batch splitting. (#13236)
    Previously, when large batches of metrics were processed, the splitting logic in metric_batch.go could
    cause the name field of some metrics to disappear. This fix ensures that all metric fields are
    properly preserved when metricRequest objects are split.

  • service: Default internal metrics config now enables otel_scope_ labels (#12939, #13344)
    By default, the Collector exports its internal metrics using a Prometheus
    exporter from the opentelemetry-go repository. With this change, the Collector
    no longer sets "without_scope_info" to true in its configuration.

    This means that all exported metrics will have otel_scope_name,
    otel_scope_schema_url, and otel_scope_version labels corresponding to the
    instrumentation scope metadata for that metric.

    This notably prevents an error when multiple metrics are only distinguished
    by their instrumentation scopes and end up aliased during export.

    If this is not desired behavior, a Prometheus exporter can be explicitly
    configured with this option enabled.

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • exporterhelper: Use configoptional for sending_queue::batch field (#13345)
  • configgrpc: Update optional fields to use configoptional.Optional field for optional values. (#13250, #13252)
    Components using configgrpc package may need to update config values.
  • confighttp: Use configoptional.Optional in confighttp (#9478)
  • exporterhelper: Remove sizer map in favor of items/bytes sizers. Request based is automatically supported. (#13262)
  • pdata/pprofile: Remove field Profile.StartTime from pdata/pprofile (#13315)
    Remove Profile.StartTime from OTel Profiling signal.
  • exporterhelper: Remove deprecated old batcher config (#13003)
  • exporter/otlp: Remove deprecated batcher config from OTLP, use queuebatch (#13339)

🚩 Deprecations 🚩

  • exporterhelper: Deprecate NewRequestsSizer always supported. (#13262)
  • xexporterhelper: Introduce NewProfiles method and deprecate NewProfilesExporter (#13372)

πŸ’‘ Enhancements πŸ’‘

  • consumererror: Add Error type (#7047)
    This type can contain information about errors that allow components (e.g. exporters)
    to communicate error information back up the pipeline.

  • pdata: Document that changing pcommon.Map (Remove/removeIf/Put*) invalidates Value references obtained via Get. (#13073)

  • cmd/mdatagen: Add support for optional attribute (#12571)

  • exporterhelper: Add support to configure a different Sizer for the batcher than the queue (#13313)

  • pdata: Add support for the new resource-entity reference API as part of the experimental xpdata package. (#13264)