2020.7.0 (16 July 2020)
Enhancements
- Support connecting to Jupyter hub servers. Use either the base url of the server (i.e. 'https://111.11.11.11:8000') or your user folder (i.e. 'https://111.11.11.11:8000/user/theuser).
Works with password authentication.
(#9679) - Added "argsExpansion" to debugpy launch.json schema.
(#11678) - The extension will now automatically load if a
pyproject.toml
file is present in the workspace root directory.
(thanks Brandon White)
(#12056) - Add ability to check and update whether a notebook is trusted.
(#12146) - Support formatting of Notebook Cells when using the VS Code Insiders API for Notebooks.
(#12195) - Added exporting notebooks to HTML.
(#12375) - Change stock launch.json "attach" config to use "connect".
(#12446) - Update to the latest version of
jedi
(0.17.1
). This brings completions for Django (viadjango-stubs
) as well as support for Python 3.9 and various bugfixes (mostly around generic type annotations). (thanks Peter Law)
(#12486) - Prompt users that we have deleted pythonPath from their workspace settings when in
Deprecate PythonPath
experiment.
(#12533) - Changed public API for execution to return an object and provide a callback which is called when interpreter setting changes.
(#12596) - Allow users to opt out of us checking whether their notebooks can be trusted. This setting is turned off by default and must be manually enabled.
(#12611) - Include the JUPYTER_PATH environment variable when searching the disk for kernels.
(#12694) - Added exporting to python, HTML and PDF from the interactive window.
(#12732) - Show a prompt asking user to upgrade Code runner to new version to keep using it when in Deprecate PythonPath experiment.
(#12764) - Opening notebooks in the preview Notebook editor for Visual Studio Code Insiders.
(#10496)
Fixes
- Ensure we only have a single isort process running on a single file.
(#10579) - Provided a method for external partners to participate in jupyter server URI picking/authentication.
(#10993) - Check for hideFromUser before activating current terminal.
(#11122) - In Markdown cells, turn HTML links to markdown links so that nteract renders them.
(#11254) - Prevent incorrect ipywidget display (double plots) due to synchronization issues.
(#11281) - Removed the Kernel Selection toolbar from the Interactive Window when using a local Jupyter Server.
To show it again, set the setting 'Python > Data Science > Show Kernel Selection On Interactive Window'.
(#11347) - Get Jupyter connections to work with a Windows store installed Python/Jupyter combination.
(#11412) - Disable hover intellisense in the interactive window unless the code is expanded.
(#11459) - Make layout of markdown editors much faster to open.
(#11584) - Watermark in the interactive window can appear on top of entered text.
(#11691) - Jupyter can fail to run a kernel if the user's environment contains non string values.
(#11749) - On Mac meta+Z commands are performing both cell and editor undos.
(#11758) - Paste can sometimes double paste into a notebook or interactive window editor.
(#11796) - Fix jupyter connections going down when azure-storage or other extensions with node-fetch are installed.
(#11830) - Variables should not flash when running by line.
(#12046) - Discard changes on Notebooks when the user selects 'Don't Save' on the save changes dialog.
(#12180) - Disable
Extract variable & method
commands inNotebook Cells
.
(#12206) - Disable linting in Notebook Cells.
(#12208) - Register services before extension activates.
(#12227) - Infinite loop of asking to reload the extension when enabling custom editor.
(#12231) - Fix raw kernel autostart and remove jupyter execution from interactive base.
(#12330) - If we fail to start a raw kernel daemon then fall back to using process execution.
(#12355) - Fix the export button from the interactive window to export again.
(#12460) - Process Jupyter messages synchronously when possible.
(#12588) - Open variable explorer when opening variable explorer during debugging.
(#12773) - Use the given interpreter for launching the non-daemon python
(#12821) - Correct the color of the 'Collapse All' button in the Interactive Window
(#12838)
Code Health
- Move all logging to the Python output channel.
(#9837) - Add a functional test that opens both the interactive window and a notebook at the same time.
(#11445) - Added setting
python.logging.level
which carries the logging level value the extension will log at.
(#11699) - Monkeypatch
console.*
calls to the logger only in CI.
(#11896) - Replace python.dataScience.ptvsdDistPath with python.dataScience.debugpyDistPath.
(#11993) - Rename ptvsd to debugpy in Telemetry.
(#11996) - Update JSDoc annotations for many of the APIs (thanks Anthony Shaw)
(#12101) - Refactor
LinterId
to an enum instead of a string union.
(thanks to Anthony Shaw)
(#12116) - Remove webserver used to host contents in WebViews.
(#12140) - Inline interface due to issues with custom types when using
ts-node
.
(#12238) - Fix linux nightly tests so they run and report results. Also seems to get rid of stream destroyed messages for raw kernel.
(#12539) - Log ExP experiments the user belongs to in the output panel.
(#12656) - Add more telemetry for "Select Interpreter" command.
(#12722) - Add tests for trusted notebooks.
(#12554) - Update categories in
package.json
.
(#12844)
Thanks
Thanks to the following projects which we fully rely on to provide some of
our features:
- debugpy
- isort
- jedi
and parso - Microsoft Python Language Server
- exuberant ctags (user-installed)
- rope (user-installed)
Also thanks to the various projects we provide integrations with which help
make this extension useful:
- Debugging support:
Django,
Flask,
gevent,
Jinja,
Pyramid,
PySpark,
Scrapy,
Watson - Formatting:
autopep8,
black,
yapf - Interpreter support:
conda,
direnv,
pipenv,
pyenv,
venv,
virtualenv - Linting:
bandit,
flake8,
mypy,
prospector,
pylint,
pydocstyle,
pylama - Testing:
nose,
pytest,
unittest
And finally thanks to the Python development team and
community for creating a fantastic programming language and community to be a
part of!