[-] snaggen@programming.dev 4 points 2 years ago

Ok, so we use different search engine so you didn't find this particular hit. But, do you really claim that learning material is an issue here. And about my attitude, yes, I was a bit cranky. In general, you can ask any stupid question, heck I ask stupid questions all the time and they will be answered kindly. The rust community knows that lifetimes and stuff like that is complicated.

However, I'm quite fed up with the attitude that it is someone elses obligation to spoon feed you with knowledge that exists right under the nose... and that is a very common attitude amongst the "For rust to succeed..." evangelists.

[-] snaggen@programming.dev 4 points 2 years ago

Well, Perl is great for small scripts that works on large texts, that you process with regex. I still use Perl from time to time, for that kind of scripts. Also commandline, instead of awk/sed...

[-] snaggen@programming.dev 4 points 2 years ago

Well, when you write async code, you may suddenly find your self needing to implement AsynRead or something similar. Suddenly you have to use pin, and understand how async worksbunder the hood. So, while I agree that async is not something fancy, it will possibly throw you in some quite advanced territory. The part I'm not sure I agree with is skipping the error handling. But I see what the authors intention is, to keep hairy stuff out of the way while learning the basics.

86

Abstract—New contributors are critical to open source projects. Without them, the project will eventually atrophy and become inactive, or its experienced contributors will bias the future directions the project takes. However, new contributors can also bring a greater risk of introducing vulnerable code. For projects that have a need for both secure implementations and a strong, diverse contributor community, this conflict is a pressing issue. One avenue being pursued that could facilitate this goal is rewriting components of C or C++ code in Rust— a language designed to apply to the same domains as C and C++, but with greater safety guarantees. Seeking to answer whether Rust can help keep new contributors from introducing vulnerabilities, and therefore ease the burden on maintainers, we examine the Oxidation project from Mozilla, which has replaced components of the Firefox web browser with equivalents written in Rust. We use the available data from these projects to derive parameters for a novel application of learning curves, which we use to estimate the proportion of commits that introduce vulnerabilities from new contributors in a manner that is directly comparable. We find that despite concerns about ease of use, first-time contributors to Rust projects are about 70 times less likely to introduce vulnerabilities than first-time contributors to C++ projects. We also found that the rate of new contributors increased overall after switching to Rust, implying that this decrease in vulnerabilities from new contributors does not result from a smaller pool of more skilled developers, and that Rust can in fact facilitate new contributors. In the process, we also qualitatively analyze the Rust vulnerabilities in these projects, and measure the efficacy of the common SZZ algorithm for identifying bug-inducing commits from their fixes.

13
233
26
19

Quite some exciting progress since the last progress report! There have been 180 commits since the last progress report.

As of today, rustc_codegen_cranelift is available on nightly! :tada: You can run rustup component add rustc-codegen-cranelift-preview --toolchain nightly to install it and then either CARGO_PROFILE_DEV_CODEGEN_BACKEND=cranelift cargo +nightly build to use it for the current invocation or add

10
15
Rust Analyzer Changelog #205 (rust-analyzer.github.io)
29
43

TL;DR

We want to improve the reliability and performance of crate downloads.

"Non-canonical downloads" (that use URLs containing hyphens or underscores where the crate published uses the opposite) are blocking these plans.

On 2023-11-20 support for "non-canonical downloads" will be disabled.

cargo users are unaffected.

35
67
13
[-] snaggen@programming.dev 4 points 2 years ago

Fixed it.... I come from a language culture were we like our negations :) Also, not native english speaker, so combine the two and you are in for a ride!

[-] snaggen@programming.dev 4 points 2 years ago

That will always be prune to race conditions, where you check if someting exists (then some other thread creates it) and then you try to create it. You should always try to create first, then if it fails due to it already existing, fetch it. That is a good general rule for anything from hashmaps to databases.

[-] snaggen@programming.dev 4 points 3 years ago

This seems to be nothing other than shameless self promotion. Mods?

[-] snaggen@programming.dev 4 points 3 years ago

It varies, depending on if I have submodules or not. I see no reason to have a folder with a single mod.rs.

[-] snaggen@programming.dev 4 points 3 years ago

I updated the title of this post, as per your suggestion

[-] snaggen@programming.dev 4 points 3 years ago

That is pretty much the same policy I have for forcing adds on me.

[-] snaggen@programming.dev 4 points 3 years ago

Having programmed in C, I got the ownership model quite fast. I just think of it as "is this function going to do an implicit free on return", if not then it should just borrow it. And for C, you already had to think of ownership, just that it was not enforced in any way in the language... if you messed up the ownership to either got a crash or leak.

[-] snaggen@programming.dev 4 points 3 years ago

And as someone pointed out in another forum, this was most likely a multi-choise question so it is impossible to know the true Linux percentage.

view more: ‹ prev next ›

snaggen

0 post score
0 comment score
joined 3 years ago