Skip to content

Commit bf9ee2f

Browse files
authored
Document OpenSSL 3.x dependency change for openSUSE/SLES packages (#50895)
1 parent 7799fc0 commit bf9ee2f

File tree

5 files changed

+63
-3
lines changed

5 files changed

+63
-3
lines changed

docs/core/compatibility/8.0.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ If you're migrating an app to .NET 8, the breaking changes listed here might aff
7777
| ----------------------------------------------------------------------- | ----------------- |
7878
| [Host determines RID-specific assets](deployment/8.0/rid-asset-list.md) | Binary incompatible/behavioral change |
7979
| [.NET Monitor only includes distroless images](deployment/8.0/monitor-image.md) | Behavioral change |
80+
| [.NET packages for openSUSE and SLES depend on OpenSSL 3.x](deployment/8.0/opensuse-sles-openssl3-dependency.md) | Behavioral change |
8081
| [StripSymbols defaults to true](deployment/8.0/stripsymbols-default.md) | Behavioral change |
8182

8283
## Entity Framework Core
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
---
2+
title: "Breaking change: .NET packages for openSUSE and SLES depend on OpenSSL 3.x"
3+
description: "Learn about the breaking change in .NET 8 where .NET packages for openSUSE and SLES distributions now depend on OpenSSL 3.x instead of OpenSSL 1.x."
4+
ms.date: 01/05/2026
5+
ms.custom: https://github.com/dotnet/runtime/issues/122653
6+
ai-usage: ai-assisted
7+
---
8+
# .NET packages for openSUSE and SLES depend on OpenSSL 3.x
9+
10+
The dependency requirements for .NET packages on openSUSE and SUSE Enterprise Linux Server (SLES) distributions have been updated to depend on OpenSSL 3.x instead of OpenSSL 1.x. This change applies to .NET 6, 7, 8, and later versions installed via package managers on these distributions.
11+
12+
## Version introduced
13+
14+
.NET 8 (also applies to .NET 6 and .NET 7)
15+
16+
## Previous behavior
17+
18+
Previously, .NET packages for openSUSE and SLES distributions specified OpenSSL 1.x as a package dependency. When you installed .NET via the package manager, the system required OpenSSL 1.x libraries to be present.
19+
20+
## New behavior
21+
22+
Starting in .NET 8, .NET packages for openSUSE and SLES distributions specify OpenSSL 3.x as a package dependency. When you install .NET via the package manager, the system requires OpenSSL 3.x libraries to be present. This change has also been applied to .NET 6 and .NET 7 packages.
23+
24+
## Type of breaking change
25+
26+
This change is a [behavioral change](../../categories.md#behavioral-change).
27+
28+
## Reason for change
29+
30+
Some newer versions of openSUSE and SLES distributions no longer offer OpenSSL 1.x in their package repositories, which broke the dependency requirements for .NET packages. Since .NET 6 and later versions already support OpenSSL 3.x at runtime, updating the package dependencies to require OpenSSL 3.x instead of 1.x resolves installation issues on these newer distributions.
31+
32+
For more information, see [dotnet/runtime#122443](https://github.com/dotnet/runtime/issues/122443).
33+
34+
## Recommended action
35+
36+
Most users don't need to take any action. The package manager automatically installs the correct OpenSSL 3.x dependencies when you install or update .NET packages.
37+
38+
However, if your system has both OpenSSL 1.x and OpenSSL 3.x installed, and this change causes issues with other software on your system, you might need to:
39+
40+
- Adjust your system configuration to accommodate both versions.
41+
- Update other software that depends on OpenSSL 1.x to use OpenSSL 3.x.
42+
- Stop installing .NET via packages and use an alternative installation method, such as manual installation from tarballs.
43+
44+
If you encounter issues, consult your distribution's documentation for managing multiple OpenSSL versions.
45+
46+
## Affected APIs
47+
48+
None.
49+
50+
## See also
51+
52+
- [dotnet/runtime#122443](https://github.com/dotnet/runtime/issues/122443)
53+
- [dotnet/runtime#122653](https://github.com/dotnet/runtime/issues/122653)

docs/core/compatibility/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -460,6 +460,8 @@ items:
460460
href: deployment/8.0/rid-asset-list.md
461461
- name: .NET Monitor only includes distroless images
462462
href: deployment/8.0/monitor-image.md
463+
- name: .NET packages for openSUSE and SLES depend on OpenSSL 3.x
464+
href: deployment/8.0/opensuse-sles-openssl3-dependency.md
463465
- name: StripSymbols defaults to true
464466
href: deployment/8.0/stripsymbols-default.md
465467
- name: Entity Framework Core

docs/core/install/linux-opensuse.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,10 @@ When you install with a package manager, these libraries are installed for you.
122122

123123
- krb5
124124
- libicu
125-
- libopenssl1_1
125+
- libopenssl3 (OpenSSL 3.x)
126+
127+
> [!IMPORTANT]
128+
> Starting with .NET 8, .NET packages for openSUSE depend on OpenSSL 3.x (libopenssl3). This change also applies to .NET 6 and .NET 7 packages. For more information, see [.NET packages for openSUSE and SLES depend on OpenSSL 3.x](../compatibility/deployment/8.0/opensuse-sles-openssl3-dependency.md).
126129
127130
Dependencies can be installed with the `zypper install` command. The following snippet demonstrates installing the `krb5` library:
128131

docs/core/install/linux-sles.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,10 @@ When you install with a package manager, these libraries are installed for you.
121121

122122
- krb5
123123
- libicu
124-
- libopenssl1_1
124+
- libopenssl3 (OpenSSL 3.x)
125125

126-
If the target runtime environment's OpenSSL version is 1.1 or newer, install the `compat-openssl10` package.
126+
> [!IMPORTANT]
127+
> Starting with .NET 8, .NET packages for SLES depend on OpenSSL 3.x (libopenssl3). This change also applies to .NET 6 and .NET 7 packages. For more information, see [.NET packages for openSUSE and SLES depend on OpenSSL 3.x](../compatibility/deployment/8.0/opensuse-sles-openssl3-dependency.md).
127128
128129
Dependencies can be installed with the `zypper install` command. The following snippet demonstrates installing the `krb5` library:
129130

0 commit comments

Comments
 (0)