MCPcopy Create free account
hub / github.com/deepnote/vscode-deepnote / selectKernelAndStart

Function selectKernelAndStart

src/standalone/chat/helper.node.ts:129–170  ·  view source on GitHub ↗
(
    notebook: vscode.NotebookDocument,
    connection: KernelConnectionMetadata,
    controllerRegistration: IControllerRegistration,
    token: vscode.CancellationToken,
    startKernel: boolean = true
)

Source from the content-addressed store, hash-verified

127}
128
129export async function selectKernelAndStart(
130 notebook: vscode.NotebookDocument,
131 connection: KernelConnectionMetadata,
132 controllerRegistration: IControllerRegistration,
133 token: vscode.CancellationToken,
134 startKernel: boolean = true
135) {
136 if (!controllerRegistration.getSelected(notebook)) {
137 const disposables = new DisposableStore();
138 try {
139 const selectedPromise = new Promise<void>((resolve) =>
140 disposables.add(
141 controllerRegistration.onControllerSelected((e) =>
142 e.notebook === notebook ? resolve() : undefined
143 )
144 )
145 );
146
147 const editor =
148 vscode.window.visibleNotebookEditors.find((e) => e.notebook === notebook) ||
149 (await vscode.window.showNotebookDocument(notebook));
150
151 await raceCancellation(
152 token,
153 vscode.commands.executeCommand('notebook.selectKernel', {
154 editor,
155 id: connection.id,
156 extension: JVSC_EXTENSION_ID
157 })
158 );
159
160 await raceTimeout(500, raceCancellation(token, selectedPromise));
161 } finally {
162 disposables.dispose();
163 }
164 }
165
166 const controller = controllerRegistration.getSelected(notebook);
167 if (controller && startKernel) {
168 return raceCancellation(token, controller.startKernel(notebook));
169 }
170}
171
172export async function getToolResponseForConfiguredNotebook(
173 selectedController: IVSCodeNotebookController,

Callers 2

invokeImplMethod · 0.90

Calls 9

addMethod · 0.95
disposeMethod · 0.95
raceCancellationFunction · 0.90
raceTimeoutFunction · 0.90
getSelectedMethod · 0.65
executeCommandMethod · 0.65
startKernelMethod · 0.65
resolveFunction · 0.50
onControllerSelectedMethod · 0.45

Tested by

no test coverage detected