Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
ffe0958
chore(dep): Update deepnote database integrations package
tkislan Mar 9, 2026
3bb72eb
Reformat code
tkislan Mar 9, 2026
5148b03
Merge branch 'main' into tk/update-deepnote-database-integrations
tkislan Mar 9, 2026
d5f67f6
chore(runtime-core): Add deepnote runtime-core dependency, and use it…
tkislan Mar 10, 2026
ff6d44f
feat: Add Agent block visualization support
tkislan Mar 11, 2026
957fdcd
Add a dummy agent block execution handler
tkislan Mar 12, 2026
9fbe622
feat(agent-block): Integrate deepnote runtime-core to execute Agent b…
tkislan Mar 13, 2026
46f9a4c
feat(agent-cell): Enhance executeAgentCell with options for custom ex…
tkislan Mar 14, 2026
58e653d
feat(ephemeral-cells): Introduce isEphemeralCell utility and enhance …
tkislan Mar 16, 2026
401681c
Merge remote-tracking branch 'origin/main' into tk/deepnote-runtime-core
tkislan Mar 16, 2026
6f7b4aa
Refactor Deepnote server management to utilize a new mock child proce…
tkislan Mar 16, 2026
7d8ee86
Fix eslint error
tkislan Mar 16, 2026
9c4151a
Enhance Deepnote server stopping logic to handle missing project context
tkislan Mar 17, 2026
347a809
Refactor Deepnote server management to use fileKey instead of serverKey
tkislan Mar 17, 2026
5eb2c17
Refactor DeepnoteServerStarter to remove port allocation logic
tkislan Mar 17, 2026
3740df1
Enhance DeepnoteServerStarter with output tracking and error reportin…
tkislan Mar 17, 2026
06a0367
Update error handling in DeepnoteServerStarter to improve diagnostics
tkislan Mar 17, 2026
1e7cb07
Reformat code
tkislan Mar 17, 2026
4f0248d
Merge branch 'main' into tk/deepnote-runtime-core
tkislan Mar 18, 2026
9757a05
Merge remote-tracking branch 'origin/tk/deepnote-runtime-core' into t…
tkislan Mar 18, 2026
75d0220
Enhance agent cell execution handling and status bar provider
tkislan Mar 18, 2026
f7bec65
Add Agent OpenAI API key extension configuration
tkislan Mar 18, 2026
ea715e7
Implement OpenAI API key management in Deepnote
tkislan Mar 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion build/esbuild/build.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,8 @@ const commonExternals = [
const webExternals = [
...commonExternals,
'canvas', // Native module used by vega for server-side rendering, not needed in browser
'mathjax-electron' // Uses Node.js path module, MathJax rendering handled differently in browser
'mathjax-electron', // Uses Node.js path module, MathJax rendering handled differently in browser
'@deepnote/runtime-core' // Uses tcp-port-used → net, only needed in desktop for agent block execution
];
const desktopExternals = [...commonExternals, ...deskTopNodeModulesToExternalize];
const bundleConfig = getBundleConfiguration();
Expand Down
55 changes: 55 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -341,6 +341,16 @@
"title": "%deepnote.command.manageAccessToKernels%",
"category": "Jupyter"
},
{
"command": "deepnote.setOpenAiApiKey",
"title": "%deepnote.command.setOpenAiApiKey%",
"category": "Deepnote"
},
{
"command": "deepnote.clearOpenAiApiKey",
"title": "%deepnote.command.clearOpenAiApiKey%",
"category": "Deepnote"
},
{
"command": "dataScience.ClearUserProviderJupyterServerCache",
"title": "%deepnote.command.dataScience.clearUserProviderJupyterServerCache.title%",
Expand Down Expand Up @@ -2676,6 +2686,7 @@
"@deepnote/blocks": "^4.3.0",
"@deepnote/convert": "^3.2.0",
"@deepnote/database-integrations": "^1.4.3",
"@deepnote/runtime-core": "^0.2.0",
"@deepnote/sql-language-server": "^3.0.0",
"@enonic/fnv-plus": "^1.3.0",
"@jupyter-widgets/base": "^6.0.8",
Expand Down
2 changes: 2 additions & 0 deletions package.nls.json
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,8 @@
"deepnote.command.deepnote.openOutlineView.title": "Show Table Of Contents (Outline View)",
"deepnote.command.deepnote.openOutlineView.shorttitle": "Outline",
"deepnote.command.manageAccessToKernels": "Manage Access To Jupyter Kernels",
"deepnote.command.setOpenAiApiKey": "Set OpenAI API Key",
"deepnote.command.clearOpenAiApiKey": "Clear OpenAI API Key",
"deepnote.commandPalette.deepnote.replayPylanceLog.title": "Replay Pylance Log",
"deepnote.notebookRenderer.IPyWidget.displayName": "Jupyter IPyWidget Renderer",
"deepnote.notebookRenderer.Error.displayName": "Jupyter Error Renderer",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import { assert } from 'chai';
import { Uri } from 'vscode';

import { DeepnoteLspClientManager } from './deepnoteLspClientManager.node';
import { createMockChildProcess } from './deepnoteTestHelpers.node';
import { IDisposableRegistry } from '../../platform/common/types';
import { PythonEnvironment } from '../../platform/pythonEnvironments/info';
import * as path from '../../platform/vscode-path/path';
Expand Down Expand Up @@ -84,7 +85,8 @@ suite('DeepnoteLspClientManager Integration Tests', () => {
url: 'http://localhost:8888',
jupyterPort: 8888,
lspPort: 8889,
token: 'test-token'
token: 'test-token',
process: createMockChildProcess()
};

// This will attempt to start LSP clients but may fail if pylsp isn't installed
Expand Down Expand Up @@ -135,7 +137,8 @@ suite('DeepnoteLspClientManager Integration Tests', () => {
url: 'http://localhost:8888',
jupyterPort: 8888,
lspPort: 8889,
token: 'test-token'
token: 'test-token',
process: createMockChildProcess()
};

try {
Expand Down Expand Up @@ -166,7 +169,8 @@ suite('DeepnoteLspClientManager Integration Tests', () => {
url: 'http://localhost:8888',
jupyterPort: 8888,
lspPort: 8889,
token: 'test-token'
token: 'test-token',
process: createMockChildProcess()
};

try {
Expand Down
Loading