A reactive notebook for Python — run reproducible experiments, query with SQL, execute as a script, deploy as an app, and version with git. Stored as pure Python. All in a modern, AI-native editor.
This report summarizes scanner evidence for marimo-team/marimo, a Python project with 23,098 GitHub stars. SynthScan examined 935,755 lines of code across 4671 source files, recording 13561 pattern matches distributed across 28 syntactic categories. The legacy adjusted pattern signal is 17.2 (Elevated pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 10024 finding(s).
Are imports declared and package/API names verified? 2218 finding(s).
Are wrappers, guards, and repeated structures necessary? 9968 finding(s).
Which changes need focused human review? 13561 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 13561 distinct pattern matches across 28 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/e2e-tests/helper.ts | 104 | export async function exportAsHTMLAndTakeScreenshot(page: Page) { | CODE |
| LOW | frontend/src/core/cells/cells.ts | 1929 | export function flattenTopLevelNotebookCells( | CODE |
| LOW | frontend/src/core/cells/collapseConsoleOutputs.tsx | 80 | function assertStringOutputMessage( | CODE |
| LOW | frontend/src/core/cells/utils.ts | 17 | export function notebookQueueOrRunningCount(state: NotebookState) { | CODE |
| LOW | frontend/src/core/cells/scrollCellIntoView.ts | 16 | export function focusAndScrollCellIntoView({ | CODE |
| LOW | frontend/src/core/cells/scrollCellIntoView.ts | 107 | export function focusAndScrollCellOutputIntoView(cellId: CellId) { | CODE |
| LOW | frontend/src/core/cells/session.ts | 39 | function mergeSessionAndNotebookCells( | CODE |
| LOW | frontend/src/core/cells/session.ts | 166 | function createCellDataFromNotebook( | CODE |
| LOW | frontend/src/core/cells/session.ts | 187 | function createCellRuntimeFromSession( | CODE |
| LOW | frontend/src/core/cells/document-changes.ts | 849 | export function documentTransactionMiddleware( | CODE |
| LOW | frontend/src/core/codemirror/editor-mount-scheduler.ts | 32 | export function createEditorMountScheduler( | CODE |
| LOW | frontend/src/core/codemirror/extensions.ts | 78 | export function scrollActiveLineIntoViewExtension() { | CODE |
| LOW | frontend/src/core/codemirror/cm.ts | 111 | function resolveCodeMirrorTooltipParent( | CODE |
| LOW | frontend/src/core/codemirror/readonly/extension.ts | 24 | function getOrCreateIndicator(): HTMLDivElement { | CODE |
| LOW | …ntend/src/core/codemirror/go-to-definition/commands.ts | 46 | function findFirstMatchingVariable( | CODE |
| LOW | …ntend/src/core/codemirror/go-to-definition/commands.ts | 157 | function collectFunctionParameters( | CODE |
| LOW | …ntend/src/core/codemirror/go-to-definition/commands.ts | 210 | function collectMatchingDeclarations( | CODE |
| LOW | …ntend/src/core/codemirror/go-to-definition/commands.ts | 390 | function findScopedDefinitionPosition( | CODE |
| LOW | frontend/src/core/codemirror/go-to-definition/utils.ts | 20 | function keymapBindingMatchesHotkey( | CODE |
| LOW | frontend/src/core/codemirror/go-to-definition/utils.ts | 78 | export function goToDefinitionAtCursorPosition(view: EditorView): boolean { | CODE |
| LOW | frontend/src/core/codemirror/go-to-definition/utils.ts | 112 | export function goToDefinitionWithLspFallback(view: EditorView): boolean { | CODE |
| LOW | frontend/src/core/codemirror/cells/extensions.ts | 355 | function shouldAutorunMarkdownUpdate({ | CODE |
| LOW | frontend/src/core/codemirror/cells/debugger-state.ts | 75 | export function createCellBreakpointsAtom(cellId: CellId) { | CODE |
| LOW⚡ | …odemirror/cells/__tests__/debugger-decorations.test.ts | 29 | function createLineHighlighterEditor( | CODE |
| LOW⚡ | …odemirror/cells/__tests__/debugger-decorations.test.ts | 39 | function createBreakpointGutterEditor( | CODE |
| LOW | frontend/src/core/codemirror/code-lens/extension.ts | 128 | function dismissEditorHoverTooltips( | CODE |
| LOW | frontend/src/core/codemirror/copilot/state.ts | 47 | export function setGitHubCopilotLoadingVersion(version: number) { | CODE |
| LOW | frontend/src/core/codemirror/copilot/state.ts | 53 | export function clearGitHubCopilotLoadingVersion(expectedVersion: number) { | CODE |
| LOW | frontend/src/core/codemirror/copilot/language-server.ts | 70 | function assertHasLanguageServerRpc( | CODE |
| LOW | frontend/src/core/codemirror/copilot/language-server.ts | 86 | function parseCopilotStatusNotificationParams( | CODE |
| LOW | frontend/src/core/codemirror/markdown/extension.ts | 17 | export function enhancedMarkdownExtension( | CODE |
| LOW | …ontend/src/core/codemirror/completion/Autocompleter.ts | 14 | function constructCompletionInfoNode( | CODE |
| LOW | …ntend/src/core/codemirror/completion/signature-hint.ts | 20 | function isCursorInsideAnchoredCall(options: { | CODE |
| LOW | …src/core/codemirror/completion/variable-completions.ts | 34 | export function createVariableInfoElement(variable: Variable): HTMLElement { | CODE |
| LOW | frontend/src/core/codemirror/keymaps/keymaps.ts | 203 | function vimVisualModeArrowKeyBindings(): KeyBinding[] { | CODE |
| LOW | frontend/src/core/codemirror/language/commands.ts | 12 | export function getCurrentLanguageAdapter( | CODE |
| LOW | frontend/src/core/codemirror/language/extension.ts | 121 | function updateLanguageAdapterAndCode({ | CODE |
| LOW | frontend/src/core/codemirror/language/extension.ts | 207 | export function adaptiveLanguageConfiguration(opts: { | CODE |
| LOW | frontend/src/core/codemirror/language/extension.ts | 237 | export function getInitialLanguageAdapter(state: EditorView["state"]) { | CODE |
| LOW | frontend/src/core/codemirror/language/extension.ts | 299 | export function reconfigureLanguageEffect( | CODE |
| LOW | frontend/src/core/codemirror/language/utils.ts | 38 | export function updateEditorCodeFromPython( | CODE |
| LOW | frontend/src/core/codemirror/language/metadata.ts | 50 | export function setLanguageMetadataCommand( | CODE |
| LOW | frontend/src/core/codemirror/language/metadata.ts | 63 | export function updateLanguageMetadataCommand( | CODE |
| LOW | …ntend/src/core/codemirror/language/languages/python.ts | 446 | export function customPythonLanguageSupport(): LanguageSupport { | CODE |
| LOW | …ror/language/languages/sql/banner-validation-errors.ts | 32 | export function clearAllSqlValidationErrors() { | CODE |
| LOW | …tend/src/core/codemirror/language/languages/sql/sql.ts | 508 | export function updateSQLDialectFromConnection( | CODE |
| LOW | …tend/src/core/codemirror/language/languages/sql/sql.ts | 600 | function connectionNameToParserDialect( | CODE |
| LOW | …demirror/language/languages/sql/completion-sources.tsx | 45 | export function customKeywordCompletionSource(): CompletionSource { | CODE |
| LOW | …end/src/core/codemirror/lsp/normalize-markdown-math.ts | 71 | export function normalizeLspDocumentation( | CODE |
| LOW | …end/src/core/codemirror/lsp/normalize-markdown-math.ts | 202 | function splitByInlineCodeSegments(text: string): InlineCodeSegment[] { | CODE |
| LOW | frontend/src/core/codemirror/lsp/types.ts | 93 | export function isClientWithProcessNotification( | CODE |
| LOW | frontend/src/core/codemirror/lsp/notebook-lsp.ts | 96 | function normalizeTextDocumentation( | CODE |
| LOW | frontend/src/core/codemirror/lsp/notebook-lsp.ts | 115 | function normalizeCompletionResponse( | CODE |
| LOW | frontend/src/core/codemirror/lsp/notebook-lsp.ts | 130 | function normalizeSignatureHelpResponse( | CODE |
| LOW | frontend/src/core/codemirror/lsp/notebook-lsp.ts | 169 | function isPublishDiagnosticsNotification( | CODE |
| LOW | frontend/src/core/codemirror/lsp/markdown-renderer.ts | 36 | export function createLspMarkdownRenderer(): (markdown: string) => string { | CODE |
| LOW | …src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts | 51 | function isPublishDiagnosticsNotification( | CODE |
| LOW | frontend/src/core/codemirror/rtc/extension.ts | 225 | function languageObserverExtension(cellId: CellId) { | CODE |
| LOW | frontend/src/core/codemirror/rtc/extension.ts | 325 | function languageListenerExtension(cellId: CellId) { | CODE |
| LOW | frontend/src/core/codemirror/placeholder/extensions.ts | 10 | export function smartPlaceholderExtension(text: string): Extension[] { | CODE |
| 8540 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/test_retina.py | 14 | CODE | |
| LOW | tests/test_version.py | 2 | CODE | |
| LOW | tests/conftest.py | 2 | CODE | |
| LOW | tests/test_tracer.py | 2 | CODE | |
| LOW | tests/test_tracer.py | 35 | CODE | |
| LOW | tests/test_tracer.py | 69 | CODE | |
| LOW | tests/test_tracer.py | 101 | CODE | |
| LOW | tests/test_loggers.py | 1 | CODE | |
| LOW | tests/utils.py | 1 | CODE | |
| LOW | tests/test_api.py | 1 | CODE | |
| LOW | tests/test_entrypoints.py | 1 | CODE | |
| LOW | tests/test_project_dependencies.py | 1 | CODE | |
| LOW | tests/mocks.py | 1 | CODE | |
| LOW | tests/_utils/test_deep_merge.py | 2 | CODE | |
| LOW | tests/_utils/test_diagnostics.py | 2 | CODE | |
| LOW | tests/_utils/test_flatten.py | 2 | CODE | |
| LOW | tests/_utils/test_file_watcher.py | 2 | CODE | |
| LOW | tests/_utils/test_inline_script_metadata.py | 1 | CODE | |
| LOW | tests/_utils/test_memoize.py | 1 | CODE | |
| LOW | tests/_utils/test_signals.py | 2 | CODE | |
| LOW | tests/_utils/test_site_packages.py | 2 | CODE | |
| LOW | tests/_utils/test_marimo_path.py | 1 | CODE | |
| LOW | tests/_utils/test_hashable.py | 2 | CODE | |
| LOW | tests/_utils/test_distributor.py | 1 | CODE | |
| LOW | tests/_utils/test_lifespans.py | 1 | CODE | |
| LOW | tests/_utils/test_env.py | 2 | CODE | |
| LOW | tests/_utils/test_asyncio_utils.py | 1 | CODE | |
| LOW | tests/_utils/test_edit_distance.py | 2 | CODE | |
| LOW | tests/_utils/test_case.py | 2 | CODE | |
| LOW | tests/_utils/test_versions.py | 2 | CODE | |
| LOW | tests/_utils/test_subprocess.py | 2 | CODE | |
| LOW | tests/_utils/test_xdg.py | 2 | CODE | |
| LOW | tests/_utils/test_data_uri.py | 1 | CODE | |
| LOW | tests/_utils/test_parse_dataclass.py | 2 | CODE | |
| LOW | tests/_utils/test_formatter.py | 2 | CODE | |
| LOW | tests/_utils/test_cell_matching.py | 2 | CODE | |
| LOW | tests/_utils/test_format_signature.py | 2 | CODE | |
| LOW | tests/_utils/test_repr.py | 1 | CODE | |
| LOW | tests/_utils/test_narwhals_utils.py | 1 | CODE | |
| LOW | tests/_utils/test_paths.py | 2 | CODE | |
| LOW | tests/_utils/test_strings.py | 2 | CODE | |
| LOW | tests/_utils/test_platform.py | 2 | CODE | |
| LOW | tests/_utils/test_serial_task_runner.py | 4 | CODE | |
| LOW | tests/_utils/test_health_utils.py | 1 | CODE | |
| LOW | tests/_utils/test_background_task.py | 1 | CODE | |
| LOW | tests/_utils/test_dataclass_to_openapi.py | 1 | CODE | |
| LOW | tests/_utils/test_scripts.py | 1 | CODE | |
| LOW | tests/_utils/test_uv_tree.py | 1 | CODE | |
| LOW | tests/_utils/config/test_config_reader.py | 2 | CODE | |
| LOW | tests/_internal/test_internal_api.py | 1 | CODE | |
| LOW | tests/_lint/test_log_rules.py | 2 | CODE | |
| LOW | tests/_lint/test_lint_config_integration.py | 4 | CODE | |
| LOW | tests/_lint/test_rule_selector.py | 4 | CODE | |
| LOW | tests/_lint/test_private_import_alias.py | 2 | CODE | |
| LOW | tests/_lint/test_wasm_rules.py | 4 | CODE | |
| LOW | tests/_lint/utils.py | 3 | CODE | |
| LOW | tests/_lint/test_reusable_definition_order.py | 2 | CODE | |
| LOW | tests/_lint/test_validate_graph.py | 2 | CODE | |
| LOW | tests/_lint/test_files/test_transitive_site_import.py | 9 | CODE | |
| LOW | tests/_lint/test_files/test_transitive_site_import.py | 16 | CODE | |
| 1899 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/_utils/test_site_packages.py | 77 | # Create a local Python file | COMMENT |
| MEDIUM | tests/_utils/test_site_packages.py | 87 | # Create a local package directory | COMMENT |
| MEDIUM | tests/_utils/test_marimo_path.py | 55 | # Create a temporary file | COMMENT |
| MEDIUM | tests/_utils/test_marimo_path.py | 72 | # Create a temporary file | COMMENT |
| MEDIUM | tests/_utils/test_marimo_path.py | 83 | # Create a temporary file with binary content | COMMENT |
| MEDIUM⚡ | tests/_utils/test_async_path.py | 403 | # Create a future that resolves to True | COMMENT |
| MEDIUM⚡ | tests/_utils/test_parse_dataclass.py | 743 | # Create a deeply nested structure | COMMENT |
| MEDIUM | tests/_utils/test_parse_dataclass.py | 277 | # Create a dataclass that contains the experimental field, | COMMENT |
| MEDIUM | tests/_utils/test_parse_dataclass.py | 547 | # Create a simple tree | COMMENT |
| MEDIUM⚡ | tests/_utils/test_parse_dataclass.py | 745 | for i in range(100): # Create a chain of 100 nodes | CODE |
| MEDIUM | tests/_utils/test_narwhals_utils.py | 93 | # Create a class with __module__ = None | COMMENT |
| MEDIUM⚡ | tests/_utils/test_paths.py | 41 | # Create a path with .. in absolute path | COMMENT |
| MEDIUM⚡ | tests/_utils/test_paths.py | 56 | # Create a real directory | COMMENT |
| MEDIUM⚡ | tests/_utils/test_paths.py | 60 | # Create a file in the real directory | COMMENT |
| MEDIUM⚡ | tests/_utils/test_paths.py | 64 | # Create a symlink to the real directory | COMMENT |
| MEDIUM | tests/_lint/test_lint_system.py | 77 | # Create a notebook with violations | COMMENT |
| MEDIUM | tests/_lint/test_lint_system.py | 106 | # Create a simple notebook | COMMENT |
| MEDIUM | tests/_lint/test_lint_system.py | 126 | # Create a simple notebook | COMMENT |
| MEDIUM | tests/_lint/test_lint_system.py | 146 | # Create a simple notebook | COMMENT |
| MEDIUM | tests/_lint/test_lint_system.py | 165 | # Create a notebook with unparsable cell | COMMENT |
| MEDIUM | tests/_lint/test_async_context_system.py | 313 | # Create a simple notebook (unparsable cells need special setup) | COMMENT |
| MEDIUM | tests/_lint/test_ignore_scripts.py | 9 | # Create a temporary non-marimo Python file | COMMENT |
| MEDIUM | tests/_lint/test_ignore_scripts.py | 43 | # Create a temporary marimo file | COMMENT |
| MEDIUM⚡ | tests/_lint/test_run_check.py | 24 | # Create a non-notebook file | COMMENT |
| MEDIUM | tests/_lint/test_run_check.py | 389 | # Create a notebook with violations (missing __generated_with) | COMMENT |
| MEDIUM | tests/_lint/test_json_formatter.py | 302 | # Create a file that doesn't exist to get empty results | COMMENT |
| MEDIUM⚡ | tests/_session/test_venv.py | 38 | # Create a mock venv with Python | COMMENT |
| MEDIUM | tests/_session/test_venv.py | 80 | # Create a mock venv with Python | COMMENT |
| MEDIUM | tests/_session/test_venv.py | 93 | # Create a script file in tmp_path | COMMENT |
| MEDIUM⚡ | tests/_session/test_resume_strategies.py | 49 | # Create an orphaned session | COMMENT |
| MEDIUM | tests/_session/test_resume_strategies.py | 163 | # Create an open session | COMMENT |
| MEDIUM | tests/_session/test_resume_strategies.py | 184 | # Create an orphaned session for a different file | COMMENT |
| MEDIUM⚡ | tests/_session/test_resume_strategies.py | 232 | # Create an orphaned session | COMMENT |
| MEDIUM | tests/_session/test_resume_strategies.py | 249 | # Create an open session | COMMENT |
| MEDIUM | tests/_session/managers/test_ipc.py | 100 | # Create the underlying IPC queue manager | COMMENT |
| MEDIUM | tests/_convert/markdown/test_markdown_from_ir.py | 276 | # Create a notebook with an unparsable cell by directly constructing the IR | COMMENT |
| MEDIUM | tests/_convert/ipynb/test_ipynb_to_ir.py | 1220 | # Create a minimal notebook with pip install | COMMENT |
| MEDIUM | tests/_convert/ipynb/test_ipynb_to_ir.py | 1241 | # Create a notebook without pip install | COMMENT |
| MEDIUM | tests/_convert/ipynb/test_ipynb_to_ir.py | 1262 | # Create a notebook with existing PEP 723 metadata | COMMENT |
| MEDIUM | tests/_convert/ipynb/test_from_ir.py | 805 | # Create a notebook with stream output containing cleaned ANSI | COMMENT |
| MEDIUM | tests/_messaging/test_messaging_errors.py | 25 | # Create a cycle error with mock edges | COMMENT |
| MEDIUM | tests/_messaging/test_print_override.py | 58 | # Create a mock context | COMMENT |
| MEDIUM | tests/_messaging/test_print_override.py | 101 | # Create a mock context with no execution context | COMMENT |
| MEDIUM | tests/_messaging/test_print_override.py | 131 | # Create a mock context | COMMENT |
| MEDIUM | tests/_messaging/test_print_override.py | 169 | # Create a mock context | COMMENT |
| MEDIUM | tests/_messaging/test_mimetypes.py | 37 | # Create a valid mime bundle | COMMENT |
| MEDIUM | tests/_messaging/test_types.py | 175 | # Create a valid kernel message | COMMENT |
| MEDIUM | tests/_sql/test_ibis.py | 796 | # Create a test table in the new catalog | COMMENT |
| MEDIUM | tests/_sql/test_ibis.py | 915 | # Create a temp table and a regular table | COMMENT |
| MEDIUM | tests/_sql/test_ibis.py | 947 | # Create a table with same name in both main and temp catalogs | COMMENT |
| MEDIUM | tests/_sql/test_ibis.py | 1008 | # Create a simple table for testing | COMMENT |
| MEDIUM | tests/_sql/test_sql_parse.py | 515 | # Create a query with many columns | COMMENT |
| MEDIUM⚡ | tests/_sql/test_sql_error_handling.py | 364 | # Create a table to generate "Did you mean?" suggestions | COMMENT |
| MEDIUM | tests/_sql/test_sql_error_handling.py | 57 | # Create a test table first | COMMENT |
| MEDIUM | tests/_sql/test_sql_error_handling.py | 384 | # Create a table to generate candidate binding suggestions | COMMENT |
| MEDIUM⚡ | tests/_sql/test_engines.py | 148 | # Create a SQLite engine | COMMENT |
| MEDIUM⚡ | tests/_sql/test_engines.py | 151 | # Create a test table | COMMENT |
| MEDIUM⚡ | tests/_sql/test_engines.py | 207 | # Create a SQLite engine | COMMENT |
| MEDIUM⚡ | tests/_sql/test_engines.py | 210 | # Create a test table with schema | COMMENT |
| MEDIUM | tests/_sql/test_engines.py | 250 | # Create a test table | COMMENT |
| 384 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/_utils/test_site_packages.py | 41 | except (AttributeError, IndexError): | CODE |
| HIGH | tests/_utils/test_subprocess.py | 152 | except ProcessLookupError: | CODE |
| HIGH | tests/_lint/test_lint_system.py | 228 | except Exception: | CODE |
| HIGH | tests/_code_mode/test_code_mode_context.py | 663 | except ValueError: | CODE |
| HIGH | tests/_code_mode/test_code_mode_context.py | 1107 | except ValueError: | CODE |
| HIGH | tests/_code_mode/test_screenshot_integration.py | 131 | except httpx.TransportError: | CODE |
| HIGH | tests/_environments/test_process.py | 108 | except psutil.NoSuchProcess: | CODE |
| HIGH | tests/_environments/test_process.py | 199 | except psutil.NoSuchProcess: | CODE |
| HIGH | tests/_session/managers/test_kernel.py | 66 | except ProcessLookupError: | CODE |
| HIGH | tests/_pyodide/test_restartable_task.py | 37 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_pyodide/test_restartable_task.py | 75 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_pyodide/test_restartable_task.py | 125 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_pyodide/test_restartable_task.py | 181 | except (asyncio.CancelledError, ValueError): | CODE |
| HIGH | tests/_pyodide/test_restartable_task.py | 232 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_pyodide/test_restartable_task.py | 267 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_pyodide/test_pyodide_session.py | 175 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_pyodide/test_pyodide_session.py | 267 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_pyodide/test_pyodide_session.py | 344 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_server/test_scratchpad.py | 637 | except asyncio.TimeoutError: | CODE |
| HIGH | tests/_server/test_scratchpad_integration.py | 172 | except Exception: | CODE |
| HIGH | tests/_server/test_scratchpad_integration.py | 176 | except Exception: | CODE |
| HIGH | tests/_server/rtc/test_rtc_doc.py | 65 | except asyncio.CancelledError: | CODE |
| HIGH | tests/_server/api/endpoints/test_ws.py | 960 | except asyncio.TimeoutError: | CODE |
| HIGH | tests/_server/api/endpoints/test_ws_rtc.py | 134 | except Exception: | CODE |
| HIGH | tests/_cli/_pair_server.py | 75 | except OSError: | CODE |
| HIGH | tests/_cli/_pair_server.py | 79 | except OSError: | CODE |
| HIGH | tests/_cli/_pair_server.py | 55 | except (OSError, KeyError, ValueError): | CODE |
| HIGH | tests/_cli/test_file_path.py | 214 | except ValueError: | CODE |
| HIGH | tests/_cli/test_export_subprocess.py | 147 | except psutil.NoSuchProcess: | CODE |
| HIGH | tests/_cli/test_export_subprocess.py | 397 | except psutil.NoSuchProcess: | CODE |
| HIGH | tests/_runtime/test_dataflow.py | 1068 | except ValueError: | CODE |
| HIGH | tests/_runtime/test_wasm_multiprocessing_pool.py | 643 | except BaseException: | CODE |
| HIGH | tests/_runtime/test_wasm_multiprocessing_pool.py | 545 | except BaseException: | CODE |
| HIGH | …amples/third_party/cvxpy/signals/modules/components.py | 89 | except KeyError: | CODE |
| HIGH | examples/ai/chat/bedrock_example.py | 52 | except: | CODE |
| HIGH | marimo/_loggers.py | 63 | except PermissionError: | CODE |
| HIGH | marimo/_utils/parse_dataclass.py | 167 | except TypeError: | CODE |
| HIGH | marimo/_utils/health.py | 342 | except (FileNotFoundError, PermissionError, ValueError): | CODE |
| HIGH | marimo/_utils/background_task.py | 94 | except asyncio.CancelledError: | CODE |
| HIGH | marimo/_utils/diagnostics.py | 64 | except AttributeError: | CODE |
| HIGH | marimo/_utils/subprocess.py | 366 | except ProcessLookupError: | CODE |
| HIGH | marimo/_utils/subprocess.py | 374 | except (ProcessLookupError, PermissionError): | CODE |
| HIGH | marimo/_utils/subprocess.py | 429 | except RuntimeError: | CODE |
| HIGH | marimo/_utils/subprocess.py | 451 | except (OSError, subprocess.TimeoutExpired): | CODE |
| HIGH | marimo/_utils/subprocess.py | 460 | except ProcessLookupError: | CODE |
| HIGH | marimo/_utils/format_signature.py | 13 | except ModuleNotFoundError: | CODE |
| HIGH | marimo/_utils/format_signature.py | 40 | except Exception: | CODE |
| HIGH | marimo/_utils/tmpdir.py | 34 | except Exception: | CODE |
| HIGH | marimo/_utils/log_formatter.py | 22 | except Exception: | CODE |
| HIGH | marimo/_code_mode/_context.py | 1027 | except KeyError: | CODE |
| HIGH | marimo/_code_mode/_context.py | 1065 | except KeyError: | CODE |
| HIGH | marimo/_code_mode/_context.py | 1256 | except KeyError: | CODE |
| HIGH | marimo/_code_mode/screenshot.py | 223 | except Exception: | CODE |
| HIGH | marimo/_environments/uv.py | 317 | except Exception: | CODE |
| HIGH | marimo/_session/_venv.py | 122 | except ImportError: | CODE |
| HIGH | marimo/_session/managers/kernel.py | 285 | except ProcessLookupError: | CODE |
| HIGH | marimo/_session/managers/ipc.py | 572 | except RuntimeError: | CODE |
| HIGH | marimo/_session/managers/ipc.py | 716 | except subprocess.TimeoutExpired: | CODE |
| HIGH | marimo/_session/managers/ipc.py | 722 | except subprocess.TimeoutExpired: | CODE |
| HIGH | marimo/_session/managers/ipc.py | 734 | except ProcessLookupError: | CODE |
| 138 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | frontend/islands/generate.py | 68 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 70 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 87 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 89 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 236 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 238 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 325 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 327 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 402 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 404 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 464 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 466 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 513 | # ============================================================================ | COMMENT |
| MEDIUM | frontend/islands/generate.py | 515 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/_code_mode/test_cells_view.py | 388 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_code_mode/test_cells_view.py | 390 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_code_mode/test_cells_view.py | 393 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_code_mode/test_cells_view.py | 395 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 208 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 210 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 229 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 231 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 284 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 286 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 318 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 320 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 350 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tests/_code_mode/test_cells_view.py | 352 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 198 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 200 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 239 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 241 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 288 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 290 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 447 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 449 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 545 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 547 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 609 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 611 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 624 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_session/test_file_change_handler.py | 626 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/_session/test_file_change_handler.py | 171 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/_session/test_file_change_handler.py | 173 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 19 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 21 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 132 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 134 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 211 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 213 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 347 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/test_thread_local_proxy.py | 349 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 411 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 413 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 477 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 479 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 489 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 491 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 605 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tests/_messaging/notebook/test_document.py | 607 | # ------------------------------------------------------------------ | COMMENT |
| 199 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …emirror/reactive-references/__tests__/analyzer.test.ts | 916 | def func(): | CODE |
| MEDIUM | …emirror/reactive-references/__tests__/analyzer.test.ts | 925 | def func(): | CODE |
| LOW | …emirror/reactive-references/__tests__/analyzer.test.ts | 253 | except Exception as e: | CODE |
| LOW | …emirror/reactive-references/__tests__/analyzer.test.ts | 919 | except Exception as e: # e is local to except block | CODE |
| LOW | …emirror/reactive-references/__tests__/analyzer.test.ts | 929 | except Exception as e: # e is local to except block | CODE |
| LOW | frontend/src/core/wasm/worker/worker.ts | 204 | except Exception as e: | CODE |
| LOW | frontend/src/core/wasm/worker/worker.ts | 224 | except Exception as e: | CODE |
| LOW | tests/utils.py | 29 | except Exception: | CODE |
| LOW | tests/_lint/test_lint_system.py | 228 | except Exception: | CODE |
| LOW | tests/_lint/test_lint_system.py | 252 | except Exception as e: | CODE |
| LOW | tests/_lint/test_async_context_system.py | 171 | except Exception as e: | CODE |
| MEDIUM | tests/_lint/test_async_context_system.py | 165 | def get_graph(): | CODE |
| LOW | tests/_export/test_exporter.py | 396 | except Exception: | CODE |
| LOW | tests/_sql/test_ibis.py | 1048 | except Exception as e: | CODE |
| LOW⚡ | tests/_sql/test_sql_error_handling.py | 227 | except Exception as e: | CODE |
| LOW⚡ | tests/_sql/test_sql_error_handling.py | 253 | except Exception as e: | CODE |
| LOW | tests/_sql/test_sql_error_handling.py | 411 | except Exception as e: | CODE |
| LOW | tests/_sql/test_sql_error_handling.py | 434 | except Exception as e: | CODE |
| LOW | tests/_ast/test_transformers.py | 504 | except Exception: | CODE |
| MEDIUM | tests/_server/test_file_manager.py | 381 | def _frontend_save() -> None: | CODE |
| LOW | tests/_server/test_file_manager.py | 385 | except Exception as e: # pragma: no cover — should never happen | CODE |
| LOW | tests/_server/test_file_manager.py | 400 | except Exception as e: # pragma: no cover | CODE |
| LOW | tests/_server/test_scratchpad_integration.py | 77 | except Exception: | CODE |
| LOW | tests/_server/test_scratchpad_integration.py | 90 | except Exception: | CODE |
| LOW | tests/_server/test_scratchpad_integration.py | 172 | except Exception: | CODE |
| LOW | tests/_server/test_scratchpad_integration.py | 176 | except Exception: | CODE |
| MEDIUM | tests/_server/test_scratchpad_integration.py | 74 | def _tail() -> str: | CODE |
| LOW | tests/_server/api/endpoints/test_ws_rtc.py | 134 | except Exception: | CODE |
| LOW | tests/_plugins/ui/_impl/tables/geometry_fixtures.py | 270 | except Exception as e: # extension download can fail offline | CODE |
| MEDIUM | tests/_plugins/ui/_impl/tables/test_narwhals.py | 1078 | print(f"Error getting summary for column {column}: {e}") | CODE |
| LOW | tests/_plugins/ui/_impl/tables/test_narwhals.py | 1076 | except Exception as e: | CODE |
| LOW | tests/_plugins/ui/_impl/dataframes/test_print_code.py | 559 | except Exception as code_error: | CODE |
| LOW | tests/_plugins/ui/_impl/dataframes/test_print_code.py | 570 | except Exception as real_error: | CODE |
| LOW | tests/_plugins/ui/_impl/dataframes/test_print_code.py | 959 | except Exception as code_error: | CODE |
| LOW | tests/_plugins/ui/_impl/dataframes/test_print_code.py | 970 | except Exception as real_error: | CODE |
| LOW | tests/_plugins/ui/_impl/dataframes/test_print_code.py | 1407 | except Exception: | CODE |
| LOW⚡ | tests/_plugins/ui/_impl/dataframes/test_dataframe.py | 580 | except Exception as e: | CODE |
| LOW | tests/_plugins/stateless/test_mpl.py | 70 | except Exception as e: | STRING |
| LOW | tests/_cli/test_cli_export.py | 97 | except Exception: | CODE |
| LOW | tests/_cli/test_endpoint.py | 66 | except Exception as e: | CODE |
| LOW | tests/_cli/test_endpoint.py | 144 | except Exception: | CODE |
| LOW | tests/_cli/test_cli.py | 142 | except Exception as e: | CODE |
| LOW | tests/_runtime/test_runtime.py | 1347 | except Exception: | STRING |
| LOW | tests/_runtime/test_runtime.py | 1368 | except Exception: | STRING |
| LOW | tests/_save/test_cache.py | 295 | except Exception as e: | CODE |
| MEDIUM | docs/scripts/html_to_markdown.py | 409 | print(f"Error: input directory {input_dir} does not exist") | CODE |
| LOW | examples/ai/tools/dataset_analysis.py | 154 | except Exception as e: | STRING |
| LOW | examples/ai/tools/chat_with_tools.py | 199 | except Exception as e: | STRING |
| LOW | examples/ai/chat/bedrock_example.py | 217 | except Exception as e: | STRING |
| LOW | examples/ai/chat/mlx_chat.py | 78 | except Exception as e: | STRING |
| LOW | examples/ai/chat/mlx_chat.py | 114 | except Exception as e: | STRING |
| LOW | examples/frameworks/fastapi-endpoint/main.py | 56 | except Exception as e: | CODE |
| LOW | marimo/_tracer.py | 159 | except Exception: | CODE |
| LOW | marimo/_tracer.py | 219 | except Exception: | CODE |
| LOW | marimo/_tracer.py | 255 | except Exception as e: | CODE |
| LOW | marimo/_tracer.py | 273 | except Exception as e: | CODE |
| LOW | marimo/_tracer.py | 301 | except Exception as e: | CODE |
| LOW | marimo/_tracer.py | 337 | except Exception as e: | CODE |
| LOW | marimo/_loggers.py | 169 | except Exception as e: | CODE |
| LOW | marimo/_loggers.py | 185 | except Exception as e: | CODE |
| 598 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …re/codemirror/go-to-definition/__tests__/utils.test.ts | 90 | print(a)`; | CODE |
| HIGH | …re/codemirror/go-to-definition/__tests__/utils.test.ts | 94 | print(a)`; | CODE |
| HIGH | …re/codemirror/go-to-definition/__tests__/utils.test.ts | 152 | print(mymodule)`; | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 74 | print(my_func) | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 84 | print(x) | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 86 | print(x)`); | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 326 | print("hi") | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 329 | print(x) | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 331 | print(x)`); | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 340 | print("hi") | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 343 | print(x) | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 345 | print(x) | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 354 | print(myVar)`); | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 364 | print(myVar) | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 373 | print('myVar')`); | CODE |
| HIGH⚡ | …codemirror/go-to-definition/__tests__/commands.test.ts | 382 | print('myVar') | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 41 | print(myVar)`); | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 51 | print(myVar) | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 62 | print(my_func)`); | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 97 | print(x) | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 99 | print(x) | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 110 | print(a)`; | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 123 | print(a) | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 133 | print(a)`; | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 145 | print(a) | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 259 | print(my_sin)`; | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 271 | print(my_sin) | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 279 | print(math)`; | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 294 | print(sin)`; | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 305 | print(sin) | CODE |
| HIGH | …codemirror/go-to-definition/__tests__/commands.test.ts | 313 | print(sin)`; | CODE |
| HIGH | …rc/core/codemirror/markdown/__tests__/commands.test.ts | 673 | print('Hello, world!') | CODE |
| HIGH | …rc/core/codemirror/markdown/__tests__/commands.test.ts | 691 | print('Hello, world!') | CODE |
| HIGH⚡ | …c/core/codemirror/language/__tests__/extension.test.ts | 170 | print('Hello') | CODE |
| HIGH⚡ | …c/core/codemirror/language/__tests__/extension.test.ts | 171 | print('Goodbye') | CODE |
| HIGH⚡ | …c/core/codemirror/language/__tests__/extension.test.ts | 179 | print('Hello') | CODE |
| HIGH⚡ | …c/core/codemirror/language/__tests__/extension.test.ts | 180 | print('Goodbye') | CODE |
| HIGH⚡ | …c/core/codemirror/language/__tests__/extension.test.ts | 190 | print('Hello') | CODE |
| HIGH⚡ | …c/core/codemirror/language/__tests__/extension.test.ts | 191 | print('Goodbye') | CODE |
| HIGH | …rc/core/codemirror/editing/__tests__/debugging.test.ts | 27 | const initialDoc = 'def test():\n print("hello")\n return True'; | CODE |
| HIGH | …rc/core/codemirror/editing/__tests__/debugging.test.ts | 45 | 'def test():\n breakpoint()\n print("hello")\n return True'; | CODE |
| HIGH | …rc/core/codemirror/editing/__tests__/debugging.test.ts | 57 | 'def test():\n if True:\n print("nested")\n return True'; | CODE |
| HIGH | …rc/core/codemirror/editing/__tests__/debugging.test.ts | 75 | 'def test():\n if True:\n breakpoint()\n print("nested")\n return True'; | CODE |
| HIGH⚡ | …emirror/reactive-references/__tests__/analyzer.test.ts | 744 | print(f.read()) | CODE |
| HIGH⚡ | …emirror/reactive-references/__tests__/analyzer.test.ts | 747 | print(i) | CODE |
| HIGH⚡ | …emirror/reactive-references/__tests__/analyzer.test.ts | 749 | print(y)`, | CODE |
| HIGH⚡ | …emirror/reactive-references/__tests__/analyzer.test.ts | 757 | print(f.read()) | CODE |
| HIGH⚡ | …emirror/reactive-references/__tests__/analyzer.test.ts | 760 | print(i) | CODE |
| HIGH⚡ | …emirror/reactive-references/__tests__/analyzer.test.ts | 762 | print(y) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 254 | print("Error", logger) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 267 | print(f.read()) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 544 | print(mo, x, polars)`, | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 551 | print(mo, x, polars) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 721 | print(a.read())`, | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 728 | print(a.read()) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 1058 | print(a, b) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 1066 | print(a, b) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 1080 | print(a, b) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 1097 | print(a, b) | CODE |
| HIGH | …emirror/reactive-references/__tests__/analyzer.test.ts | 1171 | print(tool) | CODE |
| 17 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/_utils/test_docs.py | 13 | This is the summary. Args: foo (str): Lorem ipsum bar (int): Dolor sit amet Attributes: | STRING |
| HIGH | tests/_utils/test_docs.py | 59 | Stack items vertically, in a column. Combine with `hstack` to build a grid of items. Examples: Bui | STRING |
| HIGH | marimo/_utils/flatten.py | 221 | Flatten a nested structure. Returns the structure flattened and a repacking function. Replacing function expec | STRING |
| HIGH | marimo/_utils/parse_dataclass.py | 220 | Utility to parse a message as JSON, and instantiate into supplied type. Args: message: The message to parse | STRING |
| HIGH | marimo/_utils/dataclass_to_openapi.py | 244 | Convert a dataclass to an OpenAPI schema. Args: cls (Any): The dataclass type or instance to conver | STRING |
| HIGH | marimo/_utils/strings.py | 99 | Standardize quotes in type annotations to use double quotes. This handles complex cases like Literal['foo', 'bar'] | STRING |
| HIGH | marimo/_code_mode/_better_inspect.py | 201 | A compact, AI-friendly replacement for `help()`. Can be used standalone, or applied automatically via the `@helpabl | STRING |
| HIGH | marimo/_code_mode/_context.py | 1429 | Capture a cell's rendered output as a PNG screenshot. Launches a headless Chromium browser (reused across calls | STRING |
| HIGH | marimo/_session/_venv.py | 61 | Get Python path from venv config. Args: venv_config: The venv config dict (from config.get("venv")). | STRING |
| HIGH | marimo/_session/notebook/storage.py | 19 | Read content from storage. Args: path: Path to read from Returns: File content | STRING |
| HIGH | marimo/_session/notebook/serializer.py | 139 | Get the appropriate notebook serializer for a file. Args: path: File path contents: Optional file c | STRING |
| HIGH | marimo/_session/notebook/file_manager.py | 318 | Rename the notebook file. Args: new_filename: New filename (will be canonicalized) Returns | STRING |
| HIGH | marimo/_session/notebook/file_manager.py | 429 | Save the notebook. Args: request: Save request with cell data and options on_document_t | STRING |
| HIGH | marimo/_session/notebook/file_manager.py | 544 | Copy a notebook file. Args: request: Copy request with source and destination Returns: | STRING |
| HIGH | marimo/_convert/common/dom_traversal.py | 121 | Replace attribute values in HTML using a custom function. Args: html: The HTML string to process al | STRING |
| HIGH | marimo/_convert/common/dom_traversal.py | 228 | Replace virtual file URLs with data URIs in HTML. This is a convenience function that uses replace_html_attributes | STRING |
| HIGH | marimo/_convert/common/dom_traversal.py | 340 | Inline `public/`-prefixed file references as data URIs. Scans `html` for media tag attributes (e.g. `<img src="publ | STRING |
| HIGH | marimo/_pyodide/pyodide_session.py | 222 | Parse a command string for WASM/Pyodide. Args: request: JSON string containing the request Returns: | STRING |
| HIGH | marimo/_ai/text_to_notebook.py | 29 | Generate a notebook from a text prompt. Args: prompt: The text prompt to generate a notebook from. | STRING |
| HIGH | marimo/_ast/cell.py | 570 | Run this cell and return its visual output and definitions. Use this method to run **named cells** and | STRING |
| HIGH | marimo/_ast/app.py | 667 | Run the marimo app and return its outputs and definitions. Use this method to run marimo apps programm | STRING |
| HIGH | marimo/_ast/app.py | 844 | Embed a notebook into another notebook. The `embed` method lets you embed the output of a notebook into | STRING |
| HIGH | marimo/_ast/load.py | 109 | Attempts to parse an app- should raise SyntaxError on failure. Args: filename: Path to a marimo notebook fi | STRING |
| HIGH | marimo/_ast/load.py | 169 | Load and return app from a marimo-generated module. Args: filename: Path to a marimo notebook file (.py or | STRING |
| HIGH | marimo/_ast/cell_manager.py | 335 | Get the name of a cell by its ID. Args: cell_id: The ID of the cell Returns: s | STRING |
| HIGH | marimo/_ast/cell_manager.py | 473 | Get the cell data for a specific cell ID. Args: cell_id: The ID of the cell to get data for | STRING |
| HIGH | marimo/_entrypoints/registry.py | 113 | Get a plugin by name, loading it from entry points if necessary. Args: name: The name of the plugin | STRING |
| HIGH | marimo/_server/ai/mcp/config.py | 101 | Create server definition with automatic transport detection. Args: name: Server name co | STRING |
| HIGH | marimo/_server/ai/mcp/transport.py | 134 | Get the appropriate transport connector for the given transport type. Args: transport_type: The typ | STRING |
| HIGH | marimo/_plugins/ui/_impl/data_explorer.py | 20 | Quickly explore a DataFrame with automatically suggested visualizations. Examples: ```python mo.ui. | STRING |
| HIGH | marimo/_plugins/ui/_impl/matrix.py | 303 | An interactive matrix/vector editor. A matrix UI element in which each entry is a slider: click and drag horizo | STRING |
| HIGH | marimo/_plugins/ui/_impl/tabs.py | 19 | Display objects in a tabbed view. Examples: Show content in tabs: ```python tab1 = mo.vstac | STRING |
| HIGH | marimo/_plugins/ui/_impl/data_editor.py | 441 | A data editor component for editing tabular data. This component is experimental and intentionally limited in featu | STRING |
| HIGH | marimo/_plugins/ui/_impl/batch.py | 162 | Convert an HTML object with templated text into a UI element. A `batch` is a UI element that wraps other UI element | STRING |
| HIGH | marimo/_plugins/ui/_impl/altair_chart.py | 481 | Make reactive charts with Altair. Use `mo.ui.altair_chart` to make Altair charts reactive: select chart data wi | STRING |
| HIGH | marimo/_plugins/ui/_impl/altair_chart.py | 750 | Apply the selection to a DataFrame. This method is useful when you have a layered chart and you want to | STRING |
| HIGH | marimo/_plugins/ui/_impl/run_button.py | 17 | A button that can be used to trigger computation. When clicked, run_button's value is set to True, and any cells re | STRING |
| HIGH | marimo/_plugins/ui/_impl/switch.py | 15 | A boolean switch. Examples: ```python switch = mo.ui.switch() ``` Attributes: | STRING |
| HIGH | marimo/_plugins/ui/_impl/file_browser.py | 197 | File browser for browsing and selecting server-side files. This element supports local files, S3, GCS, and Azure. | STRING |
| HIGH | marimo/_plugins/ui/_impl/from_anywidget.py | 160 | Create a UIElement from an AnyWidget. This proxies all the widget's attributes and methods, allowing seamless i | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 147 | A numeric slider over an interval. Example: ```python slider = mo.ui.slider(start=1, stop=10, step= | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 585 | A boolean checkbox. Examples: ```python checkbox = mo.ui.checkbox() ``` Attributes: | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 633 | A radio group. Examples: ```python radiogroup = mo.ui.radio( options=["a", "b", "c"], v | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 717 | A text input. Examples: ```python text = mo.ui.text(value="Hello, World!") ``` Attribu | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 806 | A text area that is larger than `ui.text`. Examples: ```python text_area = mo.ui.text_area() | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 869 | A code editor. Examples: ```python code_editor = mo.ui.code_editor() ``` Attribut | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 994 | A dropdown selector. Examples: ```python dropdown = mo.ui.dropdown( options=["a", "b", | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 1134 | A multiselect input. Examples: ```python multiselect = mo.ui.multiselect( options=["a", | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 1240 | A button with an optional callback and optional value. Examples: ```python # a button that when cli | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 1344 | A button or drag-and-drop area to upload a file. Once a file is uploaded, the UI element's value is a list of named | STRING |
| HIGH | marimo/_plugins/ui/_impl/input.py | 1512 | A submittable form linked to a UIElement. Use a `form` to prevent sending UI element values to Python until a butto | STRING |
| HIGH | marimo/_plugins/ui/_impl/refresh.py | 15 | A refresh button that will auto-refresh its descendants for a given interval. Each option value can either be a num | STRING |
| HIGH | marimo/_plugins/ui/_impl/from_panel.py | 264 | Create a UIElement from a Panel component. This proxies all the widget's attributes and methods, allowing seamless | STRING |
| HIGH | marimo/_plugins/ui/_impl/dates.py | 32 | A date picker with an optional start and stop date. Examples: ```python # initialize the date picke | STRING |
| HIGH | marimo/_plugins/ui/_impl/dates.py | 189 | A datetime picker over an interval. Examples: ```python datetime_picker = mo.ui.datetime( | STRING |
| HIGH | marimo/_plugins/ui/_impl/dates.py | 350 | A date range picker over an interval. Examples: ```python date_range = mo.ui.date_range( | STRING |
| HIGH | marimo/_plugins/ui/_impl/table.py | 394 | A table component with selectable rows. Get the selected rows with `table.value`. The table data can be supplied as | STRING |
| HIGH | marimo/_plugins/ui/_impl/table.py | 1063 | Download the table data in the specified format. For cell-selection modes ("single-cell"/"multi-cell"), selecti | STRING |
| HIGH | marimo/_plugins/ui/_impl/dictionary.py | 20 | A dictionary of UI elements. Use a dictionary to: - create a set of UI elements at runtime - group together | STRING |
| HIGH | marimo/_plugins/ui/_impl/array.py | 20 | An array of UI elements. Use an array to: - create a dynamic number of UI elements at runtime - group toget | STRING |
| 25 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/e2e-tests/py/components.py | 113 | CODE | |
| LOW | frontend/e2e-tests/py/components.py | 114 | CODE | |
| LOW | tests/conftest.py | 55 | CODE | |
| LOW | tests/conftest.py | 218 | CODE | |
| LOW | tests/mocks.py | 198 | CODE | |
| LOW | tests/_utils/test_subprocess.py | 124 | CODE | |
| LOW | tests/_utils/test_xdg.py | 220 | CODE | |
| LOW | tests/_utils/test_utils_request.py | 111 | CODE | |
| LOW | tests/_utils/test_msgspec_basestruct.py | 82 | CODE | |
| LOW | tests/_code_mode/test_screenshot_integration.py | 30 | CODE | |
| LOW | tests/_code_mode/test_screenshot_integration.py | 81 | CODE | |
| LOW | tests/_session/managers/test_ipc.py | 443 | CODE | |
| LOW | tests/_session/app_host/test_pool.py | 38 | CODE | |
| LOW | tests/_session/app_host/test_pool.py | 73 | CODE | |
| LOW | tests/_export/test_exporter.py | 1233 | CODE | |
| LOW | tests/_export/test_exporter.py | 1320 | CODE | |
| LOW | tests/_sql/test_ibis.py | 993 | CODE | |
| LOW | tests/_sql/test_duckdb.py | 471 | CODE | |
| LOW | tests/_sql/test_adbc.py | 592 | CODE | |
| LOW | tests/_sql/test_adbc.py | 614 | CODE | |
| LOW | tests/_sql/test_adbc.py | 123 | CODE | |
| LOW | tests/_sql/test_adbc.py | 625 | CODE | |
| LOW | tests/_sql/test_clickhouse.py | 183 | CODE | |
| LOW | tests/_ipc/test_kernel_communication.py | 38 | CODE | |
| LOW | tests/_server/test_sessions.py | 285 | CODE | |
| LOW | tests/_server/test_pylsp.py | 118 | CODE | |
| LOW | tests/_server/api/test_middleware.py | 376 | CODE | |
| LOW | tests/_server/api/endpoints/test_home.py | 529 | CODE | |
| LOW | tests/_server/api/endpoints/test_sse.py | 135 | CODE | |
| LOW | tests/_server/api/endpoints/test_requires_decorator.py | 36 | CODE | |
| LOW | tests/_server/api/endpoints/test_requires_decorator.py | 110 | CODE | |
| LOW | tests/_server/api/endpoints/test_ws.py | 442 | CODE | |
| LOW | tests/_server/api/endpoints/test_ws.py | 641 | CODE | |
| LOW | tests/_server/api/endpoints/test_ws.py | 998 | CODE | |
| LOW | tests/_server/api/endpoints/test_ws_rtc.py | 259 | CODE | |
| LOW | tests/_plugins/ui/_impl/test_table.py | 1530 | CODE | |
| LOW | tests/_plugins/ui/_impl/test_table.py | 1539 | CODE | |
| LOW | tests/_plugins/ui/_impl/dataframes/test_print_code.py | 1460 | CODE | |
| LOW | tests/_cli/test_export_subprocess.py | 306 | CODE | |
| LOW | tests/_cli/test_cli_export.py | 71 | CODE | |
| LOW | tests/_cli/test_endpoint.py | 39 | CODE | |
| LOW | tests/_cli/test_endpoint.py | 58 | CODE | |
| LOW | tests/_cli/test_endpoint.py | 75 | CODE | |
| LOW | tests/_cli/test_cli.py | 877 | CODE | |
| LOW | tests/_cli/test_cli.py | 1443 | CODE | |
| LOW | tests/_runtime/test_wasm_futures.py | 47 | CODE | |
| LOW | tests/_runtime/test_wasm_futures.py | 64 | CODE | |
| LOW | tests/_runtime/test_wasm_futures.py | 169 | CODE | |
| LOW | tests/_runtime/test_wasm_futures.py | 199 | CODE | |
| LOW | tests/_runtime/test_wasm_futures.py | 260 | CODE | |
| LOW | tests/_runtime/test_wasm_futures.py | 377 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_queue.py | 293 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing.py | 107 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_pool.py | 112 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_pool.py | 168 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_pool.py | 188 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_pool.py | 279 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_pool.py | 406 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_pool.py | 442 | CODE | |
| LOW | tests/_runtime/test_wasm_multiprocessing_pool.py | 465 | CODE | |
| 406 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …end/src/core/codemirror/language/__tests__/sql.test.ts | 0 | select name, price, category from products where price < {price_threshold.value} order by price desc | STRING |
| HIGH | marimo/_smoke_tests/sql/sql_alchemy_engine.py | 0 | select name, price, category from products where price < {price_threshold.value} order by price desc | STRING |
| HIGH | marimo/_smoke_tests/sql/sqlmodel_engine.py | 0 | select name, price, category from products where price < {price_threshold.value} order by price desc | STRING |
| HIGH | packages/smart-cells/src/__tests__/sql-parser.test.ts | 0 | select name, price, category from products where price < {price_threshold.value} order by price desc | STRING |
| HIGH | tests/_lint/test_lint_system.py | 0 | import marimo __generated_with = "0.15.0" app = marimo.app() @app.cell def __(): x = 1 return (x,) | STRING |
| HIGH | tests/_session/notebook/test_app_file_manager.py | 0 | import marimo __generated_with = "0.15.0" app = marimo.app() @app.cell def __(): x = 1 return (x,) | STRING |
| HIGH | tests/_lint/test_run_check.py | 0 | import marimo __generated_with = "0.15.0" app = marimo.app() @app.cell def __(): x = 1 return (x,) | STRING |
| HIGH | tests/_lint/test_async_context_system.py | 0 | import marimo __generated_with = "0.1.0" app = marimo.app() @app.cell def __(): x = 1 return x, | STRING |
| HIGH | tests/_session/notebook/test_serializer.py | 0 | import marimo __generated_with = "0.1.0" app = marimo.app() @app.cell def __(): x = 1 return x, | STRING |
| HIGH | tests/_ast/test_load.py | 0 | import marimo __generated_with = "0.1.0" app = marimo.app() @app.cell def __(): x = 1 return x, | STRING |
| HIGH | tests/_code_mode/test_context_autosave.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_session/test_file_change_handler.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | …sion/extensions/test_notification_listener_autosave.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_export/test_exporter.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_ast/test_load.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_server/test_file_manager.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_server/test_file_manager_absolute_path.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_server/api/endpoints/test_home.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_cli/test_file_overwrite.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_cli/test_cli_check.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_cli/test_cli_cache.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_save/test_cache_dirs.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_runtime/test_trace.py | 0 | import marimo app = marimo.app() @app.cell def __(): print("hello, world!") return if __name__ == "__main__": app.run() | STRING |
| HIGH | tests/_convert/markdown/test_markdown_conversion.py | 0 | this is a markdown cell with an execution block in it ```python {.marimo} # too ambiguous to convert ``` | STRING |
| HIGH | tests/_convert/markdown/snapshots/unsafe-doc.py.txt | 0 | this is a markdown cell with an execution block in it ```python {.marimo} # too ambiguous to convert ``` | STRING |
| HIGH | marimo/_tutorials/markdown_format.md | 0 | this is a markdown cell with an execution block in it ```python {.marimo} # too ambiguous to convert ``` | STRING |
| HIGH | tests/_ast/test_app.py | 0 | import marimo __generated_with = "0.0.1" app = marimo.app(width="full") @app.cell def __(): import marimo as mo return m | STRING |
| HIGH | tests/_server/test_file_manager.py | 0 | import marimo __generated_with = "0.0.1" app = marimo.app(width="full") @app.cell def __(): import marimo as mo return m | STRING |
| HIGH | tests/_server/test_asgi.py | 0 | import marimo __generated_with = "0.0.1" app = marimo.app(width="full") @app.cell def __(): import marimo as mo return m | STRING |
| HIGH | tests/_server/mocks.py | 0 | import marimo __generated_with = "0.0.1" app = marimo.app(width="full") @app.cell def __(): import marimo as mo return m | STRING |
| HIGH | tests/_server/files/test_os_file_system.py | 0 | import marimo __generated_with = "0.0.1" app = marimo.app(width="full") @app.cell def __(): import marimo as mo return m | STRING |
| HIGH | docs/api/inputs/anywidget.md | 0 | function render({ model, el }) { let getcount = () => model.get("count"); let button = document.createelement("button"); | STRING |
| HIGH | marimo/_smoke_tests/anywidget_compat.py | 0 | function render({ model, el }) { let getcount = () => model.get("count"); let button = document.createelement("button"); | STRING |
| HIGH | marimo/_smoke_tests/anywidget_examples/esm_rerender.py | 0 | function render({ model, el }) { let getcount = () => model.get("count"); let button = document.createelement("button"); | STRING |
| HIGH | docs/api/inputs/anywidget.md | 0 | button { padding: 5px !important; border-radius: 5px !important; background-color: #f0f0f0 !important; &:hover { backgro | STRING |
| HIGH | marimo/_smoke_tests/anywidget_compat.py | 0 | button { padding: 5px !important; border-radius: 5px !important; background-color: #f0f0f0 !important; &:hover { backgro | STRING |
| HIGH | marimo/_smoke_tests/anywidget_examples/esm_rerender.py | 0 | button { padding: 5px !important; border-radius: 5px !important; background-color: #f0f0f0 !important; &:hover { backgro | STRING |
| HIGH | examples/third_party/plotly/violin_chart.py | 0 | map a mo.ui.plotly selection back to rows in the source dataframe. | STRING |
| HIGH | examples/third_party/plotly/box_chart.py | 0 | map a mo.ui.plotly selection back to rows in the source dataframe. | STRING |
| HIGH | examples/third_party/plotly/strip_chart.py | 0 | map a mo.ui.plotly selection back to rows in the source dataframe. | STRING |
| HIGH | examples/layouts/sidebar.py | 0 | !!! tip "this notebook is best viewed as an app." hit `cmd/ctrl+.` or click the "app view" button in the bottom right. | STRING |
| HIGH | examples/layouts/slides.py | 0 | !!! tip "this notebook is best viewed as an app." hit `cmd/ctrl+.` or click the "app view" button in the bottom right. | STRING |
| HIGH | examples/ai/data/model_comparison.py | 0 | !!! tip "this notebook is best viewed as an app." hit `cmd/ctrl+.` or click the "app view" button in the bottom right. | STRING |
| HIGH | examples/ai/chat/openai_example.py | 0 | access the chatbot's historical messages with [`chatbot.value`](https://docs.marimo.io/api/inputs/chat.html#accessing-ch | STRING |
| HIGH | examples/ai/chat/anthropic_example.py | 0 | access the chatbot's historical messages with [`chatbot.value`](https://docs.marimo.io/api/inputs/chat.html#accessing-ch | STRING |
| HIGH | examples/ai/chat/deepseek_example.py | 0 | access the chatbot's historical messages with [`chatbot.value`](https://docs.marimo.io/api/inputs/chat.html#accessing-ch | STRING |
| HIGH | examples/ai/chat/gemini.py | 0 | access the chatbot's historical messages with [`chatbot.value`](https://docs.marimo.io/api/inputs/chat.html#accessing-ch | STRING |
| HIGH | examples/ai/chat/groq_example.py | 0 | access the chatbot's historical messages with [`chatbot.value`](https://docs.marimo.io/api/inputs/chat.html#accessing-ch | STRING |
| HIGH | examples/ai/chat/mlx_chat.py | 0 | access the chatbot's historical messages with `chatbot.value`. | STRING |
| HIGH | examples/ai/chat/custom.py | 0 | access the chatbot's historical messages with `chatbot.value`. | STRING |
| HIGH | examples/ai/chat/streaming_custom.py | 0 | access the chatbot's historical messages with `chatbot.value`. | STRING |
| HIGH | examples/cloud/gcp/google_cloud_storage.py | 0 | ## **⚙ configuration** this app requires a google cloud platform account and a bucket to access. authenticate with `gclo | STRING |
| HIGH | examples/cloud/gcp/google_cloud_bigquery.py | 0 | ## **⚙ configuration** this app requires a google cloud platform account and a bucket to access. authenticate with `gclo | STRING |
| HIGH | examples/cloud/gcp/google_sheets.py | 0 | ## **⚙ configuration** this app requires a google cloud platform account and a bucket to access. authenticate with `gclo | STRING |
| HIGH | examples/sql/connect_to_sqlite.py | 0 | next, we **create a sql cell**. create a sql cell in one of two ways: 1. click the {mo.icon("lucide:database")} `sql` bu | STRING |
| HIGH | examples/sql/read_csv.py | 0 | next, we **create a sql cell**. create a sql cell in one of two ways: 1. click the {mo.icon("lucide:database")} `sql` bu | STRING |
| HIGH | examples/sql/connect_to_postgres.py | 0 | next, we **create a sql cell**. create a sql cell in one of two ways: 1. click the {mo.icon("lucide:database")} `sql` bu | STRING |
| HIGH | examples/sql/parametrizing_sql_queries.py | 0 | next, we **create a sql cell**. create a sql cell in one of two ways: 1. click the {mo.icon("lucide:database")} `sql` bu | STRING |
| HIGH | examples/sql/read_json.py | 0 | next, we **create a sql cell**. create a sql cell in one of two ways: 1. click the {mo.icon("lucide:database")} `sql` bu | STRING |
| HIGH | examples/sql/read_parquet.py | 0 | next, we **create a sql cell**. create a sql cell in one of two ways: 1. click the {mo.icon("lucide:database")} `sql` bu | STRING |
| 24 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/_lint/test_files/sql_parsing_errors.py | 35 | MONTH(timestamp) in (null) | CODE |
| HIGH | tests/_session/managers/test_kernel.py | 40 | ["bash", "-c", "sleep 60 & echo $!; exec 1>/dev/null; wait"], | CODE |
| HIGH | tests/_export/test_offline.py | 425 | f"const response = await fetch({json.dumps(url)}).catch(() => null);" | CODE |
| HIGH | tests/_sql/test_clickhouse.py | 178 | assert result.equals(expected) | CODE |
| HIGH | tests/_sql/test_clickhouse.py | 221 | assert result.equals(expected_result) | CODE |
| HIGH | tests/_sql/test_clickhouse.py | 242 | assert result.equals(pd.DataFrame({"1": [1]})) | CODE |
| HIGH⚡ | tests/_server/api/endpoints/test_assets.py | 775 | assert "registration.installing || registration.waiting" in result | CODE |
| HIGH | tests/_server/templates/test_templates.py | 281 | function gtag(){dataLayer.push(arguments);} | CODE |
| HIGH | tests/_server/templates/test_templates.py | 836 | function gtag(){dataLayer.push(arguments);} | CODE |
| HIGH | tests/_server/templates/test_templates.py | 1247 | function gtag(){dataLayer.push(arguments);} | CODE |
| HIGH⚡ | tests/_plugins/ui/_impl/test_data_editor.py | 863 | assert df.equals(editor.data) | CODE |
| HIGH⚡ | tests/_plugins/ui/_impl/test_data_editor.py | 875 | assert df.equals(editor.data) | CODE |
| HIGH⚡ | tests/_plugins/ui/_impl/tables/test_pandas_table.py | 404 | '[{"value":"1 days 00:00:00"},{"value":null}]' | CODE |
| HIGH⚡ | tests/_plugins/ui/_impl/tables/test_pandas_table.py | 2225 | json_str == '[{"A":1.0},{"A":2.0},{"A":3.0},{"A":null},{"A":null}]' | CODE |
| HIGH⚡ | tests/_plugins/ui/_impl/tables/test_pandas_table.py | 2526 | assert payload == '[{"value":"kept"},{"value":null}]' | CODE |
| HIGH⚡ | tests/_plugins/ui/_impl/tables/test_pandas_table.py | 2540 | assert payload == '[{"value":null}]' | CODE |
| HIGH⚡ | tests/_plugins/ui/_impl/tables/test_polars_table.py | 1089 | json_str == '[{"A":1.0},{"A":2.0},{"A":3.0},{"A":null},{"A":null}]' | CODE |
| HIGH⚡ | tests/_plugins/core/test_json_encoder.py | 218 | assert encoded == '{"a":1,"b":"hello","items":null,"other_items":null}' | CODE |
| HIGH⚡ | tests/_plugins/core/test_json_encoder.py | 228 | == '{"a":1,"b":"hello","items":[1,"2",{"mimetype":"text/plain","data":"data"},{"mimetype":"text/html","data":"<b | CODE |
| HIGH⚡ | tests/_plugins/core/test_json_encoder.py | 239 | == '{"a":1,"b":"hello","items":null,"other_items":{"key":{"mimetype":"text/plain","data":"data"}}}' | CODE |
| HIGH⚡ | tests/_plugins/core/test_json_encoder.py | 692 | assert encoded == "[null,null,null,1.0,2.0]" | CODE |
| HIGH⚡ | tests/_plugins/core/test_json_encoder.py | 697 | assert encoded_nested == "[[null],[1,null],[null,3]]" | CODE |
| HIGH | tests/_plugins/core/test_json_encoder.py | 321 | encoded = encode_json_str(null) | CODE |
| HIGH | tests/_plugins/core/test_json_encoder.py | 571 | assert encoded == '{"__slots__":null}' | CODE |
| HIGH⚡ | tests/_cli/test_file_overwrite.py | 156 | "execution_count": null, | CODE |
| HIGH⚡ | tests/_cli/test_file_overwrite.py | 202 | "execution_count": null, | CODE |
| HIGH | tests/_cli/test_cli_development.py | 35 | cmd = "marimo development openapi > packages/openapi/api.yaml && make fe-codegen" | CODE |
| HIGH | tests/_cli/test_pair_client.py | 360 | b'event: done\ndata: {"output":null}\n\n', | CODE |
| HIGH | tests/_cli/test_cli_convert.py | 79 | "execution_count": null, | CODE |
| HIGH | tests/_cli/test_cli_convert.py | 132 | "execution_count": null, | CODE |
| HIGH⚡ | tests/_cli/test_cli_convert.py | 181 | "execution_count": null, | CODE |
| HIGH | tests/_save/loaders/test_lazy_signing.py | 871 | as JSON null, which corrupts the value and breaks the signature once | STRING |
| HIGH | examples/slurm/submit_notebook.py | 38 | * a Slurm job — `chmod +x submit_notebook.py && sbatch submit_notebook.py` | COMMENT |
| HIGH | examples/outputs/live_raster.py | 26 | let hostName = null; | CODE |
| HIGH⚡ | marimo/_code_mode/screenshot.py | 409 | firstChildTag: el.children[0]?.tagName ?? null, | STRING |
| HIGH⚡ | marimo/_code_mode/screenshot.py | 410 | firstChildClass: el.children[0]?.className ?? null, | STRING |
| HIGH⚡ | marimo/_code_mode/screenshot.py | 412 | visible: el.offsetParent !== null, | STRING |
| HIGH | marimo/_smoke_tests/json_viewer.py | 171 | mo.json('{"parsed": [true, null, {"nested": 1}]}'), | STRING |
| HIGH | marimo/_smoke_tests/tables/pandas_null_stringify.py | 73 | '[{"extension":null}]' | CODE |
| HIGH | …o/_smoke_tests/tables/whitespace_sentinel_rendering.py | 21 | Tables should visually distinguish sentinel values (null, empty string, | CODE |
| HIGH | …o/_smoke_tests/tables/whitespace_sentinel_rendering.py | 104 | "None (null)", | STRING |
| HIGH | marimo/_smoke_tests/sql/duckdb_interrupt.py | 47 | def _(FILE, mo, null): | STRING |
| HIGH | marimo/_export/offline.py | 53 | const callbacks = { errorCallback: message => errors.push(message) }; | CODE |
| HIGH | marimo/_export/offline.py | 94 | if (code.includes("mo.sql") || usesDuckDB || pyodide.runPython('"duckdb" in required')) { | CODE |
| HIGH | marimo/_server/api/endpoints/assets.py | 496 | const worker = registration.installing || registration.waiting; | CODE |
| HIGH | marimo/_plugins/ui/_impl/tables/narwhals_table.py | 267 | # NaNs and Infs serialize to null, which isn't distinguishable from | COMMENT |
| HIGH | marimo/_runtime/utils/set_ui_element_request_manager.py | 166 | acc.push(cmd) | CODE |
| HIGH | marimo/_runtime/executor/executor.py | 22 | names (`_cell_<id>_x`); when one is undefined, CPython's message | STRING |
| HIGH | marimo/_config/manager.py | 591 | # the incoming config explicitly sent null) is removed from disk. Lets | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/_session/state/test_session_view.py | 166 | # Check if the Variables operation was added correctly | COMMENT |
| LOW⚡ | tests/_islands/test_island_generator.py | 65 | # Check if the cell was added | COMMENT |
| LOW⚡ | tests/_islands/test_island_generator.py | 73 | # Check if the app is built successfully | COMMENT |
| LOW⚡ | tests/_islands/test_island_generator.py | 78 | # Check if build() raises an error when called more than once | COMMENT |
| LOW | tests/_islands/test_island_generator.py | 101 | # Check if render works after build() is called | COMMENT |
| LOW | tests/_islands/test_island_generator.py | 549 | # Check if stubs were created correctly | STRING |
| LOW | tests/_cli/test_cli_export.py | 95 | # Check if any chromium directory exists | COMMENT |
| LOW | tests/_output/test_rich_help.py | 151 | # Check if MyClass is recognized as implementing RichHelp protocol | COMMENT |
| LOW⚡ | tests/_runtime/test_primitives.py | 165 | # Set __wrapped__ to None | COMMENT |
| LOW | tests/_data/test_preview_column.py | 208 | # Check if summary contains expected statistics for the alternating pattern | STRING |
| LOW | tests/_data/test_preview_column.py | 260 | # Check if summary contains expected statistics for the categorical pattern | STRING |
| LOW | tests/_data/test_preview_column.py | 310 | # Check if summary contains expected statistics for the date pattern | STRING |
| LOW | tests/_data/test_preview_column.py | 362 | # Check if summary contains expected statistics for the datetime pattern | STRING |
| LOW | tests/_data/test_preview_column.py | 413 | # Check if summary contains expected statistics for the time pattern | STRING |
| LOW | tests/_data/test_preview_column.py | 450 | # Check if summary contains expected statistics for the boolean pattern | STRING |
| LOW | docs/scripts/patch_vercel_config.py | 34 | # Check if middleware route already exists | COMMENT |
| LOW | examples/storage/hf_storage.py | 62 | ## Read the file directly via `hf://` | COMMENT |
| LOW | examples/frameworks/fastapi-github/main.py | 72 | # Write file content | COMMENT |
| LOW | marimo/_utils/docs.py | 99 | # Check if we're inside a code block | COMMENT |
| LOW | marimo/_utils/site_packages.py | 44 | # Check if module is in any site-packages directory | COMMENT |
| LOW | marimo/_utils/once.py | 29 | # Check if this is a method call (has self as first argument) | COMMENT |
| LOW | marimo/_utils/strings.py | 143 | # Check if the content contains unescaped double quotes | STRING |
| LOW | marimo/_lint/visitors.py | 20 | # Check if this is a definition (not just a reference) | COMMENT |
| LOW | marimo/_lint/context.py | 127 | # Check if record has lint_rule metadata | COMMENT |
| LOW | marimo/_lint/linter.py | 143 | # Check if file exists first | COMMENT |
| LOW | marimo/_lint/linter.py | 153 | # Check if file is a supported notebook format | COMMENT |
| LOW | marimo/_lint/rules/runtime/self_import.py | 121 | # Check if there's a local file/package with the same name | COMMENT |
| LOW | marimo/_lint/rules/runtime/branch_expression.py | 112 | # Check if there are any statements | COMMENT |
| LOW | marimo/_lint/rules/runtime/branch_expression.py | 119 | # Check if it's a branch statement | COMMENT |
| LOW | marimo/_lint/rules/runtime/branch_expression.py | 137 | # Check if ANY branch has an output expression | COMMENT |
| LOW | marimo/_lint/rules/runtime/branch_expression.py | 153 | # Check if ANY case has an output expression | COMMENT |
| LOW | marimo/_lint/rules/runtime/branch_expression.py | 175 | # Check if ANY branch has an output expression | COMMENT |
| LOW | marimo/_lint/rules/formatting/parsing.py | 71 | # Check if this line contains a file:line reference | COMMENT |
| LOW | marimo/_lint/rules/formatting/markdown_dedent.py | 93 | # Check if the markdown string needs dedenting | COMMENT |
| LOW | marimo/_lint/rules/formatting/empty_cells.py | 163 | # Check if all statements are pass statements | COMMENT |
| LOW | marimo/_code_mode/_context.py | 1058 | # Check if a setup cell already exists (by name or by ID). | COMMENT |
| LOW | marimo/_session/file_change_handler.py | 216 | # Read the file once and run all pre-reload skip checks against | COMMENT |
| LOW | marimo/_session/state/session_view.py | 703 | # Check if we can merge with the last output | COMMENT |
| LOW⚡ | marimo/_convert/script.py | 50 | # Check if any code is async, if so, raise an error | COMMENT |
| LOW | marimo/_convert/markdown/to_ir.py | 543 | # Set after to prevent lang being flushed. | COMMENT |
| LOW | marimo/_convert/ipynb/to_ir.py | 224 | # Check if subprocess import is needed | COMMENT |
| LOW | marimo/_convert/ipynb/to_ir.py | 519 | # Check if this looks like a git URL or VCS URL | COMMENT |
| LOW | marimo/_convert/ipynb/to_ir.py | 878 | # Check if last token was a comment | COMMENT |
| LOW | marimo/_messaging/notification_utils.py | 230 | # Check if show_tracebacks is enabled | STRING |
| LOW | marimo/_messaging/msgspec_encoder.py | 134 | # Check if it's a shapely geometry object | COMMENT |
| LOW | marimo/_messaging/msgspec_encoder.py | 156 | # Check if it's a Polars data type | COMMENT |
| LOW | marimo/_export/file.py | 156 | # Check if graph can be accessed (raises CycleError/MultipleDefinitionError) | COMMENT |
| LOW | marimo/_sql/error_utils.py | 240 | # Check if this is a MarimoSQLException with structured hint data | COMMENT |
| LOW | marimo/_sql/engines/pyiceberg.py | 114 | # Check if this is a permission/auth error (e.g., 403 Forbidden) | COMMENT |
| LOW | marimo/_ai/text_to_notebook.py | 42 | # Check if the user has accepted the terms | STRING |
| LOW⚡ | marimo/_ai/text_to_notebook.py | 75 | # Check if the response is valid | STRING |
| LOW | marimo/_ast/scanner.py | 274 | # Check if we can find at least one boundary | COMMENT |
| LOW | marimo/_ast/toplevel.py | 342 | # Check if all dependencies are resolved | COMMENT |
| LOW | marimo/_ast/sql_visitor.py | 42 | # Check if the call is a method call and the method is named | COMMENT |
| LOW | marimo/_ast/sql_visitor.py | 48 | # Check if there are arguments and the first argument is a | COMMENT |
| LOW | marimo/_ast/sql_visitor.py | 527 | # Check if the table name looks like a URL or has a file extension. | COMMENT |
| LOW | marimo/_ast/pytest.py | 446 | # Check if it is considered a __test__ cell. | COMMENT |
| LOW | marimo/_ast/codegen.py | 155 | # Check if there's trailing content (like comments) after the last statement | COMMENT |
| LOW | marimo/_server/lsp.py | 550 | # Check if the LSP binary exists | COMMENT |
| LOW | marimo/_server/lsp.py | 993 | # Check if any language servers or copilot are enabled | COMMENT |
| 54 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …c/core/ai/context/providers/__tests__/variable.test.ts | 61 | value: '"John Doe"', | CODE |
| LOW | frontend/src/utils/__tests__/local-storage.test.ts | 17 | name: "John Doe", | CODE |
| LOW | frontend/src/utils/__tests__/local-storage.test.ts | 47 | storage.set(KEY, { name: "Jane Doe", age: 25 }); | CODE |
| LOW | frontend/src/utils/__tests__/local-storage.test.ts | 48 | expect(storage.get(KEY)).toEqual({ name: "Jane Doe", age: 25 }); | CODE |
| LOW⚡ | frontend/src/utils/__tests__/local-storage.test.ts | 66 | storage.set(KEY, { name: "Jane Doe", age: 25 }); | CODE |
| LOW⚡ | frontend/src/utils/__tests__/local-storage.test.ts | 67 | expect(storage.get(KEY)).toEqual({ name: "Jane Doe", age: 25 }); | CODE |
| LOW⚡ | frontend/src/utils/__tests__/local-storage.test.ts | 75 | expect(storage.get(KEY)).toEqual({ name: "Jane Doe", age: 25 }); | CODE |
| LOW⚡ | tests/_utils/test_docs.py | 16 | foo (str): Lorem ipsum | CODE |
| LOW⚡ | tests/_utils/test_docs.py | 17 | bar (int): Dolor sit amet | CODE |
| LOW⚡ | tests/_utils/test_docs.py | 20 | baz (str): Lorem ipsum | CODE |
| LOW⚡ | tests/_utils/test_docs.py | 21 | boo (int): Dolor sit amet | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.md | 13 | | `foo` | `str` | Lorem ipsum | | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.md | 14 | | `bar` | `int` | Dolor sit amet | | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.md | 19 | | `baz` | `str` | Lorem ipsum | | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.md | 20 | | `boo` | `int` | Dolor sit amet | | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.txt | 13 | | `foo` | `str` | Lorem ipsum | | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.txt | 14 | | `bar` | `int` | Dolor sit amet. | | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.txt | 19 | | `baz` | `str` | Lorem ipsum | | CODE |
| LOW⚡ | tests/_utils/snapshots/docstring_summary.txt | 20 | | `boo` | `int` | Dolor sit amet. | | CODE |
| LOW | tests/_convert/common/test_dom_traversal.py | 272 | mock_read.return_value = b"fake_data" | CODE |
| LOW | tests/_sql/test_duckdb.py | 798 | @pytest.mark.parametrize("failure", ["query", "missing", "placeholder"]) | CODE |
| LOW | tests/_sql/test_duckdb.py | 815 | if failure == "placeholder": | CODE |
| LOW | tests/_sql/test_duckdb.py | 842 | assert describe.call_count == int(failure == "placeholder") | CODE |
| LOW⚡ | tests/_server/test_asgi.py | 60 | f.write(contents.replace("placeholder", "app1")) | STRING |
| LOW⚡ | tests/_server/test_asgi.py | 62 | f.write(contents.replace("placeholder", "app2")) | STRING |
| LOW⚡ | tests/_server/test_scratchpad.py | 851 | auth_token="fake-token", | CODE |
| LOW⚡ | tests/_server/test_scratchpad.py | 861 | assert cmd.request.meta[SCREENSHOT_AUTH_TOKEN_KEY] == "fake-token" | CODE |
| LOW | tests/_server/mocks.py | 91 | auth_token=AuthToken("fake-token"), | STRING |
| LOW | tests/_server/mocks.py | 245 | token: str | AuthToken = "fake-token", skew_id: str = "skew-id-1" | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 124 | response = client.get("/api/status", headers=token_header("fake-token")) | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 131 | headers=token_header("fake-token"), | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 138 | headers=token_header("fake-token", "old-skew-id"), | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 159 | headers=token_header("fake-token", "wrong-skew-id"), | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 177 | headers=token_header("fake-token", "old-skew-id"), | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 185 | headers=token_header("fake-token"), | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 656 | headers=token_header("fake-token"), | CODE |
| LOW⚡ | tests/_server/api/test_middleware.py | 965 | headers=token_header("fake-token"), | CODE |
| LOW | tests/_server/api/test_middleware.py | 98 | response = client.get("/foo/", headers=token_header("fake-token")) | CODE |
| LOW | tests/_server/api/test_middleware.py | 222 | headers=token_header("fake-token", "old-skew-id"), | CODE |
| LOW | tests/_server/api/test_middleware.py | 319 | "/?access_token=fake-token", follow_redirects=False | CODE |
| LOW | tests/_server/api/test_middleware.py | 340 | response = client.get("/", headers=token_header("fake-token")) | CODE |
| LOW | tests/_server/api/test_middleware.py | 673 | "/proxy/ws", headers=token_header("fake-token") | CODE |
| LOW | tests/_server/api/test_middleware.py | 1002 | **token_header("fake-token"), | CODE |
| LOW | tests/_server/api/endpoints/test_editing.py | 21 | **token_header("fake-token"), | CODE |
| LOW⚡ | tests/_server/api/endpoints/test_editing.py | 195 | auth_token = token_header("fake-token") | CODE |
| LOW⚡ | tests/_server/api/endpoints/test_editing.py | 197 | f"/ws?session_id={SESSION_ID}&kiosk=true&access_token=fake-token", | CODE |
| LOW | tests/_server/api/endpoints/test_home.py | 28 | **token_header("fake-token"), | CODE |
| LOW⚡ | tests/_server/api/endpoints/test_packages.py | 593 | headers_no_session = token_header("fake-token") | CODE |
| LOW | tests/_server/api/endpoints/test_packages.py | 32 | **token_header("fake-token"), | CODE |
| LOW | tests/_server/api/endpoints/test_packages.py | 195 | headers=token_header("fake-token"), | CODE |
| LOW | tests/_server/api/endpoints/test_packages.py | 376 | headers_no_session = token_header("fake-token") | CODE |
| LOW | tests/_server/api/endpoints/test_cache_endpoints.py | 15 | **token_header("fake-token"), | CODE |
| LOW | tests/_server/api/endpoints/test_assets.py | 127 | response = client.get("/?access_token=fake-token", follow_redirects=False) | CODE |
| LOW | tests/_server/api/endpoints/test_assets.py | 145 | "/?file=foo.py&access_token=fake-token&view-as=present", | CODE |
| LOW | tests/_server/api/endpoints/test_sql_endpoints.py | 14 | **token_header("fake-token"), | CODE |
| LOW | tests/_server/api/endpoints/test_documentation.py | 9 | **token_header("fake-token"), | CODE |
| LOW⚡ | tests/_server/api/endpoints/test_sse.py | 181 | async with _connect(client, "access_token=fake-token") as connection: | CODE |
| LOW⚡ | tests/_server/api/endpoints/test_sse.py | 197 | headers={"Authorization": "Bearer fake-token"}, | CODE |
| LOW | tests/_server/api/endpoints/test_sse.py | 47 | SSE_QUERY = "session_id=123&access_token=fake-token" | CODE |
| LOW | tests/_server/api/endpoints/test_sse.py | 48 | OTHER_SSE_QUERY = "session_id=456&access_token=fake-token" | CODE |
| 66 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pyproject.toml | 21 | # - 10.21.2 stopped passing `filename=None` to pygments (broken on | COMMENT |
| LOW | frontend/playwright.config.ts | 201 | // // Disable this test until we can figure out why | COMMENT |
| LOW | frontend/islands/generate.py | 1 | # /// script | COMMENT |
| LOW | frontend/e2e-tests/py/kitchen_sink.py | 1 | # /// script | COMMENT |
| LOW | frontend/src/core/codemirror/copilot/extension.ts | 241 | const startOffset = range.start.character - userPosition.character; | COMMENT |
| LOW | frontend/src/core/codemirror/language/embedded/latex.ts | 1 | /* Copyright 2026 Marimo. All rights reserved. */ | COMMENT |
| LOW | frontend/src/core/network/requests-lazy.ts | 21 | // | COMMENT |
| LOW | …/plugins/impl/mpl-interactive/MplInteractivePlugin.tsx | 181 | // Detaches the model bound by the most recent bindModel call. Shared between | COMMENT |
| LOW | frontend/src/plugins/core/RenderHTML.tsx | 201 | return cloneElement(reactNode, { key: `${src}-${index}` }); | COMMENT |
| LOW | frontend/src/plugins/layout/TexPlugin.tsx | 101 | }; | COMMENT |
| LOW | frontend/src/utils/traceback.ts | 61 | * | COMMENT |
| LOW | tests/_convert/markdown/snapshots/sql.md.txt | 1 | --- | COMMENT |
| LOW | tests/_sql/test_sql.py | 361 | import pandas as pd | COMMENT |
| LOW | …odegen_data/test_get_codes_non_marimo_python_script.py | 1 | # /// script | COMMENT |
| LOW | tests/_ast/codegen_data/test_app_with_only_comments.py | 1 | # /// script | COMMENT |
| LOW | tests/_server/test_scratchpad_integration.py | 301 | # Python emits this in two flavors: ``~~~^~~~`` (call-site, with tildes | COMMENT |
| LOW | tests/_server/test_scratchpad_integration.py | 321 | # Python versions don't emit. Strip together with the indent and newline. | COMMENT |
| LOW | tests/_plugins/ui/_impl/test_file_browser.py | 1201 | def test_ignore_empty_dirs_mixed_with_files(tmp_path: Path) -> None: | COMMENT |
| LOW | tests/_plugins/ui/_impl/test_file_browser.py | 1281 | COMMENT | |
| LOW | tests/_plugins/ui/_impl/test_file_browser.py | 1321 | # Should hide empty directory | COMMENT |
| LOW | tests/_plugins/ui/_impl/test_file_browser.py | 1381 | # Should hide empty directory at depth 99 (within limit, detected as empty) | COMMENT |
| LOW | tests/_cli/snapshots/export/script/script_sandboxed.txt | 1 | # Copyright 2026 Marimo. All rights reserved. | COMMENT |
| LOW | tests/_output/formatters/test_ai_formatters.py | 141 | # mock_stream = MagicMock() | COMMENT |
| LOW | tests/_output/formatters/test_ai_formatters.py | 161 | # formatter = get_formatter(mock_stream) | COMMENT |
| LOW | tests/_output/formatters/test_ai_formatters.py | 181 | # choices=[MagicMock(delta=MagicMock(content="there!"))], | COMMENT |
| LOW | tests/_runtime/test_runtime_datasets.py | 61 | # # Non-existent engine | COMMENT |
| LOW | tests/_config/test_manager.py | 1001 | # url = "https://attacker.example/mcp" | COMMENT |
| LOW | tests/_config/test_manager.py | 1361 | notebook_path = tmp_path / "notebook.py" | COMMENT |
| LOW | docs/guides/wasm.md | 121 | **Exclude a package from WebAssembly** (install it locally only): | COMMENT |
| LOW | docs/guides/exporting/webassembly_html.md | 141 | ```python | COMMENT |
| LOW | docs/guides/deploying/deploying_slurm.md | 81 | ```bash | COMMENT |
| LOW | docs/guides/deploying/deploying_slurm.md | 101 | #SBATCH --gres=gpu:1 | COMMENT |
| LOW | docs/guides/deploying/deploying_slurm.md | 161 | COMMENT | |
| LOW | docs/guides/deploying/deploying_kubernetes.md | 81 | **Python notebooks (.py):** | COMMENT |
| LOW | examples/misc/monotonic_splines.py | 1 | # /// script | COMMENT |
| LOW | examples/misc/pixi_r.py | 1 | # /// script | COMMENT |
| LOW | examples/misc/custom_configuration.py | 1 | # /// script | COMMENT |
| LOW | examples/misc/pixi_whisper.py | 1 | # /// script | COMMENT |
| LOW | examples/misc/pokemon_stats.py | 1 | # /// script | COMMENT |
| LOW | examples/slurm/submit_notebook.py | 1 | #!/usr/bin/env -S uv run --script | COMMENT |
| LOW | examples/slurm/run_marimo.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | examples/storage/general.py | 1 | # /// script | COMMENT |
| LOW | examples/third_party/chroma/multimodal_retrieval.py | 1 | # /// script | COMMENT |
| LOW | …ird_party/motherduck/embeddings/embeddings_explorer.py | 1 | # /// script | COMMENT |
| LOW | …rty/motherduck/embeddings/embeddings_explorer_final.py | 1 | # /// script | COMMENT |
| LOW | examples/third_party/huggingface/text-to-image.py | 1 | # /// script | COMMENT |
| LOW | …ird_party/unsloth/llama_3_1_8b_2x_faster_finetuning.py | 1 | # /// script | COMMENT |
| LOW | examples/layouts/grid-dashboard.py | 1 | # /// script | COMMENT |
| LOW | examples/layouts/columns.py | 1 | # /// script | COMMENT |
| LOW | examples/ai/tools/dataset_analysis.py | 1 | # /// script | COMMENT |
| LOW | examples/ai/tools/chat_with_tools.py | 1 | # /// script | COMMENT |
| LOW | examples/frameworks/flask/main.py | 1 | # /// script | COMMENT |
| LOW | examples/frameworks/fastapi-auth/main.py | 1 | # /// script | COMMENT |
| LOW | examples/frameworks/fastapi-github/main.py | 1 | # /// script | COMMENT |
| LOW | examples/frameworks/fastapi/main.py | 1 | # /// script | COMMENT |
| LOW | examples/frameworks/fastapi-endpoint/main.py | 1 | # /// script | COMMENT |
| LOW | examples/outputs/audio.py | 1 | # /// script | COMMENT |
| LOW | examples/sql/histograms.py | 1 | # /// script | COMMENT |
| LOW | examples/sql/connect_to_sqlite.py | 1 | # /// script | COMMENT |
| LOW | examples/sql/misc/database_explorer.py | 1 | # /// script | COMMENT |
| 72 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/_export/test_pdf_raster.py | 127 | def set_html(self, html: str) -> None: | CODE |
| LOW | tests/_export/test_pdf_raster.py | 224 | def set_html(self, html: str) -> None: | CODE |
| LOW | tests/_plugins/ui/_impl/test_batch.py | 94 | def set_state(self, new_val: bool) -> None: | CODE |
| LOW | tests/_plugins/ui/_impl/test_batch.py | 136 | def set_state(self, new_val: bool) -> None: | CODE |
| LOW | tests/_runtime/reload/reload_test_utils.py | 12 | def update_file(path: pathlib.Path, code: str) -> None: | CODE |
| LOW | tests/_config/test_manager.py | 595 | def _set_home(monkeypatch: pytest.MonkeyPatch, home: Path) -> None: | CODE |
| LOW | examples/running_as_a_script/textual_app.py | 41 | def update_clock(self) -> None: | STRING |
| LOW | examples/frameworks/flask/main.py | 31 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/frameworks/fastapi-auth/main.py | 41 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/frameworks/fastapi-github/main.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/frameworks/fastapi/main.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/frameworks/fastapi-endpoint/main.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW | marimo/_tracer.py | 144 | def _set_tracer_provider() -> None: | CODE |
| LOW | marimo/_loggers.py | 89 | def set_level(level: str | int = logging.WARNING) -> None: | CODE |
| LOW | marimo/__init__.py | 29 | __all__ = [ # noqa: RUF022 | CODE |
| LOW | marimo/_utils/asyncio_utils.py | 205 | __all__ = [ | CODE |
| LOW | marimo/_utils/uv.py | 7 | __all__ = ["find_uv_bin"] | CODE |
| LOW | marimo/_utils/scripts.py | 13 | __all__ = [ | CODE |
| LOW | marimo/_internal/config.py | 14 | __all__ = [ | CODE |
| LOW | marimo/_internal/ipc.py | 8 | __all__ = [ | CODE |
| LOW | marimo/_internal/packages.py | 10 | __all__ = [ | CODE |
| LOW | marimo/_internal/templates.py | 9 | __all__ = [ | CODE |
| LOW | marimo/_internal/schemas.py | 6 | __all__ = [ | CODE |
| LOW | marimo/_internal/notifications.py | 50 | __all__ = [ | CODE |
| LOW | marimo/_internal/converters.py | 6 | __all__ = [ | CODE |
| LOW | marimo/_internal/ids.py | 12 | __all__ = [ | CODE |
| LOW | marimo/_internal/commands.py | 45 | __all__ = [ | CODE |
| LOW | marimo/_internal/server/__init__.py | 6 | __all__ = ["requests"] | CODE |
| LOW | marimo/_internal/server/requests.py | 12 | __all__ = [ | CODE |
| LOW | marimo/_internal/session/__init__.py | 10 | __all__ = [ | CODE |
| LOW | marimo/_internal/session/extensions.py | 19 | __all__ = [ | CODE |
| LOW | marimo/_lint/__init__.py | 150 | __all__ = [ | CODE |
| LOW | marimo/_lint/formatters/__init__.py | 17 | __all__ = [ | CODE |
| LOW | marimo/_lint/rules/__init__.py | 23 | __all__ = [ | CODE |
| LOW | marimo/_lint/rules/breaking/__init__.py | 21 | __all__ = [ | CODE |
| LOW | marimo/_lint/rules/wasm/__init__.py | 19 | __all__ = [ | CODE |
| LOW | marimo/_lint/rules/runtime/__init__.py | 21 | __all__ = [ | CODE |
| LOW | marimo/_lint/rules/formatting/__init__.py | 25 | __all__ = [ | CODE |
| LOW | marimo/_code_mode/__init__.py | 47 | __all__ = [ | CODE |
| LOW⚡ | marimo/_code_mode/_context.py | 1904 | def set_ui_value(self, element: Any, value: Any) -> None: | CODE |
| LOW | marimo/_session/session.py | 82 | __all__ = ["Session", "SessionImpl"] | CODE |
| LOW | marimo/_session/__init__.py | 23 | __all__ = [ | CODE |
| LOW | marimo/_session/managers/__init__.py | 22 | __all__ = [ | CODE |
| LOW | marimo/_session/extensions/types.py | 17 | __all__ = [ | CODE |
| LOW | marimo/_session/notebook/__init__.py | 25 | __all__ = [ | CODE |
| LOW | marimo/_session/app_host/__init__.py | 14 | __all__ = [ | CODE |
| LOW | marimo/_convert/__init__.py | 21 | __all__ = [ | CODE |
| LOW | marimo/_convert/markdown/__init__.py | 20 | __all__ = [ | CODE |
| LOW | marimo/_convert/markdown/flavor/__init__.py | 142 | __all__ = [ | CODE |
| LOW | marimo/_convert/ipynb/__init__.py | 18 | __all__ = [ # noqa: RUF022 | CODE |
| LOW | marimo/_convert/common/__init__.py | 23 | __all__ = [ # noqa: RUF022 | CODE |
| LOW | marimo/_messaging/streams.py | 307 | def _set_fileno(self, fileno: int | None) -> None: | CODE |
| LOW | marimo/_messaging/streams.py | 381 | def _set_fileno(self, fileno: int | None) -> None: | CODE |
| LOW | marimo/_messaging/thread_local_streams.py | 52 | def _set_stream(self, stream: io.TextIOBase) -> None: | CODE |
| LOW | marimo/_messaging/notebook/__init__.py | 17 | __all__ = [ | CODE |
| LOW | marimo/_export/_html_asset_server.py | 64 | def set_html(self, html: str) -> None: | CODE |
| LOW | marimo/_ai/__init__.py | 4 | __all__ = [ | CODE |
| LOW | marimo/_ai/llm/__init__.py | 12 | __all__ = ["anthropic", "bedrock", "google", "groq", "openai", "pydantic_ai"] | CODE |
| LOW | marimo/_ipc/__init__.py | 9 | __all__ = [ | CODE |
| LOW | marimo/_ast/cell.py | 408 | def set_output(self, output: Any) -> None: | CODE |
| 56 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …nd/src/components/editor/chrome/wrapper/app-chrome.tsx | 75 | // transition into the loaded terminal is seamless rather than a blank flash. | COMMENT |
| MEDIUM | tests/_server/api/endpoints/test_ai.py | 927 | # The harness receives the live session and the assembled system prompt | COMMENT |
| LOW | tests/_plugins/ui/_impl/test_table.py | 682 | # For dicts, we do not need to find row_id, we just return the index | COMMENT |
| MEDIUM | tests/_output/formatters/test_structures.py | 919 | # which ultimately produces HTML; accept either to be robust. | COMMENT |
| LOW⚡ | tests/_runtime/test_dataflow.py | 1288 | # Should just return normal children | COMMENT |
| LOW⚡ | tests/_runtime/test_edges.py | 273 | # Should not raise an error, just return empty parents | COMMENT |
| LOW | docs/scripts/html_to_markdown.py | 103 | # Doc contents - just pass through | COMMENT |
| LOW | marimo/_utils/parse_dataclass.py | 140 | # if its a single Literal of an enum, we can just return the enum | COMMENT |
| MEDIUM | marimo/_utils/methods.py | 31 | # stays robust and never crashes formatting. | COMMENT |
| LOW | marimo/_utils/cell_matching.py | 256 | # Otherwise just use the next available id | COMMENT |
| LOW | marimo/_lint/formatters/full.py | 58 | # If we can't read the file, just return header | COMMENT |
| MEDIUM | marimo/_convert/markdown/from_ir.py | 143 | # Definitely a code cell, but need to determine if it can be | COMMENT |
| MEDIUM | marimo/_convert/markdown/from_ir.py | 159 | # Definitely no "cell"; as such, treat as code, as everything in | COMMENT |
| MEDIUM | marimo/_convert/markdown/to_ir.py | 19 | # Markdown is a dependency of marimo, as such we utilize it as much as possible | COMMENT |
| LOW | marimo/_convert/ipynb/to_ir.py | 766 | # For regular packages, just use the normalized name | COMMENT |
| LOW | marimo/_ast/toplevel.py | 55 | # Fancy typing caused an issue, so just set the value explicitly. | COMMENT |
| LOW | marimo/_ast/parse.py | 304 | # just return a blank cell. | COMMENT |
| MEDIUM | marimo/_server/start.py | 126 | """Provided that there is a proxy, utilize the host and port of the proxy. | STRING |
| LOW | marimo/_server/router.py | 52 | # If we already have a response, just return it | COMMENT |
| LOW | marimo/_server/router.py | 87 | # If we already have a response, just return it | COMMENT |
| LOW | marimo/_server/files/os_file_system.py | 448 | # If editor is a terminal-based editor, we just call `open`, because | COMMENT |
| LOW | marimo/_plugins/ui/_impl/from_anywidget.py | 264 | # Initial value - just return empty, the widget manages its own state | COMMENT |
| LOW | …/_plugins/ui/_impl/dataframes/transforms/print_code.py | 192 | # If aggregation_columns is empty after filtering, just return unique grouped columns | COMMENT |
| MEDIUM | marimo/_output/formatting.py | 241 | # Catching base exception so we're robust to bugs in libraries | COMMENT |
| MEDIUM | marimo/_runtime/complete.py | 541 | # TODO robust handling of different node types | COMMENT |
| MEDIUM | marimo/_runtime/dataflow/edges.py | 144 | # Technically more nuanced with branching statements, but this is | COMMENT |
| MEDIUM | marimo/_runtime/runner/hooks_post_execution.py | 320 | # Side effect has to be relatively robust to code changes | COMMENT |
| MEDIUM | marimo/_save/save.py | 909 | # As such, we also leverage the `@overload` decorator to provide the correct | COMMENT |
| MEDIUM | marimo/_save/hash.py | 404 | # Finally, utilize the unrun block itself, and clean up. | COMMENT |
| MEDIUM | marimo/_save/hash.py | 816 | # so do not utilize content hash in this case. | COMMENT |
| MEDIUM | marimo/_save/hash.py | 1021 | # As such, only utilize the top layer. | COMMENT |
| MEDIUM | marimo/_save/loaders/loader.py | 141 | # TODO: Consider more robust verification | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/src/core/ai/context/providers/cell-output.ts | 63 | // If it is HTML, we need to check if it contains a media tag | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 55 | // Step 0: original | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 61 | // Step 1: after first transform (renamed 'name' to 'title') | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 67 | // Step 2: after second transform (selected only id and title) | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 112 | // Step 0: original | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 118 | // Step 1: after pivot on 'color' with values 'red', 'blue' | COMMENT |
| LOW | tests/_session/state/test_session_view.py | 1706 | # Step 1: Add operation of all variables | COMMENT |
| LOW | tests/_session/state/test_session_view.py | 1721 | # Step 2: Only "some_engine" is in scope => keep table_with_engine + table_none | COMMENT |
| LOW | tests/_session/state/test_session_view.py | 1736 | # Step 3: No variables => only table with neither engine nor variable_name is kept | COMMENT |
| LOW⚡ | tests/_server/api/endpoints/test_ws.py | 715 | # Step 3: Consumer B takes over the same session | COMMENT |
| LOW⚡ | tests/_server/api/endpoints/test_ws.py | 722 | # Step 4: Fire Consumer A's stale TTL close now that Consumer B is | COMMENT |
| LOW | tests/_server/api/endpoints/test_ws.py | 689 | # Step 1: Consumer A connects → session created. Entered manually (not via | COMMENT |
| LOW | tests/_server/api/endpoints/test_ws.py | 700 | # Step 2: Consumer A disconnects under the patch so its TTL close is | COMMENT |
| LOW⚡ | marimo/_utils/cell_matching.py | 99 | # Step 1: Subtract row minima | COMMENT |
| LOW⚡ | marimo/_utils/cell_matching.py | 105 | # Step 2: Subtract column minima | COMMENT |
| LOW⚡ | marimo/_utils/cell_matching.py | 111 | # Step 3: Find initial assignment | COMMENT |
| LOW | marimo/_utils/cell_matching.py | 126 | # Step 4: Improve assignment iteratively | COMMENT |
| LOW⚡ | marimo/_lint/rule_selector.py | 51 | # Step 1: base set — use only default rules unless explicitly selected | COMMENT |
| LOW⚡ | marimo/_lint/rule_selector.py | 59 | # Step 2: remove ignored | COMMENT |
| LOW⚡ | marimo/_lint/rule_selector.py | 63 | # Step 3: instantiate in deterministic order | COMMENT |
| LOW⚡ | marimo/_code_mode/screenshot.py | 260 | # Step 1: find the cell container in the DOM. The page is | COMMENT |
| LOW⚡ | marimo/_code_mode/screenshot.py | 290 | # Step 2: container exists but may be empty (cell not run, or | COMMENT |
| LOW⚡ | marimo/_code_mode/screenshot.py | 299 | # Step 3: resolve the screenshottable element via prioritised | COMMENT |
| LOW | …_smoke_tests/anywidget_smoke_tests/uchimata_example.py | 51 | # Step 1: Generate random structure, returns a 2D numpy array: | STRING |
| LOW | …_smoke_tests/anywidget_smoke_tests/uchimata_example.py | 66 | # Step 2: Display the structure in an uchimata widget | STRING |
| LOW | marimo/_plugins/ui/_impl/altair_chart.py | 322 | # For binned fields, we need to check if this is the last bin | COMMENT |
| LOW | marimo/_cli/cli.py | 230 | # `... | marimo edit`, we need to check if sys.stdin() has data on it in a | COMMENT |
| LOW | packages/pytest_changed/__init__.py | 270 | # Step 1: Find changed files | COMMENT |
| LOW⚡ | packages/pytest_changed/__init__.py | 295 | # Step 2: Get dependency graph (dependents direction) | COMMENT |
| LOW⚡ | packages/pytest_changed/__init__.py | 299 | # Step 3: Find all affected files (BFS with cycle detection) | COMMENT |
| LOW⚡ | packages/pytest_changed/__init__.py | 304 | # Step 4: Filter to test files | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 55 | // Step 0: original | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 61 | // Step 1: after first transform (renamed 'name' to 'title') | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 67 | // Step 2: after second transform (selected only id and title) | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 112 | // Step 0: original | COMMENT |
| LOW⚡ | …ata-frames/utils/__tests__/getEffectiveColumns.test.ts | 118 | // Step 1: after pivot on 'color' with values 'red', 'blue' | COMMENT |
| LOW | tests/_session/state/test_session_view.py | 1706 | # Step 1: Add operation of all variables | COMMENT |
| LOW | tests/_session/state/test_session_view.py | 1721 | # Step 2: Only "some_engine" is in scope => keep table_with_engine + table_none | COMMENT |
| LOW | tests/_session/state/test_session_view.py | 1736 | # Step 3: No variables => only table with neither engine nor variable_name is kept | COMMENT |
| LOW⚡ | tests/_server/api/endpoints/test_ws.py | 715 | # Step 3: Consumer B takes over the same session | COMMENT |
| LOW⚡ | tests/_server/api/endpoints/test_ws.py | 722 | # Step 4: Fire Consumer A's stale TTL close now that Consumer B is | COMMENT |
| LOW | tests/_server/api/endpoints/test_ws.py | 689 | # Step 1: Consumer A connects → session created. Entered manually (not via | COMMENT |
| LOW | tests/_server/api/endpoints/test_ws.py | 700 | # Step 2: Consumer A disconnects under the patch so its TTL close is | COMMENT |
| LOW⚡ | marimo/_utils/cell_matching.py | 99 | # Step 1: Subtract row minima | COMMENT |
| LOW⚡ | marimo/_utils/cell_matching.py | 105 | # Step 2: Subtract column minima | COMMENT |
| LOW⚡ | marimo/_utils/cell_matching.py | 111 | # Step 3: Find initial assignment | COMMENT |
| LOW | marimo/_utils/cell_matching.py | 126 | # Step 4: Improve assignment iteratively | COMMENT |
| LOW⚡ | marimo/_lint/rule_selector.py | 51 | # Step 1: base set — use only default rules unless explicitly selected | COMMENT |
| LOW⚡ | marimo/_lint/rule_selector.py | 59 | # Step 2: remove ignored | COMMENT |
| LOW⚡ | marimo/_lint/rule_selector.py | 63 | # Step 3: instantiate in deterministic order | COMMENT |
| LOW⚡ | marimo/_code_mode/screenshot.py | 260 | # Step 1: find the cell container in the DOM. The page is | COMMENT |
| LOW⚡ | marimo/_code_mode/screenshot.py | 290 | # Step 2: container exists but may be empty (cell not run, or | COMMENT |
| LOW⚡ | marimo/_code_mode/screenshot.py | 299 | # Step 3: resolve the screenshottable element via prioritised | COMMENT |
| LOW | …_smoke_tests/anywidget_smoke_tests/uchimata_example.py | 51 | # Step 1: Generate random structure, returns a 2D numpy array: | STRING |
| LOW | …_smoke_tests/anywidget_smoke_tests/uchimata_example.py | 66 | # Step 2: Display the structure in an uchimata widget | STRING |
| LOW | marimo/_ai/_types.py | 79 | # NOTE: The following classes are public API. | COMMENT |
| LOW | marimo/_ast/compiler.py | 148 | # NOTE: This function closely mirrors python's native ast.increment_lineno | COMMENT |
| LOW | packages/pytest_changed/__init__.py | 270 | # Step 1: Find changed files | COMMENT |
| LOW⚡ | packages/pytest_changed/__init__.py | 295 | # Step 2: Get dependency graph (dependents direction) | COMMENT |
| LOW⚡ | packages/pytest_changed/__init__.py | 299 | # Step 3: Find all affected files (BFS with cycle detection) | COMMENT |
| LOW⚡ | packages/pytest_changed/__init__.py | 304 | # Step 4: Filter to test files | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | frontend/e2e-tests/py/kitchen_sink.py | 136 | progress_bar = mo._plugins.stateless.status._progress.ProgressBar( | CODE |
| CRITICAL⚡ | tests/_server/test_recents.py | 19 | self.config_reader.for_filename.return_value.read_toml.assert_not_called() | CODE |
| CRITICAL⚡ | tests/_server/test_recents.py | 20 | self.config_reader.for_filename.return_value.write_toml.assert_not_called() | CODE |
| CRITICAL | tests/_server/api/endpoints/test_kiosk.py | 77 | filename = client.app.state.session_manager.workspace.get_unique_file_key() | CODE |
| CRITICAL | marimo/_ast/cell.py | 677 | for k, v in self._app._app._setup._glbls.items() | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/mocks.py | 162 | CODE | |
| LOW | tests/mocks.py | 195 | CODE | |
| LOW | tests/_export/test_exporter.py | 2690 | CODE | |
| LOW | tests/_export/test_exporter.py | 2695 | CODE | |
| LOW | tests/_sql/test_sqlalchemy.py | 1035 | CODE | |
| LOW | tests/_ast/test_transformers.py | 192 | CODE | |
| LOW | …mples/third_party/cvxpy/signals/modules/dataloaders.py | 89 | CODE | |
| LOW | …mples/third_party/cvxpy/signals/modules/dataloaders.py | 168 | CODE | |
| LOW | examples/third_party/cvxpy/signals/modules/problems.py | 36 | CODE | |
| LOW | marimo/_templates.py | 96 | CODE | |
| LOW | marimo/_templates.py | 288 | CODE | |
| LOW | marimo/_utils/subprocess.py | 31 | CODE | |
| LOW | marimo/_utils/subprocess.py | 62 | CODE | |
| LOW | marimo/_utils/subprocess.py | 93 | CODE | |
| LOW | marimo/_utils/subprocess.py | 124 | CODE | |
| LOW | marimo/_utils/subprocess.py | 155 | CODE | |
| LOW | marimo/_utils/subprocess.py | 186 | CODE | |
| LOW | marimo/_utils/subprocess.py | 216 | CODE | |
| LOW | marimo/_lint/linter.py | 66 | CODE | |
| LOW | …ke_tests/altair_examples/timestamp_with_no_timezone.py | 50 | CODE | |
| LOW | marimo/_ast/sql_visitor.py | 104 | CODE | |
| LOW | marimo/_server/asgi.py | 354 | CODE | |
| LOW | marimo/_server/start.py | 188 | CODE | |
| LOW | marimo/_server/main.py | 50 | CODE | |
| LOW | marimo/_server/templates/api.py | 70 | CODE | |
| LOW | marimo/_server/templates/api.py | 158 | CODE | |
| LOW | marimo/_plugins/ui/_impl/data_explorer.py | 47 | CODE | |
| LOW | marimo/_plugins/ui/_impl/matrix.py | 432 | CODE | |
| LOW | marimo/_plugins/ui/_impl/file_browser.py | 305 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 86 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 219 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 426 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 747 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 835 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 906 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 1285 | CODE | |
| LOW | marimo/_plugins/ui/_impl/input.py | 1587 | CODE | |
| LOW | marimo/_plugins/ui/_impl/dates.py | 224 | CODE | |
| LOW | marimo/_plugins/ui/_impl/table.py | 637 | CODE | |
| LOW | marimo/_plugins/ui/_impl/plotly.py | 590 | CODE | |
| LOW | marimo/_plugins/ui/_impl/dataframes/dataframe.py | 146 | CODE | |
| LOW | …mo/_plugins/ui/_impl/dataframes/transforms/handlers.py | 157 | CODE | |
| LOW | marimo/_plugins/ui/_core/ui_element.py | 357 | CODE | |
| LOW | marimo/_plugins/stateless/inspect.py | 38 | CODE | |
| LOW | marimo/_plugins/stateless/image.py | 140 | CODE | |
| LOW | marimo/_plugins/stateless/status/_progress.py | 329 | CODE | |
| LOW | marimo/_plugins/stateless/status/_progress.py | 345 | CODE | |
| LOW | marimo/_plugins/stateless/status/_progress.py | 361 | CODE | |
| LOW | marimo/_plugins/stateless/status/_progress.py | 376 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …odemirror/cells/__tests__/debugger-decorations.test.ts | 22 | const CODE = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 53 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 105 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 157 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 206 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 263 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 315 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 355 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 397 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 497 | const code = `def my_function(): | CODE |
| LOW | …demirror/cells/__tests__/traceback-decorations.test.ts | 567 | const code = `def my_function(): | CODE |
| LOW | tests/_utils/test_methods.py | 10 | def my_method(self) -> str: | CODE |
| LOW | tests/_utils/test_methods.py | 47 | def my_method(self) -> str: | CODE |
| LOW | tests/_utils/test_decorator.py | 12 | def my_function() -> None: | CODE |
| LOW | tests/_utils/test_decorator.py | 29 | def my_function() -> None: | CODE |
| LOW | tests/_lint/test_files/self_import_conflict.py | 16 | def my_function(): | CODE |
| LOW | tests/_ast/test_pytest_scoped.py | 18 | def test_function(a, b): | CODE |
| LOW | tests/_ast/test_visitor.py | 294 | def helper(extension): | STRING |
| LOW | tests/_ast/test_visitor.py | 315 | def helper(): | STRING |
| LOW | tests/_ast/test_visitor.py | 339 | def helper(): | STRING |
| LOW | tests/_ast/test_visitor.py | 359 | def helper(extension): | STRING |
| LOW | tests/_ast/test_transformers.py | 190 | def test_function(x: int, y: str) -> int: | CODE |
| LOW | tests/_ast/test_app.py | 126 | def process_data( | CODE |
| LOW | tests/_ast/test_codegen.py | 1726 | def my_function(): | CODE |
| LOW⚡ | tests/_ast/test_codegen.py | 1884 | def my_function(): | STRING |
| LOW | tests/_ast/codegen_data/test_function_decorator_call.py | 13 | def my_function(): | CODE |
| LOW | tests/_runtime/test_dataflow.py | 1363 | def helper(): | CODE |
| LOW⚡ | tests/_runtime/test_pytest_runtime.py | 423 | def test_function(): | STRING |
| LOW | tests/_save/test_hash.py | 1904 | def my_function(): | STRING |
| LOW | tests/_save/test_hash.py | 1943 | def my_function(): | STRING |
| LOW | tests/_save/test_cache.py | 2619 | def helper(extension: list[str] | None) -> int: | STRING |
| LOW | marimo/_smoke_tests/lsp/ruff_errors.py | 60 | def process_data(data, unused_param): | CODE |
| LOW | marimo/_ast/app.py | 696 | def process_data(pd, batch_size, learning_rate): | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/_ast/test_parse.py | 637 | # AI-generated code pattern with inconsistent indentation | STRING |
| HIGH | examples/ai/data/data_labeler.py | 76 | mo.md("### Real or AI generated?").center() | STRING |
| HIGH | marimo/_environments/sandbox.py | 691 | # The requirement as requested: name plus any extras. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/sql/connect_to_motherduck.py | 37 | motherduck_token="YOUR_TOKEN_HERE" marimo edit {__file__} | CODE |
| HIGH | marimo/_smoke_tests/ws.py | 14 | api_key_input = mo.ui.text(value=env_api_key or "", label="YOUR_API_KEY") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/_ast/test_app.py | 726 | CODE | |
| MEDIUM | tests/_runtime/script_data/fn_exception.py | 15 | CODE | |
| MEDIUM | tests/_runtime/packages/test_micropip_streaming.py | 434 | CODE | |
| MEDIUM | marimo/_smoke_tests/issues/1851.py | 12 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/_output/formatters/test_altair.py | 143 | # TODO: Add tests for vegafusion | COMMENT |
| LOW | marimo/_runtime/dataflow/graph.py | 330 | # TODO: Consider caching on the graph level and updating on register / | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | marimo/_ai/_tools/base.py | 128 | # file path should be absolute path for agent-based edit tools | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | marimo/_snippets/data/altair-2.py | 14 | Altair provides a variety of aggregation operations in order to build custom histograms. Here is a simple exampl | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | marimo/_smoke_tests/markdown/codeblocks.py | 48 | # Example usage: | COMMENT |