Skip to content

Conversation

@konstin
Copy link
Member

@konstin konstin commented 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.

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 konstin requested a review from geofft October 28, 2025 12:49
@konstin konstin added the internal A refactor or improvement that is not user-facing label Oct 28, 2025
@konstin konstin requested a review from BurntSushi October 28, 2025 12:49
@konstin konstin temporarily deployed to uv-test-registries October 28, 2025 12:52 — with GitHub Actions Inactive
Copy link
Member

@BurntSushi BurntSushi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

w00t!

@utkarshgupta137
Copy link

Sorry for the delay. I've released v0.11 with the home crate removed.

@konstin
Copy link
Member Author

konstin commented Oct 28, 2025

Thank you for the quick response and the release!

@konstin konstin merged commit de96aa1 into main Oct 29, 2025
161 checks passed
@konstin konstin deleted the konsti/use-std-home branch October 29, 2025 17:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

internal A refactor or improvement that is not user-facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants