11// Copyright (c) Microsoft Corporation.
22// Licensed under the MIT License.
33
4- import { inject , injectable , multiInject , named } from 'inversify' ;
4+ import { inject , injectable , multiInject , named , optional } from 'inversify' ;
55import { Memento , NotebookDocument , Uri } from 'vscode' ;
6+
67import {
78 IAsyncDisposableRegistry ,
89 IConfigurationService ,
@@ -31,6 +32,7 @@ import { IReplNotebookTrackerService } from '../platform/notebooks/replNotebookT
3132import { logger } from '../platform/logging' ;
3233import { getDisplayPath } from '../platform/common/platform/fs-paths.node' ;
3334import { IRawNotebookSupportedService } from './raw/types' ;
35+ import { ISnapshotMetadataService } from '../platform/notebooks/deepnote/types' ;
3436
3537/**
3638 * Node version of a kernel provider. Needed in order to create the node version of a kernel.
@@ -50,7 +52,8 @@ export class KernelProvider extends BaseCoreKernelProvider {
5052 @inject ( IMemento ) @named ( WORKSPACE_MEMENTO ) private readonly workspaceStorage : Memento ,
5153 @inject ( IReplNotebookTrackerService ) private readonly replTracker : IReplNotebookTrackerService ,
5254 @inject ( IKernelWorkingDirectory ) private readonly kernelWorkingDirectory : IKernelWorkingDirectory ,
53- @inject ( IRawNotebookSupportedService ) private readonly rawKernelSupported : IRawNotebookSupportedService
55+ @inject ( IRawNotebookSupportedService ) private readonly rawKernelSupported : IRawNotebookSupportedService ,
56+ @inject ( ISnapshotMetadataService ) @optional ( ) private readonly snapshotService ?: ISnapshotMetadataService
5457 ) {
5558 super ( asyncDisposables , disposables ) ;
5659 disposables . push ( jupyterServerUriStorage . onDidRemove ( this . handleServerRemoval . bind ( this ) ) ) ;
@@ -109,7 +112,10 @@ export class KernelProvider extends BaseCoreKernelProvider {
109112 this . disposables
110113 ) ;
111114
112- this . executions . set ( kernel , new NotebookKernelExecution ( kernel , this . context , this . formatters , notebook ) ) ;
115+ this . executions . set (
116+ kernel ,
117+ new NotebookKernelExecution ( kernel , this . context , this . formatters , notebook , this . snapshotService )
118+ ) ;
113119 this . asyncDisposables . push ( kernel ) ;
114120 this . storeKernel ( notebook , options , kernel ) ;
115121 this . deleteMappingIfKernelIsDisposed ( kernel ) ;
0 commit comments