Follow-up cuvs contribution #1 of 3 (smallest first — see also the scalar-quantizer and refine issues). Single-feature PR per upstream norms.
What
Wrap brute_force serialize/deserialize in the cuvs Rust crate. The C header (c/include/cuvs/neighbors/brute_force.h) exposes serialize symbols (6 mentions); rust/cuvs/src/brute_force.rs wraps none of them. Pure parity gap — same template as our CAGRA/IVF-SQ serialize work.
Upstream guidelines (digest, from .github/PULL_REQUEST_TEMPLATE.md + observed conventions)
- Unit tests required for all changes (serialize round-trip re-verifying search, mirroring our IVF-SQ test)
- PR description in the template text box; use closing keywords if an upstream issue exists
- Never rebase/force-push after review begins — merge main into the branch for conflicts
- Don't expand scope after review starts
- Maintainers apply labels (
improvement/feature request + non-breaking); plain imperative title (e.g. "Add serialize/deserialize to brute_force Rust bindings"); draft PR if not review-ready
- RAPIDS copyright header on changed files, creation-year-to-current range; commit style
feat(rust): ... per recent rust PRs
- Branch off
main (RAPIDS retired branch-XX.YY)
Etiquette gate
Hold submission until NVIDIA/cuvs#2229 (IVF-SQ) gets first maintainer feedback — incorporate any conventions they request there before opening this one. Implementation can proceed any time in ~/cuvs-contrib (branch rust-brute-force-serialize).
Follow-up cuvs contribution #1 of 3 (smallest first — see also the scalar-quantizer and refine issues). Single-feature PR per upstream norms.
What
Wrap brute_force serialize/deserialize in the cuvs Rust crate. The C header (
c/include/cuvs/neighbors/brute_force.h) exposes serialize symbols (6 mentions);rust/cuvs/src/brute_force.rswraps none of them. Pure parity gap — same template as our CAGRA/IVF-SQ serialize work.Upstream guidelines (digest, from .github/PULL_REQUEST_TEMPLATE.md + observed conventions)
improvement/feature request+non-breaking); plain imperative title (e.g. "Add serialize/deserialize to brute_force Rust bindings"); draft PR if not review-readyfeat(rust): ...per recent rust PRsmain(RAPIDS retired branch-XX.YY)Etiquette gate
Hold submission until NVIDIA/cuvs#2229 (IVF-SQ) gets first maintainer feedback — incorporate any conventions they request there before opening this one. Implementation can proceed any time in ~/cuvs-contrib (branch
rust-brute-force-serialize).