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

Breaking change: Update FrameworkName to ".NET" #33680

Closed
richlander opened this issue Mar 17, 2020 · 18 comments · Fixed by #34615
Closed

Breaking change: Update FrameworkName to ".NET" #33680

richlander opened this issue Mar 17, 2020 · 18 comments · Fixed by #34615
Assignees
Labels
area-System.Runtime breaking-change Issue or PR that represents a breaking API or functional change over a prerelease.
Milestone

Comments

@richlander
Copy link
Member

See: https://github.com/dotnet/runtime/blob/master/src/libraries/System.Runtime.InteropServices.RuntimeInformation/src/System/Runtime/InteropServices/RuntimeInformation/RuntimeInformation.cs#L11

This code produces this output today (for 5.0):

.NET Core info
Version: 5.0.0
FrameworkDescription: .NET Core 5.0.0-preview.1.20120.5
CoreCLR Build: 5.0.0-preview.1.20120.5
CoreCLR Hash: 3c523a6
CoreFX Build: 5.0.0-preview.1.20120.5
CoreFX Hash: 3c523a6

@Dotnet-GitSync-Bot
Copy link
Collaborator

I couldn't add an area label to this Issue.

Checkout this page to find out which area owner to ping, or please add exactly one area label to help train me in the future.

@Dotnet-GitSync-Bot Dotnet-GitSync-Bot added the untriaged New issue has not been triaged by the area owner label Mar 17, 2020
@richlander richlander added area-System.Runtime blocking-RTM breaking-change Issue or PR that represents a breaking API or functional change over a prerelease. labels Mar 17, 2020
@richlander richlander added this to the 5.0 milestone Mar 17, 2020
@jkotas jkotas self-assigned this Mar 17, 2020
monojenkins pushed a commit to monojenkins/mono that referenced this issue Mar 17, 2020
jkotas added a commit that referenced this issue Mar 28, 2020
jkotas added a commit to jkotas/runtime that referenced this issue Apr 7, 2020
@danmoseley
Copy link
Member

@jkotas do you plan to update markdowns in this repo also?

@jkotas
Copy link
Member

jkotas commented Apr 7, 2020

@jkotas do you plan to update markdowns in this repo also?

I have done a pass over the repo docs in #33694

@jkotas
Copy link
Member

jkotas commented Apr 7, 2020

I am sure there is more cleanup that can be done in the repo docs and comments, but I think we won't be able to fix all references to .NET Core. For example, if a comment talks about .NET Core 2.0, it should stay as .NET Core 2.0. Changing it to .NET 2.0 would be ambiguous (does it mean .NET Framework 2.0 or .NET Core 2.0?)

jkotas added a commit that referenced this issue Apr 7, 2020
@danmoseley
Copy link
Member

danmoseley commented Apr 8, 2020

@jkotas there are still 244 hits for .NET Core in docs/**md. I take your point about ambiguity with .NET Framework. But if a year or two from now someone comes fresh to this repo, and wants to find out about .NET 5+, should we have to teach them what .NET Core means? For example how should they interpret ".NET Core host probing". Should we explain that this means ".NET Core and .NET 5+ host probing" ? Similarly eg "ECMA 372 is supported by the .NET Framework, but not .NET Core." .. should that say something else now?

@richlander this seems like a broader question, what is the best way to refer to the "new .NET architecture" that started with .NET Core 1.0?

@danmoseley danmoseley reopened this Apr 8, 2020
@danmoseley
Copy link
Member

danmoseley commented Apr 8, 2020

I don't mind making the markdown edits BTW, if it's clear what we want to do.

@jkotas
Copy link
Member

jkotas commented Apr 8, 2020

if a year or two from now someone comes fresh to this repo, and wants to find out about .NET 5+

I agree that the need to learn about .NET Core should and will be fading away over time, but .NET Core is always going to be part of the history and it won't be ever possible to erase it completely. For example, I expect that it is always going to be in the repo glossary.

all .NET Core assemblies are strong-named

I would reword this one as "all .NET Runtime assemblies are strong named".

.NET Core host probing

I think this one would be fine to change to ".NET host probing". There is very low risk of ambiguity with .NET Framework.

ECMA 372 is supported by the .NET Framework, but not .NET Core

This should say "ECMA 372 is supported by the .NET Runtime on Windows platforms only."

Other examples:

For .NET Core version 1.x and 2.0.x

This should either stay as is; or the whole paragraph should be deleted if it is no longer relevant.

select .NET Core from the selection dropdown

This should stay as is until the UX is changed.

@danmoseley
Copy link
Member

Can you clarify what you mean by ".NET Runtime" in your examples? I assume you don't mean it to include .NET Framework. Does it mean ".NET Core and .NET 5+" ? (I do not know where we support ECMA372)

@jkotas
Copy link
Member

jkotas commented Apr 8, 2020

I think ".NET runtime" is a good name to use for a general reference to .NET Framework or .NET Core. We have used this name in .NET Framework days too.

where we support ECMA372

.NET Framework 2.0+, .NET Core 3.0+, .NET 5+

@richlander richlander changed the title Update FrameworkName to ".NET" Breaking change: Update FrameworkName to ".NET" May 11, 2020
@danmoseley
Copy link
Member

danmoseley commented Jun 11, 2020

Seems enough was done here cc @richlander

@richlander
Copy link
Member Author

Sounds good. Thanks for all the work, Jan! Looks great.

@ericstj
Copy link
Member

ericstj commented Jul 24, 2020

@ViktorHofer do we have a breaking change notice for the TFM change? If not can we add one here: https://github.com/dotnet/docs/issues/new?template=dotnet-breaking-change.md

@ViktorHofer
Copy link
Member

We don't have one yet AFAIK. What would be the breaking change here? That we rename the short target framework moniker from netcoreapp to net? cc @terrajobst

@danmoseley
Copy link
Member

Could break anyone testing Framework name (maybe various API) eg gfoidl/Stochastics#88

@ViktorHofer
Copy link
Member

Sorry I was reasoning to Eric's question. I understand that renaming the FrameworkName is a breaking change. I guess even for the TargetFrameworkMoniker, which shouldn't be read/persisted anywhere as it's inferred properties should be used, a breaking change notice makes sense.

@ericstj
Copy link
Member

ericstj commented Jul 27, 2020

We can enumerate the places the new moniker may appear. The thing @danmosemsft mentioned actually doesn't change. We left it at .NETCoreApp:

[assembly: TargetFramework(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")]

The same seems to be true for AppDomainSetup.TargetFrameworkName.

@jkotas changed what RuntimeInformation returns here:
410b992

Perhaps that's the only place? It might be worthwhile to just talk in general about the change and how it works and how it is largely non-breaking.

@danmoseley danmoseley added the needs-breaking-change-doc-created Breaking changes need an issue opened with https://github.com/dotnet/docs/issues/new?template=dotnet label Jul 30, 2020
@ViktorHofer
Copy link
Member

Filed the breaking change issue: dotnet/docs#20958

@ericstj ericstj removed the needs-breaking-change-doc-created Breaking changes need an issue opened with https://github.com/dotnet/docs/issues/new?template=dotnet label Oct 7, 2020
@ericstj
Copy link
Member

ericstj commented Oct 7, 2020

Thanks @ViktorHofer, removed the label.

@ghost ghost locked as resolved and limited conversation to collaborators Dec 10, 2020
@tannergooding tannergooding removed the untriaged New issue has not been triaged by the area owner label Jun 24, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-System.Runtime breaking-change Issue or PR that represents a breaking API or functional change over a prerelease.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants