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

Set the runtime framework version based on the target framework version #622

Closed

Conversation

dsplaisted
Copy link
Member

...instead of defaulting to the version of the Microsoft.NETCore.App package reference

Some of the changes in #450 were based on the belief that a PackageReference could be set as ReadOnly to prevent the UI from offering updates to it. I am not sure how I got the impression that this had been finished, as right now it is still only a feature proposal: NuGet/Home#4044

This means that currently updates for the Microsoft.NETCore.App package reference will be offered in the package manager UI, and if an app targets netcoreapp1.0 but updates to use version 1.1.0 of the package, that the app will compile against .NET Core 1.0 but declare a dependency on .NET Core 1.1 in its runtimeconfig.json file. This PR:

  • Sets the runtime framework version based on the target framework version instead of the version of the Microsoft.NETCore.App package that is referenced
  • References version 1.1.0 of the Microsoft.NETCore.App package by default for all projects. This means that updates won't be offered for new projects, hopefully reducing confusion about the difference between the target framework version and the version of the package referenced.

...instead of defaulting to the version of the Microsoft.NETCore.App package reference
@dsplaisted
Copy link
Member Author

Tagging @ericstj, @weshaggard, @nguerrera, @srivatsn, @natidea

@dsplaisted dsplaisted changed the base branch from master to dev15-rc3 January 10, 2017 15:39
@nguerrera
Copy link
Contributor

I recall @ericstj hitting more than incorrect runtime version in json with the TFM and package mismatch, but can't find the details right now.

Has corefx made a deliberate call that the path forward is to support old TFM in new packages or (as I was getting the impression) to disable that moving forward?

Does the version of the package you reference at compilation time have any impact on LTS support level or is it purely a function of the bits you use at runtime?

Do we have adequate test coverage for both standalone and portable apps for this?

@dsplaisted
Copy link
Member Author

I recall @ericstj hitting more than incorrect runtime version in json with the TFM and package mismatch, but can't find the details right now.

I think this is what you're referring to: https://github.com/dotnet/corefx/issues/14696#issuecomment-269707955. I believe this will also fix that type of issue.

@ericstj
Copy link
Member

ericstj commented Jan 10, 2017

Just to be clear, I don't think CoreFx is the owner of POR here. I think we need some PMs to sign off on what we want the behavior to be when you use an old TFM with a newer NETCore.App package. As has been shown current SDK behavior of assuming sharedFramework == package version and allowing the old TFM assets to go app-local is broken. One fix is to derive shared framework version from TFM and allow the user or some package to override it: that's what this change does. /cc @terrajobst @blackdwarf @piotrpMSFT

@dsplaisted
Copy link
Member Author

I've incorporated these changes (slightly modified based on discussion) into #633

@dsplaisted dsplaisted closed this Jan 13, 2017
mmitche pushed a commit to mmitche/sdk that referenced this pull request Jun 5, 2020
…0190423.3 (dotnet#622)

- Microsoft.AspNetCore.Mvc.Analyzers - 3.0.0-preview6-19223-03
- Microsoft.AspNetCore.Mvc.Api.Analyzers - 3.0.0-preview6-19223-03
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