From 83ea1ec83d9a363f1a3667d3c6c4cb45b5f8cf6f Mon Sep 17 00:00:00 2001
From: Utkarsh Umesan Pillai <66651184+utpilla@users.noreply.github.com>
Date: Tue, 17 Oct 2023 17:56:47 -0700
Subject: [PATCH 1/2] Update DiagnosticsSource package version (#4959)
---
Directory.Packages.props | 4 ++--
src/OpenTelemetry.Api/CHANGELOG.md | 4 ++++
src/OpenTelemetry/CHANGELOG.md | 4 ++++
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/Directory.Packages.props b/Directory.Packages.props
index a2245fd9315..1adfc8e0e6b 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -29,7 +29,7 @@
3) Since version 3.1.0, the .NET runtime team is holding a high bar for backward compatibility on
Microsoft.Extensions.Logging even during major version bumps, so compatibility is not a concern here.
-->
-
+
@@ -49,7 +49,7 @@
3) The .NET runtime team provides extra backward compatibility guarantee to System.Diagnostics.DiagnosticSource
even during major version bumps, so compatibility is not a concern here.
-->
-
+
diff --git a/src/OpenTelemetry.Api/CHANGELOG.md b/src/OpenTelemetry.Api/CHANGELOG.md
index 4599f1e6790..67cf8f478ff 100644
--- a/src/OpenTelemetry.Api/CHANGELOG.md
+++ b/src/OpenTelemetry.Api/CHANGELOG.md
@@ -2,6 +2,10 @@
## Unreleased
+* Updated `System.Diagnostics.DiagnosticSource` package version to
+ `8.0.0-rc.2.23479.6`.
+ ([#4959](https://github.com/open-telemetry/opentelemetry-dotnet/pull/4959))
+
## 1.7.0-alpha.1
Released 2023-Oct-16
diff --git a/src/OpenTelemetry/CHANGELOG.md b/src/OpenTelemetry/CHANGELOG.md
index b044a5bc1d8..93cc1b8d320 100644
--- a/src/OpenTelemetry/CHANGELOG.md
+++ b/src/OpenTelemetry/CHANGELOG.md
@@ -2,6 +2,10 @@
## Unreleased
+* Updated `Microsoft.Extensions.Logging` package version to
+ `8.0.0-rc.2.23479.6`.
+ ([#4959](https://github.com/open-telemetry/opentelemetry-dotnet/pull/4959))
+
## 1.7.0-alpha.1
Released 2023-Oct-16
From 1ec7a635714549b8af301d2d4f44a369360434cf Mon Sep 17 00:00:00 2001
From: Vishwesh Bankwar
Date: Tue, 17 Oct 2023 19:48:13 -0700
Subject: [PATCH 2/2] Add .NET8.0 targets to projects (#4918)
---
build/Common.props | 8 +-
.../net8.0/PublicAPI.Unshipped.txt | 9 +
.../Stable/net8.0/PublicAPI.Shipped.txt | 19 +
.../Stable/net8.0/PublicAPI.Unshipped.txt | 0
.../net8.0/PublicAPI.Unshipped.txt | 80 +++
.../Stable/net8.0/PublicAPI.Shipped.txt | 221 ++++++++
.../Stable/net8.0/PublicAPI.Unshipped.txt | 1 +
.../net8.0/PublicAPI.Unshipped.txt | 3 +
.../Stable/net8.0/PublicAPI.Shipped.txt | 33 ++
.../Stable/net8.0/PublicAPI.Unshipped.txt | 0
.../net8.0/PublicAPI.Unshipped.txt | 1 +
.../Stable/net8.0/PublicAPI.Shipped.txt | 24 +
.../Stable/net8.0/PublicAPI.Unshipped.txt | 0
.../net8.0/PublicAPI.Unshipped.txt | 0
.../Stable/net8.0/PublicAPI.Shipped.txt | 41 ++
.../Stable/net8.0/PublicAPI.Unshipped.txt | 0
...etry.Exporter.OpenTelemetryProtocol.csproj | 2 +-
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 19 +
.../PrometheusExporterMiddleware.cs | 4 +
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 10 +
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 21 +
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 0
.../net8.0/PublicAPI.Unshipped.txt | 2 +
.../Stable/net8.0/PublicAPI.Shipped.txt | 10 +
.../Stable/net8.0/PublicAPI.Unshipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 11 +
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 12 +
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 24 +
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 18 +
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 526 ++++++++++++++++++
.../.publicApi/net8.0/PublicAPI.Shipped.txt | 0
.../.publicApi/net8.0/PublicAPI.Unshipped.txt | 8 +
.../net8.0/PublicAPI.Unshipped.txt | 42 ++
.../Stable/net8.0/PublicAPI.Shipped.txt | 421 ++++++++++++++
.../Stable/net8.0/PublicAPI.Unshipped.txt | 0
42 files changed, 1565 insertions(+), 5 deletions(-)
create mode 100644 src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Api/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Console/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Console/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Console/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.InMemory/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.InMemory/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Exporter.InMemory/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Prometheus.AspNetCore/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Prometheus.AspNetCore/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Prometheus.HttpListener/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Prometheus.HttpListener/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Zipkin/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Exporter.Zipkin/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Extensions.Hosting/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Extensions.Hosting/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Extensions.Hosting/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Extensions.Propagators/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Extensions.Propagators/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Instrumentation.GrpcNetClient/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Instrumentation.GrpcNetClient/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Instrumentation.Http/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Instrumentation.Http/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Instrumentation.SqlClient/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Instrumentation.SqlClient/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.SemanticConventions/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.SemanticConventions/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry.Shims.OpenTracing/.publicApi/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry.Shims.OpenTracing/.publicApi/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
create mode 100644 src/OpenTelemetry/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
create mode 100644 src/OpenTelemetry/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
diff --git a/build/Common.props b/build/Common.props
index 59c3ee2622f..569dd2f5a52 100644
--- a/build/Common.props
+++ b/build/Common.props
@@ -16,11 +16,11 @@
- net6.0;netstandard2.0;net462
- net6.0;netstandard2.1;netstandard2.0;net462
+ net8.0;net6.0;netstandard2.0;net462
+ net8.0;net6.0;netstandard2.1;netstandard2.0;net462
net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0
- net6.0;netstandard2.1;netstandard2.0
- net6.0
+ net8.0;net6.0;netstandard2.1;netstandard2.0
+ net8.0;net6.0
net8.0;net7.0;net6.0
diff --git a/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..a0f2e472dd6
--- /dev/null
+++ b/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,9 @@
+OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggerProviderBuilderExtensions
+OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggingServiceCollectionExtensions
+static OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Logs.LoggerProviderBuilder! loggerProviderBuilder) -> OpenTelemetry.Logs.LoggerProviderBuilder!
+static OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Logs.LoggerProviderBuilder! loggerProviderBuilder, System.Func! instrumentationFactory) -> OpenTelemetry.Logs.LoggerProviderBuilder!
+static OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Logs.LoggerProviderBuilder! loggerProviderBuilder, System.Func! instrumentationFactory) -> OpenTelemetry.Logs.LoggerProviderBuilder!
+static OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Logs.LoggerProviderBuilder! loggerProviderBuilder, T! instrumentation) -> OpenTelemetry.Logs.LoggerProviderBuilder!
+static OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggerProviderBuilderExtensions.ConfigureServices(this OpenTelemetry.Logs.LoggerProviderBuilder! loggerProviderBuilder, System.Action! configure) -> OpenTelemetry.Logs.LoggerProviderBuilder!
+static OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggingServiceCollectionExtensions.ConfigureOpenTelemetryLoggerProvider(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
+static OpenTelemetry.Logs.OpenTelemetryDependencyInjectionLoggingServiceCollectionExtensions.ConfigureOpenTelemetryLoggerProvider(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
diff --git a/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..a647699c919
--- /dev/null
+++ b/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,19 @@
+#nullable enable
+OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMeterProviderBuilderExtensions
+OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMetricsServiceCollectionExtensions
+OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracerProviderBuilderExtensions
+OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracingServiceCollectionExtensions
+static OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMeterProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Metrics.MeterProviderBuilder! meterProviderBuilder) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+static OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMeterProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Metrics.MeterProviderBuilder! meterProviderBuilder, System.Func! instrumentationFactory) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+static OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMeterProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Metrics.MeterProviderBuilder! meterProviderBuilder, System.Func! instrumentationFactory) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+static OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMeterProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Metrics.MeterProviderBuilder! meterProviderBuilder, T! instrumentation) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+static OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMeterProviderBuilderExtensions.ConfigureServices(this OpenTelemetry.Metrics.MeterProviderBuilder! meterProviderBuilder, System.Action! configure) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+static OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMetricsServiceCollectionExtensions.ConfigureOpenTelemetryMeterProvider(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
+static OpenTelemetry.Metrics.OpenTelemetryDependencyInjectionMetricsServiceCollectionExtensions.ConfigureOpenTelemetryMeterProvider(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
+static OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder! tracerProviderBuilder) -> OpenTelemetry.Trace.TracerProviderBuilder!
+static OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder! tracerProviderBuilder, System.Func! instrumentationFactory) -> OpenTelemetry.Trace.TracerProviderBuilder!
+static OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder! tracerProviderBuilder, System.Func! instrumentationFactory) -> OpenTelemetry.Trace.TracerProviderBuilder!
+static OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracerProviderBuilderExtensions.AddInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder! tracerProviderBuilder, T! instrumentation) -> OpenTelemetry.Trace.TracerProviderBuilder!
+static OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracerProviderBuilderExtensions.ConfigureServices(this OpenTelemetry.Trace.TracerProviderBuilder! tracerProviderBuilder, System.Action! configure) -> OpenTelemetry.Trace.TracerProviderBuilder!
+static OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracingServiceCollectionExtensions.ConfigureOpenTelemetryTracerProvider(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
+static OpenTelemetry.Trace.OpenTelemetryDependencyInjectionTracingServiceCollectionExtensions.ConfigureOpenTelemetryTracerProvider(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
diff --git a/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Api.ProviderBuilderExtensions/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Api/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Api/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..2c2dcbb59e2
--- /dev/null
+++ b/src/OpenTelemetry.Api/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,80 @@
+abstract OpenTelemetry.Logs.Logger.EmitLog(in OpenTelemetry.Logs.LogRecordData data, in OpenTelemetry.Logs.LogRecordAttributeList attributes) -> void
+abstract OpenTelemetry.Logs.LoggerProviderBuilder.AddInstrumentation(System.Func! instrumentationFactory) -> OpenTelemetry.Logs.LoggerProviderBuilder!
+OpenTelemetry.Logs.IDeferredLoggerProviderBuilder
+OpenTelemetry.Logs.IDeferredLoggerProviderBuilder.Configure(System.Action! configure) -> OpenTelemetry.Logs.LoggerProviderBuilder!
+OpenTelemetry.Logs.Logger
+OpenTelemetry.Logs.Logger.EmitLog(in OpenTelemetry.Logs.LogRecordData data) -> void
+OpenTelemetry.Logs.Logger.Logger(string? name) -> void
+OpenTelemetry.Logs.Logger.Name.get -> string!
+OpenTelemetry.Logs.Logger.Version.get -> string?
+OpenTelemetry.Logs.LoggerProvider
+OpenTelemetry.Logs.LoggerProvider.GetLogger() -> OpenTelemetry.Logs.Logger!
+OpenTelemetry.Logs.LoggerProvider.GetLogger(string? name) -> OpenTelemetry.Logs.Logger!
+OpenTelemetry.Logs.LoggerProvider.GetLogger(string? name, string? version) -> OpenTelemetry.Logs.Logger!
+OpenTelemetry.Logs.LoggerProvider.LoggerProvider() -> void
+OpenTelemetry.Logs.LoggerProviderBuilder
+OpenTelemetry.Logs.LoggerProviderBuilder.LoggerProviderBuilder() -> void
+OpenTelemetry.Logs.LogRecordAttributeList
+OpenTelemetry.Logs.LogRecordAttributeList.Add(string! key, object? value) -> void
+OpenTelemetry.Logs.LogRecordAttributeList.Add(System.Collections.Generic.KeyValuePair attribute) -> void
+OpenTelemetry.Logs.LogRecordAttributeList.Clear() -> void
+OpenTelemetry.Logs.LogRecordAttributeList.Count.get -> int
+OpenTelemetry.Logs.LogRecordAttributeList.Enumerator
+OpenTelemetry.Logs.LogRecordAttributeList.Enumerator.Current.get -> System.Collections.Generic.KeyValuePair
+OpenTelemetry.Logs.LogRecordAttributeList.Enumerator.Dispose() -> void
+OpenTelemetry.Logs.LogRecordAttributeList.Enumerator.Enumerator() -> void
+OpenTelemetry.Logs.LogRecordAttributeList.Enumerator.MoveNext() -> bool
+OpenTelemetry.Logs.LogRecordAttributeList.GetEnumerator() -> OpenTelemetry.Logs.LogRecordAttributeList.Enumerator
+OpenTelemetry.Logs.LogRecordAttributeList.LogRecordAttributeList() -> void
+OpenTelemetry.Logs.LogRecordAttributeList.RecordException(System.Exception! exception) -> void
+OpenTelemetry.Logs.LogRecordAttributeList.this[int index].get -> System.Collections.Generic.KeyValuePair
+OpenTelemetry.Logs.LogRecordAttributeList.this[int index].set -> void
+OpenTelemetry.Logs.LogRecordAttributeList.this[string! key].set -> void
+OpenTelemetry.Logs.LogRecordData
+OpenTelemetry.Logs.LogRecordData.Body.get -> string?
+OpenTelemetry.Logs.LogRecordData.Body.set -> void
+OpenTelemetry.Logs.LogRecordData.LogRecordData() -> void
+OpenTelemetry.Logs.LogRecordData.LogRecordData(in System.Diagnostics.ActivityContext activityContext) -> void
+OpenTelemetry.Logs.LogRecordData.LogRecordData(System.Diagnostics.Activity? activity) -> void
+OpenTelemetry.Logs.LogRecordData.Severity.get -> OpenTelemetry.Logs.LogRecordSeverity?
+OpenTelemetry.Logs.LogRecordData.Severity.set -> void
+OpenTelemetry.Logs.LogRecordData.SeverityText.get -> string?
+OpenTelemetry.Logs.LogRecordData.SeverityText.set -> void
+OpenTelemetry.Logs.LogRecordData.SpanId.get -> System.Diagnostics.ActivitySpanId
+OpenTelemetry.Logs.LogRecordData.SpanId.set -> void
+OpenTelemetry.Logs.LogRecordData.Timestamp.get -> System.DateTime
+OpenTelemetry.Logs.LogRecordData.Timestamp.set -> void
+OpenTelemetry.Logs.LogRecordData.TraceFlags.get -> System.Diagnostics.ActivityTraceFlags
+OpenTelemetry.Logs.LogRecordData.TraceFlags.set -> void
+OpenTelemetry.Logs.LogRecordData.TraceId.get -> System.Diagnostics.ActivityTraceId
+OpenTelemetry.Logs.LogRecordData.TraceId.set -> void
+OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Debug = 5 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Debug2 = 6 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Debug3 = 7 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Debug4 = 8 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Error = 17 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Error2 = 18 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Error3 = 19 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Error4 = 20 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Fatal = 21 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Fatal2 = 22 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Fatal3 = 23 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Fatal4 = 24 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Info = 9 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Info2 = 10 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Info3 = 11 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Info4 = 12 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Trace = 1 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Trace2 = 2 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Trace3 = 3 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Trace4 = 4 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Unspecified = 0 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Warn = 13 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Warn2 = 14 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Warn3 = 15 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverity.Warn4 = 16 -> OpenTelemetry.Logs.LogRecordSeverity
+OpenTelemetry.Logs.LogRecordSeverityExtensions
+static OpenTelemetry.Logs.LogRecordAttributeList.CreateFromEnumerable(System.Collections.Generic.IEnumerable>! attributes) -> OpenTelemetry.Logs.LogRecordAttributeList
+static OpenTelemetry.Logs.LogRecordSeverityExtensions.ToShortName(this OpenTelemetry.Logs.LogRecordSeverity logRecordSeverity) -> string!
+virtual OpenTelemetry.Logs.LoggerProvider.TryCreateLogger(string? name, out OpenTelemetry.Logs.Logger? logger) -> bool
diff --git a/src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..6599b613303
--- /dev/null
+++ b/src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,221 @@
+#nullable enable
+~abstract OpenTelemetry.Context.Propagation.TextMapPropagator.Extract(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Func> getter) -> OpenTelemetry.Context.Propagation.PropagationContext
+~abstract OpenTelemetry.Context.Propagation.TextMapPropagator.Fields.get -> System.Collections.Generic.ISet
+~abstract OpenTelemetry.Context.Propagation.TextMapPropagator.Inject(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Action setter) -> void
+abstract OpenTelemetry.Metrics.MeterProviderBuilder.AddInstrumentation(System.Func! instrumentationFactory) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+abstract OpenTelemetry.Metrics.MeterProviderBuilder.AddMeter(params string![]! names) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+abstract OpenTelemetry.Trace.TracerProviderBuilder.AddInstrumentation(System.Func! instrumentationFactory) -> OpenTelemetry.Trace.TracerProviderBuilder!
+abstract OpenTelemetry.Trace.TracerProviderBuilder.AddLegacySource(string! operationName) -> OpenTelemetry.Trace.TracerProviderBuilder!
+abstract OpenTelemetry.Trace.TracerProviderBuilder.AddSource(params string![]! names) -> OpenTelemetry.Trace.TracerProviderBuilder!
+~OpenTelemetry.Baggage.GetBaggage() -> System.Collections.Generic.IReadOnlyDictionary
+~OpenTelemetry.Baggage.GetBaggage(string name) -> string
+~OpenTelemetry.Baggage.GetEnumerator() -> System.Collections.Generic.Dictionary.Enumerator
+~OpenTelemetry.Baggage.RemoveBaggage(string name) -> OpenTelemetry.Baggage
+~OpenTelemetry.Baggage.SetBaggage(params System.Collections.Generic.KeyValuePair[] baggageItems) -> OpenTelemetry.Baggage
+~OpenTelemetry.Baggage.SetBaggage(string name, string value) -> OpenTelemetry.Baggage
+~OpenTelemetry.Baggage.SetBaggage(System.Collections.Generic.IEnumerable> baggageItems) -> OpenTelemetry.Baggage
+~OpenTelemetry.Context.AsyncLocalRuntimeContextSlot.AsyncLocalRuntimeContextSlot(string name) -> void
+~OpenTelemetry.Context.AsyncLocalRuntimeContextSlot.Value.get -> object
+~OpenTelemetry.Context.AsyncLocalRuntimeContextSlot.Value.set -> void
+~OpenTelemetry.Context.IRuntimeContextSlotValueAccessor.Value.get -> object
+~OpenTelemetry.Context.IRuntimeContextSlotValueAccessor.Value.set -> void
+~OpenTelemetry.Context.Propagation.CompositeTextMapPropagator.CompositeTextMapPropagator(System.Collections.Generic.IEnumerable propagators) -> void
+~OpenTelemetry.Context.RuntimeContextSlot.Name.get -> string
+~OpenTelemetry.Context.RuntimeContextSlot.RuntimeContextSlot(string name) -> void
+~OpenTelemetry.Context.ThreadLocalRuntimeContextSlot.ThreadLocalRuntimeContextSlot(string name) -> void
+~OpenTelemetry.Context.ThreadLocalRuntimeContextSlot.Value.get -> object
+~OpenTelemetry.Context.ThreadLocalRuntimeContextSlot.Value.set -> void
+OpenTelemetry.Metrics.IDeferredMeterProviderBuilder.Configure(System.Action! configure) -> OpenTelemetry.Metrics.MeterProviderBuilder!
+OpenTelemetry.Trace.IDeferredTracerProviderBuilder.Configure(System.Action! configure) -> OpenTelemetry.Trace.TracerProviderBuilder!
+OpenTelemetry.Trace.Link.Attributes.get -> System.Collections.Generic.IEnumerable>?
+OpenTelemetry.Trace.Link.Link(in OpenTelemetry.Trace.SpanContext spanContext, OpenTelemetry.Trace.SpanAttributes? attributes) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, bool value) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, bool[]? values) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, double value) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, double[]? values) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, long value) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, long[]? values) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, string? value) -> void
+OpenTelemetry.Trace.SpanAttributes.Add(string! key, string?[]? values) -> void
+OpenTelemetry.Trace.SpanAttributes.SpanAttributes(System.Collections.Generic.IEnumerable>! attributes) -> void
+OpenTelemetry.Trace.SpanContext.SpanContext(in System.Diagnostics.ActivityTraceId traceId, in System.Diagnostics.ActivitySpanId spanId, System.Diagnostics.ActivityTraceFlags traceFlags, bool isRemote = false, System.Collections.Generic.IEnumerable>? traceState = null) -> void
+OpenTelemetry.Trace.SpanContext.TraceState.get -> System.Collections.Generic.IEnumerable>!
+OpenTelemetry.Trace.Status.Description.get -> string?
+OpenTelemetry.Trace.Status.WithDescription(string? description) -> OpenTelemetry.Trace.Status
+OpenTelemetry.Trace.TelemetrySpan.AddEvent(string! name) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.AddEvent(string! name, OpenTelemetry.Trace.SpanAttributes? attributes) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.AddEvent(string! name, System.DateTimeOffset timestamp) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.AddEvent(string! name, System.DateTimeOffset timestamp, OpenTelemetry.Trace.SpanAttributes? attributes) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.RecordException(string? type, string? message, string? stacktrace) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.RecordException(System.Exception? ex) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, bool value) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, bool[]? values) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, double value) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, double[]? values) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, int value) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, int[]? values) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, string? value) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.SetAttribute(string! key, string?[]? values) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TelemetrySpan.UpdateName(string! name) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.Tracer.StartActiveSpan(string! name, OpenTelemetry.Trace.SpanKind kind = OpenTelemetry.Trace.SpanKind.Internal, in OpenTelemetry.Trace.SpanContext parentContext = default(OpenTelemetry.Trace.SpanContext), OpenTelemetry.Trace.SpanAttributes? initialAttributes = null, System.Collections.Generic.IEnumerable? links = null, System.DateTimeOffset startTime = default(System.DateTimeOffset)) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.Tracer.StartActiveSpan(string! name, OpenTelemetry.Trace.SpanKind kind, in OpenTelemetry.Trace.TelemetrySpan? parentSpan, OpenTelemetry.Trace.SpanAttributes? initialAttributes = null, System.Collections.Generic.IEnumerable? links = null, System.DateTimeOffset startTime = default(System.DateTimeOffset)) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.Tracer.StartRootSpan(string! name, OpenTelemetry.Trace.SpanKind kind = OpenTelemetry.Trace.SpanKind.Internal, OpenTelemetry.Trace.SpanAttributes? initialAttributes = null, System.Collections.Generic.IEnumerable? links = null, System.DateTimeOffset startTime = default(System.DateTimeOffset)) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.Tracer.StartSpan(string! name, OpenTelemetry.Trace.SpanKind kind = OpenTelemetry.Trace.SpanKind.Internal, in OpenTelemetry.Trace.SpanContext parentContext = default(OpenTelemetry.Trace.SpanContext), OpenTelemetry.Trace.SpanAttributes? initialAttributes = null, System.Collections.Generic.IEnumerable? links = null, System.DateTimeOffset startTime = default(System.DateTimeOffset)) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.Tracer.StartSpan(string! name, OpenTelemetry.Trace.SpanKind kind, in OpenTelemetry.Trace.TelemetrySpan? parentSpan, OpenTelemetry.Trace.SpanAttributes? initialAttributes = null, System.Collections.Generic.IEnumerable? links = null, System.DateTimeOffset startTime = default(System.DateTimeOffset)) -> OpenTelemetry.Trace.TelemetrySpan!
+OpenTelemetry.Trace.TracerProvider.GetTracer(string! name, string? version = null) -> OpenTelemetry.Trace.Tracer!
+~override OpenTelemetry.Baggage.Equals(object obj) -> bool
+~override OpenTelemetry.Context.Propagation.B3Propagator.Extract(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Func> getter) -> OpenTelemetry.Context.Propagation.PropagationContext
+~override OpenTelemetry.Context.Propagation.B3Propagator.Fields.get -> System.Collections.Generic.ISet
+~override OpenTelemetry.Context.Propagation.B3Propagator.Inject(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Action setter) -> void
+~override OpenTelemetry.Context.Propagation.BaggagePropagator.Extract(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Func> getter) -> OpenTelemetry.Context.Propagation.PropagationContext
+~override OpenTelemetry.Context.Propagation.BaggagePropagator.Fields.get -> System.Collections.Generic.ISet
+~override OpenTelemetry.Context.Propagation.BaggagePropagator.Inject(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Action setter) -> void
+~override OpenTelemetry.Context.Propagation.CompositeTextMapPropagator.Extract(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Func> getter) -> OpenTelemetry.Context.Propagation.PropagationContext
+~override OpenTelemetry.Context.Propagation.CompositeTextMapPropagator.Fields.get -> System.Collections.Generic.ISet
+~override OpenTelemetry.Context.Propagation.CompositeTextMapPropagator.Inject(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Action setter) -> void
+~override OpenTelemetry.Context.Propagation.PropagationContext.Equals(object obj) -> bool
+~override OpenTelemetry.Context.Propagation.TraceContextPropagator.Extract(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Func> getter) -> OpenTelemetry.Context.Propagation.PropagationContext
+~override OpenTelemetry.Context.Propagation.TraceContextPropagator.Fields.get -> System.Collections.Generic.ISet
+~override OpenTelemetry.Context.Propagation.TraceContextPropagator.Inject(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Action setter) -> void
+override OpenTelemetry.Trace.Link.Equals(object? obj) -> bool
+override OpenTelemetry.Trace.SpanContext.Equals(object? obj) -> bool
+override OpenTelemetry.Trace.Status.Equals(object? obj) -> bool
+override OpenTelemetry.Trace.Status.ToString() -> string!
+~static OpenTelemetry.Baggage.Create(System.Collections.Generic.Dictionary baggageItems = null) -> OpenTelemetry.Baggage
+~static OpenTelemetry.Baggage.GetBaggage(OpenTelemetry.Baggage baggage = default(OpenTelemetry.Baggage)) -> System.Collections.Generic.IReadOnlyDictionary
+~static OpenTelemetry.Baggage.GetBaggage(string name, OpenTelemetry.Baggage baggage = default(OpenTelemetry.Baggage)) -> string
+~static OpenTelemetry.Baggage.GetEnumerator(OpenTelemetry.Baggage baggage = default(OpenTelemetry.Baggage)) -> System.Collections.Generic.Dictionary.Enumerator
+~static OpenTelemetry.Baggage.RemoveBaggage(string name, OpenTelemetry.Baggage baggage = default(OpenTelemetry.Baggage)) -> OpenTelemetry.Baggage
+~static OpenTelemetry.Baggage.SetBaggage(string name, string value, OpenTelemetry.Baggage baggage = default(OpenTelemetry.Baggage)) -> OpenTelemetry.Baggage
+~static OpenTelemetry.Baggage.SetBaggage(System.Collections.Generic.IEnumerable> baggageItems, OpenTelemetry.Baggage baggage = default(OpenTelemetry.Baggage)) -> OpenTelemetry.Baggage
+~static OpenTelemetry.Context.Propagation.Propagators.DefaultTextMapPropagator.get -> OpenTelemetry.Context.Propagation.TextMapPropagator
+~static OpenTelemetry.Context.RuntimeContext.ContextSlotType.get -> System.Type
+~static OpenTelemetry.Context.RuntimeContext.ContextSlotType.set -> void
+~static OpenTelemetry.Context.RuntimeContext.GetSlot(string slotName) -> OpenTelemetry.Context.RuntimeContextSlot
+~static OpenTelemetry.Context.RuntimeContext.GetValue(string slotName) -> object
+~static OpenTelemetry.Context.RuntimeContext.GetValue(string slotName) -> T
+~static OpenTelemetry.Context.RuntimeContext.RegisterSlot(string slotName) -> OpenTelemetry.Context.RuntimeContextSlot
+~static OpenTelemetry.Context.RuntimeContext.SetValue(string slotName, object value) -> void
+~static OpenTelemetry.Context.RuntimeContext.SetValue(string slotName, T value) -> void
+static OpenTelemetry.Trace.ActivityExtensions.GetStatus(this System.Diagnostics.Activity! activity) -> OpenTelemetry.Trace.Status
+static OpenTelemetry.Trace.ActivityExtensions.RecordException(this System.Diagnostics.Activity! activity, System.Exception? ex) -> void
+static OpenTelemetry.Trace.ActivityExtensions.RecordException(this System.Diagnostics.Activity! activity, System.Exception? ex, in System.Diagnostics.TagList tags) -> void
+static OpenTelemetry.Trace.ActivityExtensions.SetStatus(this System.Diagnostics.Activity! activity, OpenTelemetry.Trace.Status status) -> void
+static OpenTelemetry.Trace.Tracer.CurrentSpan.get -> OpenTelemetry.Trace.TelemetrySpan!
+static OpenTelemetry.Trace.Tracer.WithSpan(OpenTelemetry.Trace.TelemetrySpan? span) -> OpenTelemetry.Trace.TelemetrySpan?
+static OpenTelemetry.Trace.TracerProvider.Default.get -> OpenTelemetry.Trace.TracerProvider!
+abstract OpenTelemetry.Context.RuntimeContextSlot.Get() -> T
+abstract OpenTelemetry.Context.RuntimeContextSlot.Set(T value) -> void
+OpenTelemetry.ActivityContextExtensions
+OpenTelemetry.Baggage
+OpenTelemetry.Baggage.Baggage() -> void
+OpenTelemetry.Baggage.ClearBaggage() -> OpenTelemetry.Baggage
+OpenTelemetry.Baggage.Count.get -> int
+OpenTelemetry.Baggage.Equals(OpenTelemetry.Baggage other) -> bool
+OpenTelemetry.BaseProvider
+OpenTelemetry.BaseProvider.~BaseProvider() -> void
+OpenTelemetry.BaseProvider.BaseProvider() -> void
+OpenTelemetry.BaseProvider.Dispose() -> void
+OpenTelemetry.Context.AsyncLocalRuntimeContextSlot
+OpenTelemetry.Context.IRuntimeContextSlotValueAccessor
+OpenTelemetry.Context.Propagation.B3Propagator
+OpenTelemetry.Context.Propagation.B3Propagator.B3Propagator() -> void
+OpenTelemetry.Context.Propagation.B3Propagator.B3Propagator(bool singleHeader) -> void
+OpenTelemetry.Context.Propagation.BaggagePropagator
+OpenTelemetry.Context.Propagation.BaggagePropagator.BaggagePropagator() -> void
+OpenTelemetry.Context.Propagation.CompositeTextMapPropagator
+OpenTelemetry.Context.Propagation.PropagationContext
+OpenTelemetry.Context.Propagation.PropagationContext.ActivityContext.get -> System.Diagnostics.ActivityContext
+OpenTelemetry.Context.Propagation.PropagationContext.Baggage.get -> OpenTelemetry.Baggage
+OpenTelemetry.Context.Propagation.PropagationContext.Equals(OpenTelemetry.Context.Propagation.PropagationContext value) -> bool
+OpenTelemetry.Context.Propagation.PropagationContext.PropagationContext() -> void
+OpenTelemetry.Context.Propagation.PropagationContext.PropagationContext(System.Diagnostics.ActivityContext activityContext, OpenTelemetry.Baggage baggage) -> void
+OpenTelemetry.Context.Propagation.Propagators
+OpenTelemetry.Context.Propagation.TextMapPropagator
+OpenTelemetry.Context.Propagation.TextMapPropagator.TextMapPropagator() -> void
+OpenTelemetry.Context.Propagation.TraceContextPropagator
+OpenTelemetry.Context.Propagation.TraceContextPropagator.TraceContextPropagator() -> void
+OpenTelemetry.Context.RuntimeContext
+OpenTelemetry.Context.RuntimeContextSlot
+OpenTelemetry.Context.RuntimeContextSlot.Dispose() -> void
+OpenTelemetry.Context.ThreadLocalRuntimeContextSlot
+OpenTelemetry.Metrics.IDeferredMeterProviderBuilder
+OpenTelemetry.Metrics.MeterProvider
+OpenTelemetry.Metrics.MeterProvider.MeterProvider() -> void
+OpenTelemetry.Metrics.MeterProviderBuilder
+OpenTelemetry.Metrics.MeterProviderBuilder.MeterProviderBuilder() -> void
+OpenTelemetry.Trace.ActivityExtensions
+OpenTelemetry.Trace.IDeferredTracerProviderBuilder
+OpenTelemetry.Trace.Link
+OpenTelemetry.Trace.Link.Context.get -> OpenTelemetry.Trace.SpanContext
+OpenTelemetry.Trace.Link.Equals(OpenTelemetry.Trace.Link other) -> bool
+OpenTelemetry.Trace.Link.Link() -> void
+OpenTelemetry.Trace.Link.Link(in OpenTelemetry.Trace.SpanContext spanContext) -> void
+OpenTelemetry.Trace.SpanAttributes
+OpenTelemetry.Trace.SpanAttributes.SpanAttributes() -> void
+OpenTelemetry.Trace.SpanContext
+OpenTelemetry.Trace.SpanContext.Equals(OpenTelemetry.Trace.SpanContext other) -> bool
+OpenTelemetry.Trace.SpanContext.IsRemote.get -> bool
+OpenTelemetry.Trace.SpanContext.IsValid.get -> bool
+OpenTelemetry.Trace.SpanContext.SpanContext() -> void
+OpenTelemetry.Trace.SpanContext.SpanContext(in System.Diagnostics.ActivityContext activityContext) -> void
+OpenTelemetry.Trace.SpanContext.SpanId.get -> System.Diagnostics.ActivitySpanId
+OpenTelemetry.Trace.SpanContext.TraceFlags.get -> System.Diagnostics.ActivityTraceFlags
+OpenTelemetry.Trace.SpanContext.TraceId.get -> System.Diagnostics.ActivityTraceId
+OpenTelemetry.Trace.SpanKind
+OpenTelemetry.Trace.SpanKind.Client = 3 -> OpenTelemetry.Trace.SpanKind
+OpenTelemetry.Trace.SpanKind.Consumer = 5 -> OpenTelemetry.Trace.SpanKind
+OpenTelemetry.Trace.SpanKind.Internal = 1 -> OpenTelemetry.Trace.SpanKind
+OpenTelemetry.Trace.SpanKind.Producer = 4 -> OpenTelemetry.Trace.SpanKind
+OpenTelemetry.Trace.SpanKind.Server = 2 -> OpenTelemetry.Trace.SpanKind
+OpenTelemetry.Trace.Status
+OpenTelemetry.Trace.Status.Equals(OpenTelemetry.Trace.Status other) -> bool
+OpenTelemetry.Trace.Status.Status() -> void
+OpenTelemetry.Trace.Status.StatusCode.get -> OpenTelemetry.Trace.StatusCode
+OpenTelemetry.Trace.StatusCode
+OpenTelemetry.Trace.StatusCode.Error = 2 -> OpenTelemetry.Trace.StatusCode
+OpenTelemetry.Trace.StatusCode.Ok = 1 -> OpenTelemetry.Trace.StatusCode
+OpenTelemetry.Trace.StatusCode.Unset = 0 -> OpenTelemetry.Trace.StatusCode
+OpenTelemetry.Trace.TelemetrySpan
+OpenTelemetry.Trace.TelemetrySpan.Context.get -> OpenTelemetry.Trace.SpanContext
+OpenTelemetry.Trace.TelemetrySpan.Dispose() -> void
+OpenTelemetry.Trace.TelemetrySpan.End() -> void
+OpenTelemetry.Trace.TelemetrySpan.End(System.DateTimeOffset endTimestamp) -> void
+OpenTelemetry.Trace.TelemetrySpan.IsRecording.get -> bool
+OpenTelemetry.Trace.TelemetrySpan.ParentSpanId.get -> System.Diagnostics.ActivitySpanId
+OpenTelemetry.Trace.TelemetrySpan.SetStatus(OpenTelemetry.Trace.Status value) -> void
+OpenTelemetry.Trace.Tracer
+OpenTelemetry.Trace.TracerProvider
+OpenTelemetry.Trace.TracerProvider.TracerProvider() -> void
+OpenTelemetry.Trace.TracerProviderBuilder
+OpenTelemetry.Trace.TracerProviderBuilder.TracerProviderBuilder() -> void
+override OpenTelemetry.Baggage.GetHashCode() -> int
+override OpenTelemetry.Context.AsyncLocalRuntimeContextSlot.Get() -> T
+override OpenTelemetry.Context.AsyncLocalRuntimeContextSlot.Set(T value) -> void
+override OpenTelemetry.Context.Propagation.PropagationContext.GetHashCode() -> int
+override OpenTelemetry.Context.ThreadLocalRuntimeContextSlot.Dispose(bool disposing) -> void
+override OpenTelemetry.Context.ThreadLocalRuntimeContextSlot.Get() -> T
+override OpenTelemetry.Context.ThreadLocalRuntimeContextSlot.Set(T value) -> void
+override OpenTelemetry.Trace.Link.GetHashCode() -> int
+override OpenTelemetry.Trace.SpanContext.GetHashCode() -> int
+override OpenTelemetry.Trace.Status.GetHashCode() -> int
+static OpenTelemetry.ActivityContextExtensions.IsValid(this System.Diagnostics.ActivityContext ctx) -> bool
+static OpenTelemetry.Baggage.ClearBaggage(OpenTelemetry.Baggage baggage = default(OpenTelemetry.Baggage)) -> OpenTelemetry.Baggage
+static OpenTelemetry.Baggage.Current.get -> OpenTelemetry.Baggage
+static OpenTelemetry.Baggage.Current.set -> void
+static OpenTelemetry.Baggage.operator !=(OpenTelemetry.Baggage left, OpenTelemetry.Baggage right) -> bool
+static OpenTelemetry.Baggage.operator ==(OpenTelemetry.Baggage left, OpenTelemetry.Baggage right) -> bool
+static OpenTelemetry.Context.Propagation.PropagationContext.operator !=(OpenTelemetry.Context.Propagation.PropagationContext left, OpenTelemetry.Context.Propagation.PropagationContext right) -> bool
+static OpenTelemetry.Context.Propagation.PropagationContext.operator ==(OpenTelemetry.Context.Propagation.PropagationContext left, OpenTelemetry.Context.Propagation.PropagationContext right) -> bool
+static OpenTelemetry.Trace.Link.operator !=(OpenTelemetry.Trace.Link link1, OpenTelemetry.Trace.Link link2) -> bool
+static OpenTelemetry.Trace.Link.operator ==(OpenTelemetry.Trace.Link link1, OpenTelemetry.Trace.Link link2) -> bool
+static OpenTelemetry.Trace.SpanContext.implicit operator System.Diagnostics.ActivityContext(OpenTelemetry.Trace.SpanContext spanContext) -> System.Diagnostics.ActivityContext
+static OpenTelemetry.Trace.SpanContext.operator !=(OpenTelemetry.Trace.SpanContext spanContext1, OpenTelemetry.Trace.SpanContext spanContext2) -> bool
+static OpenTelemetry.Trace.SpanContext.operator ==(OpenTelemetry.Trace.SpanContext spanContext1, OpenTelemetry.Trace.SpanContext spanContext2) -> bool
+static OpenTelemetry.Trace.Status.operator !=(OpenTelemetry.Trace.Status status1, OpenTelemetry.Trace.Status status2) -> bool
+static OpenTelemetry.Trace.Status.operator ==(OpenTelemetry.Trace.Status status1, OpenTelemetry.Trace.Status status2) -> bool
+static readonly OpenTelemetry.Trace.Status.Error -> OpenTelemetry.Trace.Status
+static readonly OpenTelemetry.Trace.Status.Ok -> OpenTelemetry.Trace.Status
+static readonly OpenTelemetry.Trace.Status.Unset -> OpenTelemetry.Trace.Status
+virtual OpenTelemetry.BaseProvider.Dispose(bool disposing) -> void
+virtual OpenTelemetry.Context.RuntimeContextSlot.Dispose(bool disposing) -> void
diff --git a/src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..b3db39f4c47
--- /dev/null
+++ b/src/OpenTelemetry.Api/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1 @@
+override OpenTelemetry.Trace.TracerProvider.Dispose(bool disposing) -> void
diff --git a/src/OpenTelemetry.Exporter.Console/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.Console/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..be114835ccd
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.Console/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,3 @@
+static OpenTelemetry.Logs.ConsoleExporterLoggingExtensions.AddConsoleExporter(this OpenTelemetry.Logs.LoggerProviderBuilder loggerProviderBuilder) -> OpenTelemetry.Logs.LoggerProviderBuilder
+static OpenTelemetry.Logs.ConsoleExporterLoggingExtensions.AddConsoleExporter(this OpenTelemetry.Logs.LoggerProviderBuilder loggerProviderBuilder, string name, System.Action configure) -> OpenTelemetry.Logs.LoggerProviderBuilder
+static OpenTelemetry.Logs.ConsoleExporterLoggingExtensions.AddConsoleExporter(this OpenTelemetry.Logs.LoggerProviderBuilder loggerProviderBuilder, System.Action configure) -> OpenTelemetry.Logs.LoggerProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.Console/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Exporter.Console/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..6f900a1f6f6
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.Console/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,33 @@
+OpenTelemetry.Exporter.ConsoleActivityExporter
+OpenTelemetry.Exporter.ConsoleActivityExporter.ConsoleActivityExporter(OpenTelemetry.Exporter.ConsoleExporterOptions options) -> void
+OpenTelemetry.Exporter.ConsoleExporter
+OpenTelemetry.Exporter.ConsoleExporter.ConsoleExporter(OpenTelemetry.Exporter.ConsoleExporterOptions options) -> void
+OpenTelemetry.Exporter.ConsoleExporter.WriteLine(string message) -> void
+OpenTelemetry.Exporter.ConsoleExporterOptions
+OpenTelemetry.Exporter.ConsoleExporterOptions.ConsoleExporterOptions() -> void
+OpenTelemetry.Exporter.ConsoleExporterOptions.Targets.get -> OpenTelemetry.Exporter.ConsoleExporterOutputTargets
+OpenTelemetry.Exporter.ConsoleExporterOptions.Targets.set -> void
+OpenTelemetry.Exporter.ConsoleExporterOutputTargets
+OpenTelemetry.Exporter.ConsoleExporterOutputTargets.Console = 1 -> OpenTelemetry.Exporter.ConsoleExporterOutputTargets
+OpenTelemetry.Exporter.ConsoleExporterOutputTargets.Debug = 2 -> OpenTelemetry.Exporter.ConsoleExporterOutputTargets
+OpenTelemetry.Exporter.ConsoleLogRecordExporter
+OpenTelemetry.Exporter.ConsoleLogRecordExporter.ConsoleLogRecordExporter(OpenTelemetry.Exporter.ConsoleExporterOptions options) -> void
+OpenTelemetry.Exporter.ConsoleMetricExporter
+OpenTelemetry.Exporter.ConsoleMetricExporter.ConsoleMetricExporter(OpenTelemetry.Exporter.ConsoleExporterOptions options) -> void
+OpenTelemetry.Logs.ConsoleExporterLoggingExtensions
+OpenTelemetry.Metrics.ConsoleExporterMetricsExtensions
+OpenTelemetry.Trace.ConsoleExporterHelperExtensions
+override OpenTelemetry.Exporter.ConsoleActivityExporter.Export(in OpenTelemetry.Batch batch) -> OpenTelemetry.ExportResult
+override OpenTelemetry.Exporter.ConsoleLogRecordExporter.Dispose(bool disposing) -> void
+override OpenTelemetry.Exporter.ConsoleLogRecordExporter.Export(in OpenTelemetry.Batch batch) -> OpenTelemetry.ExportResult
+override OpenTelemetry.Exporter.ConsoleMetricExporter.Export(in OpenTelemetry.Batch batch) -> OpenTelemetry.ExportResult
+static OpenTelemetry.Logs.ConsoleExporterLoggingExtensions.AddConsoleExporter(this OpenTelemetry.Logs.OpenTelemetryLoggerOptions loggerOptions) -> OpenTelemetry.Logs.OpenTelemetryLoggerOptions
+static OpenTelemetry.Logs.ConsoleExporterLoggingExtensions.AddConsoleExporter(this OpenTelemetry.Logs.OpenTelemetryLoggerOptions loggerOptions, System.Action configure) -> OpenTelemetry.Logs.OpenTelemetryLoggerOptions
+static OpenTelemetry.Metrics.ConsoleExporterMetricsExtensions.AddConsoleExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.ConsoleExporterMetricsExtensions.AddConsoleExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Action configureExporterAndMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.ConsoleExporterMetricsExtensions.AddConsoleExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Action configureExporter) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.ConsoleExporterMetricsExtensions.AddConsoleExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Action configureExporterAndMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.ConsoleExporterMetricsExtensions.AddConsoleExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Action configureExporter) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Trace.ConsoleExporterHelperExtensions.AddConsoleExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.ConsoleExporterHelperExtensions.AddConsoleExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder, string name, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.ConsoleExporterHelperExtensions.AddConsoleExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.Console/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.Console/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Exporter.InMemory/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.InMemory/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..f7378ee36cc
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.InMemory/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1 @@
+static OpenTelemetry.Logs.InMemoryExporterLoggingExtensions.AddInMemoryExporter(this OpenTelemetry.Logs.LoggerProviderBuilder loggerProviderBuilder, System.Collections.Generic.ICollection exportedItems) -> OpenTelemetry.Logs.LoggerProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.InMemory/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Exporter.InMemory/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..499065e2d09
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.InMemory/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,24 @@
+OpenTelemetry.Exporter.InMemoryExporter
+OpenTelemetry.Exporter.InMemoryExporter.InMemoryExporter(System.Collections.Generic.ICollection exportedItems) -> void
+OpenTelemetry.Logs.InMemoryExporterLoggingExtensions
+OpenTelemetry.Metrics.InMemoryExporterMetricsExtensions
+OpenTelemetry.Metrics.MetricSnapshot
+OpenTelemetry.Metrics.MetricSnapshot.Description.get -> string
+OpenTelemetry.Metrics.MetricSnapshot.MeterName.get -> string
+OpenTelemetry.Metrics.MetricSnapshot.MeterVersion.get -> string
+OpenTelemetry.Metrics.MetricSnapshot.MetricPoints.get -> System.Collections.Generic.IReadOnlyList
+OpenTelemetry.Metrics.MetricSnapshot.MetricSnapshot(OpenTelemetry.Metrics.Metric metric) -> void
+OpenTelemetry.Metrics.MetricSnapshot.MetricType.get -> OpenTelemetry.Metrics.MetricType
+OpenTelemetry.Metrics.MetricSnapshot.Name.get -> string
+OpenTelemetry.Metrics.MetricSnapshot.Unit.get -> string
+OpenTelemetry.Trace.InMemoryExporterHelperExtensions
+override OpenTelemetry.Exporter.InMemoryExporter.Dispose(bool disposing) -> void
+override OpenTelemetry.Exporter.InMemoryExporter.Export(in OpenTelemetry.Batch batch) -> OpenTelemetry.ExportResult
+static OpenTelemetry.Logs.InMemoryExporterLoggingExtensions.AddInMemoryExporter(this OpenTelemetry.Logs.OpenTelemetryLoggerOptions loggerOptions, System.Collections.Generic.ICollection exportedItems) -> OpenTelemetry.Logs.OpenTelemetryLoggerOptions
+static OpenTelemetry.Metrics.InMemoryExporterMetricsExtensions.AddInMemoryExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Collections.Generic.ICollection exportedItems, System.Action configureMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.InMemoryExporterMetricsExtensions.AddInMemoryExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Collections.Generic.ICollection exportedItems, System.Action configureMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.InMemoryExporterMetricsExtensions.AddInMemoryExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Collections.Generic.ICollection exportedItems) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.InMemoryExporterMetricsExtensions.AddInMemoryExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Collections.Generic.ICollection exportedItems, System.Action configureMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.InMemoryExporterMetricsExtensions.AddInMemoryExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Collections.Generic.ICollection exportedItems) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.InMemoryExporterMetricsExtensions.AddInMemoryExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Collections.Generic.ICollection exportedItems, System.Action configureMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Trace.InMemoryExporterHelperExtensions.AddInMemoryExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder, System.Collections.Generic.ICollection exportedItems) -> OpenTelemetry.Trace.TracerProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.InMemory/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.InMemory/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..7a5d8b22a6c
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,41 @@
+OpenTelemetry.Exporter.OtlpExporterOptions
+OpenTelemetry.Exporter.OtlpExporterOptions.BatchExportProcessorOptions.get -> OpenTelemetry.BatchExportProcessorOptions
+OpenTelemetry.Exporter.OtlpExporterOptions.BatchExportProcessorOptions.set -> void
+OpenTelemetry.Exporter.OtlpExporterOptions.Endpoint.get -> System.Uri
+OpenTelemetry.Exporter.OtlpExporterOptions.Endpoint.set -> void
+OpenTelemetry.Exporter.OtlpExporterOptions.ExportProcessorType.get -> OpenTelemetry.ExportProcessorType
+OpenTelemetry.Exporter.OtlpExporterOptions.ExportProcessorType.set -> void
+OpenTelemetry.Exporter.OtlpExporterOptions.Headers.get -> string
+OpenTelemetry.Exporter.OtlpExporterOptions.Headers.set -> void
+OpenTelemetry.Exporter.OtlpExporterOptions.HttpClientFactory.get -> System.Func
+OpenTelemetry.Exporter.OtlpExporterOptions.HttpClientFactory.set -> void
+OpenTelemetry.Exporter.OtlpExporterOptions.OtlpExporterOptions() -> void
+OpenTelemetry.Exporter.OtlpExporterOptions.Protocol.get -> OpenTelemetry.Exporter.OtlpExportProtocol
+OpenTelemetry.Exporter.OtlpExporterOptions.Protocol.set -> void
+OpenTelemetry.Exporter.OtlpExporterOptions.TimeoutMilliseconds.get -> int
+OpenTelemetry.Exporter.OtlpExporterOptions.TimeoutMilliseconds.set -> void
+OpenTelemetry.Exporter.OtlpExportProtocol
+OpenTelemetry.Exporter.OtlpExportProtocol.Grpc = 0 -> OpenTelemetry.Exporter.OtlpExportProtocol
+OpenTelemetry.Exporter.OtlpExportProtocol.HttpProtobuf = 1 -> OpenTelemetry.Exporter.OtlpExportProtocol
+OpenTelemetry.Exporter.OtlpMetricExporter
+OpenTelemetry.Exporter.OtlpMetricExporter.OtlpMetricExporter(OpenTelemetry.Exporter.OtlpExporterOptions options) -> void
+OpenTelemetry.Exporter.OtlpTraceExporter
+OpenTelemetry.Exporter.OtlpTraceExporter.OtlpTraceExporter(OpenTelemetry.Exporter.OtlpExporterOptions options) -> void
+OpenTelemetry.Logs.OtlpLogExporterHelperExtensions
+OpenTelemetry.Metrics.OtlpMetricExporterExtensions
+OpenTelemetry.Trace.OtlpTraceExporterHelperExtensions
+override OpenTelemetry.Exporter.OtlpMetricExporter.Export(in OpenTelemetry.Batch metrics) -> OpenTelemetry.ExportResult
+override OpenTelemetry.Exporter.OtlpMetricExporter.OnShutdown(int timeoutMilliseconds) -> bool
+override OpenTelemetry.Exporter.OtlpTraceExporter.Export(in OpenTelemetry.Batch activityBatch) -> OpenTelemetry.ExportResult
+override OpenTelemetry.Exporter.OtlpTraceExporter.OnShutdown(int timeoutMilliseconds) -> bool
+static OpenTelemetry.Logs.OtlpLogExporterHelperExtensions.AddOtlpExporter(this OpenTelemetry.Logs.OpenTelemetryLoggerOptions loggerOptions) -> OpenTelemetry.Logs.OpenTelemetryLoggerOptions
+static OpenTelemetry.Logs.OtlpLogExporterHelperExtensions.AddOtlpExporter(this OpenTelemetry.Logs.OpenTelemetryLoggerOptions loggerOptions, System.Action configureExporterAndProcessor) -> OpenTelemetry.Logs.OpenTelemetryLoggerOptions
+static OpenTelemetry.Logs.OtlpLogExporterHelperExtensions.AddOtlpExporter(this OpenTelemetry.Logs.OpenTelemetryLoggerOptions loggerOptions, System.Action configure) -> OpenTelemetry.Logs.OpenTelemetryLoggerOptions
+static OpenTelemetry.Metrics.OtlpMetricExporterExtensions.AddOtlpExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.OtlpMetricExporterExtensions.AddOtlpExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Action configureExporterAndMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.OtlpMetricExporterExtensions.AddOtlpExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Action configureExporter) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.OtlpMetricExporterExtensions.AddOtlpExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Action configureExporterAndMetricReader) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.OtlpMetricExporterExtensions.AddOtlpExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Action configureExporter) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Trace.OtlpTraceExporterHelperExtensions.AddOtlpExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.OtlpTraceExporterHelperExtensions.AddOtlpExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder, string name, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.OtlpTraceExporterHelperExtensions.AddOtlpExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/OpenTelemetry.Exporter.OpenTelemetryProtocol.csproj b/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/OpenTelemetry.Exporter.OpenTelemetryProtocol.csproj
index 54a0f27217b..a37fd0c0cdf 100644
--- a/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/OpenTelemetry.Exporter.OpenTelemetryProtocol.csproj
+++ b/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/OpenTelemetry.Exporter.OpenTelemetryProtocol.csproj
@@ -15,7 +15,7 @@
-
+
diff --git a/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/.publicApi/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/.publicApi/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/.publicApi/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/.publicApi/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..0dd120b12da
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/.publicApi/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,19 @@
+Microsoft.AspNetCore.Builder.PrometheusExporterApplicationBuilderExtensions
+Microsoft.AspNetCore.Builder.PrometheusExporterEndpointRouteBuilderExtensions
+OpenTelemetry.Exporter.PrometheusAspNetCoreOptions
+OpenTelemetry.Exporter.PrometheusAspNetCoreOptions.PrometheusAspNetCoreOptions() -> void
+OpenTelemetry.Exporter.PrometheusAspNetCoreOptions.ScrapeEndpointPath.get -> string
+OpenTelemetry.Exporter.PrometheusAspNetCoreOptions.ScrapeEndpointPath.set -> void
+OpenTelemetry.Exporter.PrometheusAspNetCoreOptions.ScrapeResponseCacheDurationMilliseconds.get -> int
+OpenTelemetry.Exporter.PrometheusAspNetCoreOptions.ScrapeResponseCacheDurationMilliseconds.set -> void
+OpenTelemetry.Metrics.PrometheusExporterMeterProviderBuilderExtensions
+static Microsoft.AspNetCore.Builder.PrometheusExporterApplicationBuilderExtensions.UseOpenTelemetryPrometheusScrapingEndpoint(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
+static Microsoft.AspNetCore.Builder.PrometheusExporterApplicationBuilderExtensions.UseOpenTelemetryPrometheusScrapingEndpoint(this Microsoft.AspNetCore.Builder.IApplicationBuilder app, OpenTelemetry.Metrics.MeterProvider meterProvider, System.Func predicate, string path, System.Action configureBranchedPipeline, string optionsName) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
+static Microsoft.AspNetCore.Builder.PrometheusExporterApplicationBuilderExtensions.UseOpenTelemetryPrometheusScrapingEndpoint(this Microsoft.AspNetCore.Builder.IApplicationBuilder app, string path) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
+static Microsoft.AspNetCore.Builder.PrometheusExporterApplicationBuilderExtensions.UseOpenTelemetryPrometheusScrapingEndpoint(this Microsoft.AspNetCore.Builder.IApplicationBuilder app, System.Func predicate) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
+static Microsoft.AspNetCore.Builder.PrometheusExporterEndpointRouteBuilderExtensions.MapPrometheusScrapingEndpoint(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder endpoints) -> Microsoft.AspNetCore.Builder.IEndpointConventionBuilder
+static Microsoft.AspNetCore.Builder.PrometheusExporterEndpointRouteBuilderExtensions.MapPrometheusScrapingEndpoint(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder endpoints, string path) -> Microsoft.AspNetCore.Builder.IEndpointConventionBuilder
+static Microsoft.AspNetCore.Builder.PrometheusExporterEndpointRouteBuilderExtensions.MapPrometheusScrapingEndpoint(this Microsoft.AspNetCore.Routing.IEndpointRouteBuilder endpoints, string path, OpenTelemetry.Metrics.MeterProvider meterProvider, System.Action configureBranchedPipeline, string optionsName) -> Microsoft.AspNetCore.Builder.IEndpointConventionBuilder
+static OpenTelemetry.Metrics.PrometheusExporterMeterProviderBuilderExtensions.AddPrometheusExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.PrometheusExporterMeterProviderBuilderExtensions.AddPrometheusExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Action configure) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.PrometheusExporterMeterProviderBuilderExtensions.AddPrometheusExporter(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Action configure) -> OpenTelemetry.Metrics.MeterProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/PrometheusExporterMiddleware.cs b/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/PrometheusExporterMiddleware.cs
index f16ebeb5b1b..bfbb178783a 100644
--- a/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/PrometheusExporterMiddleware.cs
+++ b/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/PrometheusExporterMiddleware.cs
@@ -70,7 +70,11 @@ public async Task InvokeAsync(HttpContext httpContext)
if (collectionResponse.View.Count > 0)
{
response.StatusCode = 200;
+#if NET8_0_OR_GREATER
+ response.Headers.Append("Last-Modified", collectionResponse.GeneratedAtUtc.ToString("R"));
+#else
response.Headers.Add("Last-Modified", collectionResponse.GeneratedAtUtc.ToString("R"));
+#endif
response.ContentType = "text/plain; charset=utf-8; version=0.0.4";
await response.Body.WriteAsync(collectionResponse.View.Array, 0, collectionResponse.View.Count).ConfigureAwait(false);
diff --git a/src/OpenTelemetry.Exporter.Prometheus.HttpListener/.publicApi/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Exporter.Prometheus.HttpListener/.publicApi/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Exporter.Prometheus.HttpListener/.publicApi/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.Prometheus.HttpListener/.publicApi/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..9bc2e72461d
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.Prometheus.HttpListener/.publicApi/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,10 @@
+OpenTelemetry.Exporter.PrometheusHttpListenerOptions
+OpenTelemetry.Exporter.PrometheusHttpListenerOptions.UriPrefixes.get -> System.Collections.Generic.IReadOnlyCollection
+OpenTelemetry.Exporter.PrometheusHttpListenerOptions.UriPrefixes.set -> void
+OpenTelemetry.Exporter.PrometheusHttpListenerOptions.PrometheusHttpListenerOptions() -> void
+OpenTelemetry.Exporter.PrometheusHttpListenerOptions.ScrapeEndpointPath.get -> string
+OpenTelemetry.Exporter.PrometheusHttpListenerOptions.ScrapeEndpointPath.set -> void
+OpenTelemetry.Metrics.PrometheusHttpListenerMeterProviderBuilderExtensions
+static OpenTelemetry.Metrics.PrometheusHttpListenerMeterProviderBuilderExtensions.AddPrometheusHttpListener(this OpenTelemetry.Metrics.MeterProviderBuilder builder) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.PrometheusHttpListenerMeterProviderBuilderExtensions.AddPrometheusHttpListener(this OpenTelemetry.Metrics.MeterProviderBuilder builder, string name, System.Action configure) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Metrics.PrometheusHttpListenerMeterProviderBuilderExtensions.AddPrometheusHttpListener(this OpenTelemetry.Metrics.MeterProviderBuilder builder, System.Action configure) -> OpenTelemetry.Metrics.MeterProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.Zipkin/.publicApi/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Exporter.Zipkin/.publicApi/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..9e2e613e196
--- /dev/null
+++ b/src/OpenTelemetry.Exporter.Zipkin/.publicApi/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,21 @@
+OpenTelemetry.Exporter.ZipkinExporter
+OpenTelemetry.Exporter.ZipkinExporter.ZipkinExporter(OpenTelemetry.Exporter.ZipkinExporterOptions options, System.Net.Http.HttpClient client = null) -> void
+OpenTelemetry.Exporter.ZipkinExporterOptions
+OpenTelemetry.Exporter.ZipkinExporterOptions.BatchExportProcessorOptions.get -> OpenTelemetry.BatchExportProcessorOptions
+OpenTelemetry.Exporter.ZipkinExporterOptions.BatchExportProcessorOptions.set -> void
+OpenTelemetry.Exporter.ZipkinExporterOptions.Endpoint.get -> System.Uri
+OpenTelemetry.Exporter.ZipkinExporterOptions.Endpoint.set -> void
+OpenTelemetry.Exporter.ZipkinExporterOptions.ExportProcessorType.get -> OpenTelemetry.ExportProcessorType
+OpenTelemetry.Exporter.ZipkinExporterOptions.ExportProcessorType.set -> void
+OpenTelemetry.Exporter.ZipkinExporterOptions.HttpClientFactory.get -> System.Func
+OpenTelemetry.Exporter.ZipkinExporterOptions.HttpClientFactory.set -> void
+OpenTelemetry.Exporter.ZipkinExporterOptions.MaxPayloadSizeInBytes.get -> int?
+OpenTelemetry.Exporter.ZipkinExporterOptions.MaxPayloadSizeInBytes.set -> void
+OpenTelemetry.Exporter.ZipkinExporterOptions.UseShortTraceIds.get -> bool
+OpenTelemetry.Exporter.ZipkinExporterOptions.UseShortTraceIds.set -> void
+OpenTelemetry.Exporter.ZipkinExporterOptions.ZipkinExporterOptions() -> void
+OpenTelemetry.Trace.ZipkinExporterHelperExtensions
+override OpenTelemetry.Exporter.ZipkinExporter.Export(in OpenTelemetry.Batch batch) -> OpenTelemetry.ExportResult
+static OpenTelemetry.Trace.ZipkinExporterHelperExtensions.AddZipkinExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.ZipkinExporterHelperExtensions.AddZipkinExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder, string name, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.ZipkinExporterHelperExtensions.AddZipkinExporter(this OpenTelemetry.Trace.TracerProviderBuilder builder, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
diff --git a/src/OpenTelemetry.Exporter.Zipkin/.publicApi/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Exporter.Zipkin/.publicApi/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Extensions.Hosting/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Extensions.Hosting/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..8617a4e70a1
--- /dev/null
+++ b/src/OpenTelemetry.Extensions.Hosting/.publicApi/Experimental/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,2 @@
+OpenTelemetry.OpenTelemetryBuilder.WithLogging() -> OpenTelemetry.OpenTelemetryBuilder!
+OpenTelemetry.OpenTelemetryBuilder.WithLogging(System.Action! configure) -> OpenTelemetry.OpenTelemetryBuilder!
diff --git a/src/OpenTelemetry.Extensions.Hosting/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Extensions.Hosting/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..b0f847bf1ea
--- /dev/null
+++ b/src/OpenTelemetry.Extensions.Hosting/.publicApi/Stable/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,10 @@
+#nullable enable
+Microsoft.Extensions.DependencyInjection.OpenTelemetryServicesExtensions
+OpenTelemetry.OpenTelemetryBuilder
+OpenTelemetry.OpenTelemetryBuilder.ConfigureResource(System.Action! configure) -> OpenTelemetry.OpenTelemetryBuilder!
+OpenTelemetry.OpenTelemetryBuilder.Services.get -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
+OpenTelemetry.OpenTelemetryBuilder.WithMetrics() -> OpenTelemetry.OpenTelemetryBuilder!
+OpenTelemetry.OpenTelemetryBuilder.WithMetrics(System.Action! configure) -> OpenTelemetry.OpenTelemetryBuilder!
+OpenTelemetry.OpenTelemetryBuilder.WithTracing() -> OpenTelemetry.OpenTelemetryBuilder!
+OpenTelemetry.OpenTelemetryBuilder.WithTracing(System.Action! configure) -> OpenTelemetry.OpenTelemetryBuilder!
+static Microsoft.Extensions.DependencyInjection.OpenTelemetryServicesExtensions.AddOpenTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services) -> OpenTelemetry.OpenTelemetryBuilder!
diff --git a/src/OpenTelemetry.Extensions.Hosting/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Extensions.Hosting/.publicApi/Stable/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Extensions.Propagators/.publicApi/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Extensions.Propagators/.publicApi/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..eadd932c939
--- /dev/null
+++ b/src/OpenTelemetry.Extensions.Propagators/.publicApi/net8.0/PublicAPI.Shipped.txt
@@ -0,0 +1,11 @@
+OpenTelemetry.Extensions.Propagators.B3Propagator
+OpenTelemetry.Extensions.Propagators.B3Propagator.B3Propagator() -> void
+OpenTelemetry.Extensions.Propagators.B3Propagator.B3Propagator(bool singleHeader) -> void
+OpenTelemetry.Extensions.Propagators.JaegerPropagator
+OpenTelemetry.Extensions.Propagators.JaegerPropagator.JaegerPropagator() -> void
+override OpenTelemetry.Extensions.Propagators.B3Propagator.Extract(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Func> getter) -> OpenTelemetry.Context.Propagation.PropagationContext
+override OpenTelemetry.Extensions.Propagators.B3Propagator.Fields.get -> System.Collections.Generic.ISet
+override OpenTelemetry.Extensions.Propagators.B3Propagator.Inject(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Action setter) -> void
+override OpenTelemetry.Extensions.Propagators.JaegerPropagator.Extract(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Func> getter) -> OpenTelemetry.Context.Propagation.PropagationContext
+override OpenTelemetry.Extensions.Propagators.JaegerPropagator.Fields.get -> System.Collections.Generic.ISet
+override OpenTelemetry.Extensions.Propagators.JaegerPropagator.Inject(OpenTelemetry.Context.Propagation.PropagationContext context, T carrier, System.Action setter) -> void
diff --git a/src/OpenTelemetry.Extensions.Propagators/.publicApi/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Extensions.Propagators/.publicApi/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Instrumentation.GrpcNetClient/.publicApi/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Instrumentation.GrpcNetClient/.publicApi/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Instrumentation.GrpcNetClient/.publicApi/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Instrumentation.GrpcNetClient/.publicApi/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..db708294cc8
--- /dev/null
+++ b/src/OpenTelemetry.Instrumentation.GrpcNetClient/.publicApi/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,12 @@
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions.EnrichWithHttpRequestMessage.get -> System.Action
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions.EnrichWithHttpRequestMessage.set -> void
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions.EnrichWithHttpResponseMessage.get -> System.Action
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions.EnrichWithHttpResponseMessage.set -> void
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions.GrpcClientInstrumentationOptions() -> void
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions.SuppressDownstreamInstrumentation.get -> bool
+OpenTelemetry.Instrumentation.GrpcNetClient.GrpcClientInstrumentationOptions.SuppressDownstreamInstrumentation.set -> void
+OpenTelemetry.Trace.TracerProviderBuilderExtensions
+static OpenTelemetry.Trace.TracerProviderBuilderExtensions.AddGrpcClientInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder builder) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.TracerProviderBuilderExtensions.AddGrpcClientInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder builder, string name, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.TracerProviderBuilderExtensions.AddGrpcClientInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder builder, System.Action configure) -> OpenTelemetry.Trace.TracerProviderBuilder
\ No newline at end of file
diff --git a/src/OpenTelemetry.Instrumentation.Http/.publicApi/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Instrumentation.Http/.publicApi/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Instrumentation.Http/.publicApi/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Instrumentation.Http/.publicApi/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..2dd55551b0c
--- /dev/null
+++ b/src/OpenTelemetry.Instrumentation.Http/.publicApi/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,24 @@
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithException.get -> System.Action
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithException.set -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpRequestMessage.get -> System.Action
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpRequestMessage.set -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpResponseMessage.get -> System.Action
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpResponseMessage.set -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpWebRequest.get -> System.Action
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpWebRequest.set -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpWebResponse.get -> System.Action
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.EnrichWithHttpWebResponse.set -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.FilterHttpRequestMessage.get -> System.Func
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.FilterHttpRequestMessage.set -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.FilterHttpWebRequest.get -> System.Func
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.FilterHttpWebRequest.set -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.HttpClientInstrumentationOptions() -> void
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.RecordException.get -> bool
+OpenTelemetry.Instrumentation.Http.HttpClientInstrumentationOptions.RecordException.set -> void
+OpenTelemetry.Metrics.MeterProviderBuilderExtensions
+OpenTelemetry.Trace.TracerProviderBuilderExtensions
+static OpenTelemetry.Metrics.MeterProviderBuilderExtensions.AddHttpClientInstrumentation(this OpenTelemetry.Metrics.MeterProviderBuilder builder) -> OpenTelemetry.Metrics.MeterProviderBuilder
+static OpenTelemetry.Trace.TracerProviderBuilderExtensions.AddHttpClientInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder builder) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.TracerProviderBuilderExtensions.AddHttpClientInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder builder, string name, System.Action configureHttpClientInstrumentationOptions) -> OpenTelemetry.Trace.TracerProviderBuilder
+static OpenTelemetry.Trace.TracerProviderBuilderExtensions.AddHttpClientInstrumentation(this OpenTelemetry.Trace.TracerProviderBuilder builder, System.Action configureHttpClientInstrumentationOptions) -> OpenTelemetry.Trace.TracerProviderBuilder
diff --git a/src/OpenTelemetry.Instrumentation.SqlClient/.publicApi/net8.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.Instrumentation.SqlClient/.publicApi/net8.0/PublicAPI.Shipped.txt
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/OpenTelemetry.Instrumentation.SqlClient/.publicApi/net8.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.Instrumentation.SqlClient/.publicApi/net8.0/PublicAPI.Unshipped.txt
new file mode 100644
index 00000000000..ee167e8afff
--- /dev/null
+++ b/src/OpenTelemetry.Instrumentation.SqlClient/.publicApi/net8.0/PublicAPI.Unshipped.txt
@@ -0,0 +1,18 @@
+OpenTelemetry.Instrumentation.SqlClient.SqlClientInstrumentationOptions
+OpenTelemetry.Instrumentation.SqlClient.SqlClientInstrumentationOptions.EnableConnectionLevelAttributes.get -> bool
+OpenTelemetry.Instrumentation.SqlClient.SqlClientInstrumentationOptions.EnableConnectionLevelAttributes.set -> void
+OpenTelemetry.Instrumentation.SqlClient.SqlClientInstrumentationOptions.Enrich.get -> System.Action
+OpenTelemetry.Instrumentation.SqlClient.SqlClientInstrumentationOptions.Enrich.set -> void
+OpenTelemetry.Instrumentation.SqlClient.SqlClientInstrumentationOptions.Filter.get -> System.Func