4 ms·
> In my opinion Rust is about doing things right. On the other hand there is a quite dark cloud on the horizon with the stable vs nightly split. You can't run
by dom0 10y ago
> In my opinion Rust is about doing things right.
On the other hand there is a quite dark cloud on the horizon with the stable vs nightly split. You can't run infrastructure on nightly builds; or add nightly builds to distributions.
- chc 10y agoHow so? Most big projects have both stable releases and nightly builds that contain unfinished features. Why is it particularly troublesome for Rust?
- nercury 10y agoI am not sure it's really a split when you can build stable on nightly. Nightly is great for experimentation.
- pimeys 10y agoI don't see a split here. I know lots of cool ideas have been posted to Hacker News lately, that showcase something possible in future versions of Rust. But I seriously hope people keep these libraries as showcases, not production-quality tools. I'd say this nightly/stable split is a bit out of proportion. In 2017 we'll get Tokio and lots of Tokio-ready libraries. Some of them already work and compile with stable Rust. And maybe in the end of the year we can take a proper look what we can do with Rocket, or Diesel...
- steveklabnik 10y agoTokio runs entirely on stable, though 1.0 won't happen until some language changes land. Diesel does work on stable today, but its nightly features will be on stable in five weeks with 1.15.
- pimeys 10y ago> Tokio runs entirely on stable, though 1.0 won't happen until some language changes land. Are you talking about impl Trait or some other language changes?
- steveklabnik 10y agoimpl Trait is what I'm thinking of, yeah.
- brson 10y agoThere's little evidence for a "dark cloud" on the horizon because of Rust nightlies, besides people complaining of dark clouds. I'd suggest providing evidence of problems with nightlies and filing bugs about things that need to be stabilized.
- kincardine 10y agoI'm sorry your comment has gotten the response it has. The looming dark cloud of stable vs. nightly only looks like a dark cloud to those outside the Rust community. The article that made its way up Hacker News awhile ago (https://news.ycombinator.com/item?id=13251729 https://news.ycombinator.com/item?id=13251729) got pretty much no traction whatsoever in the Rust community.
- robohamburger 10y agoI have found the split has only gotten better with time. It used to be most package maintainers assumed you were using nightly/beta. The last holdouts I see are diesel and serde which have instructions for using nightly. Even then they realize no one wants to ship code on nightly so they provide directions for making a building using stable rust. Once the procedural macros stuff is stabilized they can stop. I have been extremely pleased with the rust community and the rust maintainers. And no I was not paid by them to say this... :)
- Ar-Curunir 10y agoFrom my impression, they'll be working with the stable compiler in a few weeks.
- oconnor663 10y agoI think the Rust community didn't take the discussion very far, because it felt like the comparison to Python 2 vs 3 was out of proportion. The single most important difference is that stable Rust code is always compatible with nightly, and comparisons that gloss over that difference feel frustrating. (Other folks have raised more detailed objections too, like the macro features that are about to land in stable.)
- Manishearth 10y agoThat article had so many inaccuracies and/or was hyperbolic. Most of the points there are plain wrong. http://xion.io/post/programming/rust-nightly-vs-stable.html#comment-3074170029 http://xion.io/post/programming/rust-nightly-vs-stable.html#...
- ekidd 10y agoAs I noted in https://news.ycombinator.com/item?id=13277477 https://news.ycombinator.com/item?id=13277477, there are really only two major Rust libraries that are easier to use on nightly Rust (serde and diesel), and both can already be used on stable using a `build.rs` file (which takes about 10 minutes to set up–see the docs for the projects). You'll be able to get rid of `build.rs` in about 5 weeks when Macros 1.1 lands. That said, if you want to play with nightly Rust, it's pretty trivial. Rustup https://www.rustup.rs/ https://www.rustup.rs/ makes it easy to install multiple Rust toolchains and switch between them, in a fashion similar to rvm and rbenv.
- Manishearth 10y agoThere are very few libraries that are nightly-only in Rust. Clippy is a big one, but clippy is a tool, not a library, so it's no big deal (we're working on making it not require a nightly compiler). Rocket is a recent one. I talked with the owner of Rocket and one of their goals was to help push the boundaries of Rust by playing with the nightly features. With that sort of meta-goal using nightly is sort of a prerequisite. Meh. You can use almost all of the code generation libs on stable via a build script. Tiny bit more annoying, but if it's a dependency nobody cares. A common pattern is to use nightly for local development (so you get clippy and nicer autocompletion) and make the library still work on stable via syntex so when used as a dependency it just works. The most used part of the code generation stuff will stabilize in 1.15 so it's mostly not even a problem.
- bjz_ 10y agoAlthough others don't see the 'dark cloud', as a long time user of Rust it has definitely put me off pushing for it too hard at work. That said, Diesel and Serde are now the only big libs that require nightly, but this is due to them relying on syntax extensions which are going to be stabilized in the next release. So if I were to start a new microservice using those libs it would be ready to go on stable in a few weeks time, which is super exciting. The only other thing would be async IO. Tokio is making big strides in that direction - not sure what the time-frame is on being able to use it on a server nicely though.
- mmstick 10y ago> add nightly builds to distributions rustup run nightly cargo build --release You were saying? In any case, there's no such thing as a stable vs nightly split. There's pretty much zero libraries that require nightly, and the few that have a nightly option for optional features will no longer require nightly after the macros update lands.