Skip to content

Conversation

@tmccombs
Copy link

The version of home_dir in the standard library was fixed in rust 1.85, and the home crate now recommends using that instead of depending on that crate. See https://github.com/rust-lang/cargo/blob/master/crates/home/README.md

This does bump up the MSRV

The version of home_dir in the standard library was fixed in rust 1.85, and
the home crate now recommends using that instead of depending on that
crate. See https://github.com/rust-lang/cargo/blob/master/crates/home/README.md

This does bump up the MSRV
@konstin
Copy link

konstin commented Oct 28, 2025

We are interested in this change too, both to follow the guidance from the cargo team that you shouldn't use the home crate, and to remove the dependency from our dependency tree.

konstin added a commit to astral-sh/uv that referenced this pull request Oct 28, 2025
The `home_dir` function in std was deprecated for some years for reading `HOME` on Windows. It has recently been fixed and undeprecated: rust-lang/rust#132515

Conversely, the Cargo maintainers want us to move away from the home crate (https://github.com/rust-lang/cargo/tree/master/crates/home):

> Note: This has been fixed in Rust 1.85 to no longer use the HOME environment variable on Windows. If you are still using this crate for the purpose of getting a home directory, you are strongly encouraged to switch to using the standard library's home_dir instead. It is planned to have the deprecation notice removed in 1.87.
>
> This crate further provides two functions, cargo_home and rustup_home, which are the canonical way to determine the location that Cargo and rustup store their data.
>
> See rust-lang/rust#43321.
>
> > This crate is maintained by the Cargo team, primarily for use by Cargo and Rustup and not intended for external use. This crate may make major changes to its APIs or be deprecated without warning.

When lunacookies/etcetera#36 merges, we can remove the home crate from our dependency tree.
konstin added a commit to astral-sh/uv that referenced this pull request Oct 28, 2025
The `home_dir` function in std was deprecated for some years for reading `HOME` on Windows. It has recently been fixed and undeprecated: rust-lang/rust#132515

Conversely, the Cargo maintainers want us to move away from the home crate (https://github.com/rust-lang/cargo/tree/master/crates/home):

> Note: This has been fixed in Rust 1.85 to no longer use the HOME environment variable on Windows. If you are still using this crate for the purpose of getting a home directory, you are strongly encouraged to switch to using the standard library's home_dir instead. It is planned to have the deprecation notice removed in 1.87.
>
> This crate further provides two functions, cargo_home and rustup_home, which are the canonical way to determine the location that Cargo and rustup store their data.
>
> See rust-lang/rust#43321.
>
> > This crate is maintained by the Cargo team, primarily for use by Cargo and Rustup and not intended for external use. This crate may make major changes to its APIs or be deprecated without warning.

When lunacookies/etcetera#36 merges, we can remove the home crate from our dependency tree.
@utkarshgupta137
Copy link
Collaborator

Merged with minor changes in #39 & released as v0.11.0. Thanks!

konstin added a commit to astral-sh/uv that referenced this pull request Oct 29, 2025
The `home_dir` function in std was deprecated for some years for reading
`HOME` on Windows. It has recently been fixed and undeprecated:
rust-lang/rust#132515

Conversely, the Cargo maintainers want us to move away from the home
crate (https://github.com/rust-lang/cargo/tree/master/crates/home):

> Note: This has been fixed in Rust 1.85 to no longer use the HOME
environment variable on Windows. If you are still using this crate for
the purpose of getting a home directory, you are strongly encouraged to
switch to using the standard library's home_dir instead. It is planned
to have the deprecation notice removed in 1.87.
>
> This crate further provides two functions, cargo_home and rustup_home,
which are the canonical way to determine the location that Cargo and
rustup store their data.
>
> See rust-lang/rust#43321.
>
> > This crate is maintained by the Cargo team, primarily for use by
Cargo and Rustup and not intended for external use. This crate may make
major changes to its APIs or be deprecated without warning.

When lunacookies/etcetera#36 merges, we can
remove the home crate from our dependency tree.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants