anyhow
tidy
anyhow | tidy | |
---|---|---|
13 | 4 | |
5,085 | 65 | |
- | - | |
8.5 | 7.6 | |
5 days ago | 3 days ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
anyhow
-
I love building a startup in Rust. I wouldn't pick it again.
Depending on your use case, thiserror and/or anyhow.
-
Why Rust?
There is ? as well as the anyhow(https://github.com/dtolnay/anyhow) crate that deals with long nested result chains.
- Anyhow/src/ensure.rs: Rust macro with 675 lines
-
Is this a good way of handling errors in Rust?
There are crates out there that help you reduce this boiler plate. thiserror is good for creating custom errors and color-eyre or anyhow are good for dynamic errors.
-
Looking for general advice on toy project
Give anyhow a look.
-
Oops, I Did It Again...I Made A Rust Web API And It Was Not That Difficult
I've brought anyhow::Result into scope, making error handling super easy to use. We don't need to specify all our Error types. It can automatically convert any errors that implement std::error::Error, which should be all of them. If an error propagates all the way up to main(), we'll get all the info it's captured printed to stdout.
-
Idiomatic way to return/break if Err/None
Alternatively, if you've got a lot of error types and you're outside a library (so directly in a binary where you don't plan to reuse code elsewhere) you can use anyhow. This gives you an error type you can basically propagate any other error through. On top of that you can attach context information at every return. It's basically a more complicated Result>.
-
Using workspace for modularization is kind of painful?
One approach is to define a separate error type for each crate and then use anyhow, eyre or Box to wrap the error, whever a function can return errors originating in several different crates.
-
Can we please stop downvoting people who dislike Rust?
Have you tried anyhow and thiserror for making it as simple as .context("Message") or ? to type-convert and propagate errors up the call stack?
tidy
-
Making a word list uniquely decodable with minimal cuts
I like the concept of finding where the algorithm is "overly strict". And I appreciate teh creativity coming up with this banana example. However, I think given the goal of my project, I do not want to have to "restrict the passphrase generator to a fixed number of words" or similar restrictions on the generator. In other words, making restrictions on the password generator is not "allowed" (more crassly, I want to make my algorithm "idiot proof").
-
How hard could it be? Sorting words alphabetically in Rust
Currently, Tidy can tell users if their created word list "clears" these "lines". However, there's an open issue discussing the accuracy and necessity of these "lines".
-
Looking for general advice on toy project
Casual programmer here. I've been gradually working on a command-line tool for working with word lists (like you'd use to make a passphrase) I'm calling Tidy.
-
Command line tool to combine and edit word lists
I'm calling it Tidy. Would love to know if I'm missing any useful features! Or if anything is not working as promised. It's written in Rust -- I welcome contributions via GitHub!
What are some alternatives?
eyre - A trait object based error handling type for easy idiomatic error handling and reporting in Rust applications
color-eyre - Custom hooks for colorful human oriented error reports via panics and the eyre crate
thiserror - derive(Error) for struct and enum error types
rust - Rust language bindings for TensorFlow
structopt - Parse command line arguments by defining a struct.
cargo-edit - A utility for managing cargo dependencies from the command line.
hyper - An HTTP library for Rust
fenix - Rust toolchains and rust-analyzer nightly for Nix [maintainer=@figsoda]
todo-mvp - The non-SPA version of the todo list app
rust - Empowering everyone to build reliable and efficient software.
Cargo - The Rust package manager
tera - A template engine for Rust based on Jinja2/Django