|
|
Subscribe / Log in / New account

But why

But why

Posted Oct 1, 2024 23:05 UTC (Tue) by josh (subscriber, #17465)
In reply to: But why by sam_c
Parent article: An update on gccrs development

> I also maintain that the ecosystem will eventually have to stop chasing nightly or bleeding-edge MSRVs to be truly seen as a stable, mature language.

The ecosystem largely *doesn't* chase nightly. Some crates use nightly to test or demonstrate new features; the vast majority of the ecosystem uses stable.

And, empirically, there are plenty of people seeing it as a stable, mature language *now*.

There's ongoing work to help people who are stuck on old compiler versions, by helping them run correspondingly older versions of crates. But in general, distributions that are snapshotting old versions of Rust and not updating them should also be snapshotting old versions of crates that work with that old version of Rust. Nonetheless, we're adding some support for people who don't do so.


to post comments

But why

Posted Oct 1, 2024 23:14 UTC (Tue) by sam_c (subscriber, #139836) [Link] (6 responses)

> The ecosystem largely *doesn't* chase nightly. Some crates use nightly to test or demonstrate new features; the vast majority of the ecosystem uses stable.

Okay, but there's enough people who do that it becomes problematic for people shipping Rust applications. It doesn't really matter to me if most of them are fine if there's a substantial minority which aren't and it seems like it's accepted in the ecosystem.

On the other hand, it is very rare for us to come across software which needs e.g. bleeding edge GCC or Clang (both as an individual and even more so at scale).

It is *not* uncommon for us to find a package is relying on crates from a git repo (not even releases) and also using unstable features. I wish that weren't the case, I hope it will stop being the case, but it does happen to us a lot. I believe you of course that many aren't like that, but it doesn't change that there's a substantial chunk which are?

Rust applications that require nightly

Posted Oct 2, 2024 9:59 UTC (Wed) by farnz (subscriber, #17727) [Link] (5 responses)

Your experience doesn't match mine; the only Rust code I have on my system (despite having several Rust applications compiled from source on here) that requires nightly is a toy OS kernel I'm writing for the fun of it. Everything else I use is compiled with a stable compiler - including everything my employer's code depends upon.

What packages are you seeing that depend on unstable features and/or a nightly compiler?

Rust applications that require nightly

Posted Oct 4, 2024 3:31 UTC (Fri) by sam_c (subscriber, #139836) [Link] (4 responses)

I gave a list of examples that came to mind at https://lwn.net/Articles/992686/. Chromium is the biggest hassle at the moment for us. It's important to keep in mind that for many, this might be their first experience with packaging Rust.

Rust applications that require nightly

Posted Oct 4, 2024 4:07 UTC (Fri) by sam_c (subscriber, #139836) [Link]

From some discussion with others off-LWN, it was suggested that some of the cases we've hit are where it's a just-stabilised feature in the latest rustc release, which would make sense with how we then hit it again in our stable version of rust before we stabilise a new version of it on our end.

Rust applications that require nightly

Posted Oct 4, 2024 8:57 UTC (Fri) by farnz (subscriber, #17727) [Link] (2 responses)

I've never had much luck building any browser from source without severe pain, going right back to the days of the Mozilla suite (before Firefox existed), so I can well believe that browsers are a complete pain. Back in the day, the trouble I kept hitting with browsers was that they depended on patched versions of bleeding edge libraries, often built with very specific C++ compiler versions otherwise they wouldn't work, and I can easily believe that that attitude has carried on into their forays with Rust.

But two browser projects is not a significant chunk of the Rust ecosystem; would you accept me dismissing C++ as a language because you can't compile anything with less than 16 GiB RAM + swap (the current minimum for Firefox and Chromium)?

Rust applications that require nightly

Posted Oct 4, 2024 19:36 UTC (Fri) by sam_c (subscriber, #139836) [Link] (1 responses)

Oh yes, very much agreed.

But no, we're all used to C++. We're not used to Rust. Perceptions and getting familiar with something new does matter? Especially with the background I mentioned.

Rust applications that require nightly

Posted Oct 5, 2024 13:13 UTC (Sat) by farnz (subscriber, #17727) [Link]

The thing I was calling you out on was the claim that the Rust ecosystem as a whole (ripgrep, alacritty, deno, mdbook, wasmer, wezterm, ruffle, atuin, librsvg and others) require nightly; I'm only aware of three projects in the ecosystem that do - the two big browsers, and Rust for Linux.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds