Skip to content

Conversation

@dtivel
Copy link
Contributor

@dtivel dtivel commented Oct 30, 2020

Bug

Fixes: NuGet/Home#10112
Regression: Yes

  • Last working version: some build before CodeSpaces feature branch merged
  • How are we preventing it in future:

Fix

Details: Before this change, selecting all projects as targets for a package install in the PM UI Browse tab would trigger a SelectedChanged event for each project. Each event would recalculate the checked state of the "select all projects" checkbox, create a versions list, and update the enable state of the install/uninstall buttons. After this change, the work previously done by the event handler is executed once after all projects have been selected or unselected.

With the NuGet.Client solution (82 projects), the performance of checking the "select all projects" checkbox went from 364 ms to 13 ms.

Testing/Validation

Tests Added: No
Reason for not adding tests: UI performance scenario
Validation: manual validation

@dtivel dtivel requested a review from a team as a code owner October 30, 2020 14:39
Copy link
Contributor

@rrelyea rrelyea left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good.

@donnie-msft - should ideally look at changes in these components as well.

@rrelyea rrelyea requested a review from a team October 30, 2020 18:15
@dtivel dtivel merged commit 73a9e48 into dev Oct 30, 2020
@dtivel dtivel deleted the dev-dtivel-investigate-solution-pm-ui-perf branch October 30, 2020 20:27
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.

PM UI: selecting projects in a solution-level context is slow

4 participants