SIGN IN SIGN UP

feat(config): Add build.profile, install.profile (#17215)

*[View all
comments](https://triagebot.infra.rust-lang.org/gh-comments/rust-lang/cargo/pull/17215)*

### What does this PR try to resolve?

This adds `build.profile` to smooth out the transition for #15931 by
allowing users to change to the `debug` profile by default.

This also adds `install.profile`
- to further clarify that `build.profile` does not apply
- to allow users to create a custom profile for their tools without
affecting the rest of their development

### How to test and review this PR?

This is part of #15931
- `dev` profile changes are deferred for 1+ releases

How should `test` and `bench` be handled? We went with `cargo test`
having `build.profile` override the default `test` so users will get
consistent behavior between `cargo build` and `cargo test`.
Alternatively, we could have told users to set `profile.test.inherits =
"debug"`. Changing the inheritance is even less obvious though it is
likely to run into fewer issues if projects change the `test` profile.
R
rustbot committed
07b80494920f3824e2515e536b76ff282e23993e
Committed by GitHub <noreply@github.com> on 9/25/2026, 6:48:00 PM