Skip to content

Fix QuantizedGraph<float> source compatibility for v0.3.6 - #106

Merged
gouyt13 merged 1 commit into
mainfrom
fix/restore-quantizedgraph-template
Sep 16, 2026
Merged

gouyt13 merged 1 commit into
mainfrom
fix/restore-quantizedgraph-template

Conversation

@gouyt13

@gouyt13 gouyt13 commented Sep 16, 2026

Copy link
Copy Markdown
Member

Problem and change

PR #105 made QuantizedGraph a non-template class, so existing C++ callers using QuantizedGraph<float> stopped compiling. Restore the float specialization while retaining the compiled implementation and C++17 deduction guides for callers that omit <float>.

Update the builder, Python bindings, examples, and documentation to use the restored API. Add regression coverage for explicit/default template arguments, deduction, and move semantics. Bump the CMake and Python package versions to 0.3.6.

Validation

  • The original failing C++17 consumer now compiles, links, and runs.
  • Release build with RABITQ_ENABLE_NATIVE_OPTIMIZATION=OFF: all 144 C++ tests passed; C++ samples built. Used the locally available GoogleTest 1.11.0.
  • Rebuilt and installed the compatibility fix in the existing project environment: all 148 Python tests passed. Verified the imported extension contains QuantizedGraph<float>::search.
  • C++ formatting, Python lint/formatting, focused clang-tidy, strict MkDocs build, and staged diff whitespace checks passed.
  • Static analysis was focused; full clang-tidy remains a pre-merge check.

Compatibility

Restores the QuantizedGraph<float> C++ source API and preserves C++17 variable declarations using deduction. The implementation remains float-only. No index-format, Python API, or production dependency changes.

@gouyt13
gouyt13 merged commit af29d8d into main Sep 16, 2026
20 checks passed
@gouyt13
gouyt13 deleted the fix/restore-quantizedgraph-template branch September 16, 2026 07:29
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.

1 participant