Skip to content
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

Make the PackageReference support general purpose for all languages #2491

Open
davkean opened this issue Jun 23, 2017 · 6 comments

Comments

@davkean
Copy link
Member

commented Jun 23, 2017

We added support for <PackageReference /> this release, but other languages/project types are interested in consuming it including C++, JavaScript and NuGetizer.

The work required, that I can see is:

  • General purpose the PackageRestoreInitiator and make it work for all project types. Done - works via PackageReferences capability (16.1)
  • General purpose the ProjectAssetsFileWatcher and make it work for all project types. Done - works via PackageReferences capability (16.1)
  • General purpose the DependenciesTree (it's probably already there). Move it to CPS or somewhere core. [Managed or CPS?]
  • Figure out how all these project types pick up the NuGet SDK tasks/targets that produce assets (references) for consumption during build and assets that are used to populate the DependenciesTree. [Managed Or CPS or SDK?]
  • Do we need language-specific generation of <Reference/>? [C++/WWA]
  • C++ will need to write their own DependenciesTree as they own their hierarchy. [C++]
  • Does NuGet need to specially handle these new project types specially? [NuGet] - Yes, we've found they don't automatically work.
@kzu

This comment has been minimized.

Copy link

commented Feb 5, 2018

Is there an update on when the "Microsoft.PackageDependency.Sdk` will ship @natidea?

I'm on 15.6 Preview 3 but it's not there yet :(

@natidea

This comment has been minimized.

Copy link
Contributor

commented Feb 12, 2018

Is there an update on when the "Microsoft.PackageDependency.Sdk` will ship

@kzu our most recent discussions on this have focused on refactoring these tasks because of performance concerns. The SDK team has already made changes to the command line build to avoid this code path because it was too expensive. For the dependencies tree, we are considering several options including perhaps bypassing MSBuild to improve the performance profile. /cc @nguerrera @livarcocc

I don't have any other updates yet, but will post something as our plans unfold.

@davkean davkean modified the milestones: 15.7, Unknown Mar 21, 2018
@kfertitta

This comment has been minimized.

Copy link

commented Oct 9, 2018

Is there an update on this issue? We have a custom project system for which we really need to support PackageReference. We'd be happy to require the latest shipping VS version as the minimal version, but it's not clear if support is yet available.

Thanks in advance.

@kzu

This comment has been minimized.

Copy link

commented Dec 5, 2018

Ditto, would love to see this happen 👍

@jjmew jjmew added the Triaged label Jan 14, 2019
@DevKumar4Git

This comment has been minimized.

Copy link

commented Mar 28, 2019

We are providing guidance to package build tools as NuGet & use package reference to pull it down while using build/restore.
https://docs.microsoft.com/en-us/nuget/create-packages/creating-a-package#including-msbuild-props-and-targets-in-a-package

If CPS doesn't support this for custom project types, then its an adoption blocker & lot of overhead for developers who intend to quickly use this to build project systems. Would love to get this prioritized or hear about a workaround that can be easily removed once the support comes back.

@amis92

This comment has been minimized.

Copy link

commented Apr 24, 2019

Since it's a blocker for sfproj supporting SDK-style, shouldn't this be triaged a bit higher than 'Unknown/Backlog'?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
8 participants
You can’t perform that action at this time.