-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Replace all remaining pkgprojs with NuGet Pack task #56712
Conversation
Tagging subscribers to this area: @Anipik, @safern, @ViktorHofer Issue DetailsContributes to #53202
Please review per commit
|
78acc24
to
6c2e0fd
Compare
86f99ff
to
165211b
Compare
<Suppression> | ||
<DiagnosticId>CP0001</DiagnosticId> | ||
<Target>T:System.IAsyncDisposable</Target> | ||
<Left>lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll</Left> |
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.
Do you know why are we hitting these? Why did lib/netstandard2.1
asset removed all these types?
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.
TypeForwards are still missing from the validation.
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.
netstandard2.1 is just a facade:
runtime/src/libraries/Microsoft.Bcl.AsyncInterfaces/src/Microsoft.Bcl.AsyncInterfaces.csproj
Line 6 in 0ea6d0c
<IsPartialFacadeAssembly Condition="'$(TargetFramework)' == 'netstandard2.1'">true</IsPartialFacadeAssembly> |
<DiagnosticId>CP0001</DiagnosticId> | ||
<Target>T:Microsoft.Win32.PowerModeChangedEventArgs</Target> | ||
<Left>lib/netstandard2.0/Microsoft.Win32.SystemEvents.dll</Left> | ||
<Right>lib/net461/Microsoft.Win32.SystemEvents.dll</Right> |
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.
I suspect these are because of typeforwards. We could simplify this suppressions file by just adding a "global" suppression for this tuple, without a specific target API. i.e:
<?xml version="1.0"?>
<Suppressions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Suppression>
<DiagnosticId>CP0001</DiagnosticId>
<Left>lib/netstandard2.0/Microsoft.Win32.SystemEvents.dll</Left>
<Right>lib/net461/Microsoft.Win32.SystemEvents.dll</Right>
</Suppression>
</Suppressions>
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.
Same for all other suppression files where we want to suppress this diagnostic ID for all types in a specific tuple.
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 PackageValidation used has the change but it doesn't work.
<?xml version="1.0" encoding="utf-8"?>
<Suppressions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Suppression>
<DiagnosticId>CP0001</DiagnosticId>
<Left>lib/netstandard2.0/System.IO.Ports.dll</Left>
<Right>lib/net461/System.IO.Ports.dll</Right>
</Suppression>
</Suppressions>
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Handshake' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Parity' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialData' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialError' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChange' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPort' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.StopBits' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Handshake' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Parity' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialData' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialError' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChange' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPort' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.StopBits' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Handshake' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Parity' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialData' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialError' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChange' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPort' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.StopBits' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Handshake' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Parity' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialData' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialError' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChange' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPort' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.StopBits' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Handshake' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Parity' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialData' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialError' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChange' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPort' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.StopBits' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Handshake' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.Parity' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialData' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialDataReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialError' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialErrorReceivedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChange' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventArgs' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPinChangedEventHandler' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.SerialPort' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
C:\Users\vihofer\.nuget\packages\microsoft.dotnet.packagevalidation\1.0.0-rc.1.21376.22\build\Microsoft.DotNet.PackageValidation.targets(22,5): error CP0001: Type 'System.IO.Ports.StopBits' exists on runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll but not on lib/net461/System.IO.Ports.dll [C:\git\runtime3\src\libraries\System.IO.Ports\src\System.IO.Ports.csproj]
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.
I see another left listed on the errors, that is comparing the Unix runtime for ns2.0 agains the net461 lib.
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.
Is that a bug in PackageValidation or in the System.IO.Ports package?
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.
@Anipik is the comparison of those two assets expected? Having the runtime asset at the left compared against the net461 lib?
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.
It is weird that the package has a ns2.0/Unix runtime asset, netstandard assets should be rid agnostic and the rid specific assets should target NETCoreApp. @ericstj is that correct?
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.
It's fine to have a RID-specific netstandard asset. That just means that the managed surface area used by the library can be satisfied by netstandard, but it needed to depend on some platform specific API.
I do find it odd that PackageValidation is asserting that runtimes/unix/lib/netstandard2.0
asset needs to be compatible with lib/net461
that seems like a bug.
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.
I do find it odd that PackageValidation is asserting that runtimes/unix/lib/netstandard2.0 asset needs to be compatible with lib/net461 that seems like a bug.
Yeah that seems pretty weird.
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.
It seems like this was fixed with the latest package.
src/libraries/System.ServiceProcess.ServiceController/src/CompatibilitySuppressions.xml
Show resolved
Hide resolved
2ca177d
to
59a19a4
Compare
Just couple diffs i noticed
|
59a19a4
to
99ccd45
Compare
@ericstj looks like System.Text.Json is missing satellite assemblies. Intentionally? |
Right side is correct. Satellite assemblies should be included. |
99ccd45
to
38e8ddd
Compare
38e8ddd
to
7562d22
Compare
Thanks for the feedback @Anipik
Added dependencies for .NETCoreApp are expected as we don't trim them out anymore if the exact reference is already supplied by the shared framework. That was a feature in the pkgproj system which looked at assembly references vs. NuGet which uses ProjectReferences and PackageReferences emitted into the project.assets.json file to calculate depenencies. That behavior change is understood and fine.
I'm not yet sure what to do about those. I don't yet know how the pkgproj system handled those and how much we care keeping those excludes. @ericstj can you share some details about that? |
8b880f2
to
ab10059
Compare
OH WOW, I didn't expect that. BuildAllConfiguration leg + package testing in it completed successfully 🎉🎉🎉 |
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.
I didn't see anything blocking on review of diffs / targets. I'm OK to merge when green
<IsBaselineSuppression>true</IsBaselineSuppression> | ||
</Suppression> | ||
<Suppression> | ||
<DiagnosticId>CP0008</DiagnosticId> |
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.
This is different, but another one related to missing dependencies. NamedPermissionSet derives from PermissionSet which is part of System.Runtime. This might be interesting to look at @safern. One thing I notice is that the suppression doesn't list the interface that was removed, which means it will suppress all removals. Another thing that surprised me was that we should be able to identify that the interface is still present with the exact same name, we just couldn't be certain if it would resolve to the same definition as the one defined in netstandard.dll. I wonder if we want to tolerate that, or give it a different diagnostic?
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.
One thing I notice is that the suppression doesn't list the interface that was removed, which means it will suppress all removals.
Good catch! Should we maybe set the target to include the interface that is removed somehow?
This is different, but another one related to missing dependencies
I'll take a look at this specific scenario and see if we should consider running this rule only when we have dependencies.
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.
Do you want to track this discussion in an issue so that it doesn't get lost?
So I'm going to merge this beast in when CI is green. The suppression files are now cleaned up, no 5k+ line additions anymore and instead being true to myself by deleting more lines than adding in the PR 😄. |
<DiagnosticId>CP0001</DiagnosticId> | ||
<Target>T:System.IO.Ports.Parity</Target> | ||
<Left>lib/net461/System.IO.Ports.dll</Left> | ||
<Right>runtimes/unix/lib/netstandard2.0/System.IO.Ports.dll</Right> |
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.
@Anipik we should really look into this, I can't understand why we are comparing a net461 asset as a compile asset against a Unix runtime specific asset.
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.
When I talked with @Anipik yesterday he mentioned that this might be a NuGet bug when calling into their APIs.
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.
Do we have an issue opened yet? Can we workaround it?
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.
@Anipik is the expert on this. I'll defer to him.
Failures:
Timeouts:
|
I incorrectly added it back while resolving merge conflicts in dotnet#56719 but it was removed from global.json with dotnet#56712
Fixes #53202
Fixes #31810
Baseline nuspecs are from Preview 6 packages.
Bugs discovered while working on the PR and fixed:
TODO:
exclude="compile"
Please review per commit