Repository Analysis

jupyterlab/jupyterlab

JupyterLab computational environment.

1.9 Likely human-written View on GitHub
1.9
Adjusted Score
1.9
Raw Score
100%
Time Factor
2026-05-30
Last Push
15,171
Stars
TypeScript
Language
388,683
Lines of Code
2348
Files
315
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 25HIGH 31MEDIUM 14LOW 245

Pattern Findings

315 matches across 17 categories. Click a row to expand file-level details.

Hallucination Indicators25 hits · 270 pts
SeverityFileLineSnippet
CRITICALgalata/test/jupyterlab/outputarea-stdin.test.ts157 e.cmTile.view.state.doc.toString()
CRITICALpackages/fileeditor/src/toc/markdown.ts53 const content = this.widget.content.model.sharedModel.getSource();
CRITICALpackages/codeeditor/src/lineCol.tsx353 this._editor.model.selections.changed.connect(this._onSelectionChanged);
CRITICALpackages/filebrowser-extension/src/index.ts2046 const driveName = browser.model.manager.services.contents.driveName(path);
CRITICALpackages/notebook-extension/src/index.ts2609 panel.content.model.cells.changed.connect(
CRITICALpackages/completer/test/inline.spec.ts117 editorWidget.editor.model.sharedModel.changed.connect(onContentChange);
CRITICALpackages/completer/test/inline.spec.ts121 editorWidget.editor.model.sharedModel.changed.disconnect(
CRITICALpackages/filebrowser/src/crumbs.ts448 const localPath = this._model.manager.services.contents.localPath(
CRITICALpackages/filebrowser/src/crumbs.ts550 const currentPath = this._model.manager.services.contents.localPath(
CRITICALpackages/filebrowser/src/pathnavigator.ts167 this._submittedLocalPath = this._model.manager.services.contents.localPath(
CRITICALpackages/settingeditor/src/raweditor.ts71 user.editor.model.sharedModel.changed.connect(this._onTextChanged, this);
CRITICALpackages/settingeditor/src/raweditor.ts119 this._user.editor.model.sharedModel.getSource() !==
CRITICALpackages/settingeditor/src/raweditor.ts199 this._user.editor.model.sharedModel.setSource(this.settings?.raw ?? '');
CRITICALpackages/settingeditor/src/raweditor.ts212 const source = this._user.editor.model.sharedModel.getSource();
CRITICALpackages/settingeditor/src/raweditor.ts237 const raw = this._user.editor.model.sharedModel.getSource();
CRITICALpackages/debugger/src/handlers/editor.ts70 this._debuggerService.model.breakpoints.changed.connect(async () => {
CRITICALpackages/debugger/src/handlers/editor.ts78 this._debuggerService.model.breakpoints.restored.connect(async () => {
CRITICALpackages/debugger/src/handlers/editor.ts86 this._debuggerService.model.breakpoints.selectedChanged.connect(
CRITICALpackages/debugger/src/handlers/editor.ts94 this._debuggerService.model.callstack.currentFrameChanged.connect(
CRITICALpackages/debugger/src/handlers/console.ts58 this._consolePanel.console.cells.changed.connect(addHandlers);
CRITICALpackages/notebook/src/notebooklspadapter.ts219 this.widget.context.sessionContext.kernelChanged.disconnect(
CRITICALpackages/notebook/src/notebooklspadapter.ts361 this.widget.context.sessionContext.kernelChanged.connect(
CRITICALpackages/notebook/src/toc.ts105 this.widget.context.model.metadataChanged.connect(
CRITICAL…uts-extension/src/components/ShortcutCustomOptions.tsx203 this._editor.model.sharedModel.changed.connect(this._validateJSON, this);
CRITICAL…uts-extension/src/components/ShortcutCustomOptions.tsx231 this._editor.model.sharedModel.changed.disconnect(this._validateJSON, this);
Hyper-Verbose Identifiers137 hits · 138 pts
SeverityFileLineSnippet
LOWconftest.py28def pytest_collection_modifyitems(config, items):
LOWbuildutils/src/update-staging-lock.ts140function extractNameFromDescriptor(name: string): string {
LOWgalata/test/jupyterlab/notebook-navigate.test.ts62function attachNotebookMutationObserver() {
LOWgalata/test/jupyterlab/notebook-toolbar.test.ts21async function addWidgetsInNotebookToolbar(
LOWgalata/test/jupyterlab/metadataform.test.ts33async function activatePropertyInspector(page: IJupyterLabPageFixture) {
LOWgalata/test/jupyterlab/utils.ts35export async function positionCellPartiallyBelowViewport(
LOWgalata/test/jupyterlab/notebook-markdown.test.ts10async function enterEditingModeForScreenshot(
LOWgalata/src/galata.ts641 export async function freezeContentLastModified(
LOWgalata/src/utils.ts268export function xpBuildActivityTabSelector(name: string): string {
LOWgalata/src/utils.ts283export function xpBuildActivityPanelSelector(id: string): string {
LOWgalata/src/utils.ts296export function xpBuildActiveActivityTabSelector(): string {
LOWdocs/source/conf.py176def copy_automated_screenshots(temp_folder: Path) -> list[Path]:
LOWdocs/source/conf.py247def _format_command_arguments(args_schema: dict) -> str:
LOWdocs/source/conf.py349def document_plugins_tokens_list(list_path: Path, output_path: Path) -> None:
LOWdocs/source/_ext/shellcheck_builder.py168 def _disable_intersphinx_for_shellcheck(sphinx_app: Sphinx) -> None:
LOWexamples/example_check.py62 def _jupyter_server_extension_points():
LOWexamples/app/main.py19def _jupyter_server_extension_points():
LOWexamples/terminal/main.py29def _jupyter_server_extension_points():
LOWexamples/cell/main.py29def _jupyter_server_extension_points():
LOWexamples/filebrowser/main.py26def _jupyter_server_extension_points():
LOWexamples/notebook/main.py29def _jupyter_server_extension_points():
LOWexamples/federated/main.py19def _jupyter_server_extension_points():
LOWexamples/console/main.py26def _jupyter_server_extension_points():
LOWscripts/unpack_snapshots.py92def collect_snapshot_attachments(
LOWpackages/fileeditor-extension/src/commands.ts1429 export function addCreateNewMarkdownToLauncher(
LOWpackages/fileeditor-extension/src/commands.ts1444 export function addKernelLanguageLauncherItems(
LOWpackages/fileeditor-extension/src/commands.ts1490 export function addChangeTabsCommandsToPalette(
LOWpackages/fileeditor-extension/src/commands.ts1512 export function addCreateNewCommandToPalette(
LOWpackages/fileeditor-extension/src/commands.ts1527 export function addCreateNewMarkdownCommandToPalette(
LOWpackages/fileeditor-extension/src/commands.ts1542 export function addChangeFontSizeCommandsToPalette(
LOWpackages/fileeditor-extension/src/commands.ts1560 export function addKernelLanguagePaletteItems(
LOWpackages/fileeditor-extension/src/commands.ts1637 export function addKernelLanguageMenuItems(
LOWpackages/fileeditor-extension/src/index.ts596function activateFileEditorCompleterService(
LOWpackages/fileeditor-extension/src/index.ts685function activateFileEditorLanguageServer(
LOWpackages/codemirror/src/commands.ts129 export function simplifySelectionAndMaybeSwitchToCommandMode(target: {
LOWpackages/codemirror/src/commands.ts151 export function dedentIfNotLaunchingTooltip(target: {
LOWpackages/codemirror/src/extension.ts584 export function createConditionalExtension(
LOWpackages/codemirror-extension/src/commands.ts52function toggleBlockCommentWithFallback(view: EditorView): boolean {
LOWpackages/apputils-extension/test/state.spec.ts65 function getResetOnLoadRegistration(): {
LOWpackages/notebook-extension/src/index.ts2366function activateNotebookCompleterService(
LOWpackages/notebook-extension/src/index.ts2476function activateNotebookLanguageServer(
LOWpackages/notebook-extension/src/index.ts5243 export function isEnabledAndSingleSelected(
LOWpackages/notebook-extension/src/index.ts5265 export function isEnabledAndHeadingSelected(
LOW…es/ui-components/examples/simple-windowed-list/main.py29def _jupyter_server_extension_points():
LOWpackages/ui-components/src/components/toolbar.tsx1065export function CommandToolbarButtonComponent(
LOWpackages/ui-components/src/components/toolbar.tsx1089export function addCommandToolbarButtonClass(w: Widget): Widget {
LOWpackages/docregistry/src/kernelfilestypes.ts13export async function getAvailableKernelFileTypes(
LOWpackages/docregistry/src/testutils.ts39export async function createFileContextWithKernel(
LOWpackages/docregistry/src/testutils.ts59export async function createFileContextWithMockedServices(
LOWpackages/docregistry/src/testutils.ts98export function createSimpleSessionContext(
LOWpackages/docregistry/src/registry.ts1371 export function getDefaultNotebookFileType(
LOWpackages/docregistry/src/registry.ts1396 export function getDefaultDirectoryFileType(
LOWpackages/lsp/src/connection_manager.ts707 export function updateServerConfiguration(
LOWpackages/lsp/src/connection.ts38class ClientRequestHandler<
LOWpackages/lsp/src/connection.ts67class ServerRequestHandler<
LOW…sp/src/ws-connection/server-capability-registration.ts63function unregisterServerCapability(
LOWpackages/completer/src/model.ts675 export function findOrderedCompletionItemTypes(
LOWpackages/completer/src/testutils.ts35export function getBoundingClientRectMock(this: Element) {
LOWpackages/console-extension/src/index.ts1461function activateConsoleCompleterService(
LOWpackages/running-extension/src/kernels.tsx44export async function addKernelRunningSessionManager(
77 more matches not shown…
Cross-Language Confusion (JS/TS)16 hits · 95 pts
SeverityFileLineSnippet
HIGHgalata/test/jupyterlab/outputarea-stdin.test.ts13print('before sleep')
HIGHgalata/test/jupyterlab/outputarea-stdin.test.ts15print('after sleep')`;
HIGHgalata/test/jupyterlab/console.test.ts85print("Hello")
HIGHgalata/test/jupyterlab/console.test.ts86print("World")
HIGHgalata/test/jupyterlab/console.test.ts112print(data.head())`;
HIGHgalata/test/jupyterlab/console.test.ts133 print(f"Even: {i}")
HIGHgalata/test/jupyterlab/console.test.ts135 print(f"Odd: {i}")
HIGHgalata/test/jupyterlab/console.test.ts169 print("Line 1")
HIGHgalata/test/jupyterlab/console.test.ts170 print("Line 2")
HIGHgalata/test/jupyterlab/console.test.ts198print("Testing auto-resize")
HIGHgalata/test/jupyterlab/console.test.ts199print("After execution")`;
HIGHgalata/test/jupyterlab/console.test.ts217 print("This is line 1")
HIGHgalata/test/jupyterlab/console.test.ts218 print("This is line 2")
HIGHgalata/test/jupyterlab/console.test.ts219 print("This is line 3")
HIGHgalata/test/jupyterlab/console.test.ts221 print(f"Loop iteration {i}")
HIGHpackages/lsp/schema.js40print(files("${serverPackage}")/ "${schemaLocalPath}")
Cross-File Repetition12 hits · 60 pts
SeverityFileLineSnippet
HIGHexamples/terminal/main.py0handle requests between the main app page and notebook server.
HIGHexamples/cell/main.py0handle requests between the main app page and notebook server.
HIGH…es/ui-components/examples/simple-windowed-list/main.py0handle requests between the main app page and notebook server.
HIGH…rvices/examples/typescript-browser-with-output/main.py0handle requests between the main app page and notebook server.
HIGHpackages/services/examples/browser-require/main.py0handle requests between the main app page and notebook server.
HIGHpackages/services/examples/browser/main.py0handle requests between the main app page and notebook server.
HIGH…rvices/examples/typescript-browser-with-output/main.py0copyright (c) jupyter development team. distributed under the terms of the modified bsd license.
HIGHpackages/services/examples/browser-require/main.py0copyright (c) jupyter development team. distributed under the terms of the modified bsd license.
HIGHpackages/services/examples/browser/main.py0copyright (c) jupyter development team. distributed under the terms of the modified bsd license.
HIGHjupyterlab/extensions/readonly.py0uninstall the required extension. note: if the user must be notified with a message (like asking to restart the server),
HIGHjupyterlab/extensions/pypi.py0uninstall the required extension. note: if the user must be notified with a message (like asking to restart the server),
HIGHjupyterlab/extensions/manager.py0uninstall the required extension. note: if the user must be notified with a message (like asking to restart the server),
Excessive Try-Catch Wrapping26 hits · 26 pts
SeverityFileLineSnippet
LOWdocs/source/conf.py558 except Exception: # noqa S110
MEDIUMscripts/milestone_check.py41 print("Error: exactly one argument expected, the milestone.")
LOWjupyterlab/debuglog.py46 except Exception as ex:
LOWjupyterlab/browser_check.py108 except Exception as e:
LOWjupyterlab/browser_check.py126 except Exception as e:
LOWjupyterlab/labapp.py206 except Exception as e:
LOWjupyterlab/labapp.py841 except Exception as err:
LOWjupyterlab/commands.py2109 except Exception:
LOWjupyterlab/commands.py2156 except Exception as e:
LOWjupyterlab/commands.py2188 except Exception:
LOWjupyterlab/tests/test_app.py207 except Exception as e:
LOWjupyterlab/extensions/pypi.py273 except Exception:
LOWjupyterlab/extensions/pypi.py549 except Exception as err:
LOWjupyterlab/extensions/pypi.py596 except Exception as e:
LOWjupyterlab/extensions/pypi.py658 except Exception as e:
LOWjupyterlab/extensions/manager.py269 except Exception as err:
LOWjupyterlab/extensions/manager.py295 except Exception as err:
LOWjupyterlab/handlers/plugin_manager_handler.py53 except Exception as e:
LOWjupyterlab/handlers/build_handler.py72 except Exception as e:
LOWjupyterlab/handlers/build_handler.py81 except Exception as e:
LOWjupyterlab/handlers/build_handler.py116 except Exception:
LOWjupyterlab/handlers/build_handler.py141 except Exception as e:
LOWjupyterlab/handlers/build_handler.py151 except Exception as e:
LOWjupyterlab/handlers/extension_manager_handler.py135 except Exception as e:
LOWjupyterlab/handlers/announcements.py105 except Exception as e:
LOWjupyterlab/handlers/announcements.py285 except Exception as e:
Deep Nesting21 hits · 19 pts
SeverityFileLineSnippet
LOWconftest.py28
LOWdocs/source/conf.py150
LOWdocs/source/conf.py261
LOWexamples/test_examples.py31
LOWscripts/unpack_snapshots.py164
LOWscripts/unpack_snapshots.py173
LOWjupyterlab/upgrade_extension.py58
LOWjupyterlab/commands.py155
LOWjupyterlab/commands.py2116
LOWjupyterlab/commands.py2255
LOWjupyterlab/commands.py2319
LOWjupyterlab/commands.py1711
LOWjupyterlab/commands.py1851
LOWjupyterlab/tests/test_build_api.py15
LOWjupyterlab/extensions/pypi.py337
LOWjupyterlab/extensions/pypi.py453
LOWjupyterlab/extensions/pypi.py487
LOWjupyterlab/extensions/manager.py457
LOWjupyterlab/extensions/manager.py555
LOWjupyterlab/handlers/extension_manager_handler.py99
LOWjupyterlab/handlers/announcements.py205
Self-Referential Comments6 hits · 17 pts
SeverityFileLineSnippet
MEDIUMbuildutils/src/update-staging-lock.ts31 `# This file is generated by running "yarn install" inside your project.\n`,
MEDIUMdocs/source/conf.py9# This file is execfile()d with the current directory set to its
MEDIUMdocs/source/_ext/typedoc_links.py67 # Create the reference node with <code> inside
MEDIUM.github/workflows/reject-core-meta-changes.yml2# This file is auto-copied from jupyterlab/staging/package.json of the matching JupyterLab release.
MEDIUMjupyterlab/commands.py697 # Create the app dirs if needed.
MEDIUMjupyterlab/pytest_plugin.py51 # Create the index files.
Over-Commented Block16 hits · 16 pts
SeverityFileLineSnippet
LOWpyproject.toml301"jupyterlab/labapp.py" = ["RUF012", "T201"]
LOWgalata/test/documentation/extension_manager.test.ts121 await waitRequest;
LOWdocs/source/conf.py1#!/usr/bin/env python3
LOWpackages/codemirror/src/extension.ts721 key: 'Escape',
LOWpackages/rendermime/src/renderers.ts541 * Modify the label if needed.
LOWpackages/ui-components/test/toolbar.spec.ts661 // const button = new LogToolbarButton();
LOWpackages/ui-components/src/svg.d.ts1// Copyright (c) Jupyter Development Team.
LOWpackages/ui-components/src/svg.d.ts21// export default value;
LOWpackages/ui-components/src/svg.d.ts41// }
LOWpackages/filebrowser/src/listing.ts2461 if (this.selection[target.path]) {
LOWpackages/debugger/src/hash.ts1// Copyright (c) Jupyter Development Team.
LOWpackages/csvviewer/src/model.ts541 // Find the end of the slice (the start of the next field), and how much we
LOWpackages/services/src/kernel/future.ts181 // }
LOW.github/openssf-scorecard.yml41 with:
LOW.github/workflows/codeql-analysis.yml61 # ℹ️ Command-line programs to run using the OS shell.
LOWjupyterlab/handlers/__init__.py1# Copyright (c) Jupyter Development Team.
Overly Generic Function Names20 hits · 15 pts
SeverityFileLineSnippet
LOWgalata/test/jupyterlab/console.test.ts168 const multiLineCode = `def test_function():
LOWpackages/rendermime/src/outputmodel.ts263 export function getData(output: nbformat.IOutput): PartialJSONObject {
LOWpackages/rendermime/src/outputmodel.ts286 export function getData(output: nbformat.IOutput): PartialJSONObject {
LOWpackages/rendermime/src/attachmentmodel.ts182 export function getData(bundle: nbformat.IMimeBundle): PartialJSONObject {
LOWpackages/rendermime/src/attachmentmodel.ts194 export function getData(bundle: nbformat.IMimeBundle): PartialJSONObject {
LOWpackages/debugger/test/utils.ts62export function handleRequest(item: IService, status: number, body: any): void {
LOWpackages/services/test/utils.ts116export function handleRequest(item: IService, status: number, body: any): void {
LOWpackages/services/src/serverconnection.ts290 export function handleRequest(
LOWjupyterlab/labextensions.py185 def run_task(self):
LOWjupyterlab/labextensions.py217 def run_task(self):
LOWjupyterlab/labextensions.py245 def run_task(self):
LOWjupyterlab/labextensions.py275 def run_task(self):
LOWjupyterlab/labextensions.py289 def run_task(self):
LOWjupyterlab/labextensions.py306 def run_task(self):
LOWjupyterlab/labextensions.py328 def run_task(self):
LOWjupyterlab/labextensions.py348 def run_task(self):
LOWjupyterlab/labextensions.py369 def run_task(self):
LOWjupyterlab/labextensions.py396 def run_task(self):
LOWjupyterlab/labextensions.py414 def run_task(self):
LOWjupyterlab/labextensions.py437 def run_task(self):
Fake / Example Data14 hits · 13 pts
SeverityFileLineSnippet
LOWbuildutils/src/local-repository.ts173 const email = 'foo@bar.com';
LOWgalata/test/benchmark/notebook.spec.ts73 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin molestie suscipit libero non volutpat. Suspendisse
LOWgalata/test/benchmark/notebook.spec.ts73 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin molestie suscipit libero non volutpat. Suspendisse
LOWgalata/test/benchmark/notebook.spec.ts171 'div[role="tabpanel"]:has-text("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin mole")'
LOWgalata/test/benchmark/notebook.spec.ts171 'div[role="tabpanel"]:has-text("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin mole")'
LOWgalata/test/benchmark/notebook.spec.ts215 'div[role="tabpanel"]:has-text("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin mole")'
LOWgalata/test/benchmark/notebook.spec.ts215 'div[role="tabpanel"]:has-text("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin mole")'
LOW…ata/test/documentation/data/extensions-search-all.json101 "author": "John Doe",
LOWgalata/test/jupyterlab/file-search.test.ts8const TEST_FILE_CONTENT = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam urna
LOWgalata/test/jupyterlab/file-search.test.ts8const TEST_FILE_CONTENT = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam urna
LOWgalata/test/jupyterlab/texteditor.test.ts84 `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam urna
LOWgalata/test/jupyterlab/texteditor.test.ts84 `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam urna
LOWgalata/test/jupyterlab/notebooks/completer_panel.py6 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur vel
LOWgalata/test/jupyterlab/notebooks/completer_panel.py6 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur vel
Synthetic Comment Markers2 hits · 12 pts
SeverityFileLineSnippet
HIGHgalata/test/jupyterlab/windowed-notebook.test.ts288 // Press the key as many times as requested
HIGH.github/pull_request_template.md30- **<!-- YES or NO -->**: Some or all of the content of this PR was generated by AI.
Decorative Section Separators4 hits · 12 pts
SeverityFileLineSnippet
MEDIUMjupyterlab/labapp.py944# -----------------------------------------------------------------------------
MEDIUMjupyterlab/labapp.py946# -----------------------------------------------------------------------------
MEDIUMjupyterlab/commands.py638# ----------------------------------------------------------------------
MEDIUMjupyterlab/commands.py640# ----------------------------------------------------------------------
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippet
MEDIUMgalata/test/jupyterlab/notebook-toolbar.test.ts224 // FIXME Calling a second time `page.notebook.createNew` is not robust
MEDIUMpackages/toc/src/utils/markdown.ts329 // Case: HTML heading (WARNING: this is not particularly robust, as HTML headings can span multiple lines)
MEDIUMpackages/testing/src/jest-resolver.ts13 // Call the defaultResolver, so we leverage its cache, error handling, etc.
Unused Imports9 hits · 9 pts
SeverityFileLineSnippet
LOWdocs/source/_ext/shellcheck_builder.py6
LOWjupyterlab/__init__.py6
LOWjupyterlab/__init__.py7
LOWjupyterlab/__init__.py8
LOWjupyterlab/__init__.py8
LOWjupyterlab/__init__.py8
LOWjupyterlab/labapp.py928
LOWjupyterlab/extensions/__init__.py10
LOWjupyterlab/extensions/__init__.py10
Docstring Block Structure1 hit · 5 pts
SeverityFileLineSnippet
HIGHjupyterlab/extensions/pypi.py298Throttle XMLRPC API request Args: recursive: Whether to call the throttling recursively once or not
Redundant / Tautological Comments2 hits · 2 pts
SeverityFileLineSnippet
LOWjupyterlab/commands.py2335 # Set return_value to a sentinel value
LOWjupyterlab/commands.py2267 if f: # Check if f is not None (safety check)
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippet
LOWpackages/apputils/src/mainareawidget.ts42 // Don't forget to remove the CSS class when your remove the spinner to allow