From 56cdd4fe5cfcde92c8c172c737cef3b4b4e355d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Kie=C5=82kowicz?= Date: Thu, 18 Jan 2024 11:03:34 +0100 Subject: [PATCH] Release 1.3.0 (#3237) * Release 1.3.0 * Fix ignoring condition in SqlClientMicrosoftTests for 3.1.* SQL package --- CHANGELOG.md | 21 +++++++++++++++---- docs/README.md | 10 ++++----- docs/troubleshooting.md | 2 +- docs/using-the-nuget-packages.md | 2 +- .../.publicApi/net462/PublicAPI.Shipped.txt | 14 ++++++++++--- .../.publicApi/net462/PublicAPI.Unshipped.txt | 12 ----------- .../.publicApi/net6.0/PublicAPI.Shipped.txt | 12 +++++++++-- .../.publicApi/net6.0/PublicAPI.Unshipped.txt | 12 ----------- .../SqlClientMicrosoftTests.cs | 4 ++-- 9 files changed, 47 insertions(+), 42 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4e6a8e3b7..58bf583e1a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,21 @@ All notable changes to this component are documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). This component adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/compare/v1.2.0..HEAD) +## [Unreleased](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/compare/v1.3.0..HEAD) + +### Added + +### Changed + +#### Dependency updates + +### Deprecated + +### Removed + +### Fixed + +## [1.3.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/tag/v1.3.0) - [Core components](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/VERSIONING.md#core-components): [`1.7.0`](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.7.0) @@ -16,6 +30,8 @@ This component adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.h - Support for Host, Process, and Process Runtime resource detectors. - Support for `OpenTelemetry.Instrumentation.AspNet.AspNetMetricsInstrumentationOptions` for plugins. +- Support for [Confluent.Kafka](https://www.nuget.org/packages/Confluent.Kafka) + traces instrumentation from 1.4.0 to 3.0.0 (excluding). ### Changed @@ -65,8 +81,6 @@ This component adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.h - `OpenTelemetry.Instrumentation.AspNet` from `1.6.0-beta.2` to `1.7.0-beta.1`, - `System.Text.Json` from `8.0.0` to `8.0.1`. -### Deprecated - ### Removed Removed support for `Microsoft.Extensions.Logging` @@ -88,7 +102,6 @@ for `ILOGGER` for versions older than `8.0.0`. - Added support for [System.Data.SqlClient](https://www.nuget.org/packages/System.Data.SqlClient/) (NuGet package) traces instrumentation from `4.8.5`. - Ability to update installation via PS module (`OpenTelemetry.DotNet.Auto.psm1`). -- Added support for `KAFKA` traces instrumentation. ### Changed diff --git a/docs/README.md b/docs/README.md index d5a999a098..72de9a6655 100644 --- a/docs/README.md +++ b/docs/README.md @@ -12,9 +12,9 @@ to .NET applications without having to modify their source code. > [!WARNING] > The following documentation refers to the in-development version of OpenTelemetry .NET Automatic Instrumentation. Docs for the latest version -([1.2.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/latest)) +([1.3.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/latest)) can be found in [opentelemetry.io](https://github.com/open-telemetry/opentelemetry.io/tree/main/content/en/docs/languages/net/automatic) -or [here](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/blob/v1.2.0/docs/README.md). +or [here](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/blob/v1.3.0/docs/README.md). --- @@ -164,7 +164,7 @@ Example usage: ```sh # Download the bash script -curl -sSfL https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/download/v1.2.0/otel-dotnet-auto-install.sh -O +curl -sSfL https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/download/v1.3.0/otel-dotnet-auto-install.sh -O # Install core files sh ./otel-dotnet-auto-install.sh @@ -187,7 +187,7 @@ uses environment variables as parameters: | `OTEL_DOTNET_AUTO_HOME` | Location where binaries are to be installed | No | `$HOME/.otel-dotnet-auto` | | `OS_TYPE` | Possible values: `linux-glibc`, `linux-musl`, `macos`, `windows` | No | *Calculated* | | `TMPDIR` | Temporary directory used when downloading the files | No | `$(mktemp -d)` | -| `VERSION` | Version to download | No | `1.2.0` | +| `VERSION` | Version to download | No | `1.3.0` | [instrument.sh](../instrument.sh) script uses environment variables as parameters: @@ -206,7 +206,7 @@ Example usage (run as administrator): ```powershell # Download the module -$module_url = "https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/download/v1.2.0/OpenTelemetry.DotNet.Auto.psm1" +$module_url = "https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/download/v1.3.0/OpenTelemetry.DotNet.Auto.psm1" $download_path = Join-Path $env:temp "OpenTelemetry.DotNet.Auto.psm1" Invoke-WebRequest -Uri $module_url -OutFile $download_path -UseBasicParsing diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md index bd3f3a5b82..16df9af91c 100644 --- a/docs/troubleshooting.md +++ b/docs/troubleshooting.md @@ -62,7 +62,7 @@ When adding the NuGet packages to your project you get an error message similar to: ```txt -Could not install package 'OpenTelemetry.AutoInstrumentation.Runtime.Native 1.2.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.7.2', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author. +Could not install package 'OpenTelemetry.AutoInstrumentation.Runtime.Native 1.3.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.7.2', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author. ``` #### Solution diff --git a/docs/using-the-nuget-packages.md b/docs/using-the-nuget-packages.md index c79a73fd17..3c3cf80def 100644 --- a/docs/using-the-nuget-packages.md +++ b/docs/using-the-nuget-packages.md @@ -40,7 +40,7 @@ you to either add the missing instrumentation package or to skip the instrumentation of the corresponding package: ```terminal -~packages/opentelemetry.autoinstrumentation.buildtasks/1.2.0/build/OpenTelemetry.AutoInstrumentation.BuildTasks.targets(29,5): error : OpenTelemetry.AutoInstrumentation: add a reference to the instrumentation package 'MongoDB.Driver.Core.Extensions.DiagnosticSources' version 1.3.0 or add 'MongoDB.Driver.Core' to the property 'SkippedInstrumentations' to suppress this error. +~packages/opentelemetry.autoinstrumentation.buildtasks/1.3.0/build/OpenTelemetry.AutoInstrumentation.BuildTasks.targets(29,5): error : OpenTelemetry.AutoInstrumentation: add a reference to the instrumentation package 'MongoDB.Driver.Core.Extensions.DiagnosticSources' version 1.3.0 or add 'MongoDB.Driver.Core' to the property 'SkippedInstrumentations' to suppress this error. ``` To resolve the error either add the recommended instrumentation package or skip diff --git a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Shipped.txt b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Shipped.txt index 465b28b529..7da0dcdf12 100644 --- a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Shipped.txt +++ b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Shipped.txt @@ -10,18 +10,26 @@ OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.Activity.get -> System.Diagnostics.Activity? OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState() -> void OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity! activity) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity! activity, object! state, System.DateTimeOffset? startTime) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object! state) -> void +OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state) -> void +OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state, System.DateTimeOffset? startTime) -> void +OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.StartTime.get -> System.DateTimeOffset? OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.State.get -> object? OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType.Instance.get -> object! OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType.ToString() -> string! OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType.Type.get -> System.Type! OpenTelemetry.AutoInstrumentation.Instrumentations.AspNet.HttpModuleIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerCloseIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConstructorIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConsumeSyncIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerDisposeIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerDeliveryHandlerActionIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceAsyncIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceSyncIntegration OpenTelemetry.AutoInstrumentation.Instrumentations.MongoDB.MongoClientIntegration OpenTelemetry.AutoInstrumentation.Instrumentations.NServiceBus.EndpointConfigurationIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Wcf.Service.ServiceHostIntegration OpenTelemetry.AutoInstrumentation.Instrumentations.Wcf.Client.WcfClientIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Wcf.Service.ServiceHostIntegration override OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetReturn.ToString() -> string! override OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.ToString() -> string! static OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetInvoker.BeginMethod(TTarget instance, ref TArg1 arg1, ref TArg2 arg2, ref TArg3 arg3, ref TArg4 arg4, ref TArg5 arg5, ref TArg6 arg6, ref TArg7 arg7, ref TArg8 arg8) -> OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState diff --git a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Unshipped.txt b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Unshipped.txt index 2734ea7abb..e69de29bb2 100644 --- a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Unshipped.txt +++ b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net462/PublicAPI.Unshipped.txt @@ -1,12 +0,0 @@ -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state, System.DateTimeOffset? startTime) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.StartTime.get -> System.DateTimeOffset? -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerCloseIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConstructorIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConsumeSyncIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerDisposeIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerDeliveryHandlerActionIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceAsyncIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceSyncIntegration -*REMOVED*OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object! state) -> void -*REMOVED*OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity! activity, object! state, System.DateTimeOffset? startTime) -> void \ No newline at end of file diff --git a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Shipped.txt b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Shipped.txt index 0cb6ba766e..9a09a3b48a 100644 --- a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Shipped.txt +++ b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Shipped.txt @@ -10,13 +10,21 @@ OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.Activity.get -> System.Diagnostics.Activity? OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState() -> void OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity! activity) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity! activity, object! state, System.DateTimeOffset? startTime) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object! state) -> void +OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state) -> void +OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state, System.DateTimeOffset? startTime) -> void +OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.StartTime.get -> System.DateTimeOffset? OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.State.get -> object? OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType.Instance.get -> object! OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType.ToString() -> string! OpenTelemetry.AutoInstrumentation.DuckTyping.IDuckType.Type.get -> System.Type! +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerCloseIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConstructorIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConsumeSyncIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerDisposeIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerDeliveryHandlerActionIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceAsyncIntegration +OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceSyncIntegration OpenTelemetry.AutoInstrumentation.Instrumentations.Logger.LoggingBuilderIntegration OpenTelemetry.AutoInstrumentation.Instrumentations.MongoDB.MongoClientIntegration OpenTelemetry.AutoInstrumentation.Instrumentations.NServiceBus.EndpointConfigurationIntegration diff --git a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Unshipped.txt b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Unshipped.txt index 2734ea7abb..e69de29bb2 100644 --- a/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Unshipped.txt +++ b/src/OpenTelemetry.AutoInstrumentation/.publicApi/net6.0/PublicAPI.Unshipped.txt @@ -1,12 +0,0 @@ -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object? state, System.DateTimeOffset? startTime) -> void -OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.StartTime.get -> System.DateTimeOffset? -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerCloseIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConstructorIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerConsumeSyncIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ConsumerDisposeIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerDeliveryHandlerActionIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceAsyncIntegration -OpenTelemetry.AutoInstrumentation.Instrumentations.Kafka.Integrations.ProducerProduceSyncIntegration -*REMOVED*OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity? activity, object! state) -> void -*REMOVED*OpenTelemetry.AutoInstrumentation.CallTarget.CallTargetState.CallTargetState(System.Diagnostics.Activity! activity, object! state, System.DateTimeOffset? startTime) -> void \ No newline at end of file diff --git a/test/IntegrationTests/SqlClientMicrosoftTests.cs b/test/IntegrationTests/SqlClientMicrosoftTests.cs index 109d9e2918..3427de7985 100644 --- a/test/IntegrationTests/SqlClientMicrosoftTests.cs +++ b/test/IntegrationTests/SqlClientMicrosoftTests.cs @@ -20,8 +20,8 @@ public SqlClientMicrosoftTests(ITestOutputHelper output, SqlServerFixture sqlSer public static IEnumerable GetData() { #if NETFRAMEWORK - // 3.1.2 is not supported on .NET Framework. For details check: https://github.com/open-telemetry/opentelemetry-dotnet/issues/4243 - return LibraryVersion.SqlClientMicrosoft.Where(x => x.First().ToString() != "3.1.2"); + // 3.1.* is not supported on .NET Framework. For details check: https://github.com/open-telemetry/opentelemetry-dotnet/issues/4243 + return LibraryVersion.SqlClientMicrosoft.Where(x => !x.First().ToString().StartsWith("3.1.")); #else return LibraryVersion.SqlClientMicrosoft; #endif