-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
cherry-pick(#7057): Memory leak fixes for several views #7070
Conversation
* Change the mount utility to use Vue's createApp and defineComponent methods * Fix display layout memory leaks caused by `getSelectionContext` * fix some display layout leaks due to use of slots * Fix imagery memory leak (removed span tag). NOTE: CompassRose svg leaks memory - must test on firefox to see if this is a Chrome leak. * Fix ActionsAPI action collection and applicable actions leak. * Fix flexible layout memory leaks - remove listeners on unmount. NOTE: One type of overlay plot (Rover Yaw) is still leaking. * pass in the el on mount * e2e test config and spec changes * Remove mounting of limit lines. Use components directly * test: remove `.only()` * Fix display layout memory leaks * Enable passing tests * e2e README and appActions should be what master has. * lint: add word to cspell list * lint: fixes * lint:fix * fix: revert `el` change * fix: remove empty span * fix: creating shapes in displayLayout * fix: avoid `splice` as it loses reactivity * test: reduce timeout time * quick fixes * add prod mode and convert the test config to select the correct mode * Fix webpack prod config * Add launch flag for exposing window.gc * never worked * explicit naming * rename * We don't need to destroy view providers * test: increase timeout time * test: unskip all mem tests * fix(vue-loader): disable static hoisting * chore: run `test:perf:memory` * Don't destroy view providers * Move context menu once listener to beforeUnmount instead. * Disconnect all resize observers on unmount * Delete Test vue component * Use beforeUnmount and remove splice(0) in favor of [] for emptying arrays * re-structure * fix: unregister listener in pane.vue * test: tweak timeouts * chore: lint:fix * test: unskip perf tests * fix: unregister events properly * fix: unregister listener * fix: unregister listener * fix: unregister listener * fix: use `unmounted()` * fix: unregister listeners * fix: unregister listener properly * chore: lint:fix * test: fix imagery layer toggle test * test: increase timeout * Don't use anonymous functions for listeners * Destroy objects and event listeners properly * Delete config stores that are created by components * Use the right unmount hook. Destroy mounted view on unmount. * Use unmounted, not beforeUnmounted * Lint fixes * Fix time strip memory leak * Undo unneeded change for memory leaks. * chore: combine common webpack configs --------- Co-authored-by: Jesse Mazzella <[email protected]> Co-authored-by: John Hill <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CodeQL found more than 10 potential problems in the proposed changes. Check the Files changed tab for more details.
Current Playwright Test Results Summary✅ 138 Passing - Run may still be in progress, this comment will be updated as current testing workflow or job completes... (Last updated on 09/20/2023 05:58:59pm UTC)
|
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Restricted Notebook with a page locked and with an embed @addinit Disallows embeds to be deleted if page locked @addinit
Retry 1 • Initial Attempt |
1.83% (2)2 / 109 runsfailed over last 7 days |
35.78% (39)39 / 109 runsflaked over last 7 days |
Current Playwright Test Results Summary
✅ 14 Passing -
Run may still be in progress, this comment will be updated as current testing workflow or job completes...
(Last updated on 09/20/2023 05:58:59pm UTC)
Run Details
Running Workflow e2e-couchdb on Github Actions
Commit: 053f1a8
Started: 09/20/2023 05:46:52pm UTC
⚠️ Flakes
📄 functional/plugins/displayLayout/displayLayout.e2e.spec.js • 1 Flake
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Display Layout When multiple plots are contained in a layout, we only ask for annotations once @couchdb
Retry 2 • Retry 1 • Initial Attempt |
8.70% (4)4 / 46 runsfailed over last 7 days |
36.96% (17)17 / 46 runsflaked over last 7 days |
Issue #4406
Issue #4209
Change the mount utility to use Vue's createApp and defineComponent methods
Fix display layout memory leaks caused by
getSelectionContext
fix some display layout leaks due to use of slots
Fix imagery memory leak (removed span tag). NOTE: CompassRose svg leaks memory - must test on firefox to see if this is a Chrome leak.
Fix ActionsAPI action collection and applicable actions leak.
Fix flexible layout memory leaks - remove listeners on unmount. NOTE: One type of overlay plot (Rover Yaw) is still leaking.
pass in the el on mount
e2e test config and spec changes
Remove mounting of limit lines. Use components directly
test: remove
.only()
Fix display layout memory leaks
Enable passing tests
e2e README and appActions should be what master has.
lint: add word to cspell list
lint: fixes
lint:fix
fix: revert
el
changefix: remove empty span
fix: creating shapes in displayLayout
fix: avoid
splice
as it loses reactivitytest: reduce timeout time
quick fixes
add prod mode and convert the test config to select the correct mode
Fix webpack prod config
Add launch flag for exposing window.gc
never worked
explicit naming
rename
We don't need to destroy view providers
test: increase timeout time
test: unskip all mem tests
fix(vue-loader): disable static hoisting
chore: run
test:perf:memory
Don't destroy view providers
Move context menu once listener to beforeUnmount instead.
Disconnect all resize observers on unmount
Delete Test vue component
Use beforeUnmount and remove splice(0) in favor of [] for emptying arrays
re-structure
fix: unregister listener in pane.vue
test: tweak timeouts
chore: lint:fix
test: unskip perf tests
fix: unregister events properly
fix: unregister listener
fix: unregister listener
fix: unregister listener
fix: use
unmounted()
fix: unregister listeners
fix: unregister listener properly
chore: lint:fix
test: fix imagery layer toggle test
test: increase timeout
Don't use anonymous functions for listeners
Destroy objects and event listeners properly
Delete config stores that are created by components
Use the right unmount hook. Destroy mounted view on unmount.
Use unmounted, not beforeUnmounted
Lint fixes
Fix time strip memory leak
Undo unneeded change for memory leaks.
chore: combine common webpack configs