Bump openssl from 0.10.78 to 0.10.79 - #1026
Merged
Merged
Conversation
Bumps [openssl](https://github.com/rust-openssl/rust-openssl) from 0.10.78 to 0.10.79. - [Release notes](https://github.com/rust-openssl/rust-openssl/releases) - [Commits](rust-openssl/rust-openssl@openssl-v0.10.78...openssl-v0.10.79) --- updated-dependencies: - dependency-name: openssl dependency-version: 0.10.79 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
dependabot
Bot
requested review from
a team and
Copilot
and removed request for
Copilot
May 6, 2026 20:06
Alex Razumov (arrayka)
approved these changes
May 6, 2026
Alex Razumov (arrayka)
enabled auto-merge (squash)
May 6, 2026 22:28
Harsha Simhadri (harsha-simhadri)
approved these changes
May 7, 2026
Merged
Mark Hildebrand (hildebrandmw)
added a commit
that referenced
this pull request
May 12, 2026
# DiskANN v0.52.0 Release Notes ## Breaking Changes An AI generated, human reviewed list of changes is summarized below. ### `get_degree_stats` signature changed ([#998](#998)) `DiskANNIndex::get_degree_stats` now takes an explicit iterator of IDs instead of requiring the data provider to implement `IntoIterator`. ```rust // Before — provider had to impl IntoIterator index.get_degree_stats(&mut accessor)?; // After — caller supplies the ID iterator index.get_degree_stats(&mut accessor, id_iter)?; ``` ### PQ dimension contract tightened; entries now `&[f32]` only ([#1044](#1044)) With `AlignedBoxWithSlice` removed from the PQ path, the dimension handling has been refactored into a three-layer contract: | Layer | Where | Contract | |---|---|---| | **Boundary (inmem)** | `QueryComputer::new`, `MultiQueryComputer::new`, `DistanceComputer::evaluate_similarity` | `len == dim` (returns `Err` on mismatch) | | **Boundary (disk)** | `PQScratch::set` | `len >= dim`, slices to `[..dim]` | | **Internal** | `TableL2/IP/Cosine::{new, populate}` | Trusted — no re-validation | **Other changes:** - PQ table populate/distance methods now accept `&[f32]` instead of `<U: Into<f32>>`. Callers must pre-decode quantized vectors via `VectorRepr::as_f32`. - Generic trampoline impls (`&Vec<u8>`, `&&[u8]`) on `QueryComputer` / `DistanceComputer` have been removed. ### `calculate_chunk_offsets` relocated to `ChunkOffsets` constructors ([#976](#976)) The free functions `calculate_chunk_offsets` and `calculate_chunk_offsets_auto` have been moved into constructors on `ChunkOffsets` / `ChunkOffsetsView` in `diskann-quantization::views`. ```rust // Before let offsets = calculate_chunk_offsets(dim, num_chunks); // After (allocating) let offsets = ChunkOffsets::partition(dim, num_chunks)?; // After (zero-alloc, borrows caller-owned scratch) let view = ChunkOffsetsView::partition_into(dim, &mut scratch)?; ``` Additionally, `get_chunk_from_training_data` has been moved from public API. ### `CachingProvider` removed ([#1052](#1052)) The entire `diskann_providers::model::graph::provider::async_::caching` module has been deleted. **Why:** The `CachingProvider` was an experiment in transparent caching over `DataProvider`. In practice it required double monomorphization of the indexing code, didn't save integration work for bulk methods like `on_elements_unordered`/`distances_unordered`, and was complex to maintain. An internal user who …migrated off it removed ~1,000 lines of code, improved compile times by ~20%, and substantially reduced complexity. **Upgrade:** Manage caching directly in your `DataProvider` implementation. ## New Features ### AVX-512 4-bit distance kernels ([#1045](#1045)) Native V4 (AVX-512) specializations for 4-bit packed vector distance computations: - **`SquaredL2`** — 16 × `u32` lanes per iteration via `_mm512_madd_epi16`. - **`InnerProduct`** — AVX-512 VNNI (`_mm512_dpbusd_epi32`) over `u8x64` / `i8x64` operands. Previously, V4 hardware fell back to two AVX2 (V3) kernel invocations per 512-bit chunk. The native kernels double per-instruction throughput. No API changes — existing code benefits automatically on AVX-512 capable hardware. ## Merged PRs * Deprecate 32-bit targets by @suhasjs in #1022 * Add a fast path to `Map::prepare`. by @hildebrandmw in #1023 * Add boundary checks in gen_associated_data_from_range() by @Copilot in #847 * [deps] Don't pull `rayon` as a dependency of `diskann`. by @hildebrandmw in #1024 * Bump openssl from 0.10.78 to 0.10.79 by @dependabot[bot] in #1026 * Cleaning up test work and changing the get_degree_stats signature. by @JordanMaples in #998 * Reduce scalar-quantization benchmark monomorphization by @suri-kumkaran in #1041 * [diskann-vector] Support truly unaligned distances. by @hildebrandmw in #981 * rename spherical.json to graph index with spherical quantization by @harsha-simhadri in #1042 * [PQ Cleanup] Part 2: Consolidate `calculate_chunk_offsets*` by @arkrishn94 in #976 * PQ: tighten dim contract; right-size scratch buffer by @wuw92 in #1044 * Add v4 distance kernels (4-bit SquaredL2 / InnerProduct) by @m3hm3t in #1045 * Remove the Caching Provider by @hildebrandmw in #1052 ## New Contributors * @suhasjs made their first contribution in #1022 * @m3hm3t made their first contribution in #1045 **Full Changelog**: v0.51.0...v0.52.0 Co-authored-by: Mark Hildebrand <mhildebrand@microsoft.com>
weiyaoluo (SeliMeli)
pushed a commit
to SeliMeli/DiskANN
that referenced
this pull request
Jul 22, 2026
Bumps [openssl](https://github.com/rust-openssl/rust-openssl) from 0.10.78 to 0.10.79. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-openssl/rust-openssl/releases">openssl's releases</a>.</em></p> <blockquote> <h2>openssl-v0.10.79</h2> <h2>What's Changed</h2> <ul> <li>Bump actions/cache from 5.0.4 to 5.0.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2610">rust-openssl/rust-openssl#2610</a></li> <li>Try to fix OpenSSL 1.1.0l download by <a href="https://github.com/botovq"><code>@botovq</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2614">rust-openssl/rust-openssl#2614</a></li> <li>Require &mut BigNumContextRef for EcPointRef mul/invert by <a href="https://github.com/alex"><code>@alex</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2615">rust-openssl/rust-openssl#2615</a></li> <li>Fix UB in EcGroupRef::generator on groups without a generator by <a href="https://github.com/alex"><code>@alex</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2617">rust-openssl/rust-openssl#2617</a></li> <li>Replace <code>use libc::*;</code> with targeted imports in openssl-sys by <a href="https://github.com/alex"><code>@alex</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2618">rust-openssl/rust-openssl#2618</a></li> <li>Add PKeyRef::is_a and KeyType for name-based key identification by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2619">rust-openssl/rust-openssl#2619</a></li> <li>Add PKey::{public,private}_key_from_raw_bytes_ex by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2620">rust-openssl/rust-openssl#2620</a></li> <li>Bump MSRV to 1.80 by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2622">rust-openssl/rust-openssl#2622</a></li> <li>Drop once_cell in favor of std::sync::{LazyLock, OnceLock} by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2623">rust-openssl/rust-openssl#2623</a></li> <li>Add PKey::private_key_from_seed for ML-DSA/ML-KEM key import by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2621">rust-openssl/rust-openssl#2621</a></li> <li>parallelize more builds in CI for cold caches by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2625">rust-openssl/rust-openssl#2625</a></li> <li>Add PKeyRef::seed_into for ML-DSA/ML-KEM seed extraction by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2626">rust-openssl/rust-openssl#2626</a></li> <li>Fix process abort when verify/PSK callbacks fire after SSL_CTX swap by <a href="https://github.com/alex"><code>@alex</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2624">rust-openssl/rust-openssl#2624</a></li> <li>Bind OSSL_PARAM_modified and use it for seed_into by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2628">rust-openssl/rust-openssl#2628</a></li> <li>Add PkeyCtxRef::set_context_string for ML-DSA by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2629">rust-openssl/rust-openssl#2629</a></li> <li>Reject non-UTF-8 OCSP responder URLs in X509Ref::ocsp_responders by <a href="https://github.com/alex"><code>@alex</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2631">rust-openssl/rust-openssl#2631</a></li> <li>Fix output buffer overflow for AES key-wrap-with-padding ciphers by <a href="https://github.com/alex"><code>@alex</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2630">rust-openssl/rust-openssl#2630</a></li> <li>Release openssl 0.10.79 and openssl-sys 0.9.115 by <a href="https://github.com/reaperhulk"><code>@reaperhulk</code></a> in <a href="https://redirect.github.com/rust-openssl/rust-openssl/pull/2632">rust-openssl/rust-openssl#2632</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.78...openssl-v0.10.79">https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.78...openssl-v0.10.79</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/649f2d9e37f3aa701e20bd8ab5cd7eb5afa0a90f"><code>649f2d9</code></a> Release openssl 0.10.79 and openssl-sys 0.9.115 (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2632">#2632</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/257f9b20c001b888986f93579f118fa2a57d4f45"><code>257f9b2</code></a> Fix output buffer overflow for AES key-wrap-with-padding ciphers (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2630">#2630</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/d43e9179b1885fc66269a42361cc7a80f631ac8f"><code>d43e917</code></a> Reject non-UTF-8 OCSP responder URLs in X509Ref::ocsp_responders (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2631">#2631</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/f46519c8694a3e121091dafe38aab77c2f756546"><code>f46519c</code></a> Add PkeyCtxRef::set_context_string for ML-DSA (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2629">#2629</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/ad9ae312771f898749a9471549519d45eba6a033"><code>ad9ae31</code></a> Bind OSSL_PARAM_modified and use it for seed_into (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2628">#2628</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/4e25c9be20dae1e78f1a3815950cd0973addae82"><code>4e25c9b</code></a> Fix process abort when verify/PSK callbacks fire after SSL_CTX swap (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2624">#2624</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/3dd8f425ef34a069b5bec46f3971b67db1c295c7"><code>3dd8f42</code></a> Add PKeyRef::seed_into for ML-DSA/ML-KEM seed extraction (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2626">#2626</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/2c5e5a8f1483d5ec85580c07f721de9057d58e69"><code>2c5e5a8</code></a> parallelize more builds in CI for cold caches (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2625">#2625</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/668559171168538cd190574373abfc9e120263ca"><code>6685591</code></a> Add PKey::private_key_from_seed for ML-DSA/ML-KEM key import (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2621">#2621</a>)</li> <li><a href="https://github.com/rust-openssl/rust-openssl/commit/8f8fdce627fb3c553673b8c688d9f1dc10ea0cc8"><code>8f8fdce</code></a> Drop once_cell in favor of std::sync::{LazyLock, OnceLock} (<a href="https://redirect.github.com/rust-openssl/rust-openssl/issues/2623">#2623</a>)</li> <li>Additional commits viewable in <a href="https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.78...openssl-v0.10.79">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/microsoft/DiskANN/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
weiyaoluo (SeliMeli)
pushed a commit
to SeliMeli/DiskANN
that referenced
this pull request
Jul 22, 2026
An AI generated, human reviewed list of changes is summarized below. ([microsoft#998](microsoft#998)) `DiskANNIndex::get_degree_stats` now takes an explicit iterator of IDs instead of requiring the data provider to implement `IntoIterator`. ```rust // Before — provider had to impl IntoIterator index.get_degree_stats(&mut accessor)?; // After — caller supplies the ID iterator index.get_degree_stats(&mut accessor, id_iter)?; ``` ([microsoft#1044](microsoft#1044)) With `AlignedBoxWithSlice` removed from the PQ path, the dimension handling has been refactored into a three-layer contract: | Layer | Where | Contract | |---|---|---| | **Boundary (inmem)** | `QueryComputer::new`, `MultiQueryComputer::new`, `DistanceComputer::evaluate_similarity` | `len == dim` (returns `Err` on mismatch) | | **Boundary (disk)** | `PQScratch::set` | `len >= dim`, slices to `[..dim]` | | **Internal** | `TableL2/IP/Cosine::{new, populate}` | Trusted — no re-validation | **Other changes:** - PQ table populate/distance methods now accept `&[f32]` instead of `<U: Into<f32>>`. Callers must pre-decode quantized vectors via `VectorRepr::as_f32`. - Generic trampoline impls (`&Vec<u8>`, `&&[u8]`) on `QueryComputer` / `DistanceComputer` have been removed. ([microsoft#976](microsoft#976)) The free functions `calculate_chunk_offsets` and `calculate_chunk_offsets_auto` have been moved into constructors on `ChunkOffsets` / `ChunkOffsetsView` in `diskann-quantization::views`. ```rust // Before let offsets = calculate_chunk_offsets(dim, num_chunks); // After (allocating) let offsets = ChunkOffsets::partition(dim, num_chunks)?; // After (zero-alloc, borrows caller-owned scratch) let view = ChunkOffsetsView::partition_into(dim, &mut scratch)?; ``` Additionally, `get_chunk_from_training_data` has been moved from public API. ([microsoft#1052](microsoft#1052)) The entire `diskann_providers::model::graph::provider::async_::caching` module has been deleted. **Why:** The `CachingProvider` was an experiment in transparent caching over `DataProvider`. In practice it required double monomorphization of the indexing code, didn't save integration work for bulk methods like `on_elements_unordered`/`distances_unordered`, and was complex to maintain. An internal user who …migrated off it removed ~1,000 lines of code, improved compile times by ~20%, and substantially reduced complexity. **Upgrade:** Manage caching directly in your `DataProvider` implementation. ([microsoft#1045](microsoft#1045)) Native V4 (AVX-512) specializations for 4-bit packed vector distance computations: - **`SquaredL2`** — 16 × `u32` lanes per iteration via `_mm512_madd_epi16`. - **`InnerProduct`** — AVX-512 VNNI (`_mm512_dpbusd_epi32`) over `u8x64` / `i8x64` operands. Previously, V4 hardware fell back to two AVX2 (V3) kernel invocations per 512-bit chunk. The native kernels double per-instruction throughput. No API changes — existing code benefits automatically on AVX-512 capable hardware. * Deprecate 32-bit targets by @suhasjs in microsoft#1022 * Add a fast path to `Map::prepare`. by @hildebrandmw in microsoft#1023 * Add boundary checks in gen_associated_data_from_range() by @Copilot in microsoft#847 * [deps] Don't pull `rayon` as a dependency of `diskann`. by @hildebrandmw in microsoft#1024 * Bump openssl from 0.10.78 to 0.10.79 by @dependabot[bot] in microsoft#1026 * Cleaning up test work and changing the get_degree_stats signature. by @JordanMaples in microsoft#998 * Reduce scalar-quantization benchmark monomorphization by @suri-kumkaran in microsoft#1041 * [diskann-vector] Support truly unaligned distances. by @hildebrandmw in microsoft#981 * rename spherical.json to graph index with spherical quantization by @harsha-simhadri in microsoft#1042 * [PQ Cleanup] Part 2: Consolidate `calculate_chunk_offsets*` by @arkrishn94 in microsoft#976 * PQ: tighten dim contract; right-size scratch buffer by @wuw92 in microsoft#1044 * Add v4 distance kernels (4-bit SquaredL2 / InnerProduct) by @m3hm3t in microsoft#1045 * Remove the Caching Provider by @hildebrandmw in microsoft#1052 * @suhasjs made their first contribution in microsoft#1022 * @m3hm3t made their first contribution in microsoft#1045 **Full Changelog**: microsoft/DiskANN@v0.51.0...v0.52.0 Co-authored-by: Mark Hildebrand <mhildebrand@microsoft.com>
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.
Bumps openssl from 0.10.78 to 0.10.79.
Release notes
Sourced from openssl's releases.
Commits
649f2d9Release openssl 0.10.79 and openssl-sys 0.9.115 (#2632)257f9b2Fix output buffer overflow for AES key-wrap-with-padding ciphers (#2630)d43e917Reject non-UTF-8 OCSP responder URLs in X509Ref::ocsp_responders (#2631)f46519cAdd PkeyCtxRef::set_context_string for ML-DSA (#2629)ad9ae31Bind OSSL_PARAM_modified and use it for seed_into (#2628)4e25c9bFix process abort when verify/PSK callbacks fire after SSL_CTX swap (#2624)3dd8f42Add PKeyRef::seed_into for ML-DSA/ML-KEM seed extraction (#2626)2c5e5a8parallelize more builds in CI for cold caches (#2625)6685591Add PKey::private_key_from_seed for ML-DSA/ML-KEM key import (#2621)8f8fdceDrop once_cell in favor of std::sync::{LazyLock, OnceLock} (#2623)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)You can disable automated security fix PRs for this repo from the Security Alerts page.