-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
.NET Core SDK 2.0.3 has hard-coded version string in bundle UI #8881
Comments
Thanks @barnson , I moved it here where the SDK installer lives. |
I spent 15 minutes trying to figure out which repo it belonged in. :) |
Nice, I know. we're actually working on some repo renaming to try to make things seem a little more obvious. Not sure if it will help a ton but I know its a bit of a challenge today. |
@Petermarcu @barnson And the second arrangement: |
@wli3 I'm sure is interested in a PR :) |
@KathleenDollard can you take a look at the screenshots above and comment? I would like at least the .NET Core SDK version to match the number that will be installed on the disk for you. The number you are displaying right now does not. Also, if we are showing some dependencies numbers there, should we show others? Like the template engine, the test console and NuGet? |
IMHO it would be great to show everything what is installed similar to about box for VS, but with finer granularity. |
@SamArmand that's intentional. This will guarantee that for portable applications your application will run on any runtime starting at 2.0.0. This is to prevent cases where you update to the latest SDK and publish your app, say, to Azure before that data center installs the 2.0.3, runtime. This way, that will continue to work. If you are a self-contained app, then you need to set RuntimeFrameworkVersion 2.0.3 to target that runtime. That is currently a bug that we are working out how to solve. In any case, this is unrelated to the version we print in the installer. |
@livarcocc can't find the tracking issue now, but I was wondering why the implicit versions for the 1.* runtimes weren't raised to 1.0.8/1.1.5 in the 2.0.3 SDK - as far as I can tell it shouldn't be affected by the issue that's causing troubles for different versions for portable/self-contained (unless you want to fix the portable version to a lower version). |
@dasMulli for the same reason we don't upgrade them for the 1.1.x SDK. If someone is targeting netcoreapp1.0 or 1.1 and updates their SDK to 2.0.3 and then publishes to a hoster that hasn't updated their runtime yet, the app is broken. |
There are two aspects here
Since we are diverging the runtime and SDK, the more clarity and simplicity we can provide, the less confusion from that change. The SDK is the thing they elected to install, so I want to reiterate that number (as before) and include the runtime for clarity (again, as before). I would like to discuss what scenarios exist where the versions of Roslyn, MSBuild, F#, etc. are important to users. I would like to use that discussion to guide the right places to provide that information. I'm skeptical that a passing install complete screen is the most useful place to put this information. |
I think the installer should at maximum display versions vor included ""things"" that could also be installed on their own. When I installed a 2.2.0 CLI, it would be good to know that I got a 2.1.0 runtime and package store with it. I may remind me to download a 1.1.* / 2.0.* runtime installer as well. (at some point there was a change setting the CLI version to 15.5 which I liked since it couldn't be confused with a runtime version like 2.0.3) In contrast to that, I don't think showing the versions of roslyn, msbuild, f# and friends don't provide any actionable information. Since I cannot install a version of roslyn/msbuild/… alone, there is nothing I can do about it. |
From developer perspective it is the most vital information. SDK is targeted at developers and not consumers and having full and detailed version info on every part of it is just IMHO minimum info requirement.
Everywhere where they are relevant - we are talking about development tools which won't be released in a 2 - 3 year cadence but my hope is that it will be 1 - 3 months cadence. With that granularity we need to know every detail of tool to get relevant support, raise issue in relevant repos etc. IMHO one of the reasons why ppl have hard time finding right repos for reporting issues is lack of relevant information on runtime and sdk components and their versions. If I get any warnings or error and I have do dig up info for posting an issue it becomes particularly frustrating.
Disagree - installer and tool after installation should provide full info otherwise we paternalise developers who are anyway usually grown ups and quite fluent in parsing visual complexity associated with version numbers - if they are unable to do that most probably they will have hard time on their jobs.
Wrong assumtpion - never underestimate devs |
Ahh just forgot - all Windows SDKs provide detailed information on every tool installed in their sdks, installers, logs etc. |
I don't. I'm the first one to learn roslyn, VS, msbuild version numbers by heart. But even VS has them tucked away in a help dialog. But I really don't feel strongly about it. |
Agree - there should be an easy way to query for detailed tool info. It is very important for some scenarios where build scripts check for prerequisites or for error reporting. But it would be a separate issue. I would even suggest to have |
@4creators: I'm not suggesting hiding this data from programmers. If we had a link on the installation summary that says "For details on SDK contents" we could provide a location where you can look this information up - and access it after the fact. Would that solve your concerns? |
Hmm .. I would say that yes and no. If I want to get info this will solve the problem but if I want to go with OSS spirit than the answer is no - this will not solve the problem. I think very good example of what I am thinking about is an attempt to install some toolchain via Another good example would be to have a look on the scope of info which will be provided by Linux distros during install once they will be able to build SDK fully from source and .NET Core will meet oss standards of the distros (what is not the case currently see issue dotnet/source-build#187). I bet it would be info on every tool installed. |
@4creators Looking at the spirit of your comments, I'm even less happy with the version info in the completion dialog, because you talked about having that information before or during install. Supplying this info after install does not meet that spirit. If the right info is available somewhere online, it's available before, immediately after, or two months later, that better meets the spirit of ensuring that programmers have the right information to make the right decision at the right time. So I suggest we
|
@KathleenDollard - once a final plan is decided up, the changes are needed in the release/15.5 (soon to be release/2.1) |
Quite offtopic, @livarcocc, but...
Where can I follow the progress on that bug? Is there any workaround or is it possible to set it manually? cc/ @danmosemsft, who tracked that bug until it was solved in v2.0.3 release |
Yes, you can set |
Thanks :) |
I agree with this plan. The original list of installed components is good enough for the installer. As @dasMulli said, those are the things that actually get installed and what I should be conscious about. The internal components are interesting from a debugging perspective but serve no real use while installing. So if the SDK installer contains the .NET Core SDK, the .NET Core Runtime, and the Runtime Package Store, then those should list their actual version numbers. Then, I would like to see In addition, I think it would be very helpful to have some resource online to see exactly which SDK version includes what versions of those bits. So that when someone refers to a specific SDK version, I have a way to look up what versions are involved (e.g. to see whether specific Roslyn features are available). |
@barnson commented on Thu Nov 16 2017
Steps to reproduce
Expected behavior
The
Success
page tells me I installed version 2.0.3.Actual behavior
The loc string
FirstTimeWelcomeMessage
used on theSuccess
page in the bundle has hard-coded2.0.0
strings.Environment data
n/a
The text was updated successfully, but these errors were encountered: