Skip to content

Conversation

@krassowski
Copy link
Member

References

Follow-up to #14072

Code changes

Add left offset when scrolling is enabled to account for margin-left from:

.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea {
overflow-y: auto;
max-height: 24em;
margin-left: var(--jp-private-cell-scrolling-output-offset);
resize: vertical;
}

User-facing changes

Before:

before

After:

after

Backwards-incompatible changes

None

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

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

@github-actions github-actions bot added Design System CSS pkg:cells tag:CSS For general CSS related issues and pecadilloes labels Feb 26, 2023
@krassowski krassowski force-pushed the improve-output-overlay branch from eab1c0e to 62ca414 Compare February 26, 2023 15:34
@jupyterlab jupyterlab deleted a comment from github-actions bot Feb 26, 2023
Copy link
Member

@fcollonval fcollonval left a comment

Choose a reason for hiding this comment

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

Thanks @krassowski

@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 515 <- [568 - 581 - 601] -> 675 1035 <- [1116 - 1141 - 1186] -> 1277
expected 550 <- [616 - 659 - 692] -> 875 1080 <- [1162 - 1192 - 1240] -> 1351
Mean relative change -11.0% ± 1.7% -3.9% ± 1.2%
switch-from
chromium
actual 678 <- [741 - 757 - 780] -> 852 288 <- [379 - 401 - 421] -> 453
expected 689 <- [800 - 893 - 927] -> 1257 296 <- [410 - 427 - 451] -> 544
Mean relative change -13.8% ± 2.0% -7.1% ± 2.6%
switch-to
chromium
actual 1306 <- [1424 - 1453 - 1482] -> 1629 874 <- [997 - 1020 - 1044] -> 1142
expected 1385 <- [1495 - 1657 - 1745] -> 1992 928 <- [1049 - 1077 - 1103] -> 1196
Mean relative change -11.8% ± 1.7% -5.2% ± 1.1%
close
chromium
actual 137 <- [151 - 156 - 161] -> 183 197 <- [216 - 227 - 241] -> 300
expected 148 <- [165 - 181 - 198] -> 257 208 <- [237 - 244 - 253] -> 356
Mean relative change -14.2% ± 2.2% -6.3% ± 2.2%

Changes are computed with expected as reference.

@jupyterlab/benchmarks@1.0.0 test:mocha
mocha ./tests/

Waiting for localhost:8888
localhost:8888 is up

Cell memory leaks

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

Leaking objects:

Object # added Retained size increase
ArraySearchMarker 1 +5 B
ContentString 1 +76 B
Detached Text 1 +61 B
FocusTracker 1 +276 B
ObservableList 1 +60 B
OutputArea 1 +1.4 kB
OutputAreaModel 1 +115 B
Promise 1 +24 B
PromiseDelegate 1 +128 B
ResizeHandle 1 +47 B
RestorablePool 1 +304 B
UndoManager 1 +1.38 kB
WidgetTracker 1 +976 B
YArray 1 +164 B
YText 1 +314 B
Detached DOMStringMap 2 +100 B
Detached V8EventHandlerNonNull 2 +80 B
Set 2 +209 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 +584 B
EventHandler 8 +256 B
ID 10 +320 B
Item 10 +1.45 kB
Detached DOMTokenList 13 +892 B
Detached Attr 14 +1.01 kB
Detached HTMLDivElement 14 +46.8 kB
Map 14 +2.02 kB
Signal 16 +278 B
Object 37 +64.3 kB
Detached V8EventListener 263 +23.4 kB
Detached EventListener 265 +42.6 kB
(closure) 269 +31.1 kB
Detached InternalNode 323 +45.2 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: -112 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 +79 B
Debouncer 1 +3.47 kB
Detached HTMLAnchorElement 1 +312 B
Detached HTMLButtonElement 1 +5.47 kB
Detached HTMLHeadingElement 1 +1 kB
Error 1 +3.12 kB
MarkdownCell 1 +4.9 kB
MarkdownCellModel 1 +381 B
Poll 1 +3.76 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 +128 B
Detached HTMLElement 2 +320 B
Detached V8EventHandlerNonNull 2 +5.2 kB
ObservableMap 2 +272 B
Promise 2 +3.12 kB
PromiseDelegate 2 +3.34 kB
StackItem 2 +932 B
UndoManager 2 +1.82 kB
YText 2 +534 B
DeleteItem 3 +60 B
Detached DOMStringMap 3 +128 B
DeleteSet 4 +700 B
YMap 4 +872 B
ContentAny 5 +381 B
ContentType 7 +718 B
Detached Text 7 +504 B
Set 8 +865 B
StyleModule 8 +778 B
Detached HTMLDivElement 10 +26.5 kB
Detached DOMTokenList 13 +824 B
ID 13 +416 B
Item 13 +2.26 kB
EventHandler 14 +448 B
Detached HTMLCollection 17 +1.79 kB
Signal 20 +357 B
Map 23 +11.8 kB
Detached V8EventListener 130 +10.9 kB
Detached EventListener 132 +25.6 kB
(closure) 151 +9.83 kB
Detached InternalNode 162 +28.5 kB

