Skip to content

Conversation

Jason2866
Copy link
Owner

@Jason2866 Jason2866 commented Oct 11, 2025

Summary by CodeRabbit

  • Refactor
    • Switched Python setup to create an isolated virtual environment at the destination path for more consistent installations.
    • Streamlined Python executable detection within the venv.
    • Improved installation logs and error messages to clearly reflect venv creation outcomes.
  • Chores
    • Bumped version to 12.1.0.

@Jason2866 Jason2866 merged commit 7dcf9c7 into Jason2866:pioarduino Oct 11, 2025
Copy link

coderabbitai bot commented Oct 11, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Switches Python setup from UV-based direct install to creating a UV-managed virtual environment at the destination path, updates executable discovery to venv layout, revises verification and error messages accordingly, and bumps package version from 12.0.0 to 12.1.0.

Changes

Cohort / File(s) Summary
Version bump
package.json
Increment version from "12.0.0" to "12.1.0".
Installer refactor to uv venv
src/installer/get-python.js
Replace UV Python install with uv venv creation; adjust path handling to venv structure (bin/Scripts); update verification, logging, and error messages; remove UV install dir/cache env usage; streamline Python executable discovery to venv layout.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor Caller
  participant Installer as get-python.js
  participant UV as uv CLI
  participant FS as File System

  Caller->>Installer: requestPythonEnv(destPath, pythonVersion)
  Installer->>FS: resolve absolute destPath
  Installer->>UV: uv venv --python <version> --python-preference managed <destPath>
  alt venv created
    UV-->>Installer: success
    Installer->>FS: check <destPath>/(bin|Scripts)/python[.exe]
    alt python found
      Installer-->>Caller: return python executable path
    else python missing
      Installer-->>Caller: throw "venv python not found"
    end
  else failure
    UV-->>Installer: error
    Installer-->>Caller: throw "venv creation failed"
  end
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~50 minutes

Possibly related PRs

  • v12.0.0 Uv install python #5 — Also modifies src/installer/get-python.js around UV-based installation and executable discovery; this PR evolves that flow to use uv venv.

Poem

A hop, a skip, to venv we go,
With uv’s wand, new paths now glow.
No crates of Pythons on the shelf—
A cozy burrow builds itself.
I twitch my ears: 12.1 sings,
Thump-thump! says CI with happy springs. 🐇✨

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between aa06861 and 4212973.

⛔ Files ignored due to path filters (2)
  • dist/index.js is excluded by !**/dist/**
  • dist/index.js.map is excluded by !**/dist/**, !**/*.map
📒 Files selected for processing (2)
  • package.json (1 hunks)
  • src/installer/get-python.js (3 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

This was referenced Oct 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant