Live data from Hacker News

Announcing Rust 1.16

blog.rust-lang.org

81–90 of 95 posts

Re: Announcing Rust 1.16

#81

Earlier quoted context omitted.

>Given that we run these tests on every commit, in some sense, it would be the PR author's job, but if they get stuck, we need someone who's able to help them fix that. That is the hardest part of moving from tier 2 to tier 1 in my personal opinion. Who is that person? What happens if they drop off the project? I would have liked to volunteer as the kind of person that would investigate issues for the FreeBSD platfor…

Yeah, I think that policy is sound, it's just something we haven't actually done yet, so there are inevitable kinks to work out :) I expect that your situation isn't uncommon, maybe the solution is two or three people rather than one. Raises that bar though...

One of the kinks is the longevity guarantee -- we kinda-sorta guarantee that Tier 1 platforms will "never" go away, but we can't as easily do that for a community thing. AIUI Tier 1 is something permanent that you can rely on always existing in the future.

Re: Announcing Rust 1.16

#82
post #3

Earlier quoted context omitted.

It will probably end up being installed by `cargo install` anyway. What I can't wait for is Tokio for Diesel and Rocket.

Have you found any good tutorials for Rocket? The one on Rocket's website is detailed but doesn't go beyond an extremely basic website.

The examples in the repo[1] are fairly extensive, and you can always ask questions in the IRC channel[2]. I've found #rocket to be extremely gracious with their time.

[1] https://github.com/SergioBenitez/Rocket/tree/master/examples

[2] https://riot.im/app/#/room/#mozilla_#rocket:matrix.org

Re: Announcing Rust 1.16

#83
post #79
post #72

Earlier quoted context omitted.

> Or you're going to have to be more specific about what you're trying to do. I want to allocate arrays, maps, etcetera inside the region of a memory mapped file. Then, later, when I mmap the same file to a different region in memory, I want the arrays and maps to still work. That's all.

Do you have examples of how this works in other languages? I would assume they have specialized data structures for this purpose.

Here: http://www.boost.org/doc/libs/1_63_0/doc/html/interprocess/o...

Re: Announcing Rust 1.16

#84
post #62

If you have a previous version of Rust installed, getting Rust 1.16 is as easy as: $ rustup update stable Nah. The old "rustup.sh" script doesn't install "rustup", the application. Rust isn't in the Ubuntu distribution, either. Stop rolling your own installer and use the distro programs. You are not a special snowflake.

Personally I love this feature in a build tool. The Stack tool for Haskell does the same, which means I can use the newest version very easily, without depending on some volunteer's Ubuntu PPA (which may not exist).

Re: Announcing Rust 1.16

#85
post #62

If you have a previous version of Rust installed, getting Rust 1.16 is as easy as: $ rustup update stable Nah. The old "rustup.sh" script doesn't install "rustup", the application. Rust isn't in the Ubuntu distribution, either. Stop rolling your own installer and use the distro programs. You are not a special snowflake.

It's hard for a software project to make progress if the only way to reach users is non-rolling distros. To a large extent, the progress of software in non-rolling distros relies on enough other people using the intermediate versions from outside the distro repo, in rolling distros or on Mac/Windows.

That said, Ubuntu​ does carry (an obsolete version of) Rust: http://packages.ubuntu.com/search?keywords=rustc&searchon=na...

Re: Announcing Rust 1.16

#86
post #62

If you have a previous version of Rust installed, getting Rust 1.16 is as easy as: $ rustup update stable Nah. The old "rustup.sh" script doesn't install "rustup", the application. Rust isn't in the Ubuntu distribution, either. Stop rolling your own installer and use the distro programs. You are not a special snowflake.

> Nah. The old "rustup.sh" script doesn't install "rustup", the application. rustup.sh has been deprecated for months now. > Rust isn't in the Ubuntu distribution, either. It's in Debian now, so (as far as I know) that means it should end up in Ubuntu soonish. > Stop rolling your own installer and use the distro programs. Not everyone is on Linux.

FWIW, Debian unstable is stuck on rustc 1.14.0. You need experimental to, at the moment, get 1.15.1 (no 1.16 yet, but it's a tad early for that ; but in multiple occasions it took weeks to get new rustc releases into Debian).

Cargo in Debian, on the other hand, is stuck on 0.15.0... (current version for "stable rust" is 0.17.0) ; no newer version in experimental...

Re: Announcing Rust 1.16

#87
post #9

I like rust a lot, but even hello world web apps compile (and recompile) so slowly. I barely get a single step down my to do list before recompiles take more than a second, and it makes it functionally unusable compared to other tools. I know this sounds silly, but it's true. I don't want the check, I want to see the webpage changed after my code changes. I keep hearing about incremental compiles but when I used nigh…

Incremental recompilation is still underway; expect some news on it reasonably soon. Even then, it's just the start, and there's more that we can do.

When it's out, can we actually get the same responsiveness as, let's say Java? I assume it also depends on the IDE but I would really like to see instant hints during coding session, ex. when I make mistakes.

Re: Announcing Rust 1.16

#88
post #72

Earlier quoted context omitted.

>I want to build a fast data-store Usually this means you want to build things build on arrays. >The problem with mmapped files is that they don't always appear at the same address i.e. you use arrays and then index into the array instead of using pointers. > So in order to use the standard data-structures, Rust must provide some mechanism to make this possible Well, arrays exist in Rust. Or you're going to have to b…

> Or you're going to have to be more specific about what you're trying to do. I want to allocate arrays, maps, etcetera inside the region of a memory mapped file. Then, later, when I mmap the same file to a different region in memory, I want the arrays and maps to still work. That's all.

As others have explained, it's definitely possible to construct those data structures in Rust and use them from a crate. But you can't just flip a switch to get the standard library collections to work that way.

You could probably get pretty far by copy pasting the standard library containers you're interested in and replace Box with something like OffsetBox which uses indices into your memmap arena instead of pointers to any addressable memory. Of course, implementing OffsetBox is an exercise for the reader. :)

You would probably have to write some unsafe code to get it to work. But it's not a blocker for a project.

Re: Announcing Rust 1.16

#89
post #87

Earlier quoted context omitted.

Incremental recompilation is still underway; expect some news on it reasonably soon. Even then, it's just the start, and there's more that we can do.

When it's out, can we actually get the same responsiveness as, let's say Java? I assume it also depends on the IDE but I would really like to see instant hints during coding session, ex. when I make mistakes.

I'm not sure what the lower bound is, to be honest. It's not a thing I personally work on.

Re: Announcing Rust 1.16

#90

Earlier quoted context omitted.

> Nah. The old "rustup.sh" script doesn't install "rustup", the application. rustup.sh has been deprecated for months now. > Rust isn't in the Ubuntu distribution, either. It's in Debian now, so (as far as I know) that means it should end up in Ubuntu soonish. > Stop rolling your own installer and use the distro programs. Not everyone is on Linux.

FWIW, Debian unstable is stuck on rustc 1.14.0. You need experimental to, at the moment, get 1.15.1 (no 1.16 yet, but it's a tad early for that ; but in multiple occasions it took weeks to get new rustc releases into Debian). Cargo in Debian, on the other hand, is stuck on 0.15.0... (current version for "stable rust" is 0.17.0) ; no newer version in experimental...

Yeah, Stretch just missed 1.15, it's a shame IMHO. They're fine with it though.

Now that we've gotten a lot of the kinks worked out, hopefully it won't be weeks in the future.

Post reply on HN