diff --git a/extensions/notebook/src/jupyter/jupyterSessionManager.ts b/extensions/notebook/src/jupyter/jupyterSessionManager.ts index c001579013..b14dd36031 100644 --- a/extensions/notebook/src/jupyter/jupyterSessionManager.ts +++ b/extensions/notebook/src/jupyter/jupyterSessionManager.ts @@ -333,6 +333,10 @@ export class JupyterSession implements nb.ISession { private async setEnvironmentVars(skip: boolean = false): Promise { if (!skip && this.sessionImpl) { let allCode: string = ''; + // Ensure cwd matches notebook path (this follows Jupyter behavior) + if (this.path && path.dirname(this.path)) { + allCode += `%cd ${path.dirname(this.path)}${EOL}`; + } for (let i = 0; i < Object.keys(process.env).length; i++) { let key = Object.keys(process.env)[i]; if (key.toLowerCase() === 'path' && this._pythonEnvVarPath) { @@ -343,7 +347,9 @@ export class JupyterSession implements nb.ISession { } } let future = this.sessionImpl.kernel.requestExecute({ - code: allCode + code: allCode, + silent: true, + store_history: false }, true); await future.done; }