Yes - I think the proof of the pudding will be whether they put in the effort to eliminate these unsafe blocks. The conversion to Rust is the starting point that makes this possible, but it's definitely not "done" at this point.
"0": ">=0.0.0, <1.0.0"
"0.9": ">=0.9.0, <1.0.0"
"0.9.3": ">=0.9.3, <1.0.0"
Notice how the the minimum bound changes while the upper bound is the same for all of them. (default) ^ Semver compatible, as described above
>= Inclusive lower bound only
< Exclusive upper bound bound
Note that while an exact bound will force that exact version to be used, it still doesn't allow two semver compatible versions of a crate to exist together. For example. If cargo can't find a single version that satisfies all constraints, it will just error.