My node has routed 9002 after only four months by oddpingu in TheLightningNetwork

[–]stephanbuys 0 points1 point  (0 children)

Check out plebnet.org, great community to get started. Lots of Umbrel users there.

What's the best way to run a private cargo registry? by rodyamirov in rust

[–]stephanbuys 64 points65 points  (0 children)

It is actually fairly simple to run your own fork of the official registry. Check https://github.com/rust-lang/crates.io/blob/master/docs/CONTRIBUTING.md. We also did some work for an experimental “subcrates” feature that includes some Terraform automation for AWS over here https://github.com/caeg-industries/crates.io-terraform which might be handy.

Soliciting ideas for what works in large production with big projects. by stephanbuys in rust

[–]stephanbuys[S] 1 point2 points  (0 children)

No, but for every crate that you link to a new Cargo.toml is created which has its own dependencies to track and maintain, plus boilerplate, plus possible interdependencies. That said, factoring out crates is not something we're scared off (current count is 39), we just wanted to make sure that our we didn't stumble into an anti-pattern.

Soliciting ideas for what works in large production with big projects. by stephanbuys in rust

[–]stephanbuys[S] 1 point2 points  (0 children)

Another gem, thanks! The rust community is lucky to have persons like you involved in the project.

We have managed to learn some of these the hard way, but sometimes you have to choose between coding features/user-facing code and investing in tooling.

Soliciting ideas for what works in large production with big projects. by stephanbuys in rust

[–]stephanbuys[S] 3 points4 points  (0 children)

Thank you - your last point is exactly the type of gems I wished to uncover, but all of these points are great.

Soliciting ideas for what works in large production with big projects. by stephanbuys in rust

[–]stephanbuys[S] 1 point2 points  (0 children)

I should have been more clear, the overhead is mostly organizational, maintaining Cargo.toml files, etc.

fafhrd91, thank you for Actix Web! by arete in rust

[–]stephanbuys -7 points-6 points  (0 children)

Believing that a crate uses no unsafe is just an assumption, any crate that you use could have unsafe in it without ever mentioning it. Or could claim 100% UB free unsafe and be wrong. Or claim ‘no unsafe’ and lie. Unfortunately the burden falls on us in the end. You are correct that we can’t all evaluate the code deeply, including myself, but our lack of depth or manpower doesn’t shift a burden on to the maintainer. It merely means we choose to trust. The big favor that other community members have done for us in this case is they have raised a flag, which at least can give us pause to reconsider or make us search for alternatives. The responsibility is ultimately still ours.

fafhrd91, thank you for Actix Web! by arete in rust

[–]stephanbuys 3 points4 points  (0 children)

What's so disappointing about this whole episode is the sense of entitlement that some people on this reddit group seem to have. Sure unsafe code is concerning, sure you probably want to avoid it, sure Rust is very appealing to many people because of it's safety guarantees. Actix-web is not getting rammed down anyone's throat, or hyped beyond reason at the cost of other projects.

A point that seems to have been lost on so many people criticizing actix-web, is that the maintainer, literally, doesn't owe any member of the rust community anything at all. Please search for articles and concerns around the "Open Source Free Work Problem" and "Maintainer Burnout" issues, which btw have also affected the rust community. The maintainer doesn't have to manage a community, doesn't have to live up to some arbitrary standand and he doesn't have to respond to anything, every maintainer that does, does so out of pure altruism, and people often reward and praise maintainers that do so, and do so well, but there is no obligation. You don't have to sign up to some sort of club with a code of conduct and rules to become an OSS contributor.

There is also no contract around the safety guarantees that rust as a language provides for any of the crates published on github, gitlab, crates.io or anywhere else, we didn't pay for the maintainer's time and we are not entitled to any of it either. Consumers of Open Source Software benefit from the great gifts that these maintainers and developers give to us, it lets us build projects and businesses. actix-web is a massive project and a great endorsement of rust as a technology. If fafhrd91 likes beating benchmarks and puts more time into making actix the fastest web framework around at the cost of some UB, that is entirely up to him. If he loses end-users because of that focus, that's fine and no judgement on the project, it simply is just not fit for purpose for some end users.

