dealien
Rusty-Mines
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
Merge pull request #20 from dealien/testing-improvement-reveal-bounds-13743058488001672806
main
3 days ago
Merge pull request #22 from dealien/fix-security-panic-unwrap-1817843479913611977
main
3 days ago
🔒 Fix unhandled panic in UI grid rendering Replaced unsafe `.unwrap()` call on `get_cell` with a safe `let-else` pattern to prevent application crashes due to potential out-of-bounds access during board rendering. Co-authored-by: dealien <11463644+dealien@users.noreply.github.com>
fix-security-panic-unwrap-1817843479913611977
3 days ago
🧪 [testing improvement] Add test for reveal out of bounds Co-authored-by: dealien <11463644+dealien@users.noreply.github.com>
testing-improvement-reveal-bounds-13743058488001672806
3 days ago
Merge pull request #19 from dealien/perf-remove-unnecessary-collect-15632188640077195263
main
3 days ago
⚡ Comprehensive performance optimization for rusty-mines - Refactored `Board::reveal` to use an optimized iterative stack-based DFS. - Avoids heap allocation for single-cell reveals and uses a pre-allocated stack for cascades. - Optimized cascade flood fill by marking cells revealed before stack push. - Introduced centralized neighbor processing helpers in `Board` (`adjacent_cells_with_state`, `count_adjacent_with_state`, `count_adjacent_mines`) to reduce redundant logic. - Replaced multiple heap-allocated `Vec` collections with fixed-size stack arrays (`[(usize, usize); 8]`) throughout solver and UI logic. - Resolved borrow checker conflicts and formatting issues. - Maintained compatibility with older Rust toolchains by avoiding `+ use<>` syntax. Co-authored-by: dealien <11463644+dealien@users.noreply.github.com>
perf-remove-unnecessary-collect-15632188640077195263
3 days ago
⚡ Comprehensive performance optimization for cell reveals and solver logic - Refactored `Board::reveal` to use an iterative stack-based DFS, avoiding stack overflow and reducing heap allocations. - Introduced a "fast-path" for single-cell reveals that avoids any stack allocation. - Added optimized neighbor gathering methods: `adjacent_cells_with_state`, `count_adjacent_with_state`, and `count_adjacent_mines`. - Utilized Rust 2024 `use<>` syntax for precise lifetime capturing in iterators, resolving borrow checker conflicts without heap allocations. - Optimized solver deduction rules and UI probability calculations by replacing `Vec` collections with fixed-size stack arrays (`[(usize, usize); 8]`). - Improved hot-path efficiency by marking cells revealed *before* stack push in flood-fill, preventing redundant processing. - Applied `cargo fmt` for CI compliance. Co-authored-by: dealien <11463644+dealien@users.noreply.github.com>
perf-remove-unnecessary-collect-15632188640077195263
3 days ago
⚡ Optimize adjacent_cells iteration and refactor reveal to iterative flood fill - Refactored `Board::reveal` from recursive to iterative stack-based DFS to avoid stack overflow and remove unnecessary `Vec` allocation per revealed cell. - Removed the redundant `get_neighbours` helper function in `src/solver.rs` that forced an allocation. - Updated all solver deduction rules (`standard`, `subset`, `csp`, `probability`) to iterate directly over the `adjacent_cells` iterator, eliminating multiple $O(N)$ heap allocations per board cell inspection. - Improved efficiency of neighbour processing in `solver.rs` by using single-pass loops instead of multiple `filter`/`collect` calls. - Applied `cargo fmt` to ensure CI compliance. Co-authored-by: dealien <11463644+dealien@users.noreply.github.com>
perf-remove-unnecessary-collect-15632188640077195263
3 days ago
Latest Branches
CodSpeed Performance Gauge
+11%
🔒 [Security Fix: Unhandled panic via unwrap() in UI grid rendering]
#22
3 days ago
210b479
fix-security-panic-unwrap-1817843479913611977
CodSpeed Performance Gauge
0%
🧪 [testing improvement] Add test for reveal out of bounds
#20
3 days ago
8cf2685
testing-improvement-reveal-bounds-13743058488001672806
CodSpeed Performance Gauge
×5.3
⚡ Optimize adjacent_cells iteration and refactor reveal to iterative flood fill
#19
3 days ago
ec5f20a
perf-remove-unnecessary-collect-15632188640077195263
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs