Are people deploying production code in a language that is still in its 0.x version?
Rust didn’t even have async await at that time
Citation needed. A lot of people wanted Rust to stabilize. Hence why they huried to Rust 1.0.
When you break things regularly, you're forcing a choice on every individual package in the ecosystem: move forward, and leave the old users behind, or stay behind, and risk that the rest of the ecosystem moves forward without you. Now you've got a whole ecosystem in a prisoner's dilemma. For an individual, maybe you can make a choice and dig in and make your way along without too much trouble. But the ecosystem as a whole can't, the ecosystem fractures, and if it doesn't converge on the latest version, it slowly withers and dies.