Skip to content

Commit 0b9b34d

Browse files
Copilotagocke
andauthored
Add package readmes to illink NuGet packages stating SDK-only support (#123505)
## Description The `Microsoft.NET.ILLink` and `Microsoft.NET.ILLink.Tasks` NuGet packages are published but lack documentation indicating they're SDK-internal and unsupported for direct consumption. ## Changes - **Added `PACKAGE.md` files** to both packages with clear "Do not directly reference this package" language matching other SDK-internal packages like `Microsoft.NETCore.App` - **Enabled package readme inclusion** by removing `EnableDefaultPackageReadmeFile=false` from `ILLink.Tasks.csproj` and adding `EnableDefaultPackageReadmeFile=true` to `Mono.Linker.csproj` - **Included trimming documentation links** for users who need guidance on proper trimming usage through the SDK Both readmes follow the standard repository PACKAGE.md structure with About, How to Use, Additional Documentation, and Feedback sections. <!-- START COPILOT ORIGINAL PROMPT --> <details> <summary>Original prompt</summary> > > ---- > > *This section details on the original issue you should resolve* > > <issue_title>Illink nuget packages should state support contract in package readme</issue_title> > <issue_description>The illink packages aren’t supported outside of use by the SDK. We should state that in the readme. </issue_description> > > ## Comments on the Issue (you are @copilot in this section) > > <comments> > </comments> > </details> <!-- START COPILOT CODING AGENT SUFFIX --> - Fixes #123504 <!-- START COPILOT CODING AGENT TIPS --> --- 💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more [Copilot coding agent tips](https://gh.io/copilot-coding-agent-tips) in the docs. --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: agocke <515774+agocke@users.noreply.github.com>
1 parent 23b6046 commit 0b9b34d

File tree

4 files changed

+35
-2
lines changed

4 files changed

+35
-2
lines changed

src/tools/illink/src/ILLink.Tasks/ILLink.Tasks.csproj

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@
1818
<IncludeBuildOutput>false</IncludeBuildOutput>
1919
<IncludeMultiTargetRoslynComponentTargets>false</IncludeMultiTargetRoslynComponentTargets>
2020
<TargetsForTfmSpecificContentInPackage>$(TargetsForTfmSpecificContentInPackage);AddBuildOutputToToolsPackage</TargetsForTfmSpecificContentInPackage>
21-
<!-- TODO: Add package readme -->
22-
<EnableDefaultPackageReadmeFile>false</EnableDefaultPackageReadmeFile>
2321
<!-- Don't use the TFM but a short form of it without the version to simulate the package layout. -->
2422
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
2523
<OutputPath Condition="'$(TargetFramework)' == '$(NetCoreAppToolCurrent)'">$(OutputPath)net\</OutputPath>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
## About
2+
3+
MSBuild tasks for running the IL Linker to trim .NET applications.
4+
5+
## How to Use
6+
7+
Do not directly reference this package. It is used internally by the .NET SDK when projects enable trimming.
8+
9+
## Additional Documentation
10+
11+
- [Trim self-contained deployments and executables](https://learn.microsoft.com/dotnet/core/deploying/trimming/trim-self-contained)
12+
- [Introduction to trim warnings](https://learn.microsoft.com/dotnet/core/deploying/trimming/fixing-warnings)
13+
- [Prepare .NET libraries for trimming](https://learn.microsoft.com/dotnet/core/deploying/trimming/prepare-libraries-for-trimming)
14+
15+
## Feedback & Contributing
16+
17+
Microsoft.NET.ILLink.Tasks is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).

src/tools/illink/src/linker/Mono.Linker.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
<TargetsForTfmSpecificContentInPackage>$(TargetsForTfmSpecificContentInPackage);_AddReferenceAssemblyToPackage</TargetsForTfmSpecificContentInPackage>
2727
<DefineConstants>$(DefineConstants);ILLINK</DefineConstants>
2828
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
29+
<EnableDefaultPackageReadmeFile>true</EnableDefaultPackageReadmeFile>
2930
</PropertyGroup>
3031

3132
<Target Name="_ComputePackRuntimeConfigFilePath">
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
## About
2+
3+
IL Linker tool for trimming .NET applications.
4+
5+
## How to Use
6+
7+
Do not directly reference this package. It is used internally by the .NET SDK when projects enable trimming.
8+
9+
## Additional Documentation
10+
11+
- [Trim self-contained deployments and executables](https://learn.microsoft.com/dotnet/core/deploying/trimming/trim-self-contained)
12+
- [Introduction to trim warnings](https://learn.microsoft.com/dotnet/core/deploying/trimming/fixing-warnings)
13+
- [Prepare .NET libraries for trimming](https://learn.microsoft.com/dotnet/core/deploying/trimming/prepare-libraries-for-trimming)
14+
15+
## Feedback & Contributing
16+
17+
Microsoft.NET.ILLink is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).

0 commit comments

Comments
 (0)