Skip to content
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

Minor trust improvements #14039

Merged
merged 1 commit into from
Feb 24, 2023
Merged

Minor trust improvements #14039

merged 1 commit into from
Feb 24, 2023

Conversation

krassowski
Copy link
Member

@krassowski krassowski commented Feb 19, 2023

References

Code changes

Done:

  • Empty notebook gets populated with a trusted code cell
  • Test that serialization does not include trusted for non-code cells

In follow-up:

  • Set user-created cells as trusted (but not if pasting untrusted cells)

User-facing changes

Backwards-incompatible changes

@krassowski krassowski added the bug label Feb 19, 2023
@krassowski krassowski added this to the 4.0.0 milestone Feb 19, 2023
@jupyterlab-probot
Copy link

Thanks for making a pull request to jupyterlab!
To try out this branch on binder, follow this link: Binder

@jtpio
Copy link
Member

jtpio commented Feb 21, 2023

Nice thanks @krassowski for starting this 👍

Since the current state already includes some fixes, it would also be fine to continue further improvements in follow-up PRs.

@krassowski krassowski marked this pull request as ready for review February 23, 2023 18:50
@krassowski
Copy link
Member Author

Since the current state already includes some fixes, it would also be fine to continue further improvements in follow-up PRs.

Right, especially since setting user-created cells as trusted might require changes in @jupyter/ydoc so that would be waiting and accumulating merge conflicts. I un-derafted it.

@krassowski krassowski changed the title WIP: Trust improvements Minor trust improvements Feb 23, 2023
Copy link
Member

@jtpio jtpio left a comment

Choose a reason for hiding this comment

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

Thanks!

@github-actions
Copy link
Contributor

Benchmark report

The execution time (in milliseconds) are grouped by test file, test type and browser.
For each case, the following values are computed: min <- [1st quartile - median - 3rd quartile] -> max.

The mean relative comparison is computed with 95% confidence.

Results table
Test file large_code_notebook large_md_notebook
open
chromium
actual 684 <- [720 - 748 - 766] -> 832 1498 <- [1614 - 1665 - 1732] -> 1824
expected 673 <- [726 - 749 - 764] -> 1001 1490 <- [1569 - 1601 - 1672] -> 1840
Mean relative change -0.6% ± 1.4% ⚠️ 2.9% ± 1.4%
switch-from
chromium
actual 869 <- [991 - 1009 - 1032] -> 1168 405 <- [499 - 529 - 559] -> 661
expected 902 <- [987 - 1003 - 1022] -> 1272 380 <- [489 - 522 - 560] -> 796
Mean relative change 0.2% ± 1.2% ⚠️ 0.8% ± 3.1%
switch-to
chromium
actual 1697 <- [1841 - 1911 - 1956] -> 2170 1333 <- [1415 - 1450 - 1481] -> 1588
expected 1669 <- [1869 - 1928 - 1977] -> 2307 1271 <- [1403 - 1426 - 1467] -> 1549
Mean relative change -1.1% ± 1.4% ⚠️ 1.2% ± 1.1%
close
chromium
actual 174 <- [195 - 203 - 213] -> 310 272 <- [300 - 309 - 321] -> 372
expected 173 <- [191 - 201 - 207] -> 305 259 <- [289 - 299 - 312] -> 469
Mean relative change 2.1% ± 2.4% ⚠️ 2.8% ± 2.1%

Changes are computed with expected as reference.

@jupyterlab/[email protected] test:mocha
mocha ./tests/

Waiting for localhost:8888
localhost:8888 is up

Cell memory leaks

Create a code cell Memory change: +150 kB Leak detected: Yes

Leaking objects:

