Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR bumps the DiskANN workspace release version to 0.47.0, aligning the root workspace version, workspace dependency versions, and the lockfile for the v0.47.0 release.
Changes:
- Update
[workspace.package]version to0.47.0. - Update workspace path dependency version pins from
0.46.0to0.47.0. - Refresh
Cargo.lockto reflect the new workspace crate versions.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| Cargo.toml | Bumps workspace/package version and updates workspace dependency version pins to 0.47.0. |
| Cargo.lock | Updates locked workspace crate versions to 0.47.0. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
harsha-simhadri
approved these changes
Feb 23, 2026
arkrishn94
approved these changes
Feb 23, 2026
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #795 +/- ##
==========================================
+ Coverage 89.16% 90.46% +1.30%
==========================================
Files 431 431
Lines 78895 78895
==========================================
+ Hits 70343 71375 +1032
+ Misses 8552 7520 -1032
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
DiskANN v0.47.0
Summary
DiskANNIndex. Please read the upgrade instructions below.diskann-wide.Changes to Search
The search interface has been unified around a single
index.search()entry point using theSearchtrait.The old per-search-type methods on
DiskANNIndex(search,search_recorded,range_search,multihop_search) have been removed and replaced by typed parameter structs that carry their own search logic.What Changed
SearchParamsstructdiskann::graph::search::KnnRangeSearchParamsstructdiskann::graph::search::RangeSearchParamsErrordiskann::graph::KnnSearchErrorRangeSearchParamsErrordiskann::graph::RangeSearchErrorindex.search(&strategy, &ctx, &query, ¶ms, &mut out)index.search(knn, &strategy, &ctx, &query, &mut out)index.search_recorded(..., &mut recorder)index.search(RecordedKnn::new(knn, &mut recorder), ...)index.range_search(&strategy, &ctx, &query, ¶ms)index.search(range, &strategy, &ctx, &query, &mut ())index.multihop_search(..., &label_eval)index.search(MultihopSearch::new(knn, &label_eval), ...)index.diverse_search(...)index.search(Diverse::new(knn, diverse_params), ...)flat_searchremains an inherent method onDiskANNIndexIts
search_paramsargument changed from&SearchParamsto&Knn.Upgrade Instructions
1. k-NN Search (
search)Before:
After:
Key differences:
SearchParams->Knn(import fromdiskann::graph::search::Knn)SearchParamsError->KnnSearchError(import fromdiskann::graph::KnnSearchError)index.search()k_value,l_valuefields are now private; use.k_value(),.l_value()accessors (returnNonZeroUsize)2. Recorded/Debug Search (
search_recorded)Before:
After:
3. Range Search (
range_search)Before:
After:
Key differences:
RangeSearchParams->Range(import fromdiskann::graph::search::Range)RangeSearchParamsError->RangeSearchError(import fromdiskann::graph::RangeSearchError)(SearchStats, Vec<O>, Vec<f32>)toRangeSearchOutput<O>(a struct with.stats,.ids,.distancesfields)&mut ()as the output bufferstarting_l_value-> constructor argstarting_l(accessor:.starting_l())initial_search_slack-> constructor arginitial_slack(accessor:.initial_slack())range_search_slack-> constructor argrange_slack(accessor:.range_slack())4. Multihop / Label-Filtered Search (
multihop_search)Before:
After:
Key differences:
MultihopSearchwraps aKnn-> label evaluator into a single params object5. Flat Search (unchanged method, new param type)
Before:
After:
Only the parameter type changed (
SearchParams->Knn).Import Path Changes
diskann::graph::SearchParamsdiskann::graph::search::Knndiskann::graph::RangeSearchParamsdiskann::graph::search::Rangediskann::graph::SearchParamsErrordiskann::graph::KnnSearchErrordiskann::graph::RangeSearchParamsErrordiskann::graph::RangeSearchErrordiskann::graph::search::MultihopSearch(new)diskann::graph::search::RecordedKnn(new)diskann::graph::search::Diverse(new, feature-gated)diskann::graph::Search(trait, re-exported)diskann::graph::RangeSearchOutput(re-exported)Change List
New Contributors
Full Changelog: 0.46.0...v0.47.0