#rustLang

Orhun ParmaksΔ±z πŸ‘Ύorhun@fosstodon.org
2025-05-22

Finally found the TUI that we all needed πŸ™

πŸ›΄ **scooter** β€” Interactive find and replace in the terminal.

πŸ’― Supports regex, themes, syntax highlighting & more!

πŸ¦€ Written in Rust & built with @ratatui_rs

⭐ GitHub: github.com/thomasschafer/scoot

#rustlang #ratatui #tui #search #replace #terminal #productivity #regex #tooling

Dekirisu πŸ¦€dekirisu
2025-05-22

🦌 'still early, but less early'β„’ stage of a skill-tree ui
🦜 skill nodes have states: 🟑 owned, 🟒 reachable, ⚫ unreachable
πŸͺΏ (they don't do anything yet)

Johan Helsingjohanhelsing
2025-05-22

Most of the Bevy crates I maintain have now been updated for 0.16. I ended up making a graph to track what needed to be done first, including dependencies I was waiting for

- bevy_matchbox: direct p2p, inkluding web
- bevy_ggrs: p2p rollback
- bevy_pancam: map-like cameras
- bevy_trauma_shake: camera shake
- noisy_bevy: cpu/gpu noise
- bevy_pkv: persistent key value store
- bevy_web_asset: http assets
- bevy_roll_safe
- bevy_sparse_grid_2d
- bevy_crossbeam_event

dependency graph
Ian Kluft πŸ–₯οΈπŸ“‘KO6YQ@pnw.zone
2025-05-22

"This Week in Rust 600" by @thisweekinrust - The weekly newsletter for #RustLangπŸ¦€ reaches issue #600 with coverage of this week's 10th anniversary of the Rust programming language's version 1.0 release. The newsletter started before 1.0 since 10 years is 520 weeks. this-week-in-rust.org/blog/202 #Rust #OpenSource#software #engineering #tech

Sebastian Hoßsebhoss@mastodon.online
2025-05-22

I wrote a password manager... in #rustlang 🦈 github.com/metio/pasejo

2025-05-22

Unlocking Tokio's Hidden Gems: Determinism, Paused Time, and Local Execution

pierrezemb.fr/posts/tokio-hidd

#rust #rustlang #programming

2025-05-22

Wrapping third party APIs is something I’ve done a lot of in the past. When doing so in Rust however, I’m thinking twice about it.

There are caveats to multiple implementations of a client (live and mocked). Enums work, but are a bit awkward. Traits also work, but the world of static vs dynamic dispatch can also get hairy.

Should I just be mocking the external service instead with something like httpmock? πŸ€”

#rust #rustlang

Rust Weekly πŸ¦€rust_discussions
2025-05-22
2025-05-22

Status:

Another day of slow rain. Everything is dripping. The wife is sick, I run things up and down the stairs for her. I should make the rounds and police up all the stray dishes, so I can get the d/w loaded and underway.

Planning a run down to Chicago, see some old friends and my brother's widow. Having long, strange, anxious dreams - I should meditate more but I'm coding pretty much all the time.

#rustlang is coming into focus, as the project grows. Every compiler error is hard.

rain 🌦️rain@hachyderm.io
2025-05-21

new #rustlang crate drop: iddqd! ID-based maps where keys are borrowed from values. Four maps are included: IdOrdMap, IdHashMap, a bijective (1:1) BiHashMap and a trijective (1:1:1) TriHashMap.

At Oxide we've found this pattern to be extraordinarily useful. iddqd is no-std compatible, too!

docs.rs/iddqd

use iddqd::{IdOrdMap, IdOrdItem, id_upcast};

#[derive(Debug)]
struct User {
    name: String,
    age: u8,
}

// Implement IdOrdItem so the map knows how to get the key from the value.
impl IdOrdItem for User {
    // The key type can borrow from the value.
    type Key<'a> = &'a str;

    fn key(&self) -> Self::Key<'_> {
        &self.name
    }

    id_upcast!();
}

let mut users = IdOrdMap::<User>::new();

// You must pick an insertion behavior. insert_unique returns an error if
// the key already exists.
users.insert_unique(User { name: "Alice".to_string(), age: 30 }).unwrap();
users.insert_unique(User { name: "Bob".to_string(), age: 35 }).unwrap();

// Lookup by name:
assert_eq!(users.get("Alice").unwrap().age, 30);
assert_eq!(users.get("Bob").unwrap().age, 35);

// Iterate over users:
for user in &users {
    println!("User {}: {}", user.name, user.age);
}
Matthias Endlermre
2025-05-21

A few things in the Rust standard library that I don't like:

- Threading using JoinHandles (because I forget to join them)
- `std::collections::LinkedList` (because Vec is superior in 99% of the cases)
- Path Handling (because it has surprising edge-cases)
- Platform-Specific Date and Time Handling (because it doesn't behave the same across operating systems)

Couldn't find a summary of these issues and their alternatives, so I wrote one:

corrode.dev/blog/sharp-edges-i

2025-05-21

Modern C++ has plenty of tools at its disposal, but how can we protect against misusing an API that deals with destructive state transition? Gustavo Noronha looks at where #Rust comes in as the newer kid on the block: collabora.com/news-and-blog/bl

#rustlang @rustfoundation

Rust Weekly πŸ¦€rust_discussions
2025-05-21

Statically typed, JIT compiled, hot-reloadable, embedded scripting language for Rust

github.com/NLnetLabs/roto

Discussions: discu.eu/q/https://github.com/

Lenin alevski πŸ•΅οΈπŸ’»alevsk@infosec.exchange
2025-05-21

New Open-Source Tool Spotlight 🚨🚨🚨

YARA-X, a Rust-based rewrite of YARA, aims to improve speed, safety, and usability for malware pattern matching. It supports enhanced rule definitions with features like `include` statements, offering greater modularity compared to its predecessor. Still in beta, but battle-tested on millions of files. #RustLang #Cybersecurity

πŸ”— Project link on #GitHub πŸ‘‰ github.com/VirusTotal/yara-x

#Infosec #Cybersecurity #Software #Technology #News #CTF #Cybersecuritycareer #hacking #redteam #blueteam #purpleteam #tips #opensource #cloudsecurity

β€” ✨
πŸ” P.S. Found this helpful? Tap Follow for more cybersecurity tips and insights! I share weekly content for professionals and people who want to get into cyber. Happy hacking πŸ’»πŸ΄β€β˜ οΈ

2025-05-21

From Rust to AVR assembly: Dissecting a minimal blinky program

n-eq.github.io/blog/2025/05/13

#rust #rustlang #programming #arduino

Vivia πŸ¦†πŸ΅:rustacean_ferris:vivia@toot.cat
2025-05-21
for index in -4..12 {
println!("cat: {}", cats[index]);
}

Thanks to @imperio for today's submission!

#RustCataStructures #Rust #RustLang #cat #CatsOfMastodon

A piece of furniture with a 3x4 array of boxes. Each box has a little carpet on it and a cat sitting or sleeping inside. The top of the furniture also has little carpets and another 4 cats. Caption: "New from Ikea, Crazy Cat Lady organizer".

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst