Python v2020.2.0-rc Release Notes

Release Date: 2020-02-03 // over 4 years ago
  • โœจ Enhancements

    ๐Ÿ‘ 1. Support opting in and out of an experiment group. (#6816)

    1. Add python.languageServer setting with values of Jedi (acts same as jediEnabled), Microsoft for the Microsoft Python Language Server and None, which suppresses editor support in the extension so neither Jedi nor Microsoft Python Language Server start. None is useful for those users who prefer using other extensions for the editor functionality. (#7010)
    2. Automatically start the Jupyter server when opening a notebook or the interative window, or when either of those has happened in the last 7 days. This behavior can be disabled with the 'python.dataScience.disableJupyterAutoStart' setting. (#7232) ๐Ÿ‘ 1. Add support for rendering local images within markdown cells in the Notebook Editor. (#7704)
    3. Add progress indicator for starting of jupyter with details of each stage. (#7868)
    4. Use a dedicated Python Interpreter for starting Jupyter Notebook Server. This can be changed using the command Select Interpreter to start Jupyter server from the Command Palette. (#8623)
    5. Implement pid quick pick for attach cases with the new debug adapter. (#8701) ๐Ÿ”ง 1. Provide attach to pid configuration via picker. (#8702) ๐Ÿ‘ 1. Support for custom python debug adapter. (#8720) ๐Ÿšš 1. Remove insiders re-enroll prompt. (#8775)
    6. Attach to pid picker - bodyblock users who are not in the new debugger experiment. (#8935)
    7. Pass -y to conda installer to disable the prompt to install, as user has already ok'ed this action. (#9194) โšก๏ธ 1. Updated ptvsd debugger to version v5.0.0a12. (#9310)
    8. Use common code to manipulate notebook cells. (#9386) ๐Ÿ‘ 1. Add support for Find in the Notebook Editor. (#9470) โšก๏ธ 1. Update Chinese (Traditional) translation. (thanks pan93412) (#9548)
    9. Look for Conda interpreters in '~/opt/conda/' directory as well. (#9701)

    ๐Ÿ›  Fixes

    1. Fix variable explorer in Interactive and Notebook editors from interfering with execution. (#5980) โœ… 1. Fix a crash when using pytest to discover doctests with unknown line number. (thanks Olivier Grisel) (#7487)
    2. Don't show any install product prompts if interpreter is not selected. (#7750) โš  1. Allow PYTHONWARNINGS to be set and not have it interfere with the launching of Jupyter notebooks. (#8496)
    3. Pressing Esc in the config quickpick now cancels debugging. (#8626) ๐Ÿ“„ 1. Support resolveCompletionItem so that we can get Jedi docstrings in Notebook Editor and Interactive Window. (#8706)
    4. Disable interrupt, export, and restart buttons when already performing an interrupt, export, or restart for Notebooks and the Interactive window. (#8716) ๐Ÿ’… 1. Icons now cannot be overwritten by styles in cell outputs. (#8946) ๐Ÿ— 1. Command palette (and other keyboard shortcuts) don't work from the Interactive/Notebook editor in the insider's build (or when setting 'useWebViewServer'). (#8976)
    5. Fix issue that prevented language server diagnostics from being published. (#9096) ๐Ÿ›  1. Fixed the native editor toolbar so it won't overlap. (#9140) ๐ŸŽ 1. Selectively render output and monaco editor to improve performance. (#9204) โœ… 1. Set test debug console default to be internalConsole. (#9259)
    6. Fix the Data Science "Enable Plot Viewer" setting to pass figure_formats correctly when turned off. (#9420)
    7. Shift+Enter can no longer send multiple lines to the interactive window. (#9437)
    8. Shift+Enter can no longer run code in the terminal. (#9439)
    9. Scrape output to get the details of the registered kernel. (#9444)
    10. Update ptvsd debugger to version v5.0.0a11. Fixes signing for inject_dll_x86.exe. (#9474)
    11. Disable use of conda run. (#9490) ๐Ÿ“ฑ 1. Improvements to responsiveness of code completions in Notebook cells and Interactive Window. (#9494) โช 1. Revert changes related to calling mypy with relative paths. (#9496) ๐Ÿšš 1. Remove default pathMappings for attach to local process by process Id. (#9533)
    12. Ensure event handler is bound to the right context. (#9539)
    13. Use the correct interpreter when creating the Python execution service used as a fallback by the Daemon. (#9566)
    14. Ensure environment variables are always strings in launch.json. (#9568)
    15. Fix error in developer console about serializing gather rules. (#9571) ๐Ÿ— 1. Do not open the output panel when building workspace symbols. (#9603)
    16. Use an activated environment python process to check if modules are installed. (#9643)
    17. When hidden 'useWebViewServer' is true, clicking on links in Notebook output don't work. (#9645) ๐Ÿ— 1. Always use latest version of the debugger when building extension. (#9652)
    18. Fix background for interactive window copy icon. (#9658)
    19. Fix text in markdown cells being lost when clicking away. (#9719)
    20. Fix debugging of Interactive Window cells. Don't start up a second notebook at Interactive Window startup. (#9780)
    21. When comitting intellisense in Notebook Editor with Jedi place code in correct position. (#9857)

    Code Health

    1. Use prettier as the TypeScript formatter and Black as the Python formatter within the extension. (#2012) ๐Ÿ— 1. Use vanillajs for build scripts (instead of typescript, avoids the step of having to transpile). (#5674) โšก๏ธ 1. Remove npx from webpack build as it breaks on windows on npm 6.11+ and doesn't seem to be getting fixes. Update npm to current version. (#7197)
    2. Clean up npm dependencies. (#8302) โšก๏ธ 1. Update version of node to 12.4.0. (#8453)
    3. Use a hidden terminal to retrieve environment variables of an activated Python Interpreter. (#8928) โœ… 1. Fix broken LiveShare connect via codewatcher test. (#9005) ๐Ÿ”จ 1. Refactor webpack build scripts to build DS bundles using separate config files. (#9055) โœ… 1. Change how we handle keyboard input for our functional editor tests. (#9084) โœ… 1. Fix working directory path verification for notebook tests. (#9191) โšก๏ธ 1. Update Jedi to 0.15.2 and parso to 0.5.2. (#9243) ๐ŸŽ 1. Added a test performance measuring pipeline. (#9421)
    4. Audit existing telemetry events for datascience or ds_internal. (#9626) ๐Ÿ‘ท 1. CI failure on Data science memoize-one dependency being removed. (#9646)
    5. Make sure to check dependencies during PRs. (#9714)

    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!