Packaging Rust for Fedora
Packaging Rust for Fedora
Posted Oct 29, 2022 6:45 UTC (Sat) by zdzichu (subscriber, #17118)In reply to: Packaging Rust for Fedora by smoogen
Parent article: Packaging Rust for Fedora
Posted Oct 29, 2022 10:24 UTC (Sat)
by sbakker (subscriber, #58443)
[Link] (3 responses)
Er, welcome to 2027? (You might want to check your clocks.)
Posted Oct 29, 2022 10:41 UTC (Sat)
by excors (subscriber, #95769)
[Link] (2 responses)
Posted Oct 30, 2022 12:49 UTC (Sun)
by emk (subscriber, #1128)
[Link] (1 responses)
It's actually difficult to maintain 100% source compatibility over most of a decade. If you download sufficiently old C and C++ sources, they often require a bunch of tweaking to build.
But overall, Rust has done a fantastic job of maintaining source compatibility over time. Thanks to the "editions" system, it's possible to mix libraries using Rust 2015 with libraries using Rust 2021.
My general strategy for deploying Rust binaries on Linux is to use musl-libc, and depend on nothing except the kernel APIs and the system cert store. This works especially well in mixed environments, where I need to support both Ubuntu and Alpine-based Linux containers, which don't have glibc.
Posted Nov 1, 2022 9:19 UTC (Tue)
by roc (subscriber, #30627)
[Link]
Posted Oct 30, 2022 10:28 UTC (Sun)
by ssokolow (guest, #94568)
[Link] (2 responses)
For example, in 2013, they switched from compiler-privileged sigils to standard library types for things like Rust as the "great interop with C and a higher-level systems programming language" language we know today didn't truly exist until late 2014 or early 2015.
Posted Oct 30, 2022 17:41 UTC (Sun)
by nevyn (guest, #33129)
[Link] (1 responses)
Posted Oct 30, 2022 23:29 UTC (Sun)
by ssokolow (guest, #94568)
[Link]
Yes, Rust 1.0 was quite spartan... but you can still compile what you wrote for it in modern Rust assuming you don't fall into one of the exceptions like "this code only compiled because of a compiler bug".
Packaging Rust for Fedora
Packaging Rust for Fedora
Ironically, I can still compile some of my Rust 1.0 code from 2015 using modern compilers, just by running "cargo build". When I can't compile it, 90% of the trouble is typically caused by a C dependency, OpenSSL. OpenSSL breaks source and binary compatibility relatively often, and it's had plenty of urgent security updates. So when I rebuild old code, I often need to update the networking libraries to something modern.
Packaging Rust for Fedora
Packaging Rust for Fedora
It's a bit misleading to point to pre-1.0 versions of Rust, given some of the massive changes that took place in the lead-up to promising stability.
Packaging Rust for Fedora
Arc<T>
and, in 2014, they removed the green threading runtime that had been helping to encourage people to draw comparisons with Go.
Packaging Rust for Fedora
Packaging Rust for Fedora