Skip to content

#1518: uv tools are now installed locally#2002

Open
AdemZarrouki wants to merge 13 commits into
devonfw:mainfrom
AdemZarrouki:feature/1518-uv-tools-are-installed-globally
Open

#1518: uv tools are now installed locally#2002
AdemZarrouki wants to merge 13 commits into
devonfw:mainfrom
AdemZarrouki:feature/1518-uv-tools-are-installed-globally

Conversation

@AdemZarrouki

@AdemZarrouki AdemZarrouki commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

This PR fixes #1518 and replaces PR 1885

Implemented changes:

  • Full Project Isolation: Redirected uv tool data and virtual environments to the project-local software/python/tools directory via UV_TOOL_DIR.

  • Explicit Binary Pathing: Replaced XDG_BIN_HOME with UV_TOOL_BIN_DIR to ensure tool executables are scoped to the project's bin folder.

  • Commandlet Updates: Modified Python.java and Uv.java to export these variables automatically, eliminating all "not on your PATH" warnings.

  • Regression Testing: Added cross-platform JUnit tests to verify environment isolation across both tools.


Checklist for this PR

Make sure everything is checked before merging this PR. For further info please also see
our DoD.

  • When running mvn clean test locally all tests pass and build is successful
  • PR title is of the form #«issue-id»: «brief summary» (e.g. #921: fixed setup.bat). If no issue ID exists, title only.
  • PR top-level comment summarizes what has been done and contains link to addressed issue(s)
  • PR and issue(s) have suitable labels
  • Issue is set to In Progress and assigned to you or there is no issue (might happen for very small PRs)
  • You followed all coding conventions
  • You have added the issue implemented by your PR in CHANGELOG.adoc unless issue is labeled
    with internal

@github-project-automation github-project-automation Bot moved this to 🆕 New in IDEasy board Jun 3, 2026
@AdemZarrouki AdemZarrouki marked this pull request as ready for review June 3, 2026 13:45
@AdemZarrouki AdemZarrouki self-assigned this Jun 3, 2026
@AdemZarrouki AdemZarrouki requested a review from hohwille June 3, 2026 13:48
@coveralls

coveralls commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

Coverage Report for CI Build 26890891363

Coverage increased (+0.002%) to 71.054%

Details

  • Coverage increased (+0.002%) from the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • 2 coverage regressions across 2 files.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

2 previously-covered lines in 2 files lost coverage.

File Lines Losing Coverage Coverage
com/devonfw/tools/ide/tool/ide/IdeToolCommandlet.java 1 78.33%
com/devonfw/tools/ide/version/VersionSegment.java 1 90.55%

Coverage Stats

Coverage Status
Relevant Lines: 15828
Covered Lines: 11735
Line Coverage: 74.14%
Relevant Branches: 7066
Covered Branches: 4532
Branch Coverage: 64.14%
Branches in Coverage %: Yes
Coverage Strength: 3.14 hits per line

💛 - Coveralls

@AdemZarrouki AdemZarrouki moved this from 🆕 New to 👀 In review in IDEasy board Jun 3, 2026
@AdemZarrouki AdemZarrouki added configuration should be configurable or configuration change install installation process of IDE + tools and install commandlet uv fast Python package and project manager labels Jun 3, 2026
public class UvTest extends AbstractIdeContextTest {

@Test
public void testSetEnvironment() {

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

this test is also failing in windows as the value is compared in the wrong path format.
[expected](expected: C:\Users\projects\IDEasy\workspaces\main\IDEasy\cli\target\ide-projects\basic\project\software\python\tools)
but was: \c\Users\projects\IDEasy\workspaces\main\IDEasy\cli\target\ide-projects\basic\project\software\python\tools

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

Labels

configuration should be configurable or configuration change install installation process of IDE + tools and install commandlet uv fast Python package and project manager

Projects

Status: 👀 In review

Development

Successfully merging this pull request may close these issues.

uv tools are installed globally

4 participants