Skip to content

Releases: microsoft/vscode-python-environments

v1.20.0

17 Feb 18:46
ded5557

Choose a tag to compare

Changes:

Bugs:

  • #1237: fix: CI test failure
  • #1234: Fix defaultInterpreterPath variable expansion and stabilize interpreter selection tests
  • #1220: Fix empty path handling in pythonProjects for workspace root projects
  • #1222: Normalize file paths across environment managers
  • #1211: Add POETRY_VIRTUALENVS_IN_PROJECT environment variable support
  • #1183: Poetry: Missing support for POETRY_VIRTUALENVS_IN_PROJECT environment variable

Others:

  • #1241: Bump version to 1.20.0 in package.json and package-lock.json
  • #1232: Add analysis modules for code health and technical debt tracking
See More
  • #1226: Fix smoke tests and enhance testing workflow with PET
  • #1225: Add smoke tests for functional checks and registration verification
  • #1223: initial scaffolding for e2e, smoke, integration tests
  • #1221: Add verbose logging for environment resolution failures in utils
  • #1216: bump version to 1.19 dev

This list of changes was auto generated.

v1.18.1

11 Feb 00:41
6c33c4e

Choose a tag to compare

What's Changed

  • chore(deps-dev): bump qs from 6.12.0 to 6.14.1 by @dependabot[bot] in #1076
  • Bump version to 1.17.0 in package.json and package-lock.json by @eleanorjboyd in #1086
  • Fix activation icon state when using shellStartup by @renan-r-santos in #837
  • Refactor: Replace direct child_process.spawn calls with spawnProcess for consistent environment handling and add PYTHONUTF8=1 for subprocesses by @eleanorjboyd in #1087
  • createTerminal with command activation should return activated terminal by @anthonykim1 in #1088
  • Remove polling to check shell integration by @anthonykim1 in #1090
  • Remove redundant shell activation and deactivation for FISH in getShellActivationCommands by @eleanorjboyd in #1097
  • Enhance validation in native Python finder for Json to TS object conversion by @eleanorjboyd in #1102
  • Add deprecation notes to some settings by @StellaHuang95 in #1100
  • add support for virtualEnv and virtualEnvWrapper to venv manager by @eleanorjboyd in #1103
  • Update setting description for shell startup by @anthonykim1 in #1106
  • Update dependencies: bump diff to 5.2.2 and sinon to 19.0.5 by @eleanorjboyd in #1112
  • Fix python.defaultInterpreterPath0. setting not being applied to new workspaces by @StellaHuang95 in #1110
  • Enhance environment manager settings updates to avoid unnecessary write to settings.json by @eleanorjboyd in #1120
  • Add telemetry for project structure metrics at extension startup by @eleanorjboyd in #1121
  • Remove repo specific issue-label actions by @anthonykim1 in #1119
  • Ensure to show terminal on run Python file with command activated terminal by @anthonykim1 in #1129
  • Improve Settings Reference documentation and fix python-env.* naming inconsistency by @StellaHuang95 in #1114
  • Correct shell startup setting wording by @anthonykim1 in #1133
  • Refactor NativePythonFinderImpl for better disposable management by @karthiknadig in #1144
  • chore(deps): bump lodash from 4.17.21 to 4.17.23 by @dependabot[bot] in #1117
  • Enhance NativePythonFinderImpl with improved logging and configuration comparison by @karthiknadig in #1149
  • Move zsh code out of bash folder by @Tyriar in #1150
  • design doc addition by @eleanorjboyd in #386
  • Fix: Use JSON package listing in conda environment by @karthiknadig in #1008
  • fix: timeout handling for JSON-RPC requests in NativePythonFinder by @karthiknadig in #1154
  • overhaul interpreter selection prioritization code to align with desired UX by @eleanorjboyd in #1155
  • Auto-update project view on folder delete/rename by @eleanorjboyd in #1152
  • Properly await promise in cleanupStartupScripts by @Tyriar in #1156
  • Add leading space to shell activation commands to prevent history bloating by @Copilot in #1143
  • Fix issue where terminal environment variables are not removed when they are commented out or deleted from .env files. by @StellaHuang95 in #1131
  • fix: streamline environment retrieval in venvManager and pyenvManager by @karthiknadig in #1157
  • fix: update pyenv binary name for Windows compatibility by @karthiknadig in #1161
  • fix: enhance pyenv path resolution to include virtual environments by @karthiknadig in #1162
  • Use XDG_CONFIG_HOME for fish config when available by @Tyriar in #1164
  • Remove unused shell integration polling variable by @anthonykim1 in #1167
  • Add more tests for .env file feature by @anthonykim1 in #1163
  • feat: add documentation writer agent for Python Environments extension by @eleanorjboyd in #1171
  • Add "Enter Interpreter Path" option for selecting Python interpreter by @karthiknadig in #1173
  • Enhance Pipenv manager registration and configuration by @karthiknadig in #1170
  • fix: improve extension ID caching and logging in getCallingExtension by @karthiknadig in #1169
  • remove unneeded details by @eleanorjboyd in #1174
  • bug: terminal triggered package refresh to use correct env by @eleanorjboyd in #1175
  • Don't show activate button for task terminal by @anthonykim1 in #1168
  • Fix incorrect terminal name by @anthonykim1 in #1188
  • feat: add command to reveal environment in manager view by @eleanorjboyd in #1186
  • Add error handling for broken Python environments by @karthiknadig in #1189
  • feat: add progress indication for refreshing environment managers by @eleanorjboyd in #1194
  • feat: add disambiguation suffixes for Python environments in env manager by @eleanorjboyd in #1197
  • remove button for creating terminal in project view by @eleanorjboyd in #1199
  • Introduce Settings Icon into Env Manager View by @eleanorjboyd in #1191
  • refactor: streamline conda environment handling and activation commands by @karthiknadig in #1177
  • bug: project initialization to load existing projects without overwriting user settings by @eleanorjboyd in #1202
  • feat: fix bug with reveal icon with id assignments by @eleanorjboyd in #1204
  • Progress indicator for refresh and create env by @anthonykim1 in #1205
  • listen to change in python.terminal.useEnvFile by @anthonykim1 in #1208
  • fix: environment initialization to ensure proper resolution by @karthiknadig in #1209
  • chore(deps-dev): bump webpack from 5.97.1 to 5.105.0 in /examples/sample1 by @dependabot[bot] in #1190
  • chore(deps-dev): bump webpack from 5.94.0 to 5.105.0 by @dependabot[bot] in #1212
  • Add notification for active virtual environment selection by @karthiknadig in #1179
  • Implement Python installation via uv by @karthiknadig in #1198
  • Fix PyEnv Windows path calculation for environment grouping by @Copilot in #1210
  • bump to release version 1.18 by @eleanorjboyd in #1215

