NetcoreApp api#11272
Conversation
Remove all projects that are redistributing old content or building unchanged content. This includes all depproj's, the netstandard reference assembly since it had no API changes over the last release, and the net4* configurations since that was a full facade and had no change over the last release.
Remove all projects that are redistributing old content or building unchanged content.
In doing so I was also able to remove the net463 build since there was no API change over the last net4* build harvested from the package.
| <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> | ||
| <ItemGroup> | ||
| <Project Include="*\ref\**\*.*proj"> | ||
| <Project Include="*\ref\**\*.builds;*\ref\**\*.*proj"> |
There was a problem hiding this comment.
Isn't this going to cause the ref cspoj to built twice?
There was a problem hiding this comment.
Yeah, but it'll noop, same as all the project-references to the ref projects that already come from the packages and src projects. I didn't like this either, but seemed like the cleanest. I tried to write the msbuild logic that'd exclude all projects under a builds folder but I couldn't do it without a task. Alternatively we could add a builds file to every ref folder and change the convention.
There was a problem hiding this comment.
I do think adding a .builds file under the ref folder is the most consistent thing for us to do.
There was a problem hiding this comment.
I see, I can do that across the board. Note that in my final diff I don't even use the builds file, but I can set up the infrastructure so that when folks need to cross compile (eg: building new API for netcoreapp and netstandard) they can.
There was a problem hiding this comment.
I see I was reviewing individual commits. Looking at your final set of changes I like that the default is netcoreapp1.1 for these guys, and you just added the APIs straight up without #ifdefs.
I do think we should probably seed the .builds files in the ref folders so we have consistency and the cross-compile will just work if and when we need it.
|
@ericstj what is the status of this? We need to get this in for 1.1 and we should verify that no other APIs slipped through incorrectly as well. |
|
Yeah, we need to get this in for 1.1 and do a diff. I'll get to that this week. |
Fixes https://github.com/dotnet/corefx/issues/10426
This makes the API additions to interop and RegEx specific to NETCoreApp1.1
6ba152b shows the smallest change to do this while also cross-compiling.
I followed up with cleanup, then showed what things would look like if we relied on the cleanup and didn't cross-compile (since the last shipped package would have a netstandard ref DLL that is sufficient).
The packageIndex changes were only required because I was downgrading the assembly versions.
/cc @weshaggard @bartonjs @Petermarcu