rust-lang / rust-lang/rustup

`rust-toolchain.toml`: support multiple channels, or rather support nightly AND stable version.

Open
#4,391 7 comments 3 reactions 1 assignee View on GitHub

@rami3l is already working on this.

Since Aug 20, 2026.

enhancement
Dominant language
Rust
Stars
7k
Forks
1.1k
Avg merge
22h 40m
Merged PRs (30d)
46

Description

Problem

My team prefers cargo +nightly fmt for formatting over stable.

I have a different nightly installed locally than we have in CI, causing CI checks to fail. A solution would be to use rust-tooolchain.toml, alas we only want to use nightly for fmt.

Today rust-tooolchain.toml does not support this, but I would like it to be supported.

What do you think?

Proposed Solution

Bikeshedding syntax/overall idea:

[toolchain]
nightly = "2024-12-14"
stable = "1.87.0"

And then when I run cargo +nightly the "2024-12-14" version will be used. But for non-nightly commands "1.87.0" is used.

Notes

We can also omit either or, i.e. both:

[toolchain]
nightly = "2024-12-14"

and

[toolchain]
stable = "1.87.0"

are valid.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.