microsoft / devhome

The new Dev Home experience for Windows!
https://aka.ms/devhomedocs
MIT License
3.56k stars 311 forks source link

[Environments reliability] environment page on navigation doesn't detect when extension is turned back on, shows error #3354

Closed crutkas closed 2 weeks ago

crutkas commented 2 months ago

Dev Home version

0.1501.547.0

Windows build number

10.0.22631.3874

Other software

OS Build Version: 10.0.22631.3874.amd64fre.ni_release.220506-1250 .NET Version: .NET 8.0.6

Steps to reproduce the bug

  1. start dev home without azure or hyper-v extensions enabled
  2. go to environment tab
  3. Go to settings to enable hyper-v
  4. go back to environment tab
  5. Nothing is reflected, still have turn stuff on

Expected result

After turning back on Hyper-V, environments would detect it

Actual result

image image

Included System Information

CPU: Intel(R) Core(TM) Ultra 7 165H Physical Memory: 31.64GB (12.58GB free) Processor Architecture: x64

Included Extensions Information

Extensions: Microsoft.Windows.DevHomeGitHubExtension.Canary_0.1500.530.0_x648wekyb3d8bbwe (Dev Home GitHub Extension (Canary)) Microsoft.Windows.DevHomeAzureExtension.Canary_0.1000.530.0_x648wekyb3d8bbwe (Dev Home Azure Extension (Canary)) Microsoft.Windows.DevHome_0.1501.533.0_x648wekyb3d8bbwe (Core Widget Extension) Microsoft.Windows.DevHome_0.1501.533.0_x648wekyb3d8bbwe (Hyper-V Extension) Microsoft.Windows.DevHomeGitHubExtension_0.1500.533.0_x648wekyb3d8bbwe (Dev Home GitHub Extension (Preview)) Microsoft.Windows.DevHome.Canary_0.1501.547.0_x648wekyb3d8bbwe (Core Widget Extension) Microsoft.Windows.DevHome.Canary_0.1501.547.0_x64__8wekyb3d8bbwe (Hyper-V Extension)

Widget Service: MicrosoftWindows.Client.WebExperience_524.18000.0.0_x64__cw5n1h2txyewy

huzaifa-d commented 1 month ago

This is by design - Consider the case where the user has the extensions enabled and has the page loaded. The page shouldn't be reloaded automatically when the user goes to a different tab/page and returns. It is like a browser tab. It isn't expected to auto-refresh. Additionally, the string on the page specifically already mentions the fact that the page will be needed to be refreshed afterwards.

crutkas commented 1 month ago

100% disagree. If i turned on Hyper-v, what if i had a VM running, shouldn't that have updated and been present? Why can't i instantly go into it then. If i wanted to create a VM, i have to manually refresh?

This flow is the same as if i installed an extension or uninstalled one as well. That page should be updated.

huzaifa-d commented 1 month ago
  1. We clearly state that the page needs to be refreshed.
  2. You can instantly go into it after enabling and refreshing the page.
  3. If you created a VM, the flow brings you back to this page and it is auto refreshed.

@shakersMSFT Thoughts?

shakersMSFT commented 1 month ago

I agree with Clint here, I think it would be a better experience for the user to not need to refresh the page themselves when changes have occurred. Is there significant delay if we refresh the page when they navigate to it or at least do a check on the current state of the environment extensions when the user lands on the page and if there is a change then we refresh it for them? Happy to chat about what options we have to ensure performance doesn't take a hit to improve the experience.