Skip to content

VS OE: return all well-known project metadata in a well-defined object#3679

Merged
dtivel merged 1 commit intodevfrom
dev-dtivel-oe-pmui-projectmetadata
Sep 21, 2020
Merged

VS OE: return all well-known project metadata in a well-defined object#3679
dtivel merged 1 commit intodevfrom
dev-dtivel-oe-pmui-projectmetadata

Conversation

@dtivel
Copy link
Contributor

@dtivel dtivel commented Sep 21, 2020

Bug

Fixes: NuGet/Home#10055
Regression: No

Fix

Details: Send all well-known project metadata back at once in a IProjectMetadataContextInfo object.

I received feedback that retrieving project metadata one value at a time is suboptimal for high latency connections and does not follow VS OE API design guidance. This approach resolves that concern while at the same time fixing NuGet/Home#10055.

A logical next step might be to cache IProjectMetadataContextInfo client side, but that comes with it's own set of problems.

I moved formatter tests under a Formatters folder to have symmetry with the product project.

Testing/Validation

Tests Added: Yes

@dtivel dtivel requested a review from a team as a code owner September 21, 2020 05:48
&& framework.IsSpecificFramework)
if (framework.IsSpecificFramework)
{
frameworks.Add(framework.DotNetFrameworkName);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Out of scope for this PR, but use of NuGetFramework.DotNetFameworkName can have unexpected results with .NET 5 TFMs when platforms are used, like net5.0-windows.

If you see other usage of it, it may be worthwhile to take note. @zkat, perhaps we need to do a find all references to DotnetFrameworkName and determine which ones might cause NuGet to not work correctly in .NET 5.

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.

VS OE: do not use object type for project metadata values

4 participants