-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Auto-generate the reference assemblies and separate type forwards #35557
Conversation
This reverts commit 3acf74a.
src/System.Runtime.InteropServices/ref/System.Runtime.InteropServices.cs
Show resolved
Hide resolved
src/System.ComponentModel.TypeConverter/ref/System.ComponentModel.TypeConverter.csproj
Show resolved
Hide resolved
src/System.Globalization.Extensions/ref/System.Globalization.Extensions.Forwards.cs
Outdated
Show resolved
Hide resolved
What is the diff that you have checked? This does look like a zero-diff in generate binaries because of you are removing some attributes. |
src/System.ComponentModel.TypeConverter/ref/System.ComponentModel.TypeConverter.Forwards.cs
Outdated
Show resolved
Hide resolved
src/CoreFx.Private.TestUtilities/src/System/PlatformDetection.Windows.cs
Show resolved
Hide resolved
I checked the APIs under bin\ref\netcoreapp3.0 using the API Reviewer.
API reviewer wasn't capturing attribute changes.
To validate, I ran API Compat against master and this branch and fixed remaining attribute issues that came up from that. For netcoreapp3.0/some uap refs, there are no api compat issues from this change. For netfx (specifically), there are some issues around |
| @@ -1,27 +1,7 @@ | |||
| // Licensed to the .NET Foundation under one or more agreements. | |||
| // The .NET Foundation licenses this file to you under the MIT license. | |||
| // See the LICENSE file in the project root for more information. | |||
| // ------------------------------------------------------------------------------ | |||
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.
nit: empty file
ericstj
left a comment
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've spot checked the diff and looked through for some specific issues and it seems ok. Please be sure to run API-compat runs on the ref folders to ensure things are clean. Consider inverse runs as well since you expect this to have no changes backwards as well.
I compared all the refs except netcoreapp and uap (+ inverse) for master vs branch. The netcoreapp/uap ones are blocked on dotnet/arcade#2122 I was able to run the ApiCompat on smaller chunks of the ref. For netfx (net45 to net471) there is some compat issue with |
|
Any other feedback or can I merge this in now? |
Verified with dotnet/arcade#2133 that there are no ApiCompat issues for those either. |
|
…tnet/corefx#35557) * Auto-generate the reference assemblies * Add back type forwards. * Revert "Add back type forwards." This reverts commit dotnet/corefx@3acf74a. * Add back TypeForwardedTo in .Forward.cs files * Add new type forward files to the csproj files * Add back if-defs and move TestUtilities comment from ref to source * Remove duplicate definitions, delete unnecessary manual files, * Fix build breaks * Add back missing AsyncMethodBuilderAttr to S.Runtime ref * Fix typo between XmlDocument and XPath.XDocument * Add type forward fild missed from previous commit * Fix ECDiffieHellmanCngPublicKey internal ctor for netfx 4.6.1 * Remove "this type was moved to comments" from the type forwards. * Add back the Xml and Debugger* attributes to Xml.ReaderWriter * Add back struct layout attributes * Add back attributes missing (highlighted from api compat) * Add missing toolbox item attribute in s.data.common. * Add missing struct layout attributes and remove unnecessary additions * Add back InterfaceTypeAttribute Commit migrated from dotnet/corefx@16689aa
…tnet/corefx#35557) * Auto-generate the reference assemblies * Add back type forwards. * Revert "Add back type forwards." This reverts commit dotnet/corefx@3acf74a. * Add back TypeForwardedTo in .Forward.cs files * Add new type forward files to the csproj files * Add back if-defs and move TestUtilities comment from ref to source * Remove duplicate definitions, delete unnecessary manual files, * Fix build breaks * Add back missing AsyncMethodBuilderAttr to S.Runtime ref * Fix typo between XmlDocument and XPath.XDocument * Add type forward fild missed from previous commit * Fix ECDiffieHellmanCngPublicKey internal ctor for netfx 4.6.1 * Remove "this type was moved to comments" from the type forwards. * Add back the Xml and Debugger* attributes to Xml.ReaderWriter * Add back struct layout attributes * Add back attributes missing (highlighted from api compat) * Add missing toolbox item attribute in s.data.common. * Add missing struct layout attributes and remove unnecessary additions * Add back InterfaceTypeAttribute Commit migrated from dotnet/corefx@16689aa
Context from #35474 (comment)
Auto-generated the reference assemblies using
/t:GenerateReferenceSourceon all projects that already contained a/ref/directory.https://github.com/dotnet/corefx/blob/master/Documentation/coding-guidelines/updating-ref-source.md
The goal is to normalize the reference assembly, so that subsequent "real" changes are easier to review.
.Forwards.csfile to adhere to a convention and to keep future auto-generated refs less noisy.Partially addresses https://github.com/dotnet/corefx/issues/29737
There is no additional/removal of APIs in this change. The diff between this PR and master is empty.
cc @jkotas, @stephentoub, @ericstj, @danmosemsft, @bartonjs