Skip to content

Add SQL Notebooks support (.exabook files)#29

Open
mikhail-zhadanov wants to merge 2 commits intomainfrom
feature/sql-notebooks
Open

Add SQL Notebooks support (.exabook files)#29
mikhail-zhadanov wants to merge 2 commits intomainfrom
feature/sql-notebooks

Conversation

@mikhail-zhadanov
Copy link
Copy Markdown
Collaborator

Summary

  • SQL Notebooks — new .exabook file format for interactive SQL exploration with inline results
  • JSON-based notebook format with SQL code cells and markdown documentation cells
  • Cells execute against the active Exasol connection with HTML result tables
  • Execution order badges, timing, row counts, cancellation support
  • CodeLens "Execute" links hidden in notebook cells (native run buttons used instead)
  • Demo notebook included in examples/demo.exabook

Architecture

  • src/notebooks/serializer.tsNotebookSerializer reading/writing JSON .exabook files with transientOutputs: true (results not saved to disk)
  • src/notebooks/controller.tsNotebookController executing SQL cells via existing QueryExecutor, rendering results as styled HTML tables

Test plan

  • Open examples/demo.exabook — notebook renders with markdown + SQL cells
  • SQL cells have Exasol syntax highlighting
  • Click play on a SQL cell — results render inline as HTML table
  • No "Execute" CodeLens appears inside notebook cells
  • Cancel a running cell — execution stops
  • Run All executes cells sequentially with execution order badges
  • Create new .exabook file — opens as empty notebook
  • Non-result queries (CREATE, INSERT) show success message

🤖 Generated with Claude Code

@mikhail-zhadanov
Copy link
Copy Markdown
Collaborator Author

image

mikhail-zhadanov and others added 2 commits March 31, 2026 13:46
Interactive notebooks with SQL code cells and markdown documentation.
SQL cells execute against the active Exasol connection with inline
HTML result tables showing row counts, timing, and execution order.

- NotebookSerializer: JSON-based .exabook format with transient outputs
- NotebookController: executes cells via QueryExecutor with cancellation
- CodeLens hidden in notebook cells (they have native run buttons)
- Demo notebook in examples/
- Bump version to 1.4.0

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Fix changelog entries to descending version order
- Remove deprecated vscode-test (replaced by @vscode/test-electron)
- Replace @tootallnate/once override with glob override ($glob)
- Eliminates 9 of 11 npm deprecation warnings

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant