Skip to content

Bump 3x vulnerable dependencies; drop net60#1688

Merged
bart-vmware merged 10 commits into
3.xfrom
bump-3x-vulnerable-dependencies
May 1, 2026
Merged

Bump 3x vulnerable dependencies; drop net60#1688
bart-vmware merged 10 commits into
3.xfrom
bump-3x-vulnerable-dependencies

Conversation

@bart-vmware
Copy link
Copy Markdown
Member

@bart-vmware bart-vmware commented May 1, 2026

Summary

This PR for Steeltoe 3.x:

  • Addresses vulnerable dependency chains, notably OpenTelemetry and KubernetesClient.
  • Drops support for .NET 6 and adds .NET 8 support for Integration/Messaging/Stream.
  • Consolidates Microsoft/System package versions on the 8.x line to reduce restore conflicts and improve the security posture of transitive dependencies.
  • Libraries that previously targeted netstandard2.0 only now multi-target net8.0, providing the richer APIs of dependencies to consumers.

Consumer impact

Target frameworks

Applications on .NET 6 should move to .NET 8 or remain on an earlier Steeltoe release.

Kubernetes packages

Steeltoe.Common.Kubernetes, Steeltoe.Extensions.Configuration.KubernetesBase, and Steeltoe.Discovery.Kubernetes previously shipped for netstandard2.0 and netstandard2.1. They now target net8.0 only.

Rationale: No non-vulnerable version of KubernetesClient exists that is compatible with netstandard.

Effect: Apps that rely on netstandard-only Kubernetes packages from .NET Framework, older .NET Core, or similar need to run on .NET 8, or continue using an older Steeltoe release.

Messaging, integration, and stream

Steeltoe.Integration, Steeltoe.Messaging, and Steeltoe.Stream are now supported on .NET 8.

OpenTelemetry and tracing

Management tracing packages move to the OpenTelemetry 1.15.x line, with matching instrumentation package versions where applicable.

Rationale: remain on supported, patched OpenTelemetry releases.

Supply chain and NuGet audit

Where audits flagged issues, selected transitive packages are pinned to patched versions (for example System.Net.Http, System.Text.RegularExpressions, and System.Security.Cryptography.Xml in the affected projects).


Suggested upgrade checklist

  1. Retarget applications from net6.0 to net8.0, or stay on a prior Steeltoe release.
  2. If Kubernetes configuration or discovery relied on netstandard-only packages on older runtimes, plan a move to .NET 8 for those workloads.
  3. Align direct OpenTelemetry references with the 1.15.x line if your application manages those packages explicitly.
  4. Regression-test Kubernetes configuration, secrets, and discovery after the KubernetesClient major version upgrade.
  5. Run dotnet list package --vulnerable or the organization’s equivalent after upgrading Steeltoe.

Quality checklist

  • Your code complies with our Coding Style.
  • You've updated unit and/or integration tests for your change, where applicable.
  • You've updated documentation for your change, where applicable.
    If your change affects other repositories, such as Documentation, Samples and/or MainSite, add linked PRs here.
  • There's an open issue for the PR that you are making. If you'd like to propose a new feature or change, please open an issue to discuss the change or find an existing issue.
  • You've added required license files and/or file headers (explaining where the code came from with proper attribution), where code is copied from StackOverflow, a blog, or OSS.

The following projects now target net8.0 instead of netstandard:
- Steeltoe.Management.OpenTelemetryBase
- Steeltoe.Management.TracingBase
- Steeltoe.Management.EndpointBase.csproj

This was done because OpenTelemetry packages on netstandard depend on 10.0 assemblies from System/Microsoft libraries
… avoid versioning conflicts and clean up leftovers from the time when netstandard matched netcore3.1
…guration.KubernetesBase, and Discovery.Kubernetes to net8.0 only, because there no non-vulnerable version of KubernetesClient exists that targets netstandard
…ce of third-party dependencies in downstream dependencies that target net8.0
@bart-vmware bart-vmware added the ReleaseLine/3.x Identified as a feature/fix for the 3.x release line label May 1, 2026
@bart-vmware bart-vmware added this to the 3.4.0 milestone May 1, 2026
@bart-vmware bart-vmware marked this pull request as ready for review May 1, 2026 02:25
@bart-vmware bart-vmware requested a review from TimHess May 1, 2026 02:26
@bart-vmware bart-vmware force-pushed the bump-3x-vulnerable-dependencies branch from 9d7d870 to 5b56608 Compare May 1, 2026 02:27
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 1, 2026

Comment thread .github/workflows/package.yml
Comment thread versions.props
Comment thread versions.props
Comment thread build/templates/component-build.yaml
@bart-vmware bart-vmware merged commit 6d8eeff into 3.x May 1, 2026
37 checks passed
@bart-vmware bart-vmware deleted the bump-3x-vulnerable-dependencies branch May 1, 2026 16:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ReleaseLine/3.x Identified as a feature/fix for the 3.x release line

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants