Came here to say this. The last major language changing feature was async/await.
Everything else seems to be on the order of small polish to the language (trailing commas), standard library expansion, and in some cases language restrictions to make rust fit better with embedded systems.
In many ways, Java is seeing more major changes than rust is.
The main difference is that in rust if you don't use a feature you in general don't have to know about it , many features are intuitive(-ish) and due to rust safety guarantees you can often just "try" if your intuitive understanding works and as long as it doesn't involve unsafe you normally don't have any bad surprises.
In C++ this is less so the case. It's quite simple to write code which seems ok, currently happens to execute expected behaviour but triggers undefined behaviour.