@@ -7,13 +7,19 @@ This provides the definition of `home_dir` used by Cargo and rustup,
77as well functions to find the correct value of ` CARGO_HOME ` and
88` RUSTUP_HOME ` .
99
10- The definition of ` home_dir ` provided by the standard library is
10+ The definition of [ ` home_dir ` ] provided by the standard library is
1111incorrect because it considers the ` HOME ` environment variable on
1212Windows. This causes surprising situations where a Rust program will
1313behave differently depending on whether it is run under a Unix
1414emulation environment like Cygwin or MinGW. Neither Cargo nor rustup
1515use the standard library's definition - they use the definition here.
1616
17+ ** Note:** This has been fixed in Rust 1.85 to no longer use the ` HOME `
18+ environment variable on Windows. If you are still using this crate for the
19+ purpose of getting a home directory, you are strongly encouraged to switch to
20+ using the standard library's [ ` home_dir ` ] instead. It is planned to have the
21+ deprecation notice removed in 1.86.
22+
1723This crate further provides two functions, ` cargo_home ` and
1824` rustup_home ` , which are the canonical way to determine the location
1925that Cargo and rustup store their data.
@@ -25,6 +31,7 @@ See [rust-lang/rust#43321].
2531> crate may make major changes to its APIs or be deprecated without warning.
2632
2733[ rust-lang/rust#43321 ] : https://github.com/rust-lang/rust/issues/43321
34+ [ `home_dir` ] : https://doc.rust-lang.org/nightly/std/env/fn.home_dir.html
2835
2936## License
3037
0 commit comments