12 ms·
If you think the whole world of IT works on bleeding edge tech, you're mistaken. Most distributions have an LTS that is supported for 5 to 10 years. You won't
by linkdd 6y ago
If you think the whole world of IT works on bleeding edge tech, you're mistaken.
Most distributions have an LTS that is supported for 5 to 10 years. You won't get the newest, hottest compiler on those platforms.
> So what?
Rust is a great language, but y'all need to calm down with the hype. "Not Rust" != evil.
- Tuna-Fish 6y agoFor as long as Rust has existed, no-one who is writing rust actually wants to use a compiler version that's any older than the newest. The language keeps adding good stuff in every version. I thought it would calm down a bit after NLL, but now everyone is salivating for const generics, which will land in 1.41... and in a whole lot of versions after that, as they split up the feature into smaller, easier to implement and study chunks. The language simply hasn't reached the level of maturity of C++ where people yawn at the new features that are going to be added. > Most distributions have an LTS that is supported for 5 to 10 years. You won't get the newest, hottest compiler on those platforms. Yes, you do, because you won't be using the distribution-supplied compiler because like the entire rest of the rust developer community you are using rustup.
- linkdd 6y agoWhat if you're in a constrained environment, there is no rustup installed, and you don't have the permissions to install it? This issue certainly occurred with a lot of C/C++ projects over the past 30 years, why would Rust be exempt of that issue in the future?
- rapsey 6y agoIf someone is working in an insane environment then that is his problem and also highly unlikely to be using Rust anyway. Why should library developers care about keeping compatibility with old Rust compiler versions for some arbitrary amount of time?
- sanxiyn 6y agoThat's easy to answer. Because users want that. Of course developers are free to ignore such users, and such users will choose a different library.
- Ar-Curunir 6y agorustup is installed within the user's home directory. If you can't write to your own home, then what can you do on this device that involves compiling code?
- jcelerier 6y ago> rustup is installed within the user's home directory. If you can't write to your own home, then what can you do on this device that involves compiling code? there are plenty of companies when you don't have the right to import any new executable code (coming from "outside") in office computers.
- linkdd 6y agoSmall example in one of my previous job: Application was built using Java/SpringBoot, and the CI/CD was based on Jenkins. We had no control over the version of maven/jdk installed within the Jenkins, and the network policies did not authorize outgoing traffic (so no curling rustup). Only one company repository (based on Nexus) was available. Basically, we were users of a company provided/constrained platform to build our applications using a curated list of tools that has been audited by another team. If we wanted to add a dependency not present in the provided repository, it would require time for the audit and integration. Time we did not necessarily had. Now, with Rust/rustup/Cargo, the company would have provided a specific set of Rust versions and a private crate repository. I doubt that the auditing team would have time to add a new Rust version every week. If a crate present on the private repository is updated upstream and requires a more recent Rust version, the crate update will be delayed until the Rust version is audited/validated/integrated. IMHO, this is a very common use case, since companies like to split concerns in different specialized teams.
- pjmlp 6y agoEasy, using system compilers and home mounted as noexec, quite common in corporate UNIX deployments with IT managed development servers that the devs connect from their workstations.
- steveklabnik 6y agoThere is a huge community wide discussion about this. Characterizing it as “no-one” completely ignores that some of the most prolific and vocal community members have advocated for expressly supporting older Rusts. One of the core issues here, imo, is that it is unclear which Rust is the oldest one to be supported. That requires a clarity in understanding the pros and cons of each one, and simply due to there being more releases of rustc, it’s a little less clear which version gets you the most bang for your buck here. I agree that some of this is a function of the new-ness of the language. I think once (if) we start an LTS program, that will help, and is partially why I desire such a thing. https://rust-lang.github.io/rfcs/2495-min-rust-version.html https://rust-lang.github.io/rfcs/2495-min-rust-version.html is an example of a feature we’re adding to help people do this kind of thing. It’s small but it’s a start.
- nindalf 6y agoAnyone developing games with this project is likely to be on Windows, Linux or Mac, on x64 or aarch64. Such developers would likely install Rust with rustup, not with the distro provided one. So yes, any developer that fits this description can rely on the newest, hottest compiler.
- linkdd 6y agoAnd that's perfectly fine. But game developers are a small fractions of Rust developers.
- _joel 6y agoI think most devs use rustup, not the distro supplied one.
- 3836293648 6y agoIs rustc even in the repos? Should it (and cargo) be? Or should they just have rustup? I lean towards the latter
- steveklabnik 6y agorustc is in pretty much every distro's repos at this point. They often have Cargo too. They sometimes, but not always, have rustup.
- maccam94 6y agoSome distros ship programs compiled with rust, and they do so using the version of rustc in the repo.
- nicoburns 6y agoRight, but it's this specific project that requires the latest Rust compiler, not Rust libraries in general.
- eeZah7Ux 6y ago> If you think the whole world of IT works on bleeding edge tech, you're mistaken. Unfortunately HN attracts the very vocal minority...