Morning all!
Okay, let me start out by saying that I know absolutely sweet F.A. about Rust. There's simply something I'm trying to get working and it's required me to make a few changes. And with every change, it's getting closer to building successfully… or so I hope.
Anyway, I'm here to bother you for a reason, not just to waffle. I was wondering if someone could be kind enough to explain this rust toolchain
malarkey?
When I started trying to "fix" this thing (it's a dockerfile), I updated it to build from the latest and greatest rust and then updated to the latest and… I digress, point being it's failing some cargo stuff and I have reason to believe it's because of the rust toolchain which is set as nightly-2022-07-19
now, I thought I could just set that to stable
, but upon reading some docs, I need to set the date. I was just wondering if someone could explain why? Why can't I just have the toolchain set to latest
? It seems complicated for nothing.
Nightly is for language features of Rust that are still being tested or experimented with. It should only be used by developers who are eager for the latest bleeding edge capabilities and are willing to adapt if those capabilities change or get dropped entirely. Or you might use nightly if you're a good citizen and testing out the experimental capabilities so that you can give feedback on them.
A later version of nightly could potentially change or drop the features of an earlier version of nightly in ways that are not backwards compatible. That's why you might have to specify which version of nightly you need (potentially an older version), if you're building something that depended on nightly features.
Ah, so what I'm seeing is an edge case and not the standard? Does that mean I can reference
standard:2.0
because the only reference I can find is https://rust-lang.github.io/rustup-components-history/aarch64-unknown-linux-gnu.html which is always date and never version number.Thank you BTW!
I'm not familiar enough with what you're trying to do to offer any specific advice. I've spent very little time with writing dockerfiles, and have never needed to set up a Rust toolchain in a dockerfile.
I think the first step is figuring out if nightly is really needed. If there aren't any nightly features needed then the latest stable toolchain should work fine, and worrying about what version of the toolchain to use is a red herring.
Thank you so much. I appreciate you taking the time out of your day to help.