Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update package guidelines for .NET Core 3.0 #13196

Merged
merged 29 commits into from
Sep 5, 2019
Merged
Changes from 2 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
7ac8513
Update package guidelines for .NET Core 3.0
tmds Jul 1, 2019
dfa9f10
Add separate packages for netcoreapp and aspnet, and update names
tmds Jul 2, 2019
101634e
Rename dotnet-netcoreapp-targeting-pack to dotnet-targeting-pack
tmds Jul 9, 2019
b9963ff
Align with Microsoft packages
tmds Jul 9, 2019
d73b28a
Remove section on preview versions
tmds Jul 9, 2019
0352d9c
Format table into list
tmds Jul 10, 2019
632a09a
Add /etc/dotnet/install_location
tmds Jul 10, 2019
22ad323
Add dotnet-runtime-deps package
tmds Jul 11, 2019
12baa27
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
52b02ee
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
74af8cd
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
073d8ba
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
f6f0e93
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
e2877b4
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
7aa74f7
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
feac66a
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
c1f78d0
Update docs/core/build/distribution-packaging.md
tmds Jul 12, 2019
bb9a77d
Update docs/core/build/distribution-packaging.md
tmds Aug 23, 2019
a84c102
Declare dotnet-runtime-deps optional
tmds Aug 23, 2019
3a2e226
Remove dotnet- prefix from {netstandard,aspnetcore}-targetting-pack
tmds Aug 26, 2019
875e8a9
Remove dotnet-sdk-[major] package
tmds Aug 26, 2019
17e8cb2
Add templates package
tmds Aug 28, 2019
4122e67
Explain package name [major].[minor]
tmds Aug 28, 2019
66ea7bb
Add recommendation to use >= for version requirements
tmds Aug 28, 2019
29291ce
Use sdk version for packages used by the sdk (packs/templates)
tmds Aug 28, 2019
51e87e8
Fix sdk version number
tmds Aug 28, 2019
b8c3e47
Tweak some package versions
tmds Aug 30, 2019
e8f9126
Apply suggestions from code review
tmds Sep 3, 2019
33b4c5d
Include Microsoft.WindowsDesktop.App
tmds Sep 5, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 13 additions & 16 deletions docs/core/build/distribution-packaging.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,30 +91,27 @@ The rest of the version isn't included in the version name. This allows the OS p

The following table shows the recommended packages:

| Name | Example | Use case: Install ... | Contains | Dependencies | Version |
|-----------------------------------|--------------------|---------------------------------|------------------|-----------------------------------|--------------------|
| dotnet-sdk-[major] | dotnet-sdk-2 | Latest sdk for runtime major | | dotnet-sdk-[major].[latestminor] | \<sdk version> |
| dotnet-sdk-[major].[minor] | dotnet-sdk-2.1 | Latest sdk for specific runtime | (3),(4),(13) | aspnet-runtime-[major].[minor], dotnet-netcoreapp-targeting-pack[major].[minor], dotnet-aspnet-targeting-pack[major].[minor], dotnet-netstandard-targeting-pack-[netst_major].[netstd_minor] | \<sdk version> |
| aspnet-runtime-[major].[minor] | aspnet-runtime-2.1 | Specific ASP.NET Core runtime | (6),[(7)] | dotnet-runtime-[major].[minor] | \<runtime version> |
| dotnet-runtime-[major].[minor] | dotnet-runtime-2.1 | Specific runtime | (5) | host-fxr:\<runtime version>+ | \<runtime version> |
| dotnet-host-fxr | dotnet-host-fxr | _dependency_ | (2) | host:\<runtime version>+ | \<runtime version> |
| dotnet-host | dotnet-host | _dependency_ | (1),(8),(9),(10) | | \<runtime version> |
| dotnet-targeting-pack-[major].[minor] | | _dependency_ | (12) | | \<pack version> |
| dotnet-aspnet-targeting-pack-[major].[minor] | | _dependency_ | (11) | | \<pack version> |
| dotnet-netstandard-targeting-pack-[netst_major].[netst_minor] || _dependency_ | (15) | | \<pack version> |
| Name | Example | Use case: Install ... | Contains | Dependencies | Version |
|------------------------------------|--------------------|---------------------------------|------------------|------------------------------------|--------------------|
| dotnet-sdk-[major] | dotnet-sdk-2 | Latest sdk for runtime major | | dotnet-sdk-[major].[latestminor] | \<sdk version> |
| dotnet-sdk-[major].[minor] | dotnet-sdk-2.1 | Latest sdk for specific runtime | (3),(4) | aspnetcore-runtime-[major].[minor], dotnet-netcoreapp-targeting-pack[major].[minor], dotnet-aspnetcore-targeting-pack[major].[minor], dotnet-netstandard-targeting-pack-[netst_major].[netstd_minor], dotnet-apphost-pack-[major].[minor] | \<sdk version> |
| aspnetcore-runtime-[major].[minor] | aspnetcore-runtime-2.1 | Specific ASP.NET Core runtime | (6),[(7)] | dotnet-runtime-[major].[minor] | \<runtime version> |
| dotnet-runtime-[major].[minor] | dotnet-runtime-2.1 | Specific runtime | (5) | dotnet-hostfxr:\<runtime version>+ | \<runtime version> |
| dotnet-hostfxr | dotnet-hostfxr | _dependency_ | (2) | host:\<runtime version>+ | \<runtime version> |
| dotnet-host | dotnet-host | _dependency_ | (1),(8),(9),(10) | | \<runtime version> |
| dotnet-apphost-pack-[major].[minor]| | _dependency_ | (13) | | \<pack version> |
| dotnet-targeting-pack-[major].[minor] | | _dependency_ | (12) | | \<pack version> |
| aspnetcore-targeting-pack-[major].[minor] | | _dependency_ | (11) | | \<pack version> |
| netstandard-targeting-pack-[netst_major].[netst_minor] || _dependency_ | (15) | | \<pack version> |

Most distributions require all artifacts to be built from source. This has some impact on the packages:

- The third-party libraries under `shared/Microsoft.AspNetCore.All` can't be easily built from source. So that folder is omitted from the `aspnet-runtime` package.
- The third-party libraries under `shared/Microsoft.AspNetCore.All` can't be easily built from source. So that folder is omitted from the `aspnetcore-runtime` package.

- The `NuGetFallbackFolder` is populated using binary artifacts from `nuget.org`. It should remain empty.

Multiple `dotnet-sdk` packages may provide the same files for the `NuGetFallbackFolder`. To avoid issues with the package manager, these files should be identical (checksum, modification date, and so on).

### Preview versions

Package maintainers may decide to provide preview versions of the shared framework and SDK. Preview releases may be provided using the `dotnet-sdk-[major].[minor]`, `aspnet-runtime-[major].[minor]`, or `dotnet-runtime-[major].[minor]` packages. For preview releases, the package version major must be set to zero. This way, the final release is installed as an upgrade of the package.

## Building packages

The [dotnet/source-build](https://github.com/dotnet/source-build) repository provides instructions on how to build a source tarball of the .NET Core SDK and all its components. The output of the source-build repository matches the layout described in the first section of this article.