Python v2020.1.0 Release Notes

Release Date: 2020-01-06 // over 4 years ago
  • โœจ Enhancements

    ๐ŸŒ 1. Added experiment for reloading feature of debugging web apps. (#3473)

    1. Activate conda environment using path when name is not available. (#3834) โš™ 1. Add QuickPick dropdown option Run All/Debug All when clicking on a Code Lens for a parametrized test to be able to run/debug all belonging test variants at once. (thanks to Philipp Loose) (#5608)
    2. Use Octicons in Code Lenses. (thanks Aidan Dang) (#7192) ๐ŸŽ 1. Improve startup performance of Jupyter by using a Python daemon. (#7242)
    3. Automatically indent following async for and async with statements. (#7344)
    4. Added extension option activateEnvInCurrentTerminal to detect if environment should be activated in the current open terminal. (#7665)
    5. Add telemetry for usage of activateEnvInCurrentTerminal setting. (#8004) ๐Ÿ‘ 1. Support multiprocess debugging using the new python debug adapter. (#8105) ๐Ÿ‘ 1. Support a per interpreter language server so that notebooks that aren't using the currently selected python can still have intellisense. (#8206)
    6. Add "processId" key in launch.json to enable attach-to-local-pid scenarios when using the new debug adapter. (#8384)
    7. Populate survey links with variables (#8484) ๐Ÿ‘ 1. Support the ability to take input from users inside of a notebook or the Interactive Window. (#8601)
    8. Create an MRU list for Jupyter notebook servers. (#8613)
    9. Add icons to the quick pick list for specifying the Jupyter server URI. (#8753)
    10. Added kernel status and selection toolbar to the notebook editor. (#8866) โšก๏ธ 1. Updated ptvsd debugger to version v5.0.0a9. (#8930)
    11. Add ability to select an existing remote kernel. (#4644)
    12. Notify user when starting jupyter times out and added Jupyter output panel to display output from Jupyter. (#9068)

    ๐Ÿ›  Fixes

    1. Add implementations for python.workspaceSymbols.rebuildOnStart and python.workspaceSymbols.rebuildOnFileSave. (#793)
    2. Use relative paths when invoking mypy. (thanks to yxliang01) (#5326)
    3. Make the dataviewer open a window much faster. Total load time is the same, but initial response is much faster. (#6729)
    4. Make sure the data viewer for notebooks comes up as soon as the user clicks. (#6840) ๐Ÿ‘ 1. Support saving plotly graphs in the Interactive Window or inside of a notebook. (#7221)
    5. Change 0th line in output to 1th in flake8. (thanks to Ma007ks) (#7349) ๐Ÿ‘ 1. Support local images in markdown and output for notebooks. (#7704) 0๏ธโƒฃ 1. Default notebookFileRoot to match the file that a notebook was opened with (or the first file run for the interactive window). (#7780)
    6. Execution count and output are cleared from the .ipynb file when the user clicks the 'Clear All Output'. (#7853)
    7. Fix clear_output(True) to work in notebook cells. (#7970)
    8. Prevented '\$0' from appearing inside brackets when using intellisense autocomplete. (#8101)
    9. Intellisense can sometimes not appear in notebooks or the interactive window, especially when something is a large list. (#8140) ๐Ÿ“‡ 1. Correctly update interpreter and kernel info in the metadata. (#8223)
    10. Dataframe viewer should use the same interpreter as the active notebook is using. (#8227)
    11. 'breakpoint' line shows up in the interactive window when debugging a cell. (#8260)
    12. Run above should include all code, and not just cells above. (#8403) โœ… 1. Fix issue with test discovery when using unittest with --pattern flag. (#8465)
    13. Set focus to the corresponding Native Notebook Editor when opening an ipynb file again. (#8506)
    14. Fix using all environment variables when running in integrated terminal. (#8584)
    15. Fix display of SVG images from previously executed ipynb files. (#8600) ๐Ÿ 1. Fixes that the test selection drop-down did not open when a code lens for a parameterized test was clicked on windows. (#8627)
    16. Changes to how node-fetch is bundled in the extension. (#8665) ๐Ÿ‘ 1. Re-enable support for source-maps. (#8686) ๐Ÿ–จ 1. Fix order for print/display outputs in a notebook cell. (#8739) ๐Ÿ 1. Fix scrolling inside of intellisense hover windows for notebooks. (#8843)
    17. Fix scrolling in large cells. (#8895) 0๏ธโƒฃ 1. Set python.workspaceSymbols.enabled to false by default. (#9046)
    18. Add ability to pick a remote kernel. (#3763) 0๏ธโƒฃ 1. Do not set "redirectOutput": true by default when not specified in launch.json, unless "console" is "internalConsole". (#8865)
    19. Fix slowdown in Notebook editor caused by using global storage for too much data. (#8961)
    20. 'y' and 'm' keys toggle cell type but also add a 'y' or 'm' to the cell. (#9078) ๐Ÿšš 1. Remove unnecessary matplotlib import from first cell. (#9099) 0๏ธโƒฃ 1. Two 'default' options in the select a Jupyter server URI picker. (#9101)
    21. Plot viewer never opens. (#9114)
    22. Fix color contrast for kernel selection control. (#9138) ๐Ÿ’ป 1. Disconnect between displayed server and connected server in Kernel selection UI. (#9151)
    23. Eliminate extra storage space from global storage on first open of a notebook that had already written to storage. (#9159) โœ… 1. Change kernel selection MRU to just save connection time and don't try to connect when popping the list. Plus add unit tests for it. (#9171)

    Code Health

    โœ… 1. Re-enable our mac 3.7 debugger tests as a blocking ptvsd issue has been resolved. (#6646)

    1. Use "conda run" (instead of using the "python.pythonPath" setting directly) when executing Python and an Anaconda environment is selected. (#7696)
    2. Change state management for react code to use redux. (#7949)
    3. Pass resource when accessing VS Code settings. (#8001)
    4. Adjust some notebook and interactive window telemetry. (#8254)
    5. Added a new telemetry event called DATASCIENCE.NATIVE.OPEN_NOTEBOOK_ALL that fires every time the user opens a jupyter notebook by any means. (#8262)
    6. Create python daemon for execution of python code. (#8451) โšก๏ธ 1. Update npm package https-proxy-agent by updating the packages that pull it in. (#8537) โœ… 1. Improve startup times of unit tests by optionally ignoring some bootstrapping required for monaco and react tests. (#8564) ๐Ÿ‘ท 1. Skip checking dependencies on CI in PRs. (#8840) ๐Ÿง 1. Fix installation of sqlite on CI linux machines. (#8883) โœ… 1. Fix the "convert to python" functional test failure. (#8899) ๐Ÿšš 1. Remove unused auto-save-enabled telemetry. (#8906)
    7. Added ability to wait for completion of the installation of modules. (#8952) โœ… 1. Fix failing Data Viewer functional tests. (#8992)

    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:

    And finally thanks to the Python development team and community for creating a fantastic programming language and community to be a part of!