rjgoyln opened a new pull request, #72059:
URL: https://github.com/apache/airflow/pull/72059

   ## Summary
   
   `uv tool list` omits a tool whose environment has been corrupted, so a 
leftover `uv tool install` of breeze stays invisible to the legacy-install 
check in `scripts/tools/setup_breeze` while still owning `~/.local/bin/breeze`. 
Setup stops on the generic "already exists and is not the breeze shim managed 
by this script" message, which tells the user to inspect the file themselves 
and never names `uv tool uninstall apache-airflow-breeze`, the step that 
actually clears it.
   
   Following that step by hand does not finish the migration either. uv has 
lost the metadata recording the entry point by then and cannot retract it, so 
the symlink survives and dangles. `-e` and `-f` both follow symlinks and see 
nothing, and the next run writes through the dead link into a directory that is 
no longer there.
   
   Setup now falls back to `uv tool dir` when the listing comes back empty, and 
clears a dangling breeze symlink before installing the shim. Clearing is 
limited to links pointing into uv's own tool directory, so a broken symlink 
belonging to the user is still reported rather than deleted. `breeze` gained 
the same fallback, since its legacy-install warning went quiet in precisely the 
case it exists for.
   
   ## Tests
   
   Each new test was confirmed to fail against the current script before the 
fix, reproducing both dead ends: the misleading refusal and, where no entry 
point remains, a silent overwrite of the legacy install.
   
   ---
   
   ##### Was generative AI tooling used to co-author this PR?
   
   - [X] Yes — Claude Code (Opus 5)
   
   Generated-by: Claude Code (Opus 5) following [the 
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to