Skip to content

v0.0.4 - Add MSRV badge to README and create rustfmt configuration file (#9)

Choose a tag to compare

@github-actions github-actions released this 27 Nov 10:42
· 104 commits to main since this release
bcb6387

🌟 Summary

v0.0.4 turns the Ultralytics Rust template into a more reliable, performance‑aware, and contributor‑friendly project by standardizing tooling (MSRV, formatting), adding benchmark infrastructure, and improving crate discoverability. 🚀


📊 Key Changes

  • 🦀 Explicit Rust MSRV & Tooling (PR #9 – primary change)

    • Added .clippy.toml with msrv = "1.91" to lock in the minimum supported Rust version.
    • Introduced rustfmt.toml with consistent, opinionated formatting (2024 edition, wrapped comments, normalized docs, grouped imports).
    • Updated README.md with an MSRV badge that links directly to Cargo.toml.
    • Bumped crate version from 0.0.3 ➜ 0.0.4.
  • 🏎️ Criterion.rs Benchmarking Support (PR #10)

    • Added criterion as a dev dependency with HTML report support.
    • Registered a new example_bench target and implemented benches/example_bench.rs benchmarking the add_numbers function.
    • Created benches/README.md with clear instructions for running, viewing, and extending benchmarks.
    • Updated .gitignore to exclude /target/criterion/ (benchmark output) and .cargo-deny/.
  • 🔍 Improved Crate Metadata & Discoverability (PR #11)

    • Updated keywords to emphasize ultralytics, ml, ai, and yolo.
    • Expanded categories to include science and computer-vision alongside development-tools.

🎯 Purpose & Impact

  • ✅ Clear compatibility expectations

    • The explicit MSRV (Rust 1.91) and badge make it easy for users and CI systems to know which Rust version is required, avoiding build surprises and version mismatches.
  • ✅ Consistent, clean code for all contributors

    • Project-wide rustfmt settings and Clippy MSRV alignment ensure everyone formats code the same way, reducing “style-only” diffs and speeding up reviews.
  • 📈 Built-in performance benchmarking

    • Criterion-based benchmarks let you measure how fast your code runs and how it changes over time, with HTML reports that are easy to explore.
    • The included example_bench and benches/README.md serve as a template so you can quickly add your own benchmarks.
  • 🤝 Easier discovery in the Rust + AI ecosystem

    • Improved keywords and categories help developers on crates.io quickly recognize this as an Ultralytics-style AI/ML and computer vision template, making it more likely to be found and adopted.
  • 🚀 Stronger foundation for future AI/ML Rust projects

    • With standard tooling, performance tracking, and clearer positioning, v0.0.4 is a more robust starting point for building production-grade Rust integrations in the Ultralytics ecosystem.

What's Changed

  • Update Cargo.toml keywords and categories by @glenn-jocher in #11
  • feat :🏎️ Add benchmarking support with Criterion.rs and example benchmarks by @onuralpszr in #10
  • Add MSRV badge to README and create rustfmt configuration file by @onuralpszr in #9

Full Changelog: v0.0.3...v0.0.4