Object # added Retained size increase
ArraySearchMarker 1 +5 B
ContentString 1 +73 B
Detached Text 1 +61 B
ResizeHandle 1 +47 B
Set 1 +133 B
Signal 1 +38 B
UndoManager 1 +1.38 kB
YArray 1 +164 B
YText 1 +314 B
Detached DOMStringMap 2 +92 B
Detached V8EventHandlerNonNull 2 +80 B
StackItem 2 +952 B
YMap 2 +464 B
ContentType 4 +273 B
DeleteItem 4 +80 B
DeleteSet 4 +720 B
StyleModule 4 +128 B
ContentAny 5 +288 B
Detached HTMLCollection 6 +548 B
EventHandler 8 +256 B
ID 10 +320 B
Item 10 +1.45 kB
Map 11 +1.74 kB
Detached Attr 13 +936 B
Detached DOMTokenList 13 +840 B
Detached HTMLDivElement 13 +45 kB
Object 38 +64.2 kB
Detached V8EventListener 262 +21.9 kB
(closure) 264 +27.5 kB
Detached EventListener 264 +41 kB
Detached InternalNode 318 +43.5 kB

Leaking collections:

Type Change Preview Size increased at
Array +2 [StackItem, ...]
UndoManager.afterTransactionHandler  http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5030:15
webpack://jupyterlab/node_modules/lib0/observable.js:73:62
Array.forEach <anonymous>
webpack://jupyterlab/node_modules/lib0/observable.js:73:62
Array.<anonymous> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4693:27
webpack://jupyterlab/node_modules/lib0/function.js:19:0
cleanupTransactions http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4695:62
transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4810:9
Doc.transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2023:5
Array +4 [StyleModule, ...]
  webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:115:0     
webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:79:0
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6649:8
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6300:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:954:17
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/jsoneditor.ts:83:26
webpack://jupyterlab/packages/notebook/src/notebooktools.ts:676:21
Array +10 [Item, ...]
addStruct                    http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4268:11
Item.integrate http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:11054:7
<unknown> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6617:22
Array.forEach <anonymous>
typeListInsertGenericsAfter http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6590:11
typeListInsertGenerics http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6677:10
<unknown> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6996:9
transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4796:5
YArray.insert http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6995:7
Set +1 Set((anonymous function), ...)
                 webpack://jupyterlab/node_modules/lib0/observable.js:30:56                                            
Doc.on http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2182:11
new UndoManager http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5049:14
webpack://jupyterlab/node_modules/y-codemirror.next/src/y-sync.js:11:0
webpack://jupyterlab/node_modules/y-codemirror.next/src/index.js:20:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:947:16
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/widget.ts:40:42
Set +1 Set((anonymous function), ...)
                 webpack://jupyterlab/node_modules/lib0/observable.js:30:56                                            
Doc.on http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2182:11
new UndoManager http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5050:14
webpack://jupyterlab/node_modules/y-codemirror.next/src/y-sync.js:11:0
webpack://jupyterlab/node_modules/y-codemirror.next/src/index.js:20:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:947:16
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/widget.ts:40:42
Create a markdown cell Memory change: -110 kB Leak detected: No

Leaking objects:

Object # added Retained size increase
ActivityMonitor 1 +450 B
ArraySearchMarker 1 +5 B
AttachmentsModel 1 +199 B
AttachmentsResolver 1 +14 B
ContentString 1 +76 B
Debouncer 1 +3.46 kB
Detached HTMLAnchorElement 1 +308 B
Detached HTMLButtonElement 1 +5.46 kB
Detached HTMLHeadingElement 1 +996 B
Error 1 +3.12 kB
MarkdownCell 1 +4.88 kB
MarkdownCellModel 1 +381 B
Poll 1 +3.75 kB
RenderMimeRegistry 1 +227 B
RenderedMarkdown 1 +66 B
Transaction 1 +876 B
YArray 1 +164 B
YArrayEvent 1 +357 B
YMarkdownCell 1 +137 B
Detached CSSStyleDeclaration 2 +124 B
Detached HTMLElement 2 +320 B
Detached V8EventHandlerNonNull 2 +5.2 kB
ObservableMap 2 +272 B
Promise 2 +3.12 kB
PromiseDelegate 2 +3.33 kB
StackItem 2 +932 B
UndoManager 2 +1.79 kB
YText 2 +534 B
DeleteItem 3 +60 B
Detached DOMStringMap 3 +132 B
DeleteSet 4 +700 B
YMap 4 +872 B
ContentAny 5 +524 B
ContentType 7 +718 B
Detached Text 7 +504 B
Set 8 +861 B
StyleModule 8 +778 B
Detached HTMLDivElement 10 +30.6 kB
Detached DOMTokenList 13 +796 B
ID 13 +416 B
Item 13 +2.4 kB
EventHandler 14 +448 B
Detached HTMLCollection 17 +1.76 kB
Signal 20 +357 B
Map 23 +11.8 kB
Detached V8EventListener 130 +10.9 kB
Detached EventListener 132 +25.6 kB
(closure) 151 +11.9 kB
Detached InternalNode 162 +28.4 kB