New Contributors

Full Changelog: v1.16.0...v1.18.0

[note: due to build problems, there is no 1.18.0 release and this instead is the major release with all new changes]

v1.16.0

08 Jan 21:32
850ab72

Choose a tag to compare

Changes:

Feature Requests:

  • #1009: Implement temporary state management for environment actions
  • #917: Add functionality to retrieve Poetry path from settings

Bugs:

  • #1004: Fix: Validate existence of pipenv, poetry, and pyenv paths before usage
  • #1070: Be less aggressive about removing Python hooks in shell profile
  • #1054: Fix a bug with Quick Create not installing workspace dependencies
  • #1051: Revert "Add functionality to retrieve Poetry path from settings (#917)"

Others:

  • #1085: Bump version to 1.16.0 release
See More
  • #1084: update to use PET 2026.0
  • #1079: Add tests for shell startup
  • #1066: Validate pyproject.toml before installing dependencies
  • #1071: Dont tear down shell startup when switched to command
  • #1046: Remove stale persistentState
  • #1056: fix: update Python version from 3.8 to 3.9 in Azure pipeline configuration
  • #1010: chore: update Node.js version to 22.21.1 across configuration files
  • #1020: Add tests and update testing-flow learnings
  • #1031: bump version to dev 1.15.0

This list of changes was auto generated.

v1.14.0

11 Dec 19:24
1a34d51

Choose a tag to compare

Changes:

Feature Requests:

  • #917: Add functionality to retrieve Poetry path from settings

Bugs:

  • #1051: Revert "Add functionality to retrieve Poetry path from settings (#917)"
  • #1055: Revert "Add functionality to retrieve Poetry path from settings (#917)" (#1051)
  • #1022: Support UvWorkspace envs too
  • #1017: uv-managed workspaces don't appear in the extension yet
  • #1021: fix: Create new main batch file if it doesn't exist during CMD startup
  • #1000: Environment activation is not working reliably with "Command Prompt"
  • #1018: Fix regression where shell startup auto activation does not work on cmd
See More
  • #1006: Fix: Quote conda executable path to handle spaces
  • #1005: Fix: Enhance virtual environment removal validation
  • #1003: Fix: TypeError in conda discovery
  • #993: Fix: Normalize executable path for Git Bash on Windows in runInTerminal
  • #968: fix: missing & when running PET command

Others:

  • #1058: cherry-pick update Python version from 3.8 to 3.9 in Azure pipeline
  • #1030: bump to 1.14 for release
  • #1029: bump to use PET 2025.16
  • #1019: Add tests for shell startup activation
  • #1012: Add contributing guidelines to the Python Environments extension
  • #999: chore(deps): bump glob from 10.4.5 to 10.5.0 in /examples/sample1
  • #998: chore: update npm packages
  • #995: chore(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 in /examples/sample1
  • #678: Initialize conda with incorrect address
  • #618: update pet on release branch
  • #985: Update vscode engine to 1.106.0
  • #984: Update vscode engine
  • #977: port learnings into testing workflow instructions
  • #976: bump version to 1.13.0

This list of changes was auto generated.

v1.12.0

12 Nov 21:21
a870222

Choose a tag to compare

Changes:

Feature Requests:

  • #940: Add VenvUv support and alwaysUseUv setting to control UV usage for virtual environments
  • #933: Fix: Show error messages in UI when environment creation fails
  • #945: update api documentation
  • #943: Allow undefined uri in api.getEnvironmentVariables
  • #917: Add functionality to retrieve Poetry path from settings
  • #910: Fix missing dev-requirements.txt in workspace dependencies list

Bugs:

  • #920: [Python Environments] No report of failure when environment is not created
  • #952: Fix unexpected blocking for pwsh command activation
See More
  • #928: Bug in create venv flow with selecting skipping package installation
  • #914: add get pipenv from settings to getPipenv function
  • #911: support pipenv path setting
  • #900: fix: use ZDOTDIR when available
  • #897: Fix bug with getAutoActivationType
  • #905: Refactor quoteStringIfNecessary to fix handling of single shell operators
  • #896: Fix wsl not activating properly.
  • #890: Fix quoting logic to escape special characters in exec path
  • #886: fix env var clearing
  • #880: Fix where activation goes missing after user modifying rc scripts

Others:

  • #975: bump version to 1.12.0
  • #949: chore: pass through terminal creation options
  • #946: fix linting and update eslint rule
  • #873: Add comprehensive unit tests for execUtils.ts
  • #921: Improve shell startup experience using setting value
  • #915: Better handle terminal shell integration check
  • #851: Add PowerShell version logging for activation debugging
  • #706: Leave better logs for pwsh version for activation
  • #877: add testing for runInBackground
  • #506: Missing requirements file in workspace dependencies list
  • #907: fix ts issue
  • #856: feat: add back button to all necessary flows in UI
  • #892: Revert "fix as-any linting warnings"
  • #891: fix as-any linting warnings
  • #879: bump to v1.11.0 dev version

This list of changes was auto generated.

v1.10.0

10 Oct 17:21
b341d79

Choose a tag to compare

Changes:

Feature Requests:

  • #863: implement MVP of workspace and global searchPaths
  • #818: sort by version (desc) in conda create picker

Bugs:

  • #860: fix: update run command for conda to use python instead of conda run
  • #853: fix: normalize path for UI display when removing virtual environments
  • #850: fix: improve environment display name for pipenv
  • #849: fix quoting for runInBackground
  • #823: make virtual environment search default to config not project folders
  • #825: bug: fix default interpreter resolution with user configuration
See More
  • #811: revert: remove unnecessary refresh call for environment managers on expansion

Others:

  • #923: cherry-pick shell changes to release
  • #916: cherry pick in changes for release
  • #878: bump to v1.10.0
  • #872: add tests for runAsTask
  • #871: update testing instruction file
  • #864: docs: add comprehensive testing guide for unit and extension tests
  • #867: chore(deps-dev): bump tar-fs from 2.1.3 to 2.1.4
  • #857: docs: add guidelines for creating effective GitHub issues
  • #830: update version dev 1.9.0
  • #827: update version to 1.8.0 in package.json and package-lock.json
  • #819: update create api doc string to be more explicit
  • #816: debt: add GitHub Actions workflow for automatic PR label management
  • #815: debt: refactor environment info collection and add helper file
  • #817: feat: enable random branch naming for Git
  • #814: debt: prepend '[pet]' to log messages for better context in NativePythonFinder
  • #751: fix conda env refresh not waiting for promises
  • #764: Display activate button when a terminal is moved to the editor window
  • #783: Refresh environment managers automatically when expanding tree node
  • #782: Expanding Pipenv should refresh the children

This list of changes was auto generated.

v1.8.0

16 Sep 00:01
a2e13ce

Choose a tag to compare

Changes:

Bugs:

  • #804: remove not implemented create function
  • #787: bug: surface warning for broken defaultEnvManager and resolve

Others:

  • #829: Cherry pick release 1.8.0
  • #828: bump v 1.8.0
  • #803: switch to using inspect for setting to check for user explicit value
  • #807: feat: add GitHub Actions workflow to label "triage-needed" on open
  • #802: include venvFolders in search paths
  • #788: Fix log message to correctly reference invalid venv environment not conda
See More
  • #778: Bump version to 1.7.0 in package.json and package-lock.json

This list of changes was auto generated.

v1.6.0

03 Sep 18:35
f41ff82

Choose a tag to compare

Changes:

Bugs:

  • #760: add in version selection for conda env creation
  • #761: Improve default interpreter resolution logic to avoid unnecessary updates

Others:

  • #777: Bump version to 1.6.0 in package.json and package-lock.json
  • #758: update timing on info-needed workflow
  • #769: Fix default interpreter path comparison for windows
  • #756: Log spawning of processes
  • #755: update readme for pipenv support
  • #754: Add resolution for default interpreter and respect defaultInterpreterPath setting
See More
  • #750: Adding pipenv support
  • #753: update readme with env manager support
  • #747: bump version to 1.5.0 for dev

This list of changes was auto generated.

v1.4.0

22 Aug 00:05
d0afbd1

Choose a tag to compare

Changes:

Feature Requests:

  • #701: Update PET command

Bugs:

  • #738: Fix to prevent multiple shell startup prompts
  • #723: "add as python project" disappears from menu after single use
  • #720: conda: copy interpreter path button incorrect
  • #713: remove --live-stream from conda run command
  • #698: bug fix: Stricter pip list Package Parsing
  • #648: Conda hook search

Others:

See More
  • #746: bump to version 1.4.0
  • #739: Remove .vscode-test.mjs from bundled extension
  • #736: trigger manager refresh on new project creation
  • #732: Clean up for old shell startup scripts
  • #731: add quoting, logging, and resolution for run as task and background
  • #730: Enhance logging in task execution functions for better debugging
  • #727: Remove debris if shell integration is available
  • #717: Adapt to evaluating activate in core shell integration
  • #724: Fix: Remove global context that caused "add as Python Project" menu to disappear after single use
  • #721: Fix conda copy interpreter path to use actual Python executable instead of conda run command
  • #710: add useEnvFile setting
  • #693: bug fix: enhance conda environment management with sourcing status and updated shell activation support
  • #677: fix: enhance conda executable retrieval with path existence checks
  • #676: getCondaExecutable doesn't check if path exists
  • #690: chore(deps-dev): bump tmp from 0.2.3 to 0.2.4
  • #301: Show notification when refreshing packages
  • #702: Update PET command to include submenu for find and resolve operations
  • #697: bug: Warning Message is Parsed as a Package
  • #683: Implement environment variable injection into VS Code terminals using GlobalEnvironmentVariableCollection
  • #682: Injecting Environment Variables into Terminal
  • #685: Fix l10n localization
  • #665: require python envs ext respecting terminal.activateEnvironment
  • #670: feat: implement caching for conda hook path to optimize filesystem checks
  • #663: fix: add guard for shell script re-run
  • #635: Terminal hanging with autoActivationType set to shellStartup
  • #651: add quoting logic in runAsTask
  • #659: bump v1.3.0

This list of changes was auto generated.

v1.2.0

27 Jul 22:26
dbfbd8c

Choose a tag to compare

Changes:

Bugs:

  • #643: fix async return for runInDedicatedTerminal API

Others:

  • #657: bump v1.2.0
  • #627: bug: fix gitignore add for more scenarios
  • #652: Attach & for shell integration enabled pwsh case
  • #646: include pyenv virtualenv and enhance display name
  • #617: update pet
  • #616: bump version to 1.1 for dev

This list of changes was auto generated.