runtime: Mention --roll-forward switch in error message when no matching frameworks are found

From https://twitter.com/KirillOsenkov/status/1454140410930950144 and the thread in https://twitter.com/akoeplinger/status/1454168539301036034

Today if you run an app but don’t have the right shared framework installed we default to the “minor” roll forward policy and print this error message: image

We could improve the user experience if we mentioned the --roll-forward=major switch for the dotnet host so the user can opt-in to running on the later framework, rather than needing to install the old framework.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 17 (17 by maintainers)

Most upvoted comments

I think we could also include an aka link and point to the docs about roll forward.

Note that there are number of other potential solutions when you see this error. For example, the actual problem may be that one has <TargetFramework>net5.0</TargetFramework> in the code copied from stackoverflow that needs to be changed to <TargetFramework>net6.0</TargetFramework>.

And the full error message has a link for how you can install the missing major runtime version already: We treat roll forward as the fallback option that should be only used by experts who know what they are doing.

Maybe we could include that in the error message? Making emphasis that the recommended solution is to install the specified framework, but that for more advanced scenarios roll forward could be used?