Leaking collections:

Type Change Preview Size increased at
Array +1 [0414d39b-34f2-420a-82b7-b270c9964501, ...]
                                     webpack://jupyterlab/packages/notebook/src/actions.tsx:2425:37            
Array.forEach <anonymous>
webpack://jupyterlab/packages/notebook/src/actions.tsx:2420:21
webpack://jupyterlab/packages/notebook/src/actions.tsx:350:12
webpack://jupyterlab/packages/notebook-extension/src/index.ts:2289:15
CommandRegistry.execute http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:5748:33
CommandRegistry._executeKeyBinding http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:5906:14
CommandRegistry.processKeydownEvent http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:5846:18
JupyterLab.evtKeydown http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:4660:23
Array +2 [StackItem, ...]
UndoManager.afterTransactionHandler  http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5030:15
webpack://jupyterlab/node_modules/lib0/observable.js:73:62
Array.forEach <anonymous>
webpack://jupyterlab/node_modules/lib0/observable.js:73:62
Array.<anonymous> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4693:27
webpack://jupyterlab/node_modules/lib0/function.js:19:0
cleanupTransactions http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4695:62
transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4810:9
Doc.transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2023:5
Array +8 [StyleModule, ...]
  webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:115:0     
webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:79:0
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6649:8
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6300:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:954:17
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/jsoneditor.ts:83:26
webpack://jupyterlab/packages/notebook/src/notebooktools.ts:676:21
Array +13 [Item, ...]
addStruct                    http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4268:11
Item.integrate http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:11054:7
<unknown> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6617:22
Array.forEach <anonymous>
typeListInsertGenericsAfter http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6590:11
typeListInsertGenerics http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6677:10
<unknown> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6996:9
transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4796:5
YArray.insert http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6995:7
Set +2 Set((anonymous function), ...)
                 webpack://jupyterlab/node_modules/lib0/observable.js:30:56                                            
Doc.on http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2182:11
new UndoManager http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5049:14
webpack://jupyterlab/node_modules/y-codemirror.next/src/y-sync.js:11:0
webpack://jupyterlab/node_modules/y-codemirror.next/src/index.js:20:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:947:16
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/widget.ts:40:42
Set +2 Set((anonymous function), ...)
                 webpack://jupyterlab/node_modules/lib0/observable.js:30:56                                            
Doc.on http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2182:11
new UndoManager http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5050:14
webpack://jupyterlab/node_modules/y-codemirror.next/src/y-sync.js:11:0
webpack://jupyterlab/node_modules/y-codemirror.next/src/index.js:20:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:947:16
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/widget.ts:40:42
Create a raw cell Memory change: +142 kB Leak detected: Yes

Leaking objects:

Object # added Retained size increase
ArraySearchMarker 1 +5 B
ContentString 1 +76 B
Detached CSSStyleDeclaration 1 +52 B
Detached V8EventHandlerNonNull 1 +40 B
YArray 1 +164 B
Detached DOMStringMap 2 +80 B
Set 2 +277 B
StackItem 2 +932 B
UndoManager 2 +1.79 kB
YText 2 +534 B
DeleteItem 3 +60 B
DeleteSet 4 +700 B
YMap 4 +872 B
ContentAny 5 +417 B
Detached HTMLCollection 5 +452 B
ContentType 7 +718 B
StyleModule 7 +224 B
Detached DOMTokenList 9 +516 B
Detached HTMLDivElement 9 +22.5 kB
ID 13 +416 B
Item 13 +2.29 kB
EventHandler 14 +448 B
Map 15 +2.57 kB
Detached V8EventListener 130 +10.9 kB
Detached EventListener 131 +20.4 kB
(closure) 138 +23.1 kB
Detached InternalNode 151 +21.5 kB

