Repository navigation
fix: fail gracefully on invalid pyproject.toml (Fixes #411) - #1942
Stella Huang (StellaHuang95) merged 3 commits into
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 34d0c32e-e8b7-4711-a695-1b6f6e56503f
|
🔒 Automated review in progress — Bill Schnurr (@bschnurr) is auto-reviewing this PR. |
There was a problem hiding this comment.
🟡 Changes recommended
Validation-dependent root filtering can silently omit the owning project’s dependencies.
1 open issue
What changed in this PR
Improves environment creation failure handling for invalid pyproject.toml files, addressing #411.
Changes:
- Preserves read and parse failures and expands schema validation.
- Validates selected dependencies before creation.
- Adds coverage for cancellation, continuation, and sibling-worktree handling.
| File | Description |
|---|---|
| src/test/managers/builtin/venvUtils.createWithProgress.unit.test.ts | Tests Quick Create validation outcomes. |
| src/test/managers/builtin/venvStepBasedFlow.unit.test.ts | Tests step-based creation preflight. |
| src/test/managers/builtin/pipUtils.unit.test.ts | Covers dependency selection and worktree filtering. |
| src/test/managers/builtin/helpers.validatePyproject.unit.test.ts | Tests schema validation and prompt actions. |
| src/managers/common/pickers.ts | Returns selected dependency file URIs. |
| src/managers/builtin/venvUtils.ts | Applies Quick Create preflight. |
| src/managers/builtin/venvStepBasedFlow.ts | Stops creation when preflight is rejected. |
| src/managers/builtin/pipUtils.ts | Implements validation and dependency filtering. |
Review effort: Balanced
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 34d0c32e-e8b7-4711-a695-1b6f6e56503f
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 34d0c32e-e8b7-4711-a695-1b6f6e56503f
|
Result: 🔴 Verification detailsVerification: The relevant tests could not be fully run in the isolated environment; this review is not fully verified. Summary: [unavailable] Container verification could not start and local execution was not authorized for this PR HEAD: C:\Program Files\RedHat\Podman\podman.EXE --connection pyrx-automation failed: stderr: Error: unable to start container "7ee19b971263b9544c6b9ded818192331c44eabfa5148387f694bde1bb7b0ae7": crun: open `memory.max` for writing: No such file or directory: OCI runtime attempted to invoke a command that was not found Test runs: none recorded. |
Bill Schnurr (bschnurr)
left a comment
There was a problem hiding this comment.
Approved via Review Center.
Rich Chiodo (rchiodo)
left a comment
There was a problem hiding this comment.
Approved via Review Center.
Heejae Chang (heejaechang)
left a comment
There was a problem hiding this comment.
Approved via Review Center.
897bc3b
into
microsoft:main


Summary
pyproject.tomlread and parse failures instead of treating malformed files as emptyValidation
npm run lintnpm run compile-testsnpm run compilenpm run unittest— 3,334 passing, 9 pending.venvon rejection, and valid creation/removal all passedFixes #411