rust-analyzer fallback recurses through Homebrew’s wrapper
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Read the issue’s Homebrew discussion #7111 and linked Homebrew PR #315977 to understand the wrapper’s settings override and proposed approaches. The issue names no rustup files or tests, and the solution is explicitly open for discussion; first determine an agreed solution shape before locating implementation entry points. Done means rustup and Homebrew can meet the settings requirement without recursive fallback.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem you are trying to solve
When rustup is installed via homebrew and the active toolchain lacks rust-analyzer, homebrew-installed rustup selects its own shell wrapper as an external fallback and repeatedly executes it:
$ rust-analyzer -help
info: `rust-analyzer` is unavailable for the active toolchain
info: falling back to "/opt/homebrew/opt/rustup/bin/rust-analyzer"
...
error: infinite recursion detected
The proximate cause is that homebrew wraps rustup’s proxies to set RUSTUP_OVERRIDE_UNIX_FALLBACK_SETTINGS. rustup's fallback search excludes executables that are the same file as rustup, but the shell wrapper is a distinct file, so it passes that check, resulting in infinite recursion.
removing homebrew's binstubs avoids this recursion but those binstubs exist to override rustup's settings file, so removing the binstubs also requires patching rustup (take a look at the linked PR).
Is there another way to meet brew's needs? Should we add one? I'd be happy to send a patch, but I'd like some input on the shape of the solution (compile time env var?).
The original report is in Homebrew discussion #7111.
Solution you'd like
Up for discussion.
Notes
No response
- Ngôn ngữ chính
- Rust
- Star
- 7.1k
- Fork
- 1.1k
- Merge trung bình
- 1 ngày 4 giờ
- Pull request đã merge (30 ngày)
- 45
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của rust-lang/rustup
-
enhancement O-shell
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Verbose output for removing components on toolchain updateCó thể đã có người làm @rami3l đã nhận 6 ngày trước. Đang mởenhancement
rust-lang/rustup#5122 · 2 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Continuous performance tracking to avoid major regressionsCó thể đã có người làm @rami3l đã nhận 14 ngày trước. Đang mởmeta
rust-lang/rustup#5103 · 3 bình luận · 5 reaction · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Suggest another toolchain when removing a component unavailable to the current toolchainCó thể đã có người làm @devtechedge đã nhận 2 ngày trước. Đang mởenhancement help wanted
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 65/100
rust-lang/rustup#5098 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Simplify toolchain type hierarchyCó thể đã có người làm @rami3l đã nhận 21 ngày trước. Đang mởenhancement
rust-lang/rustup#5092 · 8 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của rust-lang/rustup
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
agentic-os-org/ANOLISA#6742 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
api: storage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
googleapis/google-cloud-rust#7153 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
comp-mysql
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
ClickHouse/ClickHouse#124749 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
oracle/rust-oracledb#43 · 1 bình luận ·