Fix linter errors in repo (#9689)

* Fix linter errors

* Update links
This commit is contained in:
Rich Lander 2025-01-13 21:40:52 -08:00 committed by GitHub
parent f82833aa44
commit 8c8e5836c3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3212 changed files with 48485 additions and 57530 deletions

View File

@ -1,4 +1,4 @@
# Code of Conduct
This project uses the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct) to define expected conduct in our community.
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting a project maintainer at conduct@dotnetfoundation.org.
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting a project maintainer at <conduct@dotnetfoundation.org>.

View File

@ -2,6 +2,6 @@
See [Contributing](https://github.com/dotnet/runtime/blob/main/CONTRIBUTING.md) for information about coding styles, source structure, making pull requests, and more.
# Repositories
## Repositories
See the [.NET Repos](Documentation/core-repos.md) to find a repo to contribute to.

View File

@ -4,13 +4,15 @@ The .NET maintainer team aims to support a productive and safe working environme
The following two lists summarize how maintainers will act. A more detailed description follows this summary.
**Maintainers will**
Maintainers will:
- Encourage your contributions and participation and provide clear and direct feedback, including when your contributions are not accepted.
- Close issues and PRs as a means of making repos more efficient to use for everyone. They can be re-opened, as needed.
- Edit comments for formatting [if and only if (iff)](https://en.wikipedia.org/wiki/If_and_only_if) the edit adds substantially to the readability or usability of the comment. No changes will be made to spelling, wording, meaning, or emphasis.
- Report abusive behavior to the [Code of Conduct review group](mailto:conduct@dotnetfoundation.org).
**Maintainers won't**
Maintainers won't:
- Edit contributor comments as a general rule. GitHub provides [edit history](https://blog.github.com/changelog/2018-05-24-comment-edit-history/) which makes editing more acceptable as there is a way to see an audit log. However, contributors might still be surprised when they see statements or phrases under their name that they don't recall making. Transparency is a cornerstone of effective discourse and its absence undermines trust. And a change log doesn't fully eliminate these concerns.
## Respect your Contributions
@ -27,7 +29,7 @@ Maintainers will take actions to make repo engagement more efficient for everyon
Maintainers may edit PR and issue titles to improve readability and/or accuracy. GitHub provides history for title changes.
Maintainers may edit your comments if and only if the edit adds substantially to the readability or usability of the comment and doesn't change the content. The maintainer will add a short descriptive note with their @handle to explain their change at the end of your comment (for example: "_Edited by @richlander -- added call-stack formatting_").
Maintainers may edit your comments if and only if the edit adds substantially to the readability or usability of the comment and doesn't change the content. The maintainer will add a short descriptive note with their @handle to explain their change at the end of your comment (for example: "_Edited by @richlander -- added call-stack formatting_").
Maintainers may make the following changes to contributor comments:

View File

@ -10,8 +10,8 @@
|[dotnet/runtime](https://github.com/dotnet/runtime) |[🔗](https://github.com/dotnet/runtime/issues) |[🔗](https://github.com/dotnet/runtime/discussions) |.NET runtime, runtime installers, application model, & Base Class Library (BCL)|
|[dotnet/sdk](https://github.com/dotnet/sdk) |[🔗](https://github.com/dotnet/sdk/issues) | |.NET SDK (used by Visual Studio & .NET CLI)|
## Compilers & Languages
|Repository |Issues |Discussions | Description |
|--------------------------------------------------------------------|:----------------------------------------------------:|:--------------------------------------------------------:|-------------|
|[dotnet/csharplang](https://github.com/dotnet/csharplang) |[🔗](https://github.com/dotnet/csharplang/issues) |[🔗](https://github.com/dotnet/csharplang/discussions) |C# suggestions, specification, ongoing language design |
@ -48,7 +48,7 @@
|Repository |Issues |Discussions | Description |
|--------------------------------------------------------------------|:-----------------------------------------------:|:---------------------------------------------------:|------------|
|[dotnet/dotnet-docker](https://github.com/dotnet/dotnet-docker) |[🔗](https://github.com/dotnet/dotnet-docker/issues) |[🔗](https://github.com/dotnet/dotnet-docker/discussions)|.NET Docker images|
|[dotnet/installer](https://github.com/dotnet/installer) |[🔗](https://github.com/dotnet/installer/issues) | |.NET installer (produces zips, tarballs, and installers for the .NET SDK)
|[dotnet/installer](https://github.com/dotnet/installer) |[🔗](https://github.com/dotnet/installer/issues) | |.NET installer (produces zips, tarballs, and installers for the .NET SDK) |
|[dotnet/machinelearning-modelbuilder](https://github.com/dotnet/machinelearning-modelbuilder) |[🔗](https://github.com/dotnet/machinelearning-modelbuilder/issues) | |ML.NET Tooling |
|[dotnet/msbuild](https://github.com/dotnet/msbuild) |[🔗](https://github.com/dotnet/msbuild/issues)|[🔗](https://github.com/dotnet/msbuild/discussions)|Build platform for .NET & Visual Studio|
|[dotnet/Scaffolding](https://github.com/dotnet/Scaffolding) |[🔗](https://github.com/dotnet/Scaffolding/issues) | |ASP.NET Core code generators |
@ -58,7 +58,6 @@
|[dotnet/test-templates](https://github.com/dotnet/test-templates) |[🔗](https://github.com/dotnet/test-templates/issues) | |.NET unit testing project templates|
|[dotnet/vscode-csharp](https://github.com/dotnet/vscode-csharp) |[🔗](https://github.com/dotnet/vscode-csharp/issues) |[🔗](https://github.com/dotnet/vscode-csharp/discussions) |C# support for VS Code|
## NuGet
|Repository |Issues |Discussions | Description |

View File

@ -1 +1,3 @@
This document has moved to https://github.com/dotnet/designs/blob/main/accepted/2020/diagnostics/portable-pdb.md
# File has moved
This document has moved to <https://github.com/dotnet/designs/blob/main/accepted/2020/diagnostics/portable-pdb.md>

View File

@ -1 +1,3 @@
This document has moved to https://github.com/dotnet/designs/blob/main/accepted/2020/diagnostics/source-link.md
# File has moved
This document has moved to <https://github.com/dotnet/designs/blob/main/accepted/2020/diagnostics/source-link.md>

View File

@ -2,15 +2,12 @@
It looks like you probably hit a bug in .NET Native.
You can help make .NET better by sending a bug report.
However, take a look at the [Known Issues](#known-issues) section below
before sending a bug report. There may already be a
workaround for your issue.
## Creating and Sending a .NET Native repro
1. Add `<NetNativeReproPath>C:\myReproDirectory</NetNativeReproPath>` to the primary PropertyGroup in your project file, the file ending in csproj, vsproj, vcxproj, or jsproj. You can set `C:\myReproDirectory` to any directory that exists. [Examples are below.](#examples)
2. Rebuild your app. You will find ilcRepro.zip in the repro directory you specified above.
3. Put ilcRepro.zip on your OneDrive, Dropbox, or another storage provider. Send a link to ilcRepro.zip and a description of your issue to dotnetnative@microsoft.com.
3. Put ilcRepro.zip on your OneDrive, Dropbox, or another storage provider. Send a link to ilcRepro.zip and a description of your issue to <dotnetnative@microsoft.com>.
4. Remove `<NetNativeReproPath>` from your project file.
## Compilation Failure in Store
@ -19,9 +16,9 @@ UWP apps containing managed code are compiled in Store using the .NET Native Too
`This submission failed due to compilation error {0}. More information about this error can be found here.`
In such a case, please ensure that you were able to build your application in Release mode successfully at the time you submitted it to Store. If it did, please send the error number you got in the message above and email dotnetnative@microsoft.com.
In such a case, please ensure that you were able to build your application in Release mode successfully at the time you submitted it to Store. If it did, please send the error number you got in the message above and email <dotnetnative@microsoft.com>.
For help with any other issues, please share their details at https://connect.microsoft.com/visualstudio/
For help with any other issues, please share their details at <https://connect.microsoft.com/visualstudio/>
## Examples
@ -29,92 +26,100 @@ Below are examples of where to add the `<NetNativeReproPath>` tag.
### C# (*.csproj)
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{B44664F5-278C-4ABE-B62E-A5CA20E3DC48}</ProjectGuid>
<OutputType>AppContainerExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>App1</RootNamespace>
<AssemblyName>App1</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion>10.0.10158.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.10158.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>14</MinimumVisualStudioVersion>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<PackageCertificateKeyFile>App1_TemporaryKey.pfx</PackageCertificateKeyFile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```xml
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{B44664F5-278C-4ABE-B62E-A5CA20E3DC48}</ProjectGuid>
<OutputType>AppContainerExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>App1</RootNamespace>
<AssemblyName>App1</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion>10.0.10158.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.10158.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>14</MinimumVisualStudioVersion>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<PackageCertificateKeyFile>App1_TemporaryKey.pfx</PackageCertificateKeyFile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```
### VB (*.vbproj)
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{8C7ADA9E-47DF-4937-A1D9-62CA9B88A100}</ProjectGuid>
<OutputType>AppContainerExe</OutputType>
<RootNamespace>App4</RootNamespace>
<AssemblyName>App4</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion>10.0.10158.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.10158.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>14</MinimumVisualStudioVersion>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
<PackageCertificateKeyFile>App4_TemporaryKey.pfx</PackageCertificateKeyFile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```xml
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{8C7ADA9E-47DF-4937-A1D9-62CA9B88A100}</ProjectGuid>
<OutputType>AppContainerExe</OutputType>
<RootNamespace>App4</RootNamespace>
<AssemblyName>App4</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion>10.0.10158.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.10158.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>14</MinimumVisualStudioVersion>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
<PackageCertificateKeyFile>App4_TemporaryKey.pfx</PackageCertificateKeyFile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```
### C++ (*.vcxproj)
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{74010e92-8ead-4acc-8fc6-7db385af579b}</ProjectGuid>
<RootNamespace>App2</RootNamespace>
<DefaultLanguage>en-US</DefaultLanguage>
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
<AppContainerApplication>true</AppContainerApplication>
<ApplicationType>Windows Store</ApplicationType>
<WindowsTargetPlatformVersion>10.0.10158.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformMinVersion>10.0.10158.0</WindowsTargetPlatformMinVersion>
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```xml
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>{74010e92-8ead-4acc-8fc6-7db385af579b}</ProjectGuid>
<RootNamespace>App2</RootNamespace>
<DefaultLanguage>en-US</DefaultLanguage>
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
<AppContainerApplication>true</AppContainerApplication>
<ApplicationType>Windows Store</ApplicationType>
<WindowsTargetPlatformVersion>10.0.10158.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformMinVersion>10.0.10158.0</WindowsTargetPlatformMinVersion>
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```
### JS (*.jsproj)
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion>10.0.10158.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.10158.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>$(VersionNumberMajor).$(VersionNumberMinor)</MinimumVisualStudioVersion>
<DefaultLanguage>en-US</DefaultLanguage>
<PackageCertificateKeyFile>App3_TemporaryKey.pfx</PackageCertificateKeyFile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```xml
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion>10.0.10158.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.10158.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>$(VersionNumberMajor).$(VersionNumberMinor)</MinimumVisualStudioVersion>
<DefaultLanguage>en-US</DefaultLanguage>
<PackageCertificateKeyFile>App3_TemporaryKey.pfx</PackageCertificateKeyFile>
<NetNativeReproPath>C:\myRepro</NetNativeReproPath>
</PropertyGroup>
</Project>
```

View File

@ -19,7 +19,6 @@ Register at least two of the following two-factor authentication methods:
* [Hardware security key(s)](https://docs.github.com/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-a-security-key) (also see [yubikey](https://www.yubico.com/works-with-yubikey/catalog/github/))
* [TOTP with an Authenticator app](https://docs.github.com/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-a-totp-mobile-app) (like [Microsoft Authenticator](https://support.microsoft.com/account-billing/download-and-install-the-microsoft-authenticator-app-351498fc-850a-45da-b7b6-27e523b8702a))
Additional guidance:
* Do not use [SMS](https://en.wikipedia.org/wiki/SIM_swap_scam) for 2FA or as a recovery fallback (disable those options).

View File

@ -1,32 +1,44 @@
Self-contained Linux applications
=================================
.NET Core Linux applications are now portable over all of the supported Linux distros. However, they still require installation of third-party dependency libraries, such as CURL or OpenSSL, on the target device. While installing these dependencies is usually fine, there are cases when this requirement is undesirable. For example, when the user of such application doesn't have rights to install applications on the target device. Or when the .NET Core dependencies would conflict with dependencies already installed on the target device.
# Self-contained Linux applications
.NET Core Linux applications are now portable over all of the supported Linux distros. However, they still require installation of third-party dependency libraries, such as CURL or OpenSSL, on the target device. While installing these dependencies is usually fine, there are cases when this requirement is undesirable. For example, when the user of such application doesn't have rights to install applications on the target device. Or when the .NET Core dependencies would conflict with dependencies already installed on the target device.
To enable that scenario, .NET Core 2.0 and later versions support using local copies of third-party dependency libraries. Applications can carry those dependencies and use them, even if there are system-wide installed versions.
## How it works
The main executable of published .NET Core applications (which is the .NET Core host) has an RPATH property set to `$ORIGIN/netcoredeps`. That means that when Linux shared library loader is looking for shared libraries, it looks to this location before looking to default shared library locations. It is worth noting that the paths specified by the `LD_LIBRARY_PATH` environment variable or libraries specified by the `LD_PRELOAD` environment variable are still used before the RPATH property.
So, in order to use local copies of the third-party libraries, developers need to create a directory named `netcoredeps` next to the main application executable and copy all the necessary dependencies into it.
## Gathering the third-party dependencies
The following sections describe the steps needed to get the full set of dependencies that need to be carried with the application:
### Pick the oldest supported distro the application should run at as the source for the dependencies
Select a distro to get the dependencies to be packaged with the application. Using the oldest distro ensures that the third-party dependencies don't reference functions from libc / libstdc++ that are only present in newer versions of those libraries and not present in the supported distros.
### Get the transitive closure of all the first-level dependencies
That means the dependencies of the first-level dependencies, their dependencies, etc. To get those transitives closures, use the `ldd` command-line tool. As a parameter, pass the root set of .NET Core dependencies to the command as follows:
* libcoreclr.so
* If your app uses System.IO.Compression.dll assembly: `System.IO.Compression.Native.so`
* If your app uses the System.Security.Cryptography.dll assembly: `System.Security.Cryptography.Native.OpenSsl.so`, `libssl.so.{version}`, and `libcrypto.so.{version}`.
{version} depends on the source distro as follows:
* Fedora-based distros: `10`
* Debian 9-based distros: `1.0.2`
* All others: `1.0.0`
* Fedora-based distros: `10`
* Debian 9-based distros: `1.0.2`
* All others: `1.0.0`
* If your app uses the System.Net.Http.dll assembly: `System.Net.Http.Native.so`, `libssl.so.{version}`, and `libcrypto.so`.
Then, add all the dependencies needed to your final list and run `ldd` again on these added ones.
If your app doesn't explicitly opt out of using globalization, you also need to add `libicuuc.so.{version}`, `libicui18n.so.{version}`, and `libicudata.so.{version}` to the list, in addition to the ones previously listed. To explicitly opt out of globalization, you need to add the System.Globalization.Invariant element set to true to the xxxxx.runtimeconfig.json file or set the `CORECLR_GLOBAL_INVARIANT` environment variable to 1. The {version} is the version present on the source distro. Use the major version only. For example, for 52.1, use 52.
As previously mentioned, if your app uses System.Security.Cryptography.dll or System.Net.Http.dll, you also need to add `libssl` and `libcrypto`. However, there is a catch related to these libraries. The Fedora-based distros store root certificates at a different location than the other distros and the `libcrypto`, `libssl`, and `libcurl` have that location hardcoded, compiled into the binaries. So, if you want to support both Fedora-based distros and other ones, you either need have two versions of your app, one for each case, or have one app package, but two sets of dependencies. And during installation or first run of your app, you need to detect the current distro and copy the appropriate set of dependencies from some aside directory to the `netcoredeps` one. Or whatever else works for you.
### From that list, remove standard C/C++ libraries and libraries that are available on all the target distros
The following list shows the basic set of libraries to remove: `libc.so.*`, `libm.so.*`, `libstdc++.so.*`, `libpthread.so.*`, `linux-vdso.so.*`, `libgcc_s.so.*`, `librt.so.*`, `libdl.so.*`, `ld-linux-x86-64.so.*`, `libresolv.so.*`. At least, the `libc`, `libresolv` and `libstdc++` have to be removed, otherwise all kinds of weird issues could happen in shared libraries that are used by your application and that were compiled against newer libc / libstdc++ version.
You can also remove other libraries that seem to be installed on all major Linux distros by default as follows:
* `libcom_err.so.2`
* `libcrypt.so.1`
* `libgpg-error.so.0`

View File

@ -6,25 +6,25 @@ After downloading a .NET file, verify it for security by calculating the file's
The verification process involves a few steps.
1. Download the checksum file for the release into the same directory as the installer you downloaded. Links to the checksum file are found in the Release Notes.
1. Download the checksum file for the release into the same directory as the installer you downloaded. Links to the checksum file are found in the Release Notes.
2. Then, compare the download checksum with the checksum value or file. If there is a match, the download is valid.
We'll use [.NET 7.0.5](https://github.com/dotnet/core/blob/main/release-notes/7.0/7.0.5/7.0.5.md) in the examples.
### Linux and MacOS
#### To see the downloaded file checksum for comparison
To see the downloaded file checksum for comparison:
`$ sha512sum dotnet-sdk-7.0.203-osx-x64.pkg`
You can then compare the checksum with the value provided after [downloading .NET](https://dot.net)
#### To compare against the checksum file provided for each .NET release
To compare against the checksum file provided for each .NET release:
Download checksum file using curl:
```bash
curl -O https://dotnetcli.blob.core.windows.net/dotnet/checksums/7.0.5-sha.txt
curl -O https://builds.dotnet.microsoft.com/dotnet/checksums/7.0.5-sha.txt
```
@ -38,21 +38,21 @@ If the output states the file is valid ('OK'), then it's ready to use.
### Windows
#### To see the downloaded file checksum for comparison
To see the downloaded file checksum for comparison:
- In the cmd prompt - `certutil -hashfile dotnet-sdk-7.0.203-win-x64.exe SHA512`
- In PowerShell - `(Get-FileHash 'dotnet-sdk-7.0.203-win-x64.exe' -Algorithm SHA512).Hash`
You can then compare the checksum with the value provided after [downloading .NET](https://dot.net)
#### To compare against the checksum file provided for each .NET release
To compare against the checksum file provided for each .NET release:
You can use PowerShell to perform the the checksum comparison.
Download checksum file using `curl` (_`curl` is an alias of `Invoke-WebRequest`_):
```powershell
curl https://dotnetcli.blob.core.windows.net/dotnet/checksums/7.0.5-sha.txt -OutFile 7.0.5-sha.txt
curl https://builds.dotnet.microsoft.com/dotnet/checksums/7.0.5-sha.txt -OutFile 7.0.5-sha.txt
```
Verify the checksum matches:

View File

@ -6,10 +6,10 @@ The .NET and ASP.NET Core support policy, including supported versions can be fo
## Reporting a Vulnerability
Security issues and bugs should be reported privately to the Microsoft Security Response Center (MSRC), either by emailing secure@microsoft.com or via the portal at https://msrc.microsoft.com.
Security issues and bugs should be reported privately to the Microsoft Security Response Center (MSRC), either by emailing <secure@microsoft.com> or via the portal at <https://msrc.microsoft.com>.
You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your
original message. Further information, including the MSRC PGP key, can be found in the [MSRC Report an Issue FAQ](https://www.microsoft.com/msrc/faqs-report-an-issue).
Reports via MSRC may qualify for the .NET Bug Bounty. Details of the .NET Bug Bounty including terms and conditions are at [https://aka.ms/corebounty](https://aka.ms/corebounty).
Please do not open issues for anything you think might have a security implication.
Please do not open issues for anything you think might have a security implication.

View File

@ -2,24 +2,24 @@
The .NET team builds many branches of the product daily. You can install these builds to try out functionality prior to release.
Daily builds, for both future and servicing branches, are available as Docker container images from the [Microsoft Container Registry](https://hub.docker.com/_/microsoft-dotnet-nightly/).
Daily builds, for both future and servicing branches, are available as Docker container images from the [Microsoft Container Registry](https://github.com/dotnet/dotnet-docker/blob/nightly/README.md).
## Future Releases
Preview branches are for new versions of .NET that have not yet been released and are not yet supported.
|Component|*.NET 8.0*
|Component|.NET 8.0|
|:------:|:------:|
|SDK|[.NET SDK 8.0.xxx](https://github.com/dotnet/installer/blob/main/README.md#installers-and-binaries)
|ASP.NET Core|[ASP.NET Core 8.0](https://github.com/dotnet/aspnetcore/blob/main/docs/DailyBuilds.md)
|Runtime|[.NET Runtime 8.0](https://github.com/dotnet/runtime/blob/main/docs/project/dogfooding.md)
|SDK|[.NET SDK 8.0.xxx](https://github.com/dotnet/installer/blob/main/README.md#installers-and-binaries) |
|ASP.NET Core|[ASP.NET Core 8.0](https://github.com/dotnet/aspnetcore/blob/main/docs/DailyBuilds.md) |
|Runtime|[.NET Runtime 8.0](https://github.com/dotnet/runtime/blob/main/docs/project/dogfooding.md) |
## Servicing Releases
Servicing branches are for new patch versions of .NET that have not yet been released and are not yet supported.
|Component|*.NET 7.0*|*.NET 6.0*|
|:------:|:------:|:------:
|Component|.NET 7.0|.NET 6.0|
|:------:|:------:|:------: |
|SDK|[.NET SDK 7.0.xxx](https://github.com/dotnet/installer/blob/main/README.md#installers-and-binaries)|[.NET SDK 6.0.xxx](https://github.com/dotnet/installer/blob/main/README.md#installers-and-binaries)|
|ASP.NET Core|[ASP.NET Core 7.0](https://github.com/dotnet/aspnetcore/blob/main/docs/DailyBuilds.md)|[ASP.NET Core 6.0](https://github.com/dotnet/aspnetcore/blob/main/docs/DailyBuilds.md)|
|Runtime|[.NET Runtime 7.0](https://github.com/dotnet/runtime/blob/main/docs/project/dogfooding.md)|[.NET Core Runtime 6.0](https://github.com/dotnet/runtime/blob/main/docs/project/dogfooding.md)|

View File

@ -10,7 +10,6 @@ This document is provided for informative purposes only and is not itself a lice
[Each repo](./Documentation/core-repos.md) has:
- A license, for example, [dotnet/runtime LICENSE.TXT](https://github.com/dotnet/runtime/blob/main/LICENSE.TXT).
- Third party notice file, for example, [dotnet/runtime THIRD-PARTY-NOTICES.TXT](https://github.com/dotnet/runtime/blob/main/THIRD-PARTY-NOTICES.TXT)

View File

@ -1,3 +1,3 @@
# .NET Support and Compatibility for Linux Distributions
This content has been moved to [linux.md](linux.md).
This content has been moved to [linux.md](linux.md).

View File

@ -7,11 +7,11 @@ The tables below provide OS version information supported by .NET Core 1.x.
## Windows
OS | Version | Architectures| Notes
------------------------------|--------------------------------|--------------|-----
Windows Client | 7 SP1+, 8.1 | x64, x86 |
Windows 10 Client | Version 1607+ | x64, x86 |
Windows Server | 2008 R2 SP1 - 2016* | x64, x86 |
| OS | Version | Architectures| Notes |
| ------------------------------|--------------------------------|--------------|----- |
| Windows Client | 7 SP1+, 8.1 | x64, x86 | |
| Windows 10 Client | Version 1607+ | x64, x86 | |
| Windows Server | 2008 R2 SP1 - 2016* | x64, x86 | |
\* Supported by latest patch release of .NET Core 1.1
@ -19,21 +19,21 @@ See the [Windows Lifecycle Fact Sheet](https://support.microsoft.com/help/13853/
## macOS
OS | Version | Architectures| Notes
------------------------------|--------------------------------|--------------|-----
Mac OS X | 10.11, 10.12* | x64 | [Apple Support Sitemap](https://support.apple.com/sitemap) <br/> [Apple Security Updates](https://support.apple.com/HT201222)
| OS | Version | Architectures| Notes |
| ------------------------------|--------------------------------|--------------|----- |
| Mac OS X | 10.11, 10.12* | x64 | [Apple Support Sitemap](https://support.apple.com/sitemap); [Apple Security Updates](https://support.apple.com/HT201222) |
\* Supported by latest patch release of .NET Core 1.0
## Linux
OS | Version | Architectures| Notes
------------------------------|--------------------------------|--------------|-----
Red Hat Enterprise Linux <br/> CentOS <br/> Oracle Linux | 7 | x64 | [Red Hat support policy](https://access.redhat.com/support/policy/updates/errata/) <br/> [CentOS lifecycle](https://wiki.centos.org/FAQ(2f)General.html) <br/> [Oracle Linux lifecycle](https://www.oracle.com/a/ocom/docs/elsp-lifetime-069338.pdf)
Fedora | 27, 28 (1.1) | x64 | [Fedora lifecycle](https://fedoraproject.org/wiki/End_of_life)
Debian | 8.2+ | x64 | [Debian lifecycle](https://wiki.debian.org/DebianReleases)
Ubuntu <br/> Linux Mint | 16.04, 18.04 (1.1) <br/> 17 | x64 | [Ubuntu lifecycle](https://wiki.ubuntu.com/Releases) <br/> [Linux Mint end of life announcements](https://forums.linuxmint.com/search.php?keywords=%22end+of+life%22&terms=all&author=&sc=1&sf=titleonly&sr=posts&sk=t&sd=d&st=0&ch=300&t=0&submit=Search)
openSUSE | 42.3+ (1.1) | x64 | [OpenSUSE lifecycle](https://en.opensuse.org/Lifetime)
| OS | Version | Architectures| Notes |
| ------------------------------|--------------------------------|--------------|----- |
| Red Hat Enterprise Linux; CentOS; Oracle Linux | 7 | x64 | [Red Hat support policy](https://access.redhat.com/support/policy/updates/errata/); [CentOS lifecycle](https://wiki.centos.org/FAQ(2f)General.html); [Oracle Linux lifecycle](https://www.oracle.com/a/ocom/docs/elsp-lifetime-069338.pdf) |
| Fedora | 27, 28 (1.1) | x64 | [Fedora lifecycle](https://fedoraproject.org/wiki/End_of_life) |
| Debian | 8.2+ | x64 | [Debian lifecycle](https://wiki.debian.org/DebianReleases) |
| Ubuntu; Linux Mint | 16.04, 18.04 (1.1); 17 | x64 | [Ubuntu lifecycle](https://wiki.ubuntu.com/Releases); [Linux Mint end of life announcements](https://forums.linuxmint.com/search.php?keywords=%22end+of+life%22&terms=all&author=&sc=1&sf=titleonly&sr=posts&sk=t&sd=d&st=0&ch=300&t=0&submit=Search) |
| openSUSE | 42.3+ (1.1) | x64 | [OpenSUSE lifecycle](https://en.opensuse.org/Lifetime) |
* \* Supported by the latest patch release of .NET Core 1.1
* **Bold numbers** indicate additions to this release.
@ -43,14 +43,14 @@ openSUSE | 42.3+ (1.1) | x64 |
Support for the following versions was ended by the distribution owners and are [not supported by .NET Core 1.x](https://github.com/dotnet/core/blob/main/os-lifecycle-policy.md).
OS | Version | End of Life
-----------|----------|-------------
Fedora | 26 | [May 2018](https://fedoramagazine.org/fedora-26-end-life/)
Fedora | 25 | [December 2017](https://fedoramagazine.org/fedora-25-end-life/)
Fedora | 24 | [August 2017](https://fedoramagazine.org/fedora-24-eol/)
Fedora | 23 | [December 20, 2016](https://lists.fedoraproject.org/archives/list/announce@lists.fedoraproject.org/thread/OHFCBTYXAO6NBH5BZZI3VIMIIL2ODFP5/)
openSUSE | 13.2 | [January 18, 2017](https://lists.opensuse.org/opensuse-security-announce/2017-01/msg00033.html)
openSUSE | 42.1 | [May 17, 2017](https://lists.opensuse.org/opensuse-security-announce/2017-05/msg00053.html)
Ubuntu | 17.10 | [July 2018](https://lists.ubuntu.com/archives/ubuntu-announce/2018-July/000232.html)
Ubuntu | 16.10 | [July 2017](https://lists.ubuntu.com/archives/ubuntu-announce/2017-July/000223.html)
Ubuntu | 14.04 | [06/2019](https://wiki.ubuntu.com/Releases)
| OS | Version | End of Life |
| -----------|----------|------------- |
| Fedora | 26 | [May 2018](https://fedoramagazine.org/fedora-26-end-life/) |
| Fedora | 25 | [December 2017](https://fedoramagazine.org/fedora-25-end-life/) |
| Fedora | 24 | [August 2017](https://fedoramagazine.org/fedora-24-eol/) |
| Fedora | 23 | [December 20, 2016](https://lists.fedoraproject.org/archives/list/announce@lists.fedoraproject.org/thread/OHFCBTYXAO6NBH5BZZI3VIMIIL2ODFP5/) |
| openSUSE | 13.2 | [January 18, 2017](https://lists.opensuse.org/opensuse-security-announce/2017-01/msg00033.html) |
| openSUSE | 42.1 | [May 17, 2017](https://lists.opensuse.org/opensuse-security-announce/2017-05/msg00053.html) |
| Ubuntu | 17.10 | [July 2018](https://lists.ubuntu.com/archives/ubuntu-announce/2018-July/000232.html) |
| Ubuntu | 16.10 | [July 2017](https://lists.ubuntu.com/archives/ubuntu-announce/2017-July/000223.html) |
| Ubuntu | 14.04 | [06/2019](https://wiki.ubuntu.com/Releases) |

View File

@ -152,4 +152,3 @@
+ }
+}
```

View File

@ -30,4 +30,3 @@
+ }
+}
```

View File

@ -84,4 +84,3 @@
+ }
+}
```

View File

@ -12,4 +12,3 @@
+ }
+}
```

View File

@ -705,4 +705,3 @@
+ }
+}
```

View File

@ -345,4 +345,3 @@
+ }
+}
```

View File

@ -908,4 +908,3 @@
+ }
+}
```

View File

@ -292,4 +292,3 @@
+ }
+}
```

View File

@ -378,4 +378,3 @@
+ }
+}
```

View File

@ -860,4 +860,3 @@
+ }
+}
```

View File

@ -214,4 +214,3 @@
+ }
+}
```

View File

@ -235,4 +235,3 @@
+ }
+}
```

View File

@ -603,4 +603,3 @@
+ }
+}
```

View File

@ -170,4 +170,3 @@
+ }
+}
```

View File

@ -202,4 +202,3 @@
+ }
+}
```

View File

@ -689,4 +689,3 @@
+ }
+}
```

View File

@ -99,4 +99,3 @@
+ }
+}
```

View File

@ -145,4 +145,3 @@
+ }
+}
```

View File

@ -99,4 +99,3 @@
+ }
+}
```

View File

@ -828,4 +828,3 @@
+ }
+}
```

View File

@ -9,4 +9,3 @@
+ }
+}
```

View File

@ -765,4 +765,3 @@
+ }
+}
```

View File

@ -626,4 +626,3 @@
+ }
+}
```

View File

@ -345,4 +345,3 @@
+ }
+}
```

View File

@ -254,4 +254,3 @@
+ }
+}
```

View File

@ -112,4 +112,3 @@
+ }
+}
```

View File

@ -529,4 +529,3 @@
+ }
+}
```

View File

@ -105,4 +105,3 @@
+ }
+}
```

View File

@ -441,4 +441,3 @@
+ }
+}
```

View File

@ -651,4 +651,3 @@
+ }
+}
```

View File

@ -1017,4 +1017,3 @@
+ }
+}
```

View File

@ -1620,4 +1620,3 @@
+ }
+}
```

View File

@ -1035,4 +1035,3 @@
+ }
+}
```

View File

@ -79,4 +79,3 @@
+ }
+}
```

View File

@ -22,4 +22,3 @@
+ }
+}
```

View File

@ -251,4 +251,3 @@
+ }
+}
```

View File

@ -180,4 +180,3 @@
+ }
+}
```

View File

@ -228,4 +228,3 @@
+ }
+}
```

View File

@ -55,4 +55,3 @@
+ }
+}
```

View File

@ -1472,4 +1472,3 @@
+ }
+}
```

Some files were not shown because too many files have changed in this diff Show More