Closed
Description
steps to port projects
Steps to start porting projects
- Remove PkgProj folder
- set
<IsPackable>true</IsPackable>
for src proj - Move the PackageDescription from the project's Directory.Build.props file into the csproj.
- Run the pack command
Examine the package
- use /p:GenerateCompatibilitySuppressionFile=true to generate suppressions file. Examine the suppresions before automatically suppressing them.
- https://github.com/Anipik/PackagePortTester to validate the new and old packages are same
- if there are any extra dependencies, see if the dependency is actuall needed. If not, remove it or add a condition so that it doesn't apply to the TargetFramework. If the ProjectReference is to an inbox framework assembly that does not have a package add
PrivateAssets="all"
to theProjectReference
. - if there are missing references for a compatible framework, add the project reference and a comment explaining why.
- Removing placeholder frameworks is fine. Do not remove placeholder files though (ie Xamarin).
- For any extra files compaterror, analyserfiles you will have to hook up to the new pack command (support added for analyzers, & compat errors)
- Add git diffs to the pr for reviewers.
Following is the list of packages that need to be ported to dotnet pack task
- Microsoft.AspNetCore.Internal.Transport Convert AspNetCore transport pkgproj to Pack task #56674
- Microsoft.Bcl.AsyncInterfaces: Replace all remaining pkgprojs with NuGet Pack task #56712
- Microsoft.Diagnostics.Tracing.EventSource.Redist: Replace all remaining pkgprojs with NuGet Pack task #56712
- Microsoft.IO.Redist: Replace all remaining pkgprojs with NuGet Pack task #56712
- Microsoft.Win32.Registry.AccessControl: Replace all remaining pkgprojs with NuGet Pack task #56712
- Microsoft.Win32.SystemEvents: Replace all remaining pkgprojs with NuGet Pack task #56712
- Microsoft.Windows.Compatibility Move Windows Compat pack to NuGet pack task #56686
- Microsoft.XmlSerializer.Generator: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.CodeDom: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Collections.Immutable: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.ComponentModel.Composition: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.ComponentModel.Composition.Registration: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Composition: Replace Composition* pkgprojs with NuGet Pack task #55208
- System.Composition.AttributedModel: Replace Composition* pkgprojs with NuGet Pack task #55208
- System.Composition.Convention: Replace Composition* pkgprojs with NuGet Pack task #55208
- System.Composition.Hosting: Replace Composition* pkgprojs with NuGet Pack task #55208
- System.Composition.Runtime: Replace Composition* pkgprojs with NuGet Pack task #55208
- System.Composition.TypedParts: Replace Composition* pkgprojs with NuGet Pack task #55208
- System.Configuration.ConfigurationManager: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Data.Odbc: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Data.OleDb: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Diagnostics.EventLog: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Diagnostics.DiagnosticSource: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Diagnostics.PerformanceCounter
- System.DirectoryServices: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.DirectoryServices.AccountManagement: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.DirectoryServices.Protocols: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Drawing.Common: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Formats.Asn1: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Formats.Cbor: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.IO.Packaging: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.IO.Pipelines: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.IO.Ports: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Management: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Memory.Data: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Net.Http.Json: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Net.Http.WinHttpHandler: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Numerics.Tensors: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Reflection.Context: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Reflection.Metadata: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Reflection.MetadataLoadContext: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Resources.Extensions: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Runtime.Caching: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Runtime.CompilerServices.Unsafe: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Security.Cryptography.Pkcs: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Security.Cryptography.ProtectedData: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Security.Cryptography.Xml: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Security.Permissions: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.ServiceModel.Syndication: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.ServiceProcess.ServiceController: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Speech: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Text.Encoding.CodePages: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Text.Encodings.Web: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Text.Json: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Threading.AccessControl: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Threading.Channels: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Threading.Tasks.Dataflow: Replace all remaining pkgprojs with NuGet Pack task #56712
- System.Windows.Extensions