rocketmq-clients
rocketmq-clients copied to clipboard
RocketMQ.Client 5.2.0-rc1 依赖的 OpenTelemetry.Api 版本太旧,无法支持 System.Diagnostics.DiagnosticSource 8.0+
Programming Language of the Client
C#
Is Your Feature Request Related to a Problem?
你好!
我们正在做一个基于 .NET 8/9 的消息系统二开,项目里广泛使用 Microsoft.Extensions.* 8.0+,因此依赖 System.Diagnostics.DiagnosticSource >= 8.0.0。当我们引用 RocketMQ.Client 5.2.0-rc1 时,NuGet 还原会报 NU1107 版本冲突:
- 自身代码 -> Microsoft.Extensions.Hosting.Abstractions 8.0.0 -> Microsoft.Extensions.Diagnostics.Abstractions 8.0.0 -> System.Diagnostics.DiagnosticSource (>= 8.0.0)
- 自身代码 -> RocketMQ.Client 5.2.0-rc1 -> OpenTelemetry.Api 1.3.1 -> System.Diagnostics.DiagnosticSource (>= 6.0.0 && < 8.0.0)
因为 RocketMQ.Client 固定依赖 OpenTelemetry.Api 1.3.1,DiagnosticSource 被限制在 <8.0,导致无法在任何 .NET 8+ 项目中编译通过。能否发布一个升级版(比如提升 OpenTelemetry.Api 的依赖),以允许 DiagnosticSource 8.0+?这样我们在新的 .NET 平台上集成 RocketMQ 才不会被阻塞。
环境:
- RocketMQ.Client 5.2.0-rc1
- .NET SDK 9.0 Preview / TargetFramework net8.0+
- 使用 Central Package Management,默认 DiagnosticSource 版本 8.0.1
感谢!
Describe the Solution You'd Like
希望 RocketMQ.Client 升级依赖的 OpenTelemetry.Api(以及相关链路),使 System.Diagnostics.DiagnosticSource 不再被限制在 < 8.0,从而可以在 .NET 8/9 项目中直接引用。
Describe Alternatives You've Considered
尝试在我们的项目里把 DiagnosticSource 降到 7.x,但 Microsoft.Extensions.* 8.0+ 明确要求 >=8.0;也尝试直接覆盖包版本或使用 VersionOverride,都被 NuGet 拒绝。因此目前只能等待 SDK 更新。
Additional Context
- RocketMQ.Client 5.2.0-rc1
- .NET SDK 9.0 Preview + net8.0 目标框架
- Central Package Management 默认 System.Diagnostics.DiagnosticSource 8.0.1
- 还原时报 NU1107:
- 项目 -> Microsoft.Extensions.Hosting.Abstractions 8.0.0 -> System.Diagnostics.DiagnosticSource (>=8.0.0)
- 项目 -> RocketMQ.Client 5.2.0-rc1 -> OpenTelemetry.Api 1.3.1 -> System.Diagnostics.DiagnosticSource (>=6.0.0 && <8.0.0)