Skip to content

Releases: microsoft/vscode-jupyter

Release 2022.05.100

07 Jun 18:23
88d22f9
Compare
Choose a tag to compare

2022.5.100 (7 June 2022)

Enhancements

  1. Document context keys for keybinding 'when' clauses.
    (#6573)
  2. Alert boxes of the form <div style="alert alert-danger"> are now styled as colored boxes, to match how they are in Jupyter.
    (thanks Eric Wieser)
    (#8399)
  3. Enabled the Interactive Window in web.
    (#9717)
  4. Enabled the Variables Viewer in web.
    (#10154)
    However, neither the DataFrame viewer nor the Plot viewer are enabled in this release.
    (Tracking: #9665)

Fixes

  1. Validate remote Jupyter Server connections when attempting to start a kernel.
    (#8043)
  2. Fix to provide autocomplete inside of quoted strings. This fix also enabled a setting to allow the use of Jedi for completions in a kernel, but should be used with caution. Jedi can hang the kernel preventing exeuction from happening.
    (#8893)
  3. Clear locally saved connection info when we run the server clear command.
    (#8956)
  4. Ensure the format progress message disappears once export has completed.
    (#9112)
  5. Notify failures in connection to remote Jupyter Server only when connecting to those kernels.
    (#9167)
  6. Show the export commands for non-python notebooks.
    (#9571)
  7. Makes progress indicators appear for web extension when connecting to kernels.
    (#9784)
  8. Support reopening a notebook in web browser and having it remember its original kernel.
    (#9826)
  9. Allow usage of the jupyter API in stable builds so Juptyer Power Toys can use it.
    (#9868)
  10. Support notebook debugging in the web extension.
    (#9973)
  11. Support widgets that can be downloaded from a CDN in the web extension. Non CDN widgets will come later.
    (#9984)
  12. Add editor context key support into the web extension.
    (#9990)
  13. Fix problem with PYTHONNOUSERSITE being set even when not desired. There's a setting now that will set this environment variable on kernel launch if it's needed: jupyter.excludeUserSitePackages.
    (#9995)
  14. Don't show the python extension install ui when auto starting kernels.
    (#10011)
  15. Support standard ipywidgets in the web extension.
    (#10051)
  16. When connecting to a remote Jupyter server with a password you will not have to input the server URL twice to have it apply anymore.
    (#10103)
  17. Fix clicking on links for error callstacks to open the same original python file instead of a new one.
    (#10149)
  18. Gracefully handle failures when attempting to convert ANSI codes to HTML in large error output within the errors renderer.
    (#10172)
  19. Fix 'go to source' to work again in the interactive window.
    (#10205)
  20. Fixes run by line not stopping on any lines.
    (#10207)
  21. Fix Jupyter: Variables hiding when closing a notebook or an interactive window.
    (#10209)
  22. Fix error renderer to return tracebacks.
    (#10239)
  23. Fix problem with interactive window links being off by one.
    (#10283)

Code Health

  1. Add test to make sure if the active interpreter is switched, the interactive window switches to that interpreter.
    (#5478)
  2. Add tests to verify notebook metadata is in a notebook.
    (#5601)
  3. Add telemetry test to verify we output a specific set for different operations.
    (#6883)
  4. Added a Performance test to test and ensure expected performance characteristics.
    (#7437)
  5. Don't skip code completions when the server is busy. Instead let it timeout if the server doesn't come back.
    (#9797)
  6. Add test for remote https jupyter servers.
    (#9844)
  7. Change document to notebook off of NotebookEditor class due to API change.
    (#10083)
  8. Dataframe tests were failing when Pylance was updated to return the 'Name' column for a dataframe.
    (#10259)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful:

Release 2022.04.100

03 May 22:22
bf2516d
Compare
Choose a tag to compare

Enhancements

  1. Ensure widgets using IPyWidgets 8.0 get rendered correctly.
    (#8552)
  2. Display a meaningful message in the cell that last ran when the kernel crashed.
    (#9375)
  3. Add support for connecting to remote jupyter kernels from the web extension. The server needs to start with '--NotebookApp.alloworigin=_baseurl' in order to connect from a webpage.
    (#9663)

Fixes

  1. Don't append another cell to a python file when the cell was empty.
    (#9452)
  2. Mark cell as not executing when dismissing the prompt to restart a dead kernel.
    (#9538)
  3. Fix problem with path names in overriding modules.
    (#9560)
  4. Replace Buffer constructors with safer methods to reduce security concerns. (Thanks caphosra)
    (#9589)
  5. Ensure raw cells do not stay in a pending execution state.
    (#9633)
  6. Only set preferred kernel on exact matches.
    (#9685)
  7. Use kernel name in preferred kernel sorting algorithm.
    (#9704)
  8. Make sure that notebook metadata is updating when changing between python envs (or kernelspecs) that use the same python version number.
    (#9727)
  9. Fix kernels not showing up at all if remote kernel fetch fails.
    (#9728)
  10. Ask for allowing unauthorized connections for https jupyter servers without certification.
    (#9758)
  11. Fixes problem with crashes in the python extension preventing the jupyter extension from running.
    (#9800)
  12. Fix remote kernels not being reselected on reopening a notebook.
    (#9809)
  13. Fix handling of kernel errors in web extension.
    (#9817)

Code Health

  1. Finish layout of src folder into:

    • intellisense
    • interactive-window
    • kernels
    • notebooks
    • platform
    • telemetry
    • test
    • webviews
      (#8976)
  2. Allow passing a Uri instead of a Notebook document to the kernel API.
    (#9495)

  3. Clean up react17 reference in package.json it's not needed anymore.
    (#9543)

  4. Remove events from shipping code. Not needed.
    (#9596)

  5. Switch to using URIs wherever possible instead of strings for file paths.
    (#9599)

  6. Remove usage of textDocumentNotebook proposed API that was unnecessary.
    (#9679)

  7. Skip logging the entire server settings.
    (#9791)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful:

Release 2022.3.100

29 Mar 17:35
fc0ea7b
Compare
Choose a tag to compare

2022.3.100 (29 March 2022)

Enhancements

Fixes

  1. Add support for named index in dataframe viewer for DataFrames and Series.
    (#5348)
  2. Fix interactive window such that if a new kernel is picked when opening or the kernel is canceled, the interactive window will run with the new kernel or show the canceled state (instead of just showing no status at all).
    (#8817)
  3. Fix 'ipykernel_launcher' not found when using a global python environment and '.env' file exists.
    (#9127)
  4. Support conda installations that require using conda.bat instead of conda.exe on windows.
    (#9133)
  5. Register kernelspecs in a private directory without cluttering user kernelspecs.
    (#9141)
  6. Hide Notebook Editor icons contributed by the Jupyter extension when selecting a Kernel contributed by another extension.
    (#9155)
  7. Only append SVG to the figure format if required. If not required, don't mess with the default.
    (#9191)
  8. Deprecated the "Jupyter: Create new Jupyter notebook" Command since it has moved to the built-in ipynb extension in VS Code.
    (#9250)
  9. Fix auto scrolling in the interactive window.
    (#9259)
  10. Fix problem with double install ipykernel message when cancelling.
    (#9267)
  11. Ensure the handle to the kernel connection file is disposed.
    (#9298)
  12. Fix notebook intellisense to work again after recent regression.
    (#9385)
  13. Fix all cells to not show a timer when queueing up multiple.
    (#9405)
  14. Fixes intellisense provided by the kernel missing.
    (#9424)
  15. Fixes IPyWidgets not working after refactor of source tree.
    (#9475)
  16. Register platform commands.
    (#9476)

Code Health

  1. Eliminate unused parameter for concatMultilineString.
    (#5144)
  2. Move installation of python packages into the Jupyter extension (stop using an API from the python extension).
    (#8457)
  3. Re-use the same codeWatchers per document when providing code lenses.
    (#8919)
  4. Refactor kernel related code into a 'kernels' subfolder.
    (#8970)
  5. Refactor 'notebook' related code into a 'notebooks' folder.
    (#8971)
  6. Move interactive window related code to its own root folder.
    (#8972)
  7. Refactor client code into a 'platform' directory and organize serviceRegistry files in a hierarchical structure.
    (#8981)
  8. Update to Typescript 4.6.
    (#9173)
  9. Match the node version used by VS code to build.
    (#9325)
  10. Remove src\ipywidgets from repository and move to a separate npm module.
    (#9337)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful:

Release 2022.1.130

16 Feb 20:38
Compare
Choose a tag to compare

Fixes

  1. Avoid waiting for completions during kernel startup (as completions request could fail without a response).
    (#9014)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful:

Release 2022.1.120

11 Feb 22:25
37de0bb
Compare
Choose a tag to compare

Fixes

  1. Fix daemon startup to work for non direct kernel cases
    (#8995)
  2. Fix our waiting for RequestKernelInfo (might have been hurting raw kernel start some).
    (#8989)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful:

Release 2022.1.100

10 Feb 02:12
e9c1b30
Compare
Choose a tag to compare

Fixes

  1. Fix kernel dying when interrupting on Windows.
    (#8945)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful:

Release 2022.1.1001775990

01 Feb 20:45
Compare
Choose a tag to compare

Enhancements

  1. Reloading VS Code is no longer necessary when switching between local and remote Jupyter servers.
    (#1367)
  2. Expose Jupyter Kernel API to 3rd party extensions.
    This API is still in preview and only available in VS Code Insiders, further information can be found here https://github.com/microsoft/vscode-jupyter/wiki/Accessing-Jupyter-Kernels-from-3rd-party-extensions.
    (#5532)
  3. Recommend using %matplotlib widget when any other %matplotlib choice is set.
    (#8365)
  4. Be able to retrieve XSRF token with session cookie from notebook server on Kubeflow. (@shawnzhu)
    (#8441)
  5. Add support for pre-release version of Extensions for VS Code Insiders.
    (#8463)
  6. Allow to retrieve the jupyter filename programmatically (vsc_ipynb_file) [fix support for ClearML]
    (#8475)
  7. Display both local and remote kernels together in the kernel picker.
    (#8489)

Fixes

  1. Install IPyKernel without a terminal when dealing with Virtual Environments on windows.
    (#1253)
  2. Use the appropriate directory for a notebook if remoting to 'localhost'
    (#1551)
  3. Fix VS code leaving kernel processes running during shutdown.
    (#1626)
  4. Deprecate "Change Directory on Import Export Setting"
    (#4419)
  5. Fix plot viewer so that plots are full size when opening.
    (#7523)
  6. Support viewing dataframes (in the dataframe viewer) that contain columns used as an index.
    (#7603)
  7. Support automatic reconnection to a remote kernel when reopening a notebook.
    (#7610)
  8. Fix completions for paths for notebooks so that you can keep tabbing through all entries. This used to stop after the first level.
    (#7816)
  9. Prevent variables from getting stuck in the Loading... state after restart.
    (#7970)
  10. Allow queueing of multiple cells in the interactive window.
    (#8022)
  11. Correctly handle leading spaces in cells when debugging with the interactive window.
    (#8263)
  12. Support intellisense after connecting to a remote server (defaults to active python interpreter)
    (#8285)
  13. Make run file in interactive window respect cell boundaries.
    (#8312)
  14. Get %matplotlib qt5 working again.
    QT5's event loop is slightly different and can't handle concurrent requests so make sure to wait for a request before issuing another.
    (#8322)
  15. Fix problems when 'print' has been overridden by user code.
    (#8356)
  16. Ensure interactive IPyWidgets work even after restarting Remote Kernels.
    (#8378)
  17. Continue attempting to create a kernel for the IW if it failed to start previously
    (#8383)
  18. Fix intellisense to work when no folder is opened.
    (#8409)
  19. Fix intellisense after deleting a line from a cell that contains the word 'await' or a magic.
    (#8419)
  20. Set suggested kernel for interactive window correctly.
    (#8424)
  21. Fix semantic colorization in the first cell of a notebook.
    (#8437)
  22. Context key not updated when interactive window is created from command palette.
    (#8455)
  23. Autocompletions from the jupyter kernel can sometimes not appear.
    (#8536)
  24. Fix problem with markdown cells in the interactive window not being split if they have code in them too.
    (#8543)
  25. Fix conda environments not working when ZMQ support is not enabled.
    Ensure sys.path is setup such that packages installed in selected environments is given preference (imported) over global site-packages.
    I.e. this fix will ensure packages are first imported from the selected environment, and then from the global site-packages.
    (#8553)
  26. Apply correct resource settings to notebookFileRoot in multi-root workspaces.
    (#8561)
  27. Fix problem where error stack traces would show random code that hadn't actually been run.
    (#8568)
  28. Fix caching of conda environment data so that subsequent runs of conda kernels are faster.
    (#8580)
  29. Allows execution in more than one interactive window at the same time.
    (#8615)
  30. Don't ask the user to enable CDN widget sources if they are already enabled and add more information to the warning message when we fail to download the widget.
    (#8626)
  31. Fix traceback parsing when using IPython 8.0 or greater.
    (#8675)
  32. Expand ~ in notebookFileRoot setting.
    (#8679)
  33. Fix launching kernel on Mac M1 (or zmq not supported) using default environment.
    (#8681)
  34. Fix the interactive debugging tests to shut down debugging correctly at the end.
    (#8684)
  35. Fix error tracebacks to not have background colors. Background colors from Jupyter don't match VS code themes, so they were just removed.
    (#8697)
  36. Fix prompting to switch to prerelease even when already on prerelease.
    (#8724)
  37. Fix problem with markdown cells causing off by one errors in notebooks.
    (#8769)
  38. Fix for intellisense breaking after typing a magic into a cell other than the first.
    (#8830)

Code Health

  1. Refactor any code using a string for a file path to support a URI instead. This should make remote file systems work better.
    (#1420)
  2. Make sure submissions include a news file.
    (#3200)
  3. Consolidate requirements.txt files into a smaller set.
    (#3992)
  4. Change error message prompting user to install IPykernel into an information message.
    (#8415)
  5. Display modal dialog when attempting to run Python notebooks without the Python extension installed.
    (#8416)
  6. Display error message when failing to connect to the remote Jupyter server.
    (#8474)
  7. Remove jupyter.runMagicCommands (which has been deprecated for over a year) in favor of runStartupCommands.
    (#8485)
  8. Activate conda environments using conda run.
    (#8544)
  9. Improvements to progress message displayed when starting kernels. The messages now attempt to provide more information about the progress and hopefully make it easier to understand what is going on (or what is slow when starting a kernel).
    (#8583)
  10. Update README.md to remove insiders specific references.
    (#8548)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful:

VS Code Stable releases along with the minimum recommended version of the Jupyter Extension.

| Release | VS Code Stable | Recommended Jupyter Build |
| --------- | ---...

Read more

2021.8.12 (17th August 2021)

17 Aug 23:55
adf8523
Compare
Choose a tag to compare

2021.8.12 (17 August 2021)

Fixes

  1. Fix interrupt kernel in native interactive window when executing a #%% cell.
    (#6983)
  2. Populate the interactive window variable explorer when focus is in the #%% Python file.
    (#6993)
  3. Reinitialize kernels after a restart, including resetting current working directory and rerunning startup commands.
    (#7016)
  4. Restore support for jupyter.collapseCellInputCodeByDefault in native interactive window.
    (#7031)
  5. Fix restart kernel in native interactive window when executing a #%% cell.
    (#7081)
  6. Ensure variable explorer handles kernel restarts.
    (#7126)

2021.8.11 July Release (release months line up with VS Code)

03 Aug 20:23
2c47fba
Compare
Choose a tag to compare

2021.8.11 (3 August 2021)

Enhancements

  1. Updated the preview to run by line in native notebooks. Set the jupyter.experimental.debugging setting to true, install ipykernel 6 on your selected kernel and a Run by Line button will appear on cell toolbars. Pressing it will start a lightweight debugging session and let you run the cell line by line.
    (#5607)

Fixes

  1. Restore plotviewer in Native Notebooks.
    (#6315)
  2. Fix debugging in Interactive Window when using IPyKernel 6.
    (#6534)
  3. Add a placeholder Python 3 kernel if user doesn't have any Python interpreters, with ability to notify user to install Python extenssion or Python runtime.
    (#5864)
  4. Fixes to completion items received from Jupyter.
    (#5956)
  5. Run all and restarting does not actually interrupt the rest of the running cells.
    (#5996)
  6. Remove popup tip that indicates to users the kernel picker is in the bottom right.
    (#6016)
  7. Ensure Pyspark kernels are listed.
    (#6316)
  8. Fix problem where the active interpreter is not being used for the interactive window when not running with raw kernel.
    (#6409)
  9. Ctrl+Enter in native notebooks should put cell into command mode immediately, then run the cell.
    (#6582)
  10. List non-traditional (not using ipykernel) global Python kernelspecs.
    (#6622)
  11. Clone the Notebook metadata before udpating it.
    (#6624)
  12. Format the readme to render correctly on the VS Code extensions side bar. Thanks jyooru!
    (#6648)
  13. Ensure we get Jupyter Server info correctly in Python 3.6.
    (#6738)
  14. List kernels in situations where extension is installed after opening a notebook.
    (#6824)

2021.8.1 (19 July 2021)

19 Jul 22:56
Compare
Choose a tag to compare

Fixes

  1. Fix for kernel not starting with correct path (causes DLL load and import modules failures).
    (#5833)

Thanks

Thanks to the following projects which we fully rely on to provide some of
our features:

Also thanks to the various projects we provide integrations with which help
make this extension useful: