Skip to content

Releases: microsoft/vscode-python

2022.0.1786462952

03 Feb 19:30
0856eb2

Choose a tag to compare

2022.0.0 (3 February 2022)

Enhancements

  1. Add support for conda run without output, using --no-capture-output flag.
    (#7696)
  2. Add an option to clear interpreter setting for all workspace folders in multiroot scenario.
    (#17693)
  3. Public API for environments (proposed).
    (#17905)
  4. Group interpreters in interpreter quick picker using separators.
    (#17944)
  5. Add support for pylint error ranges. Requires Python 3.8 and pylint 2.12.2 or higher. (thanks Marc Mueller)
    (#18068)
  6. Move pinned interpreter status bar item towards the right behind pythonInterpreterInfoPinned experiment.
    (#18282)
  7. Move interpreter status bar item into the Python language status item behind pythonInterpreterInfoUnpinned experiment.
    (#18283)
  8. Update Jedi language server to latest.
    (#18325)

Fixes

  1. Update zh-tw translations. (thanks ted1030)
    (#17991)
  2. Support selecting conda environments with python 3.10.
    (#18128)
  3. Fixes to telemetry handler in language server middleware.
    (#18188)
  4. Resolve system variables in python.defaultInterpreterPath.
    (#18207)
  5. Ensures interpreters are discovered even when running interpreterInfo.py script prints more than just the script output.
    (#18234)
  6. Remove restrictions on using purpose in debug configuration.
    (#18248)
  7. Ensure Python Interpreter information in the status bar is updated if Interpreter information changes.
    (#18257)
  8. Fix "Run Selection/Line in Python Terminal" for Python < 3.8 when the code includes decorators.
    (#18258)
  9. Ignore notebook cells for pylance. Jupyter extension is handling notebooks.
    (#18259)
  10. Fix for UriError when using python.interpreterPath command in tasks.
    (#18285)
  11. Ensure linting works under conda run (work-around for conda/conda#10972).
    (#18364)
  12. Ensure items are removed from the array in reverse order when using array indices.
    (#18382)
  13. Log experiments only after we finish updating active experiments list.
    (#18393)

Code Health

  1. Improve unit tests for envVarsService, in particular the variable substitution logic (Thanks Keshav Kini)
    (#17747)
  2. Remove python.pythonPath setting and pythonDeprecatePythonPath experiment.
    (#17977)
  3. Remove pythonTensorboardExperiment and PythonPyTorchProfiler experiments.
    (#18074)
  4. Reduce direct dependency on IOutputChannel.
    (#18132)
  5. Upgrade to Node 14 LTS (v14.18.2).
    (#18148)
  6. Switch jedils_requirements.txt to requirements.txt under pythonFiles/jedilsp_requirements/.
    (#18185)
  7. Removed experiments.json file.
    (#18235)
  8. Fixed typescript and namespace errors. (Thanks Harry-Hopkinson)
    (#18345)

2021.12.1559732655

09 Dec 19:32
e7b4f55

Choose a tag to compare

2021.12.0 (9 December 2021)

Enhancements

  1. Python extension should activate on onDebugInitialConfigurations.
    (thanks Nayana Vinod and Jessica Jolly).
    (#9557)
  2. Declare limited support when running in virtual workspaces by only supporting language servers.
    (#17519)
  3. Add a "Do not show again" option to the formatter installation prompt.
    (#17937)
  4. Add the ability to install pip if missing, when installing missing packages from the Jupyter Extension.
    (#17975)
  5. Declare limited support for untrusted workspaces by only supporting Pylance.
    (#18031)
  6. Update to latest jedi language server.
    (#18051)
  7. Add language status item indicating that extension works partially in virtual and untrusted workspaces.
    (#18059)

Fixes

  1. Partial fix for using the same directory as discovery when running tests.
    (thanks Brian Rutledge)
    (#9553)
  2. Handle decorators properly when using the Run Selection/Line in Python Terminal command.
    (#15058)
  3. Don't interpret --rootdir as a test folder for pytest.
    (thanks Brian Rutledge)
    (#16079)
  4. Ensure debug configuration env variables overwrite env variables defined in .env file.
    (#16984)
  5. Fix for pytest run all tests when using pytest.ini and cwd.
    (thanks Brian Rutledge)
    (#17546)
  6. When parsing pytest node ids with parameters, use native pytest information to separate out the parameter decoration rather than try and parse the nodeid as text.
    (thanks Martijn Pieters)
    (#17676)
  7. Do not process system Python 2 installs on macOS Monterey.
    (#17870)
  8. Remove duplicate "Clear Workspace Interpreter Setting" command from the command palette.
    (#17890)
  9. Ensure that path towards extenal tools like linters are not synched between
    machines. (thanks Sorin Sbarnea)
    (#18008)
  10. Increase timeout for activation of conda environments from 30s to 60s.
    (#18017)

Code Health

  1. Removing experiments for refresh and failed tests buttons.
    (#17868)
  2. Remove caching debug configuration experiment only.
    (#17895)
  3. Remove "join mailing list" notification experiment.
    (#17904)
  4. Remove dependency on winston logger.
    (#17921)
  5. Bump isort from 5.9.3 to 5.10.0.
    (#17923)
  6. Remove old discovery code and discovery experiments.
    (#17962)
  7. Remove dependency on azure-storage.
    (#17972)
  8. Ensure telemetry correctly identifies when users set linter paths.
    (#18019)

2021.11.1422169775

04 Nov 18:42
a92a557

Choose a tag to compare

2021.11.0 (4 November 2021)

Enhancements

  1. Improve setting description for enabling A/B tests. (Thanks Thi Le)
    (#7793)
  2. Support expectedFailure when running unittest tests using pytest.
    (#8427)
  3. Support environment variable substitution in python property for launch.json.
    (#12289)
  4. Update homebrew instructions to install python 3.
    (thanks Carolinekung2 )
    (#17590)

Fixes

  1. Reworded message for A/B testing in the output channel to "Experiment 'X' is active/inactive".
    (Thanks Vidushi Gupta for the contribution)
    (#6352)
  2. Change text to "Select at workspace level" instead of "Entire workspace" when selecting or clearing interpreters in a multiroot folder scenario.
    (Thanks Quynh Do)
    (#10737)
  3. Fix unresponsive extension issues caused by discovery component.
    (#11924)
  4. Remove duplicate 'Run Python file' commands in command palette.
    (#14562)
  5. Change drive first before changing directory in windows, to anticipate running file outside working directory with different storage drive. (thanks afikrim)
    (#14730)
  6. Support installing Insiders extension in remote sessions.
    (#15145)
  7. If the executeInFileDir setting is enabled, always change to the script directory before running the script, even if the script is in the Workspace folder. (thanks (acash715)[https://github.com/acash715])
    (#15181)
  8. replaceAll for replacing separators. (thanks Aliva Das)
    (#15288)
  9. When activating environment, creating new Integrated Terminal doesn't take selected workspace into account. (Thanks Vidushi Gupta for the contribution)
    (#15522)
  10. Fix truncated mypy errors by setting --no-pretty.
    (thanks Peter Lithammer)
    (#16836)
  11. Renamed the commands in the Run/Debug button of the editor title. (thanks (Analía Bannura)[https://github.com/analiabs] and (Anna Arsentieva)[https://github.com/arsentieva])
    (#17019)
  12. Fix for pytest run all tests when using pytest.ini.
    (#17546)
  13. Ensures test node is updated when unittest sub-tests are used.
    (#17561)
  14. Update debugpy to 1.5.1 to ensure user-unhandled exception setting is false by default.
    (#17789)
  15. Ensure we filter out unsupported features in web scenario using shellExecutionSupported context key.
    (#17811)
  16. Remove python.condaPath from workspace scope.
    (#17819)
  17. Make updateTestItemFromRawData async to prevent blocking the extension.
    (#17823)
  18. Semantic colorization can sometimes require reopening or scrolling of a file.
    (#17878)

Code Health

  1. Remove TSLint comments since we use ESLint.
    (#4060)
  2. Remove unused SHA512 hashing code.
    (#7333)
  3. Remove unused packages.
    (#16840)
  4. Remove old discovery code and discovery experiments.
    (#17795)
  5. Do not query for version and kind if it's not needed when reporting an issue.
    (#17815)
  6. Remove Microsoft Python Language Server support from the extension.
    (#17834)
  7. Bump packaging from 21.0 to 21.2.
    (#17886)

2021.10.1365161279

20 Oct 22:38

Choose a tag to compare

2021.10.2 (20 October 2021)

Fixes

  1. Ensure we filter out unsupported features in web scenario using shellExecutionSupported context key.
    (#17811)
  2. Fix unresponsive extension issues caused by discovery component.
    (#11924)
  3. Update debugpy to 1.5.1 to ensure user-unhandled exception setting is false by default.
    (#17789)

2021.10.1336267007

13 Oct 19:01
ca2b5a4

Choose a tag to compare

2021.10.1 (13 October 2021)

Enhancements

  1. Provide IntelliSense status information when using github.dev or any other web platform.
    (#17658)

Fixes

  1. Ensure commands run are not logged twice in Python output channel.
    (#7160)
  2. Ensure we use fragment when formatting notebook cells.
    (#16980)
  3. Hide UI elements that are not applicable when using github.dev or any other web platform.
    (#17252)
  4. Localize strings on github.dev using VSCode FS API.
    (#17712)

Code Health

  1. Log commands run by the discovery component in the output channel.
    (#16732)

2021.10.1317843341

07 Oct 21:39
6ba6949

Choose a tag to compare

2021.10.0 (7 October 2021)

Enhancements

  1. Set the default value of python.linting.pylintEnabled to false.
    (#3007)
  2. Phase out Jedi 0.17, and use Jedi behind a language server protocol as the Jedi option. Remove Jedi-related settings python.jediMemoryLimit and python.jediPath, since they are not used with the new language server implementation.
    (#11995)
  3. Add support for dynamic updates in interpreter list.
    (#17043)
  4. Query for fresh workspace envs when auto-selecting interpreters in a new workspace.
    (#17264)
  5. Increase Microsoft Python Language Server deprecation prompt frequency and update wording.
    (#17361)
  6. Remove "The Python extension will have limited support for Python 2.7 in the next release" notification.
    (#17451)
  7. Added non-blocking discovery APIs for Jupyter.
    (#17452)
  8. Resolve environments using cache if cache has complete env info.
    (#17474)
  9. Ensure debugger contribution points are turned off when using virtual workspaces.
    (#17493)
  10. Display a notification about the end of Jedi support when using Python 2.7.
    (#17512)
  11. If user has selected an interpreter which is not discovery cache, correctly add it to cache.
    (#17575)
  12. Update to latest version of Jedi LS.
    (#17591)
  13. Update to vscode-extension-telemetry 0.4.2.
    (#17608)

Fixes

  1. Don't override user provided --rootdir in pytest args.
    (#8678)
  2. Don't log error during settings migration if settings.json doesn't exist.
    (#11354)
  3. Fix casing of text in unittest patterns quickpick.
    (thanks Anupama Nadig)
    (#17093)
  4. Use quickpick details for the "Use Python from python.defaultInterpreterPath setting" entry.
    (#17124)
  5. Fix refreshing progress display in the status bar.
    (#17338)
  6. Ensure we do not start a new discovery for an event if one is already scheduled.
    (#17339)
  7. Do not display workspace related envs if no workspace is open.
    (#17358)
  8. Ensure we correctly evaluate Unknown type before sending startup telemetry.
    (#17362)
  9. Fix for unittest discovery failure due to root id mismatch.
    (#17386)
  10. Improve pattern matching for shell detection on Windows.
    (thanks Erik Demaine)
    (#17426)
  11. Changed the way of searching left bracket [ in case of subsets of tests.
    (thanks ilexei)
    (#17461)
  12. Fix hang caused by loop in getting interpreter information.
    (#17484)
  13. Ensure database storage extension uses to track all storages does not grow unnecessarily.
    (#17488)
  14. Ensure all users use new discovery code regardless of their experiment settings.
    (#17563)
  15. Add timeout when discovery runs conda info --json command.
    (#17576)
  16. Use conda-forge channel when installing packages into conda environments.
    (#17628)

Code Health

  1. Remove support for rope. Refactoring now supported via language servers.
    (#10440)
  2. Remove pylintMinimalCheckers setting. Syntax errors now reported via language servers.
    (#13321)
  3. Remove ctags support. Workspace symbols now supported via language servers.
    (#16063)
  4. Fix linting for some files in .eslintignore.
    (#17181)

2021.9.1246542782

20 Sep 19:36
9a0a7e5

Choose a tag to compare

2021.9.3 (20 September 2021)

Fixes

  1. Fix Python extension loading... issue for users who have disabled telemetry.
    (#17447)

2021.9.1230869389

13 Sep 20:47

Choose a tag to compare

2021.9.2 (13 September 2021)

Fixes

  1. Ensure line feeds are changed to CRLF in test messages.
    (#17111)
  2. Fix for unittest ModuleNotFoundError when discovering tests.
    (#17363)
  3. Ensure we block getting active interpreter on auto-selection.
    (#17370)
  4. Fix to handle undefined uri in debug in terminal command.
    (#17374)
  5. Fix for missing buttons for tests when using multiple test folders.
    (#17378)

2021.9.1218897484

09 Sep 22:03
c37dc54

Choose a tag to compare

2021.9.1 (9 September 2021)

Fixes

  1. Fix for debug configuration used when no launch.json exists is still used after launch.json is created.
    (#17353)
  2. Ensure default python executable to use is 'python' instead of ''.
    (#17089)
  3. Ensure workspace interpreters are discovered and watched when in pythonDiscoveryModuleWithoutWatcher experiment.
    (#17144)
  4. Do path comparisons appropriately in the new discovery component.
    (#17244)
  5. Fix for test result not found for files starting with py.
    (#17270)
  6. Fix for unable to import when running unittest.
    (#17280)
  7. Fix for multiple folders in pytest args.
    (#17281)
  8. Fix issue with incomplete unittest runs.
    (#17282)
  9. Improve detecting lines when using testing wrappers.
    (#17285)
  10. Ensure we trigger discovery for the first time as part of extension activation.
    (#17303)
  11. Correctly indicate when interpreter refresh has finished.
    (#17335)
  12. Missing location info for async def functions.
    (#17309)
  13. For CI ensure tensorboard is installed in python 3 environments only.
    (#17325)

2021.9.1191016588

02 Sep 17:10
5e2cbdd

Choose a tag to compare

2021.9.0 (1 September 2021)

Enhancements

  1. Added commands to select and run a set of tests.
    (#3652)
  2. Fix for tests should be re-discovered after switching environment.
    (#5347)
  3. Remove the testing functionality from the status bar.
    (#8405)
  4. Automatically detect new test file in test explorer.
    (#8675)
  5. Search test names in test explorer.
    (#8836)
  6. Added a command for displaying the test explorer.
    (#9026)
  7. Make "run all tests" icon gray instead of green.
    (#9402)
  8. Use VS Code's test UI instead of code lenses above tests.
    (#10898)
  9. Added command to run last executed test.
    (#11864)
  10. Fix for PyTest discovery can fail but not give any clue as to what the problem is.
    (#12043)
  11. Add shortcut to run the current test (at cursor position).
    (#12218)
  12. Run all tests in a multi-root workspace without prompting.
    (#13147)
  13. Plug into VS Code's Test UI.
    (#15750)
  14. Show notification to join insiders after 5 mins.
    (#16833)
  15. Update Simplified Chinese translation. (thanks FiftysixTimes7)
    (#16916)
  16. Added Debug file button to editor run menu.
    (#16924)
  17. Cache last selection for debug configuration when debugging without launch.json.
    (#16934)
  18. Improve display of default interpreter and suggested interpreter in the interpreter selection quick pick.
    (#16971)
  19. Improve discovery component API.
    (#17005)
  20. Add a notification about Python 2.7 support, displayed whenever a tool is used or whenever debugging is started.
    (#17009)
  21. Add caching debug configuration behind experiment.
    (#17025)
  22. Do not query to get all interpreters where it's not needed in the extension code.
    (#17030)
  23. Add a warning prompt for the Microsoft Python Language Server deprecation.
    (#17056)
  24. Update to latest jedi-language-server.
    (#17072)

Fixes

  1. Fix for test code lenses do not disappear even after disabling the unit tests.
    (#1654)
  2. Fix for code lens for a test class run under unittest doesn't show overall results for methods.
    (#2382)
  3. Fix for test code lens do not appear on initial activation of testing support.
    (#2644)
  4. Fix for "No tests ran, please check the configuration settings for the tests".
    (#2660)
  5. Fix for code lenses disappear on save, then re-appear when tabbing on/off the file.
    (#2790)
  6. Fix for code lenses for tests not showing up when test is defined on line 1.
    (#3062)
  7. Fix for command 'python.runtests' not found.
    (#3591)
  8. Fix for navigation to code doesn't work with parameterized tests.
    (#4469)
  9. Fix for tests are not being discovered at first in multiroot workspace.
    (#4848)
  10. Fix for tests not found after upgrade.
    (#5417)
  11. Fix for failed icon of the first failed test doesn't changed to running icon when using unittest framework.
    (#5791)
  12. Fix for failure details in unittest discovery are not always logged.
    (#5889)
  13. Fix for test results not updated if test is run via codelens.
    (#6787)
  14. Fix for "Run Current Test File" is not running tests, just discovering them.
    (#7150)
  15. Fix for testing code lenses don't show for remote sessions to a directory symlink.
    (#7443)
  16. Fix for discover test per folder icon is missing in multi-root workspace after upgrade.
    (#7870)
  17. Fix for clicking on a test in the Test Explorer does not navigate to the correct test.
    (#8448)
  18. Fix for if multiple tests have the same name, only one is run.
    (#8761)
  19. Fix for test failure is reported as a compile error.
    (#9640)
  20. Fix for discovering tests immediately after interpreter change often fails.
    (#9854)
  21. Fix for unittest module invoking wrong TestCase.
    (#10972)
  22. Fix for unable to navigate to test function.
    (#11866)
  23. Fix for running test fails trying to access non-existing file.
    (#12403)
  24. Fix for code lenses don't work after opening files from different projects in workspace.
    (#12995)
  25. Fix for the pytest icons keep spinning when run Test Method.
    (#13285)
  26. Test for any functionality related to testing doesn't work if language server is set to none.
    (#13713)
  27. Fix for cannot configure PyTest from UI.
    (#13916)
  28. Fix for test icons not updating when using pytest.
    (#15260)
  29. Fix for debugging tests is returning errors due to "unsupported status".
    (#15736)
  30. Removes "request": "test" as a config option. This can now be done with "purpose": ["debug-test"].
    (#15790)
  31. Fix for "There was an error in running the tests" when stopping debugger.
    (#16475)
  32. Use the vscode API appropriately to find out what terminal is being used.
    (#16577)
  33. Fix unittest discovery. (thanks JulianEdwards)
    (#16593)
  34. Fix run installPythonLibs error in windows.
    (#16844)
  35. Fix for test welcome screen flashes on refresh.
    (#16855)
  36. Show re-run failed test button only when there are failed tests.
    (#16856)
  37. Triggering test refresh shows progress indicator.
    (#16891)
  38. Fix environment sorting for the Python: Select Interpreter command.
    (thanks Marc Mueller)
    (#16893)
  39. Fix for unittest not getting discovered in all cases.
    (#16902)
  40. Don't show full path in the description for each test node.
    (#16927)
  41. Fix for no notification shown if test framework is not configured and run all tests is called.
    (#16941)
  42. In experiments service don't always await on initialfetch which can be slow depending on the network.
    (#16959)
  43. Ensure 2.7 unittest still work with new test support.
    (#16962)
  44. Fix issue with parsing test run ids for reporting test status.
    (#16963)
  45. Fix cell magics, line magics, and shell escaping in jupyter notebooks to not show error diagnostics.
    (#17058)
  46. Fix for testing ui update issue...
Read more