The base64 crate "requires Rust v1.31 or higher". WTF. How can one not have base64 code that works on all #Rust versions...
@stevenroose The idea is that the compiler is backwards-compatible and automatically updates, so you never have a reason to stay on an old version.
It's exactly the same thinking as the change from the Internet Explorer upgrade model to Chrome upgrade model.
@stevenroose It is of course a shocking difference compared to C's "C 1999 is still too new in 2019" approach.
There are two major features Rust wants to release (async and const generics), and may slow down after that.
@kornel The flipside is that when your codebase is v1.19-compliant, you get a heckton of warnings printed about all kinds of things being deprecated.
But well, backwards compatibility is of course awesome. But there are reasons to stay on an older release, though: https://github.com/marshallpierce/rust-base64/issues/112#issuecomment-520907539
@stevenroose Rust ecosystem doesn't support Debian, sorry. You will have *endless* pain if you try to use Debian's unsupported Rust versions. It's rustup-or-nothing.
@stevenroose @kornel debian trying to be c's package manager: "oh yeah, we give you outdated software, but don't worry about security issues! when we hear of security issues in the upstream project, someone from our team will start editing critical parts of other people's c code until it compiles again, then we'll ship it to everybody. also, two thirds of our package names end with -dbg or -dev, because all software has header files and debug symbols, doesn't it?"
@stevenroose It definitely tries to follow a successful model. Cargo is very similar to npm. Language's backwards compat + continued evolution is similar to EcmaScript. Rustc release trains are the same as browsers' shipping V8 & SpiderMonkey.
Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.