1518 uv tools are now installed locally#1885
Conversation
…ith corresponding unit tests
Coverage Report for CI Build 25508939672Coverage increased (+0.005%) to 70.746%Details
Uncovered ChangesNo uncovered changes found. Coverage Regressions3 previously-covered lines in 2 files lost coverage.
Coverage Stats💛 - Coveralls |
|
I just tested your PR. Generally, it seems to work very well. uv tools are now always installed within the IDEasy project. However, I noticed the following: uv tools that are installed within an IDEasy project are also available in all other projects. For example, if I install the tool "ruff" in the IDEasy project "A", then the tool is installed correctly under The goal was that uv should be installed in an isolated way. This is also achieved for the uv installation itself. However, the fact that uv tools are then shared across projects violates this goal somewhat IMO. Can you take a look at it again? |
…nvironment variables in Python and Uv tool configurations
I have made the adjustments to enable uv to install tools in a isolated way, can you have a look at it to see if it works now? |
areinicke
left a comment
There was a problem hiding this comment.
Everything looks good now and works as expected. Great job!
Do not forget to add this issue to the changelog.
This PR fixes #1518
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.
mvn clean testlocally all tests pass and build is successful#«issue-id»: «brief summary»(e.g.#921: fixed setup.bat). If no issue ID exists, title only.In Progressand assigned to you or there is no issue (might happen for very small PRs)with
internal