-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Remove pkgproj projects that can be easily replaced by .NET SDK pack support #120853
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request modernizes package creation by replacing legacy .pkgproj
projects with .NET SDK's native pack support, directly implementing package metadata in the source projects themselves.
Key Changes:
- Converted ILVerify, ILVerification, and ILCompiler.Reflection.ReadyToRun to use SDK-style packaging
- Migrated Microsoft.NET.Sdk.IL from
.pkgproj
to.proj
with SDK-style packaging - Consolidated shared packaging logic into reusable
pkgproj.props
andpkgproj.targets
files
Reviewed Changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 2 comments.
Show a summary per file
File | Description |
---|---|
ILCompiler.Reflection.ReadyToRun.csproj | Added IsPackable and package metadata properties |
ILVerify.csproj | Added packaging properties for dotnet tool support |
ILVerification.csproj | Added package metadata and release notes |
pkgproj.targets | New shared packaging targets for symbol file handling |
pkgproj.props | New shared packaging properties for .pkgproj projects |
dotnet-ilverify.pkgproj | Deleted legacy packaging project |
DotnetToolSettings.xml | Deleted obsolete tool settings file |
coreclr-packages.proj | Updated to reference new SDK-style projects |
Microsoft.NET.Sdk.IL.proj | New SDK-style packaging project |
Microsoft.NET.Sdk.IL.pkgproj | Deleted legacy packaging project |
Microsoft.NET.Sdk.IL/Directory.Build.targets | New targets file with packaging logic |
Microsoft.NET.Sdk.IL/Directory.Build.props | New props file to control pkgproj usage |
Microsoft.ILVerification.pkgproj | Deleted legacy packaging project |
ILCompiler.Reflection.ReadyToRun.Experimental.pkgproj | Deleted legacy packaging project |
.nuget/Directory.Build.targets | Simplified to import shared pkgproj.targets conditionally |
.nuget/Directory.Build.props | Simplified to import shared pkgproj.props conditionally |
Subsets.props | Added ILVerify and ILVerification to build list |
<Project Sdk="Microsoft.Build.NoTargets"> | ||
|
||
<PropertyGroup> | ||
<PackageType>DotNetSdk</PackageType> |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The package type should be 'MSBuildSdk' to match the original .pkgproj file, not 'DotNetSdk'.
<PackageType>DotNetSdk</PackageType> | |
<PackageType>MSBuildSdk</PackageType> |
Copilot uses AI. Check for mistakes.
|
||
<GenerateFileFromTemplate TemplateFile="$(ILTargetsTemplateFile)" | ||
OutputPath="$(ILTargetsOutputFile)" | ||
Properties="IlAsmVersion=$(Version)"> |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The property should use
Properties="IlAsmVersion=$(Version)"> | |
Properties="IlAsmVersion=$(PackageVersion)"> |
Copilot uses AI. Check for mistakes.
Tagging subscribers to this area: @hoyosjs |
Contributes to #75966