Skip to content

Conversation

Copy link

Copilot AI commented Jan 15, 2026

Sets up continuous integration testing for the Rust implementation with cargo-fmt, cargo-clippy, cargo-nextest, code coverage, and Miri tests.

Workflow Jobs

  • fmt: Validates code formatting using cargo fmt --all --check
  • clippy: Runs workspace-wide linting with existing clippy.toml configuration
  • docs: Builds documentation with warnings treated as errors (temporarily commented out)
  • test-workspace: Runs cargo-nextest and doctests across Windows, Ubuntu, and macOS
  • coverage: Generates coverage reports for key crates (diskann-wide, diskann-vector, diskann-quantization, diskann, diskann-linalg, diskann-utils, diskann-providers, diskann-disk) using cargo-llvm-cov
  • miri: Runs Miri tests on diskann-quantization with strict provenance checking using cargo miri nextest run for better performance

Configuration

  • Uses Rust 1.90 per rust-toolchain.toml
  • Treats warnings as errors via RUSTFLAGS: -Dwarnings
  • Employs Swatinem/rust-cache for dependency caching
  • Cancels in-progress runs on new commits via concurrency groups
  • Basic checks (fmt, clippy) gate expensive test/coverage jobs

Code Changes

  • Added #[cfg(target_feature = "bf_tree")] to TableDeleteProviderAsync::to_bytes and TableDeleteProviderAsync::from_bytes methods in diskann-providers/src/model/graph/provider/async_/table_delete_provider.rs to address clippy warnings

💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI changed the title [WIP] Set up continuous integration testing for Rust project Add comprehensive CI workflow for Rust project Jan 15, 2026
Copilot AI requested a review from hildebrandmw January 15, 2026 19:23
@hildebrandmw
Copy link
Contributor

@copilot Thanks, this is a good start. For now, can you make the following changes:

  • Temporarily comment out the doc check. We'll fix that later.
  • Add #[cfg(target_feature = "bf_tree")] to TableDeleteProviderAsync::to_bytes and TableDeleteProviderAsync::from_bytes in diskann-providers/src/model/graph/provider/async_/table_delete_provider.rs to temporarily fix Clippy.
  • Use cargo miri nextest run for the Miri runs for better performance.

Copy link
Author

Copilot AI commented Jan 15, 2026

@copilot Thanks, this is a good start. For now, can you make the following changes:

  • Temporarily comment out the doc check. We'll fix that later.
    ...

Done! All requested changes have been made in commit 240338b:

  • Commented out the docs check (will re-enable later)
  • Added #[cfg(target_feature = "bf_tree")] to to_bytes, from_bytes, and their test methods in table_delete_provider.rs
  • Changed miri command to use cargo miri nextest run for better performance

@hildebrandmw hildebrandmw changed the title Add comprehensive CI workflow for Rust project Add CI workflow for Rust project Jan 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants