~/talk

Building and Maintaining Rust at Scale

Talkat EuroRust 2025 · 2025-10-09..10-10· [rust]
slides:none on file

Advocates concrete rules: split a million‑line codebase into crates so core compiles first and others compile in parallel, shaving wall‑clock build time; replace Arc<Mutex<bool>> with AtomicBool (8 bytes vs 1) for obvious cost savings; enforce lints with Clippy and editor checks via Rust Analyzer; run cargo LLVM cov for coverage, use quickcheck for property testing and MIRI for undefined behavior, cargo deny for security, Criterion and FlameGraph for performance, and prefer wrapper structs around enums to preserve API stability.

AI-written summary · about

  1. 0:00Idiomatic Rust code
  2. 1:55Project structure
  3. 3:23Platform-specific code
  4. 4:48Workspaces for multi-crate
  5. 6:56Rust Analyzer config
  6. 8:42Clippy for code quality
  7. 10:05Iterators and patterns
  8. 11:31Error handling with Result
  9. 12:54Traits and dynamic dispatch
  10. 14:18Extension traits
  11. 15:19Newtype pattern
  12. 16:02Wrapper structs for deserialization
  13. 17:05Enums in structs for API
  14. 19:32Non-exhaustive for compatibility
  15. 20:14Builder pattern
  16. 21:35Default field values
  17. 22:19String concatenation
  18. 23:41Evolving Rust idioms
  19. 24:22Error handling with anyhow
  20. 26:27Unit and integration tests
  21. 27:10Property testing with QuickCheck
  22. 27:50Testing unsafe code with Miri
  23. 28:32Code coverage tracking
  24. 28:53Maintaining dependencies and documentation
  25. 30:18Tools for large codebases
  26. 31:23Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.