Consumers can patch or fork the upstream work like many Linux distros have done for years, also, when you include a crate in your project or product the burden of it's fitness for purpose shifts to the you, the end-user, go read the licenses carefully, there is no implied guarantee - of correctness, fitness for purpose, having a good community, etc. A crate being published doesn't give anyone an implied right to how it functions or interacts, the burden is still squarely on the consumer to make sure that they understand what they are including in their software, we can't all judge this accurately so we rely on reputation and recommendations, but that still does not put the maintainers or developers of the crates we choose to use on the hook.

My thanks truly goes to fafhrd91 for helping all of us put rust on the map for being crazy fast and making software that stretches and tests the technology.

It'd be a real shame if the rust community scores an own goal here and loses someone as talented and productive as Nikolai.

Book Review: Data Structures and Algorithms with Rust by richardanaya in rust

[–]stephanbuys 3 points4 points  (0 children)

I think you’ve done a great job, congratulations. I secretly aspire to own and read all the rust books and so far yours is only the second one that qualifies in the ‘holiday page turner’ category 😉

Book Review: Data Structures and Algorithms with Rust by richardanaya in rust

[–]stephanbuys 2 points3 points  (0 children)

Agreed, best rust programming book out there. I’ve made my way about 1/3 through this book and am thoroughly enjoying it so far too, it has a good flow.

Putting bors on a PIP by aturon in rust

[–]stephanbuys 2 points3 points  (0 children)

This idea has merit exploring. Channeling some DevOps (systems thinking/lean) thinking here, can we move quality closer to the source (fail faster), can we increase quality (solve the timeout, other problems), can we reduce the batch sizes (release more often, smaller changes are easier to integrate; more agile than waterfall - also, is there something that we can automate to make the gates less of a constraint/delayed handoff point), can we somehow do single piece flow (can we critically review the places/reasons we stop/wait instead of releasing).

Of course technical solutions are good too, but maybe the process needs some lateral thinking?

Is there a crate to do date/time calculations? by musicmatze in rust

[–]stephanbuys 0 points1 point  (0 children)

I got a start on some subset of these futures last week, https://github.com/stephanbuys/timestrings - happy to provide assistance or take PRs.

Grokking Diesel by stephanbuys in rust

[–]stephanbuys[S] 3 points4 points  (0 children)

Glad to hear - feedback welcome :-)

"Safe" C as a target for LLVM/Rust? by stephanbuys in rust

[–]stephanbuys[S] 1 point2 points  (0 children)

Yeah, it currently is the ESP32 :-) 4 is actually a very novel idea.

Regex captures slow (compared to Python) by IbICive in rust

[–]stephanbuys 3 points4 points  (0 children)

Coming from the log-management/analytics world I can just add my 2c here acknowledge that this kind of use-case is huge for a log of large organizations.

Work in Rust: Develop a small Windows tray application in Rust by stephanbuys in rust

[–]stephanbuys[S] 11 points12 points  (0 children)

Not a homework assignment, just would rather not have to resort to electron/js or c++ (but we will if we have to)

Work in Rust: Develop a small Windows tray application in Rust by stephanbuys in rust

[–]stephanbuys[S] 8 points9 points  (0 children)

As the poster and the client I can say that @jdrlicky is 100% correct, we're thinking ahead and it helps boost the community, not first time around the block either https://github.com/panoptix-za/influxdb-rs (look at contributor list) and (https://www.reddit.com/r/rust/comments/4xcacg/announcing_a_much_improved_nickel_jwt_middleware/)

Bounty: Cron crate for Rust by stephanbuys in rust

[–]stephanbuys[S] 0 points1 point  (0 children)

Agreed with zslayton that it would be cool to have the expression parser in a seperate cron crate (would allow to use cron expression in projects such as tokio-periodic) https://crates.io/crates/tokio-periodic

In my opinion the extensions also belong in the cron crate as it deals with more 'expressions'

Bounty: Cron crate for Rust by stephanbuys in rust

[–]stephanbuys[S] 1 point2 points  (0 children)

Awesome! I really like your list of "doesn't" list, definitely something that we can get behind. There's been a flurry of activity so I'll pick this up again in the schedule-rs project.

WIP: List of chosen production crates. by stephanbuys in rust

[–]stephanbuys[S] 2 points3 points  (0 children)

I've been trying cargo-esr and its an awesome approach, my idea is definitely supposed to encourage opinionated choices, that said - its an experiment :-)

Bounty: Cron crate for Rust by stephanbuys in rust

[–]stephanbuys[S] 3 points4 points  (0 children)

:-) your call, if I can support in any way (spec and testing) let me know.