Leaking collections:

Type Change Preview Size increased at
Array +1 [a5b5edc7-4a59-4892-9e50-465d1a414ea1, ...]
                                     webpack://jupyterlab/packages/notebook/src/actions.tsx:2425:37            
Array.forEach <anonymous>
webpack://jupyterlab/packages/notebook/src/actions.tsx:2420:21
webpack://jupyterlab/packages/notebook/src/actions.tsx:350:12
webpack://jupyterlab/packages/notebook-extension/src/index.ts:2289:15
CommandRegistry.execute http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:5748:33
CommandRegistry._executeKeyBinding http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:5906:14
CommandRegistry.processKeydownEvent http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:5846:18
JupyterLab.evtKeydown http://localhost:8888/static/lab/jlab_core.96413890f399fcab10e0.js:4660:23
Array +2 [StackItem, ...]
UndoManager.afterTransactionHandler  http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5030:15
webpack://jupyterlab/node_modules/lib0/observable.js:73:62
Array.forEach <anonymous>
webpack://jupyterlab/node_modules/lib0/observable.js:73:62
Array.<anonymous> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4693:27
webpack://jupyterlab/node_modules/lib0/function.js:19:0
cleanupTransactions http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4695:62
transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4810:9
Doc.transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2023:5
Array +7 [StyleModule, ...]
  webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:115:0     
webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:79:0
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6649:8
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6300:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:954:17
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/jsoneditor.ts:83:26
webpack://jupyterlab/packages/notebook/src/notebooktools.ts:676:21
Array +13 [Item, ...]
addStruct                    http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4268:11
Item.integrate http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:11054:7
<unknown> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6617:22
Array.forEach <anonymous>
typeListInsertGenericsAfter http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6590:11
typeListInsertGenerics http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6677:10
<unknown> http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6996:9
transact http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:4796:5
YArray.insert http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:6995:7
Set +2 Set((anonymous function), ...)
                 webpack://jupyterlab/node_modules/lib0/observable.js:30:56                                            
Doc.on http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2182:11
new UndoManager http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5049:14
webpack://jupyterlab/node_modules/y-codemirror.next/src/y-sync.js:11:0
webpack://jupyterlab/node_modules/y-codemirror.next/src/index.js:20:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:947:16
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/widget.ts:40:42
Set +2 Set((anonymous function), ...)
                 webpack://jupyterlab/node_modules/lib0/observable.js:30:56                                            
Doc.on http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:2182:11
new UndoManager http://localhost:8888/static/lab/vendors-node_modules_yjs_dist_yjs_mjs.4fbeace2166db933a6e2.js:5050:14
webpack://jupyterlab/node_modules/y-codemirror.next/src/y-sync.js:11:0
webpack://jupyterlab/node_modules/y-codemirror.next/src/index.js:20:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:947:16
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/widget.ts:40:42
✔ Adding a cell (229022ms) - Drag and drop a cell

File editor memory leaks

Create a file Memory change: -75.5 kB Leak detected: No

Leaking objects:

