Python v2019.4.0 Release Notes

Release Date: 2019-04-23 // about 5 years ago
  • โœจ Enhancements

    1. Download the language server using HTTP if http.proxyStrictSSL is set to true. (#2849) ๐Ÿ”ง 1. Launch the Python debug configuration UI when manually adding entries into the launch.json file. (#3321)
    2. Add tracking of 'current' cell in the editor. Also add cell boundaries for non active cell. (#3542) 0๏ธโƒฃ 1. Change default behavior of debugger to display return values. (#3754)
    3. Replace setting debugStdLib with justMyCode (#4032) โœ… 1. Change "Unit Test" phrasing to "Test" or "Testing". (#4384) โœ… 1. Auto expand tree view in Test Explorer to display failed tests. (#4386) ๐ŸŒ 1. Add a data grid control and web view panel. (#4675) ๐Ÿ‘ 1. Add support for viewing dataframes, lists, dicts, nparrays. (#4677) โœ… 1. Auto-expand the first level of the test explorer tree view. (#4767) โœ… 1. Use Python code for discovery of tests when using pytest. (#4795) ๐Ÿ”จ 1. Intergrate the variable explorer into the header better and refactor HTML and CSS. (#4800)
    4. Integrate the variable viewer with the IJupyterVariable interface. (#4802) โœ… 1. Include number of skipped tests in Test Data item tooltip. (#4849)
    5. Add prompt to select virtual environment for the worskpace. (#4908) ๐Ÿ‘• 1. Prompt to turn on Pylint if a pylintrc or .pylintrc file is found. (#4941)
    6. Variable explorer handles new cell submissions. (#4948) ๐Ÿ’… 1. Pass one at getting our data grid styled correctly to match vscode styles and the spec. (#4998)
    7. Ensure Language Server can start without ICU. (#5043) ๐Ÿณ 1. Support running under docker. (#5047)
    8. Add exclude list to variable viewer. (#5104)
    9. Display a tip to the user informing them of the ability to change the interpreter from the statusbar. (#5180)
    10. Hook up the variable explorer to the data frame explorer. (#5187) ๐Ÿšš 1. Remove the debug config snippets (rely on handler instead). (#5189)
    11. Add setting to just enable/disable the data science codelens. (#5211) โœ… 1. Change settings from python.unitTest.* to python.testing.*. (#5219) 0๏ธโƒฃ 1. Add telemetry for variable explorer and turn on by default. (#5337)
    12. Show a message when no variables are defined (#5228) ๐Ÿ’ป 1. Variable explorer UI fixes via PM / designer (#5274)
    13. Allow column sorting in variable explorer (#5281)
    14. Swap getsizeof size value for something more sensible in the variable explorer (#5368)

    ๐Ÿ›  Fixes

    1. Ignore the extension's Python files when debugging. (#3201)
    2. Dispose processes started within the extension during. (#3331)
    3. Fix problem with errors not showing up for import when no jupyter installed. (#3958)
    4. Fix tabs in comments to come out in cells. (#4029) ๐Ÿ”ง 1. Use configuration API and provide Resource when retrieving settings. (#4486)
    5. When debugging, the extension correctly uses custom .env files. (#4537)
    6. Accomadate trailing commands in the JSON contents of launch.json file. (#4543)
    7. Kill liveshare sessions if a guest connects without the python extension installed. (#4947)
    8. Shutting down a session should not cause the host to stop working. (#4949)
    9. Fix cell spacing issues. (#4979) โœ… 1. Fix hangs in functional tests. (#4992)
    10. Fix triple quoted comments in cells to not affect anything. (#5012)
    11. Restarting the kernel will eventually force Jupyter server to shutdown if it doesn't come back. (#5025)
    12. Adjust styling for data viewer. (#5058) โœ… 1. Fix MimeTypes test after we stopped stripping comments. (#5086) ๐Ÿ‘• 1. No prompt displayed to install pylint. (#5087)
    13. Fix scrolling in the interactive window. (#5131) 0๏ธโƒฃ 1. Default colors when theme.json cannot be found. Fix Python interactive window to update when theme changes. (#5136)
    14. Replace 'Run Above' and 'Run Below' in the palette with 'Run Cells Above Cursor' and 'Run Current Cell and Below'. (#5143)
    15. Variables not cleared after a kernel restart. (#5244)
    16. Fix variable explorer to work in Live Share. (#5277) โšก๏ธ 1. Update matplotlib based on theme changes. (#5294)
    17. Restrict files from being processed by Language Server only when in a mult-root workspace. (#5333)
    18. Fix dataviewer header column alignment. (#5351)
    19. Make background cell color useable in all themes. (#5236)
    20. Filtered rows shows 'fetching' instead of No rows. (#5278)
    21. Multi-dimensional arrays don't open in the data viewer. (#5395)
    22. Fix sorting of lists with numbers and missing entries. (#5414)
    23. Fix error with bad len() values in variable explorer (#5420) ๐Ÿš€ 1. Update ptvsd to 4.2.8.
      • Path mapping bug fixes.
      • Fix for hang when using debug console.
      • Fix for set next statement.
      • Fix for multi-threading.

    Code Health

    1. Enable typescript's strict mode. (#611) โšก๏ธ 1. Update to use Node version 10.5.0. (#1138) โšก๏ธ 1. Update launch.json to use internalConsole instead of none. (#4321) โœ… 1. Change flaky tests (relying on File System Watchers) into unit tests. (#4468) โœ… 1. Corrected Smoke test failure for 'Run Python File In Terminal'. (#4515) ๐Ÿ‘ 1. Drop (official) support for Python 3.4. (#4528) ๐Ÿ‘ 1. Support debouncing decorated async methods. (#4641) โœ… 1. Add functional tests for pytest adapter script. (#4739) ๐Ÿšš 1. Remove the use of timers in unittest code. Simulate the passing of time instead. (#4776) โœ… 1. Add functional testing for variable explorer. (#4803) โœ… 1. Add tests for variable explorer Python files. (#4804) ๐ŸŽ 1. Add real environment variables provider on to get functional tests to pass on macOS. (#4820) ๐Ÿ‘ป 1. Handle done on all jupyter requests to make sure an unhandle exception isn't passed on shutdown. (#4827) ๐Ÿ”ง 1. Clean up language server initialization and configuration. (#4832) ๐Ÿ‘€ 1. Hash imports of top-level packages to see what users need supported. (#4852) ๐Ÿ”ง 1. Have tpn clearly state why a project's license entry in the configuration file is considered stale. (#4865) โœ… 1. Kill the test process on CI, 10s after the tests have completed. (#4905) ๐Ÿšš 1. Remove hardcoded Azdo Pipeline of 30m, leaving it to the default of 60m. (#4914) ๐Ÿ‘ท 1. Use the Python interpreter prescribed by CI instead of trying to locate the best possible one. (#4920) ๐Ÿ‘• 1. Skip linter tests correctly. (#4923) ๐Ÿšš 1. Remove redundant compilation step on CI. (#4926)
    2. Dispose handles to timers created from using setTimeout. (#4930)
    3. Ensure sockets get disposed along with other resources. (#4935) โœ… 1. Fix intermittent test failure with listeners. (#4936) โšก๏ธ 1. Update mocha to the latest version. (#4937) ๐Ÿšš 1. Remove redundant mult-root tests. (#4943) โœ… 1. Fix intermittent test failure with kernel shutdown. (#4951) โšก๏ธ 1. Update version of isort to 4.3.17 (#5059)
    4. Fix typo and use constants instead of hardcoded command names. (thanks Allan Wang) (#5204)
    5. Add datascience specific settings to telemetry gathered. Make sure to scrape any strings of PII. (#5212)
    6. Add telemetry around people hitting 'no' on the enable interactive shift enter. Reword the message to be more descriptive. (#5213) โœ… 1. Fix failing variable explorer test. (#5348) โœ… 1. Reliably end test tasks in Azure Pipelines. (#5129) ๐Ÿ—„ 1. Deprecate travis in favor of Azure Pipelines. (#4024)

    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!