Leaking collections:

Type Change Preview Size increased at
Array +1 [cd49ce6e-4bdc-4345-b5a6-121eea67317a, ...]
                                     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 +524 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.4 kB
EventHandler 14 +448 B
Map 15 +2.58 kB
Array 54 +2.64 kB
Detached V8EventListener 130 +10.9 kB
Detached EventListener 131 +20.4 kB
(closure) 138 +22.5 kB
Detached InternalNode 151 +21.5 kB

Leaking collections:

Type Change Preview Size increased at
Array +1 [ca455776-c7dc-469e-8a53-cdcadb4ab2ac, ...]
                                     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
- Drag and drop a cell

File editor memory leaks

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

Leaking objects:

Object # added Retained size increase
Detached HTMLUListElement 1 +2.31 kB
Detached V8EventHandlerNonNull 1 +40 B
VirtualElementPass 1 +46 B
Detached HTMLButtonElement 2 +23.8 kB
Detached SVGCircleElement 2 +1.1 kB
HTMLDivElement 2 +-791 B
LabIcon 2 +1.11 kB
Detached CSSStyleDeclaration 3 +232 B
Detached HTMLLIElement 3 +5.24 kB
Detached NodeList 3 +188 B
NavigationHistoryEntry 3 +720 B
VirtualText 3 +108 B
Detached SVGGElement 4 +2.94 kB
StyleModule 4 +661 B
VirtualElement 4 +3.5 kB
Detached SVGAnimatedPreserveAspectRatio 5 +320 B
Detached SVGAnimatedRect 5 +320 B
Detached SVGPathElement 5 +1.77 kB
Detached SVGSVGElement 5 +7.94 kB
Detached HTMLSpanElement 6 +2.3 kB
Detached DOMStringMap 7 +380 B
Detached SVGAnimatedNumber 7 +448 B
Detached Attr 10 +720 B
Detached Text 10 +740 B
Detached HTMLCollection 13 +1.46 kB
Detached DOMTokenList 14 +952 B
Detached HTMLDivElement 15 +32.8 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) 138 +-10.4 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 (71538ms)

Notebook memory leaks

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

Leaking objects:

Object # added Retained size increase
Detached HTMLUListElement 1 +2.19 kB
Detached V8EventHandlerNonNull 1 +40 B
VirtualElementPass 1 +55 B
Detached HTMLButtonElement 2 +23.4 kB
Detached SVGCircleElement 2 +1.1 kB
HTMLDivElement 2 +-819 B
LabIcon 2 +116 B
Detached CSSStyleDeclaration 3 +236 B
Detached HTMLLIElement 3 +5.91 kB
Detached NodeList 3 +228 B
NavigationHistoryEntry 3 +720 B
VirtualText 3 +108 B
VirtualElement 4 +1.16 kB
Detached SVGAnimatedPreserveAspectRatio 5 +320 B
Detached SVGAnimatedRect 5 +320 B
Detached SVGSVGElement 5 +9.28 kB
Detached HTMLSpanElement 6 +3.05 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.32 kB
Detached DOMTokenList 15 +928 B
Detached HTMLDivElement 15 +33.1 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) 137 +40.8 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 (75632ms)

2 passing (6m)
1 pending
1 failing

   Adding a cell:

  Create a code cell - Objects leaking
  + expected - actual

  -1308
  +1283
  
  at file:///home/runner/work/_actions/jupyterlab/benchmarks/v1/memory-leaks/tests/utils.mjs:43:16
  at Array.forEach (<anonymous>)
  at expectNoLeaks (file:///home/runner/work/_actions/jupyterlab/benchmarks/v1/memory-leaks/tests/utils.mjs:28:11)
  at testScenario (file:///home/runner/work/_actions/jupyterlab/benchmarks/v1/memory-leaks/tests/utils.mjs:230:3)
  at async Context.<anonymous> (file:///home/runner/work/_actions/jupyterlab/benchmarks/v1/memory-leaks/tests/cell.test.mjs:7:5)

@fcollonval fcollonval merged commit 2842f95 into jupyterlab:master Feb 27, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 28, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Design System CSS enhancement pkg:cells tag:CSS For general CSS related issues and pecadilloes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants