Skip to content

Expose Python environment search paths through public API - #2014

Open
Stella Huang (StellaHuang95) wants to merge 2 commits into
microsoft:mainfrom
StellaHuang95:stellahuang-microsoft-issue-960-expose-helper-for-resolving-python-env-s-f45b8f
Open

Stella Huang (StellaHuang95) wants to merge 2 commits into
microsoft:mainfrom
StellaHuang95:stellahuang-microsoft-issue-960-expose-helper-for-resolving-python-env-s-f45b8f

Conversation

@StellaHuang95

Copy link
Copy Markdown
Contributor

Summary

  • expose getAllExtraSearchPaths() on the flat public extension API
  • delegate to the existing canonical search-path resolver
  • document and test folder-scoped resolution, precedence, and exact-string deduplication

Validation

  • npm run lint
  • npm run compile-tests
  • npm run unittest (3,529 passing, 9 pending)
  • npm run compile
  • API ESM and CommonJS consumer checks
  • real-host single-root and multi-root search-path verification

Fixes #960

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@StellaHuang95 Stella Huang (StellaHuang95) added feature-request Request for new features or functionality skip api version labels Nov 12, 2026
@rchiodo

Rich Chiodo (rchiodo) commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

🔒 Automated review in progress — Rich Chiodo (@rchiodo) is auto-reviewing this PR.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Comment thread src/types.ts
* `python-envs.workspaceSearchPaths` value for every workspace folder. Relative
* workspace paths are resolved against the folder that defines them, including in
* multi-root workspaces. A user/global `workspaceSearchPaths` value and empty
* entries are ignored, exact duplicate entries are removed, and path separators

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Warning · Non-blocking recommendation

📍 src/types.ts:1151
Verified isolated production-source probes returned empty and whitespace-only python.venvFolders entries, and whitespace-only python.venvPath, despite this guarantee. Filter blank strings in the canonical resolver before deduplication, preserving nonblank values, and add legacy-settings coverage so native discovery and the public API remain aligned.

[verified]

@rchiodo

Copy link
Copy Markdown
Contributor

Reviewed commit: d56103501d681392d4538e922963afeaf2628ba5

Result: 🔴 could-not-verify

Verification details

Verification: Automated verification is best effort. The PR author remains responsible for testing.

Summary: [unavailable] Container verification could not start and local execution was not authorized for this PR HEAD: Podman machine &#x27;pyrx-automation&#x27; is not running.

Test runs: none recorded.

@rchiodo Rich Chiodo (rchiodo) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved via Review Center.

@rchiodo Rich Chiodo (rchiodo) added the review-auto:approved Automated review: no blocking findings (approval posted). label Nov 12, 2026

@bschnurr Bill Schnurr (bschnurr) left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved via Review Center.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature-request Request for new features or functionality review-auto:approved Automated review: no blocking findings (approval posted). skip api version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Expose helper for resolving python-env search paths (getAllExtraSearchPaths)

3 participants