fix(trim-paths): custom workspace-relative member paths remap - #17366
fix(trim-paths): custom workspace-relative member paths remap#17366weihanglo wants to merge 3 commits into
Conversation
This is effectively `library/=<to>/library` and `compiler/=<to>/compiler` in rustc bootstrap, when `__CARGO_RUSTC_BOOTSTRAP_WS_REMAP` is set. This isn't needed for normal cases because relative member paths are exactly what users want. See <rust-lang/rust#161049 (comment)>
|
r? @epage rustbot has assigned @epage. Use Why was this reviewer chosen?The reviewer was selected based on:
|
|
I don't particularly like this, but seems like inevitable as we already opened the |
I'm not certain about that. I would expect users who distribute binaries and libraries to only want remapped paths, not a mix of absolute remapped paths but relative paths are not. |
|
For example if I distribute a Rust software with Like is the case with |
|
I see. So it is not just an extra prefix that a symbolication pipeline or symbol server can handle with one more entry. It is a dual mode (relative paths vs. virtual prefix) that consumers need to deal with separately. My original idea of keeping it relative is for an easier debugging experience that people mostly debug their own application code. Without a virtual prefix for local there is nothing to configure in the debugger. Anyway, valid point. Let's record it as an unresolved question and ask users during the call for testing. |
What does this PR try to resolve?
This is effectively
library/=<to>/libraryand
compiler/=<to>/compilerin rustc bootstrap,when
__CARGO_RUSTC_BOOTSTRAP_WS_REMAPis set.This isn't needed for normal cases
because relative member paths are exactly what users want.
See rust-lang/rust#161049 (comment)
Part of #17309
How to test and review this PR?
cc @Urgau
🤖 LLM disclosure: Used for verifying it actually works with rustc bootstrap, which has been signed off on rust-lang/rust side (rust-lang/rust#161049).