5 ms·
There's a nightly build every night. There is a stable release every now and then. There are no official LTS releases. The question has been asked every now and
by awestroke 2y ago
There's a nightly build every night.
There is a stable release every now and then. There are no official LTS releases.
The question has been asked every now and then, but I see no real need for an LTS release. Just pick any version and keep using that specific version for as long as you want to. You could pick the same version as some LTS linux distro version.
- GolDDranks 2y agoThe stable release is every 6 weeks, i.e. once in a month and a half. Only the newest version at the time is supported. The qualified Ferrocene toolchain has "2 years of patch releases for select versions", so they have 2-year LTS releases, but that's a paid support plan. Overall, the Rust community hasn't felt much need for official LTS releases.
- daghamm 2y agoSerious question: Can you really call it stable if it is updated every 6 weeks?
- GolDDranks 2y agoEqually serious answer: yes, if it doesn't break backwards compatibilty between the updates. This is what the Rust project means by stable. You can update and your code will continue building. (There's a bunch of documented caveats though.) Rust has been stable in this sense since 1.0, almost ten years. Of course, you might have different semantics for "stable". Some seem to mean "rarely updating" or "each update is small" by that. In the latter sense, too, Rust has becoming stabler over the last few years. In the "rarely updating" sense, Rust is not going to change course. Frequent, time-based releases have demonstrably made the progress smoother, and in a sense, "stabler", as in, more predictable and bug-free.
- bmitc 2y ago> but I see no real need for an LTS release What makes Rust special over other programming languages and operating systems and software systems that have LTS releases? For example, .NET and Ubuntu have LTS releases.
- AlotOfReading 2y agoC++ is the most direct comparison. Neither GCC nor Clang have LTS releases. MSVC does via Visual Studio, but I've never seen anyone list it as a benefit vs the other two. What advantage does LTS have for compiler toolchains if no one seems to want it?
- pjmlp 2y agoThey kind of do, that is why you get GCC 10 when GCC 15 is around the corner. ABI stability for one.
- plorkyeran 2y ago.NET and Ubuntu are notably not programming languages. C# does not have LTS releases. LTS releases are for things which end up in your runtime environment. Compilers typically don't have LTS releases because there isn't much room for critical bugs which aren't discovered for a long time. Rustc (as with most AOT compilers) does not attempt to be safe to use on untrusted source code, so a bug when it's given a malicious file isn't a security vulnerability. It's theoretically possible for rustc to have a codegen bug which causes security problems in the code which it compiles, but in practice such things don't really happen and there's nothing unsafe about using a ten or twenty-year-old build of a compiler. LTS releases of the rust standard library could potentially need to become a thing. That could have bugs which need to be backported to old versions, and I assume it just hasn't really come up yet.
- pjmlp 2y agoYes it does, C#, F#, VB, C++/CLI versions are tied to specific .NET versions. Not only do they depend on CLR changes, they also depend on the BCL that is shipped alongside.
- miki123211 2y agoThat, and then there's the fact that due to editions, modern Rust compilers can still compile older Rust code, which isn't always the case for other languages. There's Python 3.10 code out there that won't run under 3.13, especially so if it relies on components written in C that use Python's C API. If you didn't have LTS releases for Python, you'd have a choice between constantly having to port your code to run under the latest Python version or using an older, insecure one. Rust doesn't have this problem, old Rust code should compile just fine under newer versions of the compiler and stdlib.
- consteval 2y ago> but I see no real need for an LTS release For one, providing approved and certified toolchains for safety-critical systems.