-
Notifications
You must be signed in to change notification settings - Fork 4
chore: Rename all instances of microsoft/vscode-jupyter to deepnote/vscode-deepnote #120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: Rename all instances of microsoft/vscode-jupyter to deepnote/vscode-deepnote #120
Conversation
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
⚙️ Control Options:
|
📝 WalkthroughWalkthroughThis PR migrates repository references from microsoft/vscode-jupyter to deepnote/vscode-deepnote across docs, package metadata, build scripts, CI helper scripts, notebooks, and localization strings. Two files were removed: .github/endgame_plan.md and .vscode/notebooks/CITestResults.ipynb. Changes are textual or URL updates and deletions only; no exported/public API signatures or runtime control flow were modified. Possibly related PRs
Suggested reviewers
Pre-merge checks❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: ASSERTIVE Plan: Pro 📒 Files selected for processing (2)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
🔇 Additional comments (4)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 45
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (4)
src/standalone/intellisense/kernelCompletionProvider.ts (1)
505-514: Remove or correct the broken issue URL reference.The linked issue deepnote/vscode-deepnote#9014 does not exist in the public repository. Preserve the design rationale in the comment (pre-warming avoids request hangs), but either remove the external link or provide the correct upstream issue URL if available.
api/package.json (1)
15-22: Fix inconsistent package metadata (homepage vs repository/bugs).homepage now points to Deepnote, but repository and bugs still point to Microsoft. Align all three.
Apply this diff:
- "homepage": "https://github.com/deepnote/vscode-deepnote", + "homepage": "https://github.com/deepnote/vscode-deepnote", "repository": { "type": "git", - "url": "https://github.com/Microsoft/vscode-jupyter" + "url": "https://github.com/deepnote/vscode-deepnote" }, "bugs": { - "url": "https://github.com/Microsoft/vscode-jupyter/issues" + "url": "https://github.com/deepnote/vscode-deepnote/issues" },src/kernels/kernelDependencyService.node.ts (1)
270-276: Remove or correct the invalid issue reference.The GitHub issue deepnote/vscode-deepnote#6135 does not exist. Either remove the comment or update it with the correct issue number.
src/kernels/execution/codeExecution.ts (1)
31-36: Remove or deprecate the inaccessible Deepnote issue link.The deepnote/vscode-deepnote#232 reference is no longer accessible. Since jupyter/jupyter_client#297 is valid and contains the upstream context, drop the broken link to avoid future maintenance confusion.
♻️ Duplicate comments (8)
src/kernels/raw/launcher/kernelProcess.node.ts (1)
507-507: Same URL verification concern as line 288.Line 507 has the same pattern: a GitHub issue URL rewritten without verification of target repo existence.
src/notebooks/controllers/preferredKernelConnectionService.ts (1)
31-31: Same issue: verify deepnote issue #11914 exists.This references an issue meant to be "cleaned up" by this code. Ensure the issue exists in your repo or retain the upstream link.
src/kernels/errors/jupyterWaitForIdleError.ts (1)
13-13: Verify issue #10940 exists in deepnote repo.This documents a known cause. If the issue doesn't exist, the example loses valuable context.
src/platform/errors/errorUtils.ts (1)
564-564: Verify issue #8295 exists.Referenced in error handling logic. Broken link removes debugging context.
src/webviews/webview-side/ipywidgets/kernel/index.ts (1)
114-114: Verify issue #10485 exists.Explains important widget lifecycle behavior. Context loss would impact maintenance.
src/webviews/webview-side/ipywidgets/renderer/index.ts (1)
180-180: Verify issue #14161 exists.Documents rendering edge case. Broken link hinders future debugging.
src/test/datascience/notebook/nonPythonKernels.vscode.test.ts (1)
74-74: Verify issue #10900 exists.Test documents a historical bug fix. Preserve upstream context if issue doesn't exist in your repo.
src/kernels/execution/cellExecution.ts (1)
474-474: Same issue reference appears twice.Line 474 references the same issue #232 from line 64. See previous comment about potential dead link.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (67)
.github/commands.json(1 hunks).github/endgame_plan.md(1 hunks).vscode/launch.json(1 hunks).vscode/notebooks/CITestResults.ipynb(3 hunks).vscode/notebooks/GithubLabels.ipynb(2 hunks)CONTRIBUTING.md(6 hunks)api/package.json(1 hunks)build/ci/postInstall.js(1 hunks)build/conda-nonconda-test-requirements.txt(1 hunks)build/venv-test-ipywidgets7-requirements.txt(1 hunks)build/verifyProposedApiUsage.ts(1 hunks)package.nls.json(1 hunks)pythonFiles/aggregateTestResults.py(2 hunks)pythonFiles/vscode_datascience_helpers/kernel/addRunCellHook.py(1 hunks)src/kernels/errors/jupyterWaitForIdleError.ts(1 hunks)src/kernels/execution/cellExecution.ts(3 hunks)src/kernels/execution/cellExecutionMessageHandler.ts(5 hunks)src/kernels/execution/codeExecution.ts(1 hunks)src/kernels/execution/helpers.ts(1 hunks)src/kernels/jupyter/jupyterUtils.ts(1 hunks)src/kernels/jupyter/session/jupyterKernelSessionFactory.ts(1 hunks)src/kernels/kernelDependencyService.node.ts(2 hunks)src/kernels/raw/finder/contributedKerneFinder.node.unit.test.ts(2 hunks)src/kernels/raw/finder/contributedLocalKernelSpecFinder.node.ts(1 hunks)src/kernels/raw/finder/interpreterKernelSpecFinderHelper.node.ts(1 hunks)src/kernels/raw/launcher/kernelEnvVarsService.node.ts(2 hunks)src/kernels/raw/launcher/kernelProcess.node.ts(2 hunks)src/kernels/raw/session/rawKernelConnection.node.ts(1 hunks)src/notebooks/controllers/controllerRegistration.ts(1 hunks)src/notebooks/controllers/ipywidgets/scriptSourceProvider/remoteIPyWidgetScriptManager.ts(1 hunks)src/notebooks/controllers/ipywidgets/types.ts(1 hunks)src/notebooks/controllers/preferredKernelConnectionService.ts(1 hunks)src/notebooks/controllers/vscodeNotebookController.ts(1 hunks)src/notebooks/debugger/debuggingManagerBase.ts(1 hunks)src/notebooks/debugger/helper.ts(1 hunks)src/platform/common/utils/localize.ts(1 hunks)src/platform/errors/errorUtils.ts(1 hunks)src/platform/errors/index.ts(1 hunks)src/platform/errors/jupyterSelfCertsError.ts(1 hunks)src/platform/interpreter/installer/condaInstaller.node.ts(1 hunks)src/platform/interpreter/installer/moduleInstaller.node.ts(2 hunks)src/platform/interpreter/installer/pinnedPackages.ts(1 hunks)src/platform/interpreter/installer/poetryInstaller.node.ts(1 hunks)src/standalone/api/kernels/kernelProgressIndicator.ts(1 hunks)src/standalone/intellisense/kernelCompletionProvider.ts(1 hunks)src/standalone/userJupyterServer/jupyterPasswordConnect.ts(1 hunks)src/test/datascience/.vscode/settings.json(1 hunks)src/test/datascience/debugger.vscode.test.ts(5 hunks)src/test/datascience/interactiveDebugging.vscode.common.ts(1 hunks)src/test/datascience/interactiveDebugging.vscode.web.test.ts(1 hunks)src/test/datascience/interactiveWindow.vscode.common.test.ts(1 hunks)src/test/datascience/manualTestFiles/manualTestFile.py(1 hunks)src/test/datascience/notebook/executionService.vscode.test.ts(1 hunks)src/test/datascience/notebook/intellisense/completionProvider.vscode.common.test.ts(2 hunks)src/test/datascience/notebook/kernelRankingHelper.ts(1 hunks)src/test/datascience/notebook/nonPythonKernels.vscode.test.ts(1 hunks)src/test/datascience/notebook/withMixedMimeTypeOutput.ipynb(1 hunks)src/test/datascience/variableView/variableView.vscode.test.ts(2 hunks)src/test/datascience/widgets/standardWidgets.vscode.common.test.ts(3 hunks)src/test/datascience/widgets/thirdpartyWidgets.vscode.common.test.ts(4 hunks)src/test/smoke/datascience.smoke.test.ts(1 hunks)src/test/standalone/api/unstable/api.jupyterProvider.vscode.test.ts(1 hunks)src/test/standardTest.node.ts(1 hunks)src/webviews/extension-side/ipywidgets/rendererComms.ts(1 hunks)src/webviews/webview-side/ipywidgets/kernel/index.ts(1 hunks)src/webviews/webview-side/ipywidgets/kernel/scriptManager.ts(1 hunks)src/webviews/webview-side/ipywidgets/renderer/index.ts(1 hunks)
🧰 Additional context used
📓 Path-based instructions (26)
**/!(*.node|*.web).ts
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Place shared cross-platform logic in common
.tsfiles (not suffixed with.nodeor.web)
Files:
src/test/datascience/interactiveDebugging.vscode.common.tssrc/kernels/execution/cellExecution.tssrc/standalone/userJupyterServer/jupyterPasswordConnect.tssrc/test/datascience/interactiveWindow.vscode.common.test.tssrc/webviews/webview-side/ipywidgets/renderer/index.tssrc/platform/errors/index.tssrc/notebooks/controllers/controllerRegistration.tssrc/platform/errors/jupyterSelfCertsError.tssrc/standalone/intellisense/kernelCompletionProvider.tssrc/notebooks/debugger/debuggingManagerBase.tssrc/test/datascience/notebook/nonPythonKernels.vscode.test.tssrc/webviews/webview-side/ipywidgets/kernel/index.tsbuild/verifyProposedApiUsage.tssrc/test/datascience/widgets/standardWidgets.vscode.common.test.tssrc/notebooks/controllers/ipywidgets/types.tssrc/kernels/jupyter/session/jupyterKernelSessionFactory.tssrc/kernels/errors/jupyterWaitForIdleError.tssrc/kernels/execution/helpers.tssrc/test/datascience/notebook/executionService.vscode.test.tssrc/kernels/execution/codeExecution.tssrc/platform/errors/errorUtils.tssrc/test/datascience/widgets/thirdpartyWidgets.vscode.common.test.tssrc/webviews/extension-side/ipywidgets/rendererComms.tssrc/notebooks/controllers/vscodeNotebookController.tssrc/test/datascience/notebook/kernelRankingHelper.tssrc/standalone/api/kernels/kernelProgressIndicator.tssrc/notebooks/controllers/ipywidgets/scriptSourceProvider/remoteIPyWidgetScriptManager.tssrc/test/datascience/variableView/variableView.vscode.test.tssrc/notebooks/controllers/preferredKernelConnectionService.tssrc/notebooks/debugger/helper.tssrc/kernels/raw/finder/contributedKerneFinder.node.unit.test.tssrc/test/datascience/notebook/intellisense/completionProvider.vscode.common.test.tssrc/platform/common/utils/localize.tssrc/test/datascience/interactiveDebugging.vscode.web.test.tssrc/platform/interpreter/installer/pinnedPackages.tssrc/kernels/execution/cellExecutionMessageHandler.tssrc/kernels/jupyter/jupyterUtils.tssrc/test/smoke/datascience.smoke.test.tssrc/test/datascience/debugger.vscode.test.tssrc/webviews/webview-side/ipywidgets/kernel/scriptManager.tssrc/test/standalone/api/unstable/api.jupyterProvider.vscode.test.ts
**/*.{ts,tsx}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
**/*.{ts,tsx}: Inject interfaces, not concrete classes
Avoid circular dependencies
Usel10n.t()for user-facing strings
Use typed error classes fromsrc/platform/errors/when throwing or handling errors
Use theILoggerservice instead ofconsole.log
Preserve error details while scrubbing PII in messages and telemetry
Include the Microsoft copyright header in source files
Prefer async/await and handle cancellation withCancellationToken
**/*.{ts,tsx}: Order class members (methods, fields, properties) first by accessibility (public/protected/private) and then alphabetically
Do not add the Microsoft copyright header to new files
Use Uri.joinPath() to construct file paths instead of manual string concatenation
Add a blank line after groups of const declarations and before return statements for readability
Separate third-party imports from local file imports
Files:
src/test/datascience/interactiveDebugging.vscode.common.tssrc/kernels/raw/launcher/kernelEnvVarsService.node.tssrc/kernels/execution/cellExecution.tssrc/kernels/kernelDependencyService.node.tssrc/kernels/raw/finder/interpreterKernelSpecFinderHelper.node.tssrc/standalone/userJupyterServer/jupyterPasswordConnect.tssrc/test/datascience/interactiveWindow.vscode.common.test.tssrc/kernels/raw/launcher/kernelProcess.node.tssrc/webviews/webview-side/ipywidgets/renderer/index.tssrc/platform/errors/index.tssrc/notebooks/controllers/controllerRegistration.tssrc/platform/errors/jupyterSelfCertsError.tssrc/standalone/intellisense/kernelCompletionProvider.tssrc/notebooks/debugger/debuggingManagerBase.tssrc/test/datascience/notebook/nonPythonKernels.vscode.test.tssrc/platform/interpreter/installer/poetryInstaller.node.tssrc/webviews/webview-side/ipywidgets/kernel/index.tsbuild/verifyProposedApiUsage.tssrc/test/datascience/widgets/standardWidgets.vscode.common.test.tssrc/notebooks/controllers/ipywidgets/types.tssrc/kernels/jupyter/session/jupyterKernelSessionFactory.tssrc/kernels/errors/jupyterWaitForIdleError.tssrc/kernels/execution/helpers.tssrc/test/datascience/notebook/executionService.vscode.test.tssrc/kernels/execution/codeExecution.tssrc/platform/errors/errorUtils.tssrc/test/datascience/widgets/thirdpartyWidgets.vscode.common.test.tssrc/webviews/extension-side/ipywidgets/rendererComms.tssrc/notebooks/controllers/vscodeNotebookController.tssrc/test/datascience/notebook/kernelRankingHelper.tssrc/kernels/raw/finder/contributedLocalKernelSpecFinder.node.tssrc/standalone/api/kernels/kernelProgressIndicator.tssrc/notebooks/controllers/ipywidgets/scriptSourceProvider/remoteIPyWidgetScriptManager.tssrc/test/datascience/variableView/variableView.vscode.test.tssrc/platform/interpreter/installer/condaInstaller.node.tssrc/notebooks/controllers/preferredKernelConnectionService.tssrc/notebooks/debugger/helper.tssrc/kernels/raw/finder/contributedKerneFinder.node.unit.test.tssrc/test/datascience/notebook/intellisense/completionProvider.vscode.common.test.tssrc/platform/common/utils/localize.tssrc/kernels/raw/session/rawKernelConnection.node.tssrc/test/standardTest.node.tssrc/test/datascience/interactiveDebugging.vscode.web.test.tssrc/platform/interpreter/installer/moduleInstaller.node.tssrc/platform/interpreter/installer/pinnedPackages.tssrc/kernels/execution/cellExecutionMessageHandler.tssrc/kernels/jupyter/jupyterUtils.tssrc/test/smoke/datascience.smoke.test.tssrc/test/datascience/debugger.vscode.test.tssrc/webviews/webview-side/ipywidgets/kernel/scriptManager.tssrc/test/standalone/api/unstable/api.jupyterProvider.vscode.test.ts
**/*.node.ts
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Use
*.node.tsfor Desktop-specific implementations that require full file system access and Python environments
Files:
src/kernels/raw/launcher/kernelEnvVarsService.node.tssrc/kernels/kernelDependencyService.node.tssrc/kernels/raw/finder/interpreterKernelSpecFinderHelper.node.tssrc/kernels/raw/launcher/kernelProcess.node.tssrc/platform/interpreter/installer/poetryInstaller.node.tssrc/kernels/raw/finder/contributedLocalKernelSpecFinder.node.tssrc/platform/interpreter/installer/condaInstaller.node.tssrc/kernels/raw/session/rawKernelConnection.node.tssrc/test/standardTest.node.tssrc/platform/interpreter/installer/moduleInstaller.node.ts
src/kernels/raw/launcher/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
Raw launcher must spawn kernel processes and manage ports/connection files
Files:
src/kernels/raw/launcher/kernelEnvVarsService.node.tssrc/kernels/raw/launcher/kernelProcess.node.ts
src/kernels/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
src/kernels/**/*.ts: Use event-driven updates (EventEmitter) for state changes
Monitor and dispose pending promises to prevent leaks during teardown
Use WeakRef/weak references for notebook/object backreferences to avoid memory leaks
Respect CancellationToken in all async operations
Files:
src/kernels/raw/launcher/kernelEnvVarsService.node.tssrc/kernels/execution/cellExecution.tssrc/kernels/kernelDependencyService.node.tssrc/kernels/raw/finder/interpreterKernelSpecFinderHelper.node.tssrc/kernels/raw/launcher/kernelProcess.node.tssrc/kernels/jupyter/session/jupyterKernelSessionFactory.tssrc/kernels/errors/jupyterWaitForIdleError.tssrc/kernels/execution/helpers.tssrc/kernels/execution/codeExecution.tssrc/kernels/raw/finder/contributedLocalKernelSpecFinder.node.tssrc/kernels/raw/finder/contributedKerneFinder.node.unit.test.tssrc/kernels/raw/session/rawKernelConnection.node.tssrc/kernels/execution/cellExecutionMessageHandler.tssrc/kernels/jupyter/jupyterUtils.ts
src/kernels/execution/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
Notebook-level execution must enqueue cells via CellExecutionQueue and manage per-cell lifecycles through CellExecution
Files:
src/kernels/execution/cellExecution.tssrc/kernels/execution/helpers.tssrc/kernels/execution/codeExecution.tssrc/kernels/execution/cellExecutionMessageHandler.ts
src/kernels/**/finder/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
src/kernels/**/finder/**/*.ts: All finder implementations must implement the IContributedKernelFinder interface
Finder implementations should use caching to avoid redundant discovery work
Activate finder scans lazily (only when needed) to reduce startup cost
Files:
src/kernels/raw/finder/interpreterKernelSpecFinderHelper.node.tssrc/kernels/raw/finder/contributedLocalKernelSpecFinder.node.tssrc/kernels/raw/finder/contributedKerneFinder.node.unit.test.ts
src/kernels/raw/finder/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
Raw kernel discovery must scan local kernel specs and Python environments
Files:
src/kernels/raw/finder/interpreterKernelSpecFinderHelper.node.tssrc/kernels/raw/finder/contributedLocalKernelSpecFinder.node.tssrc/kernels/raw/finder/contributedKerneFinder.node.unit.test.ts
**/!(*.unit).test.ts
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Place integration tests in
*.test.tsfiles that are not*.unit.test.ts
Files:
src/test/datascience/interactiveWindow.vscode.common.test.tssrc/test/datascience/notebook/nonPythonKernels.vscode.test.tssrc/test/datascience/widgets/standardWidgets.vscode.common.test.tssrc/test/datascience/notebook/executionService.vscode.test.tssrc/test/datascience/widgets/thirdpartyWidgets.vscode.common.test.tssrc/test/datascience/variableView/variableView.vscode.test.tssrc/test/datascience/notebook/intellisense/completionProvider.vscode.common.test.tssrc/test/datascience/interactiveDebugging.vscode.web.test.tssrc/test/smoke/datascience.smoke.test.tssrc/test/datascience/debugger.vscode.test.tssrc/test/standalone/api/unstable/api.jupyterProvider.vscode.test.ts
**/*.{test,spec}.ts
📄 CodeRabbit inference engine (.github/instructions/typescript.instructions.md)
In unit tests, when a mock is returned from a promise, ensure the mocked instance has an undefined
thenproperty to avoid hanging tests
Files:
src/test/datascience/interactiveWindow.vscode.common.test.tssrc/test/datascience/notebook/nonPythonKernels.vscode.test.tssrc/test/datascience/widgets/standardWidgets.vscode.common.test.tssrc/test/datascience/notebook/executionService.vscode.test.tssrc/test/datascience/widgets/thirdpartyWidgets.vscode.common.test.tssrc/test/datascience/variableView/variableView.vscode.test.tssrc/kernels/raw/finder/contributedKerneFinder.node.unit.test.tssrc/test/datascience/notebook/intellisense/completionProvider.vscode.common.test.tssrc/test/datascience/interactiveDebugging.vscode.web.test.tssrc/test/smoke/datascience.smoke.test.tssrc/test/datascience/debugger.vscode.test.tssrc/test/standalone/api/unstable/api.jupyterProvider.vscode.test.ts
src/platform/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/platform.instructions.md)
src/platform/**/*.ts: Use Inversify decorators for DI: annotate classes with @Injectable() and inject dependencies with @Inject(Token)
Use the centralized logger (import { logger } from '../platform/logging') instead of console.log for application logging
Files:
src/platform/errors/index.tssrc/platform/errors/jupyterSelfCertsError.tssrc/platform/interpreter/installer/poetryInstaller.node.tssrc/platform/errors/errorUtils.tssrc/platform/interpreter/installer/condaInstaller.node.tssrc/platform/common/utils/localize.tssrc/platform/interpreter/installer/moduleInstaller.node.tssrc/platform/interpreter/installer/pinnedPackages.ts
src/notebooks/debugger/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/notebooks.instructions.md)
src/notebooks/debugger/**/*.ts: Add the new debugging controller to DebuggingManager creation logic
Implement required debug protocol handling for the new capability
Files:
src/notebooks/debugger/debuggingManagerBase.tssrc/notebooks/debugger/helper.ts
src/platform/**/*.node.ts
📄 CodeRabbit inference engine (.github/instructions/platform.instructions.md)
src/platform/**/*.node.ts: Provide Node.js-specific implementations in .node.ts files (e.g., FileSystem with fs-extra, PlatformService with OS detection)
Desktop implementations may use Node capabilities (fs-extra, process spawning, native modules) consistent with their responsibilities
Files:
src/platform/interpreter/installer/poetryInstaller.node.tssrc/platform/interpreter/installer/condaInstaller.node.tssrc/platform/interpreter/installer/moduleInstaller.node.ts
src/webviews/webview-side/ipywidgets/kernel/index.ts
📄 CodeRabbit inference engine (.github/instructions/ipywidgets.instructions.md)
Create a proxy kernel in the webview to manage widget lifecycle and relay comms with the extension
Files:
src/webviews/webview-side/ipywidgets/kernel/index.ts
src/notebooks/controllers/ipywidgets/types.ts
📄 CodeRabbit inference engine (.github/instructions/ipywidgets.instructions.md)
Use the shared core interfaces/types from types.ts across the IPyWidgets controller code
Files:
src/notebooks/controllers/ipywidgets/types.ts
src/kernels/jupyter/session/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel-jupyter.instructions.md)
src/kernels/jupyter/session/**/*.ts: Always use JupyterLab manager classes (SessionManager, KernelManager, KernelSpecManager, ContentsManager) for lifecycle management instead of creating services directly
Call dispose() on all @jupyterlab/services objects (managers, sessions, kernels, contents) to prevent resource leaksJupyter sessions must use HTTP/WebSocket communication
Files:
src/kernels/jupyter/session/jupyterKernelSessionFactory.ts
src/kernels/jupyter/{connection,session}/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel-jupyter.instructions.md)
Reuse a single ServerConnection.ISettings instance for a given server to enable connection sharing and caching
Files:
src/kernels/jupyter/session/jupyterKernelSessionFactory.ts
src/kernels/jupyter/{connection,launcher,session,finder}/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel-jupyter.instructions.md)
src/kernels/jupyter/{connection,launcher,session,finder}/**/*.ts: Wrap all @jupyterlab/services calls and network interactions with robust error handling and meaningful error types
Support cancellation via CancellationToken (or equivalent) for long-running async operations (network calls, startup waits)
Implement automatic retry with exponential backoff for transient connection/session errors
Provide fallbacks or graceful degradation when services are unavailable and surface actionable, user-friendly error messages
Files:
src/kernels/jupyter/session/jupyterKernelSessionFactory.ts
src/kernels/jupyter/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel-jupyter.instructions.md)
src/kernels/jupyter/**/*.ts: Avoid blocking operations; use async/await consistently for asynchronous flows
Avoid shared global state for services; prefer instance-scoped or injected dependencies
Files:
src/kernels/jupyter/session/jupyterKernelSessionFactory.tssrc/kernels/jupyter/jupyterUtils.ts
src/kernels/{jupyter,raw}/session/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
All session implementations must conform to IKernelSession
Files:
src/kernels/jupyter/session/jupyterKernelSessionFactory.tssrc/kernels/raw/session/rawKernelConnection.node.ts
src/kernels/errors/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
Use specific error types (e.g., KernelDeadError, KernelConnectionTimeoutError, KernelInterruptTimeoutError, JupyterInvalidKernelError, KernelDependencyError) for failure cases
Files:
src/kernels/errors/jupyterWaitForIdleError.ts
src/webviews/extension-side/ipywidgets/rendererComms.ts
📄 CodeRabbit inference engine (.github/instructions/ipywidgets.instructions.md)
RendererComms should track widget model IDs in outputs, handle renderer queries, and coordinate display messages with IPyWidgetMessageDispatcher
Files:
src/webviews/extension-side/ipywidgets/rendererComms.ts
src/standalone/api/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/standalone.instructions.md)
Define new API endpoint interfaces within the appropriate subdirectory under src/standalone/api/
Files:
src/standalone/api/kernels/kernelProgressIndicator.ts
**/*.unit.test.ts
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Place unit tests in files matching
*.unit.test.ts
**/*.unit.test.ts: Unit tests must use Mocha/Chai and have the .unit.test.ts extension
Place unit test files alongside the source files they test
Use assert.deepStrictEqual() for object comparisons in tests instead of checking individual properties
Files:
src/kernels/raw/finder/contributedKerneFinder.node.unit.test.ts
src/kernels/raw/session/**/*.ts
📄 CodeRabbit inference engine (.github/instructions/kernel.instructions.md)
Raw sessions must use ZeroMQ socket communication
Files:
src/kernels/raw/session/rawKernelConnection.node.ts
src/webviews/webview-side/ipywidgets/kernel/scriptManager.ts
📄 CodeRabbit inference engine (.github/instructions/ipywidgets.instructions.md)
Dynamically load widget modules with dependency management and implement retry on script loading failures
Files:
src/webviews/webview-side/ipywidgets/kernel/scriptManager.ts
🧬 Code graph analysis (2)
src/platform/errors/index.ts (1)
src/notebooks/debugger/kernelDebugAdapterBase.ts (1)
stackTrace(258-260)
src/test/standardTest.node.ts (1)
src/test/constants.ts (1)
IS_SMOKE_TEST(31-33)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Build & Package Extension
- GitHub Check: Build & Test
- GitHub Check: Lint & Format
🔇 Additional comments (21)
pythonFiles/vscode_datascience_helpers/kernel/addRunCellHook.py (1)
11-11: Verify URL is accessible in deepnote repository.The commit hash
312511f3cbd8b2bb5bc70fa9b771429e22d0c258in the URL cannot be verified programmatically. Before merge, confirm the link is accessible and points to the correct algorithm implementation, or revert to the originalmicrosoft/vscode-jupyterURL to preserve the reference.src/test/datascience/widgets/thirdpartyWidgets.vscode.common.test.ts (1)
105-105: Verify that deepnote/vscode-deepnote issue #16861 exists; consider preserving upstream references.Web search couldn't locate the deepnote repository or issue #16861, suggesting the redirected URLs may be invalid. Original links to microsoft/vscode-jupyter provide working historical context; changed URLs risk breaking if the target issue doesn't exist in deepnote's fork.
Verify the new URLs are accessible and reachable, or keep comments pointing to upstream microsoft/vscode-jupyter for reference (lines 105, 127, 189, 206).
src/notebooks/debugger/helper.ts (1)
179-180: Verify external debugpy reference wasn't unintentionally modified.Line 179 references
microsoft/debugpy(external upstream repo); line 180 references the internal VSCode Jupyter issue. Confirm that the debugpy reference should remain unchanged and only the VSCode Jupyter issue should redirect.src/platform/interpreter/installer/condaInstaller.node.ts (1)
109-110: Both URLs are correctly scoped to their respective projects—no fix needed.#7787 is a Deepnote issue (deepnote/vscode-deepnote). #17628 is a Microsoft Python extension issue (microsoft/vscode-python). Each URL correctly points to its project's repository. The apparent "inconsistency" reflects proper separation of concerns, not incomplete refactoring.
Likely an incorrect or invalid review comment.
src/test/standardTest.node.ts (1)
207-208: URL migration appears intentional; verify issue exists at new location.This repository recently migrated from
microsoft/vscode-jupytertodeepnote/vscode-deepnote(latest commit: "Rename all instances..."). The issue reference was updated as part of this migration. Cross-repo issue references are used elsewhere in the test suite (e.g., #5478, #14338). However, confirm thatdeepnote/vscode-deepnote#13200documents the Pylance crash or update to the correct tracking issue, as this workaround is CI-critical.src/test/datascience/notebook/intellisense/completionProvider.vscode.common.test.ts (2)
154-157: Verify changed GitHub issue URL exists in Deepnote repo.The issue reference was changed from
microsoft/vscode-jupyter/issues/8842todeepnote/vscode-deepnote/issues/8842. If Deepnote forked the repository, this issue may not exist in the Deepnote fork, resulting in a dead link and loss of upstream context.Does this issue exist in the Deepnote repository? Consider whether upstream Microsoft issues should be preserved for historical traceability.
190-194: Verify changed GitHub issue URL exists in Deepnote repo.The skipped test references
deepnote/vscode-deepnote/issues/14012. Confirm this issue exists in the Deepnote fork and that the original Microsoft issue should not be preserved for context.Does this issue exist in the Deepnote repository?
src/kernels/jupyter/jupyterUtils.ts (1)
102-102: Verify the vscode-deepnote-hub repository and PR reference.The comment references
deepnote/vscode-deepnote-hub/pull/65, but the PR context suggests blanket find-and-replace may have altered repository names incorrectly. Confirm that:
- This repository (
deepnote/vscode-deepnote-hub) exists and is distinct fromdeepnote/vscode-deepnote- PR #65 exists in that repository
src/test/datascience/interactiveDebugging.vscode.common.ts (1)
53-57: Verify GitHub issue URL is valid in Deepnote repository.The suite setup skips the test based on
deepnote/vscode-deepnote/issues/16860. Confirm this issue exists and is the correct reference point for tracking this blocker.Does issue #16860 exist in the Deepnote repository? If this was originally a Microsoft issue, consider whether preserving the upstream reference would be more appropriate.
.vscode/launch.json (1)
130-130: Verify repository path is correct for test setup.The comment references
deepnote/vscode-deepnote/blob/main/src/test/datascience/setupTestEnvs.cmd. Confirm that:
- This file exists in the Deepnote repository at this path
- The file structure mirrors the original Microsoft repository
build/ci/postInstall.js (1)
111-114: Verify GitHub issue exists in Deepnote repository.The docstring references
deepnote/vscode-deepnote/issues/10621as motivation for a Safari compatibility workaround. Confirm this issue exists in the Deepnote repository.Does issue #10621 exist in deepnote/vscode-deepnote? If this Safari issue originated upstream, consider preserving the Microsoft reference for historical context.
src/webviews/extension-side/ipywidgets/rendererComms.ts (1)
146-150: Verify GitHub issue URL for disabled feature.Support for widget state loading is disabled pending resolution of
deepnote/vscode-deepnote/issues/11117. Confirm this issue exists in the Deepnote repository and tracks the correct problem.Does issue #11117 exist in deepnote/vscode-deepnote?
src/test/datascience/.vscode/settings.json (1)
31-31: Verify GitHub issue URL for configuration setting.The debugger configuration references
deepnote/vscode-deepnote/issues/10258. Confirm this issue exists in the Deepnote repository.Does issue #10258 exist in deepnote/vscode-deepnote?
src/standalone/api/kernels/kernelProgressIndicator.ts (1)
110-114: Verify GitHub issue URL for performance tuning.The progress display grace period is tuned based on
deepnote/vscode-deepnote/issues/15613. Confirm this issue exists in the Deepnote repository.Does issue #15613 exist in deepnote/vscode-deepnote? This directly impacts a performance-sensitive code path.
src/platform/interpreter/installer/pinnedPackages.ts (1)
15-16: Remove the non-existent deepnote issue link.The jupyter_client#926 issue documents a connection establishment delay when jupyter_client updated to 8.0.x, which directly explains the version pinning. The deepnote link (12775) does not exist. Keep only the valid reference:
// https://github.com/jupyter/jupyter_client/issues/926Likely an incorrect or invalid review comment.
.vscode/notebooks/GithubLabels.ipynb (2)
77-77: No issues found. The repositorydeepnote/vscode-deepnoteexists and is accessible. The code change is valid.
117-117: Repository reference unresolvable—verify name or credentials.The repository
deepnote/vscode-deepnote-internalcould not be accessed. Either the repository name is incorrect or users lack the required credentials. The notebook will fail at runtime without proper access configuration.src/test/datascience/widgets/standardWidgets.vscode.common.test.ts (1)
318-318: Remove or correct the non-existent issue reference.Issue #16861 does not exist in the deepnote/vscode-deepnote repository. Remove the broken reference or replace it with the correct issue number if this comment relates to a different issue.
Likely an incorrect or invalid review comment.
src/platform/common/utils/localize.ts (1)
520-524: Code change verified—confirm external tracker readiness.The URL redirect is intentional and isolated to this one user-facing error message. All other microsoft references in the codebase remain in comments (legitimate external issue citations), not user-facing strings. This aligns with a deliberate rebrand to the vscode-deepnote fork.
Confirm that the Deepnote issue tracker is operationally ready to receive user reports, as this is outside the codebase scope.
src/platform/errors/index.ts (1)
55-59: Update issue reference or clarify the workaround origin.Issue #12550 does not exist in
deepnote/vscode-deepnote. Other issues in that repo are findable (e.g., #8295, #7558), so this appears to be a stale or incorrect reference. Either correct the issue number, replace with the actual issue link, or remove the reference and keep only the functional code comment explaining what the workaround addresses..vscode/notebooks/CITestResults.ipynb (1)
146-146: Review comment is incorrect—endpoint reflects completed repo migration.The
deepnote/vscode-deepnoteendpoint is not a breaking change; it's the correct result of the recent commit (f6ef09d) that renamed all instances frommicrosoft/vscode-jupyter. The URL points to the repository's own artifacts, and the Bearer token authentication is already in place with error handling. No verification needed.Likely an incorrect or invalid review comment.
src/test/datascience/widgets/standardWidgets.vscode.common.test.ts
Outdated
Show resolved
Hide resolved
src/test/datascience/widgets/standardWidgets.vscode.common.test.ts
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review continued from previous batch...
src/kernels/raw/finder/contributedKerneFinder.node.unit.test.ts
Outdated
Show resolved
Hide resolved
src/kernels/raw/finder/contributedLocalKernelSpecFinder.node.ts
Outdated
Show resolved
Hide resolved
src/kernels/raw/finder/interpreterKernelSpecFinderHelper.node.ts
Outdated
Show resolved
Hide resolved
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #120 +/- ##
=====================================
Coverage 72% 72%
=====================================
Files 539 539
Lines 41267 41267
Branches 5012 5012
=====================================
Hits 30001 30001
Misses 9592 9592
Partials 1674 1674
🚀 New features to boost your workflow:
|
|
@Artmann I don't have the domain knowledge to finish this, aside from changes in this PR, there's also every use of "vscode-jupyter" to review for updating throughout the repo. |
Addresses CodeRabbit review feedback: 1. Fixed api/package.json to have consistent repository references - Updated repository.url to deepnote/vscode-deepnote - Updated bugs.url to deepnote/vscode-deepnote - Now matches homepage URL 2. Removed .vscode/notebooks/CITestResults.ipynb - This notebook referenced a non-existent workflow (aggregate-test-results.yml) - The workflow does not exist in this repository 3. Included package-lock.json dependency updates - npm peer dependency changes 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
…yter Merged latest changes from main branch including: - New deepnote notebook command listener and tests - File system utilities and tests - Updated dependencies and package configurations - Various test improvements Resolved merge conflict in package-lock.json by accepting main's version and regenerating with npm install. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
…er-hub Fixes incorrect references that were changed during the blanket find-and-replace operation: - Changed deepnote/vscode-deepnote-hub back to microsoft/vscode-jupyter-hub in jupyterUtils.ts and jupyterSelfCertsError.ts - These references point to upstream Microsoft repositories, not Deepnote repos - Preserves important context for debugging and understanding the codebase Addresses CodeRabbit review feedback. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
|
@coderabbitai Can you make a new review? |
|
@Artmann: I'll review the PR now. ✅ Actions performedReview triggered.
|
Updates the inline comment in kernelDependencyService.node.ts (line 306) to point to the correct Microsoft vscode-jupyter wiki page instead of deepnote/vscode-deepnote. This ensures the comment matches the aka.ms shortlink (https://aka.ms/AAhi594) which resolves to the Microsoft wiki. The aka.ms link correctly opens the Microsoft documentation, so the comment should reference the same canonical source. Addresses CodeRabbit review feedback. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Updates test skip comment in api.jupyterProvider.vscode.test.ts to note that the upstream issue #14338 was closed in December 2023. The skip may no longer be necessary but requires testing in a conda environment to confirm before removal. The issue was related to a temporary Jupyter Notebook/Traitlets compatibility problem that has since been resolved upstream. Reference: microsoft/vscode-jupyter#14338 Addresses CodeRabbit review feedback. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
♻️ Duplicate comments (1)
CONTRIBUTING.md (1)
205-205: Broken documentation links remain unresolved.Past review confirmed these links return 404 (non-existent commits, disabled wiki). Update to valid targets or remove.
Also applies to: 213-213, 273-273, 286-290, 292-292, 295-295
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (2)
CONTRIBUTING.md(9 hunks)pythonFiles/aggregateTestResults.py(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Build & Package Extension
- GitHub Check: Build & Test
🔇 Additional comments (2)
pythonFiles/aggregateTestResults.py (1)
39-39: Artifact endpoint updated correctly.The repository migration to
deepnote/vscode-deepnoteis properly applied.CONTRIBUTING.md (1)
30-31: Directory reference now matches clone URL.The previous mismatch between cloned directory and cd command has been fixed.
|
@coderabbitai Can you make a new review? |
|
@Artmann: I'll review the PR again. ✅ Actions performedReview triggered.
|
Summary
Renamed all 112 instances of
microsoft/vscode-jupytertodeepnote/vscode-deepnoteacross 67 files in the repository. This includes GitHub URLs in documentation, code comments, configuration files, test files, and notebooks.Changes
CONTRIBUTING.md,.github/commands.json,.github/endgame_plan.md, andpackage.jsonThis was a blanket find-and-replace operation. All instances were changed without evaluating individual context.
Potential broken links: Many changed URLs are GitHub issue links (e.g.,
issues/12786,issues/8523). These now point todeepnote/vscode-deepnoteinstead ofmicrosoft/vscode-jupyter. If these issues don't exist in the Deepnote repository, they will be dead links.Lost upstream context: Code comments that referenced specific Microsoft issues for explaining workarounds or known bugs now point to Deepnote. Review whether this loss of upstream context is acceptable.
Configuration changes: The
.github/commands.jsonfile now directs users to file issues atdeepnote/vscode-deepnoteinstead of the Microsoft repository.Human Review Checklist
Session: Devin Session
Requested by: James Hobbs (@jamesbhobbs)
Summary by CodeRabbit
Chores
Documentation
Tests