I really like Rust; But I see an annoying cult forming around it, and they try really hard to proselytize (Not to say that I was not a part of it in the past, but I am woke now)
It is necessary to "proselytize" a young language in order to gain any traction with wider audiences. This is especially true when you're going up against decades old, entrenched languages like C++.
If you don't want your language to die from indifference the only other option is to find a poorly served niche and claim it as your own.
Just do something really technically awesome in Rust that becomes hugely popular and the language will speak for itself. I've not seen that yet. But I do hear a lot of fanaticism. That's normally a bad sign.
Docker is written in Go. It works great and is changing how corporations compute. Where is Rust's Docker? It needs that sort of thing to stand on its own.
C++ has nothing left to prove. Yes, it has warts, but those have been and are being fixed (C++11, 14 and 17). Go is 75% there, as far as proving itself technically, and is approaching C++ in the, "what more is there to prove" department. Rust is more like D. Lots of hype and talk but only a few very notable, wildly popular things have been built with it. It has a long way to go.
It has some Firefox, GNOME and Visual Studio Code components, today. And some parts of Fuchsia tomorrow.
Sure it still cannot match C++ in many areas, I have stated multiple times I rather use C++ alongside Java/.NET workflows than trying to fit Rust in its current state.
But it will get there, given that it already got the attention of Oracle, Dropbox, Microsoft, Google and a few others.
Sadly I cannot say the same for D, the language is nice, the community has great people, but trying to be a better C++ without a strong domain focus has made it behind all alternatives, including Rust.
The primary difference between Rust & D is that Rust is directly challenging C++'s bread & butter, which nobody else is really doing.
Go's combination of M:N threading & GC make it more of a challenger to Node.js than C++, they are really in fairly different universes. D also bets on the GC, which also makes it unsuitable for a chunk of C++'s users and the interfacing with existing C/C++ code gets messy with the GC lurking in the shadows (it is somewhat terrifying that GC.addRoot() not only exists but that you're supposed to use it)
Rust's excitement is a result of directly challenging C++ in the non-GC language space along with things like attempting to make multi-threaded race conditions a compiler error (which is technically awesome and something nobody else is doing)