Object # added Retained size increase
Detached HTMLUListElement 1 +3.13 kB
Detached V8EventHandlerNonNull 1 +40 B
VirtualElementPass 1 +52 B
Detached HTMLButtonElement 2 +23.7 kB
Detached SVGCircleElement 2 +1.1 kB
HTMLDivElement 2 +509 B
LabIcon 2 +1.08 kB
Detached CSSStyleDeclaration 3 +236 B
Detached HTMLLIElement 3 +6 kB
Detached NodeList 3 +200 B
NavigationHistoryEntry 3 +720 B
VirtualText 3 +109 B
Detached SVGGElement 4 +2.94 kB
StyleModule 4 +661 B
VirtualElement 4 +3.45 kB
Detached SVGAnimatedPreserveAspectRatio 5 +320 B
Detached SVGAnimatedRect 5 +320 B
Detached SVGPathElement 5 +1.77 kB
Detached SVGSVGElement 5 +8.05 kB
Detached HTMLSpanElement 6 +2.36 kB
Detached DOMStringMap 7 +428 B
Detached SVGAnimatedNumber 7 +448 B
Detached Attr 10 +720 B
Detached Text 10 +928 B
Detached HTMLCollection 13 +1.42 kB
Detached DOMTokenList 14 +924 B
Detached HTMLDivElement 15 +33.5 kB
Detached SVGAnimatedString 16 +896 B
Detached SVGAnimatedTransformList 16 +1.02 kB
Detached SVGAnimatedLength 26 +1.66 kB
Detached V8EventListener 130 +10.9 kB
Detached EventListener 131 +20.4 kB
(closure) 140 +-6.32 kB

Leaking collections:

Type Change Preview Size increased at
Array +4 [StyleModule, ...]
  webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:115:0     
webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:79:0
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6649:8
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6300:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:954:17
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:73:11
webpack://jupyterlab/packages/fileeditor/src/widget.ts:219:13
webpack://jupyterlab/packages/codeeditor/src/widget.ts:40:42
✔ Opening a text file (70303ms)

Notebook memory leaks

Create a notebook Memory change: +30.9 kB Leak detected: Yes

Leaking objects:

Object # added Retained size increase
Detached HTMLUListElement 1 +2.19 kB
Detached V8EventHandlerNonNull 1 +40 B
VirtualElementPass 1 +61 B
Detached HTMLButtonElement 2 +23.4 kB
Detached SVGCircleElement 2 +1.1 kB
HTMLDivElement 2 +127 B
LabIcon 2 +193 B
Detached CSSStyleDeclaration 3 +252 B
Detached HTMLLIElement 3 +5.89 kB
Detached NodeList 3 +240 B
NavigationHistoryEntry 3 +720 B
VirtualText 3 +107 B
VirtualElement 4 +1.25 kB
Detached SVGAnimatedPreserveAspectRatio 5 +320 B
Detached SVGAnimatedRect 5 +320 B
Detached SVGSVGElement 5 +9.28 kB
Detached HTMLSpanElement 6 +3.03 kB
Detached SVGGElement 6 +4.9 kB
Detached SVGPathElement 7 +2.47 kB
StyleModule 8 +789 B
Detached SVGAnimatedNumber 9 +576 B
Detached Attr 10 +720 B
Detached Text 10 +692 B
Detached HTMLCollection 13 +1.33 kB
Detached DOMTokenList 15 +944 B
Detached HTMLDivElement 15 +33.2 kB
Detached SVGAnimatedString 20 +1.12 kB
Detached SVGAnimatedTransformList 20 +1.28 kB
Detached SVGAnimatedLength 26 +1.66 kB
Detached V8EventListener 130 +10.9 kB
Detached EventListener 131 +20.4 kB
(closure) 138 +34.4 kB

Leaking collections:

Type Change Preview Size increased at
Array +8 [StyleModule, ...]
  webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:115:0     
webpack://jupyterlab/node_modules/style-mod/src/style-mod.js:79:0
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6649:8
webpack://jupyterlab/node_modules/@codemirror/view/dist/index.js:6300:0
webpack://jupyterlab/packages/codemirror/src/editor.ts:954:17
webpack://jupyterlab/packages/codemirror/src/editor.ts:163:27
webpack://jupyterlab/packages/codemirror/src/factory.ts:61:11
webpack://jupyterlab/packages/codeeditor/src/jsoneditor.ts:83:26
webpack://jupyterlab/packages/notebook/src/notebooktools.ts:676:21
✔ Opening a notebook (74364ms)

3 passing (6m)
1 pending

@jtpio jtpio merged commit d133062 into jupyterlab:master Feb 24, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants