cargo vendor is not consistent about paths and symbolic links on Windows vs. other platforms #14965
Open
Description
Problem
About paths:
when a crate contains paths for e.g. dependencies in a workspace, cargo vendor
uses / on Unices and \ on Windows, changing whatever the original path was.
About symbolic links:
when a crate contains symbolic links to another file in a workspace, cargo vendor
expands the content on Unices and replaces it with the path of the link target on Windows.
Steps
cargo new foo
cd foo
cargo add libz-rs-sys
cargo vendor
On Linux or Mac, you end up with a proper vendor/libz-rs-sys/LICENSE
file, and vendor/libz-rs-sys/Cargo.toml
has dependencies.zlib-rs.path = "../zlib-rs"
.
On Windows, vendor/libz-rs-sys/LICENSE
literally contains ../LICENSE
, and vendor/libz-rs-sys/Cargo.toml
has dependencies.zlib-rs.path = "..\zlib-rs"
.
Possible Solution(s)
cargo vendor should be consistent, wherever it's run.
Notes
No response
Version
Activity