Skip to content

Conversation

@dagood
Copy link
Member

@dagood dagood commented Oct 1, 2019

Add a shared framework generation tooling package. This PR is an initial move of targets/props and tasks from Core-Setup to Arcade that allows me to separate WindowsDesktop out of Core-Setup without duplicating this chunk.

For https://github.com/dotnet/core-setup/issues/4787 and https://github.com/dotnet/core-setup/issues/5732.

I may add more to this SDK to reduce duplication further (once I see how much is left in the new WindowsDesktop repo), however I do not recommend using this SDK in other repos like ASP.NET Core. That is, this is not for #2704. It is a step in that direction (now I know how to author SDK packages) however this package may not be incrementally improvable to get us there.

Per #4015 (comment), my plan is to get Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk in now to solve the immediate need, and later create a Microsoft.DotNet.SharedFramework.Sdk package (with probably no compatibility) that is reasonably shareable by ASP.NET Core.

Also, note that since this is an SDK package, its version needs to be put into global.json. To get that auto-updated by Darc/Maestro++, I filed #4015 and preemptively plugged the potential package IDs into Maestro++ with dotnet/arcade-services#662. So, I may need to manually update this package until that's deployed, but I'm not concerned.


The first commit is a simple move of code from Core-Setup to Arcade. I don't plan on making any fixes to the code here beyond what's necessary to get it working as an SDK and building in the Arcade ecosystem. I recommend reviewing the second commit, where I added the SDK project structure and made tweaks to work as an SDK.

The package ends up like this, comparable to the structure of Microsoft.NET.Sdk:

  • sdk\Sdk.props
  • sdk\Sdk.targets
  • targets\...
  • tools\net472\...
  • tools\netcoreapp2.1\...

@dagood dagood requested a review from MichaelSimons October 1, 2019 15:51
@dagood dagood self-assigned this Oct 1, 2019
@markwilkie
Copy link
Member

cc/ @chcosta @alexperovich @tmat

@ViktorHofer
Copy link
Member

I was hoping that this PR would also contain other parts of core-setup that are necessary to build a shared framework. We are currently keeping copies of these files in the CoreFxTesting package and would like to get rid of them:

@dagood
Copy link
Member Author

dagood commented Oct 1, 2019

Yeah, this is very targeted at unblocking 5.0 repo consolidation. I doubt it's usable for anything else at the moment.

@dagood
Copy link
Member Author

dagood commented Oct 1, 2019

Any more comments? I'm planning to merge this at noon Pacific 10/2 otherwise, to try to make sure dotnet/windowsdesktop doesn't end up with a dev build of this package.

@dagood dagood merged commit 1924d7e into dotnet:master Oct 2, 2019
@dagood dagood deleted the shared-sfx-tools branch October 2, 2019 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants