Skip to content

chore(deps): update ndarray requirement from 0.16 to 0.17#78

Merged
iberi22 merged 1 commit intomainfrom
dependabot/cargo/ndarray-0.17
Dec 20, 2025
Merged

chore(deps): update ndarray requirement from 0.16 to 0.17#78
iberi22 merged 1 commit intomainfrom
dependabot/cargo/ndarray-0.17

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 11, 2025

Updates the requirements on ndarray to permit the latest version.

Changelog

Sourced from ndarray's changelog.

Version 0.17.1 (2025-11-02)

Version 0.17.1 provides a patch to fix the originally-unsound implementation of the new array reference types.

The reference types are now all unsized. Practically speaking, this has one major implication: writing functions and traits that accept RawRef and LayoutRef will now need a + ?Sized bound to work ergonomically with ArrayRef. For example, the release notes for 0.17.0 said

Reading / Writing Shape: LayoutRef<A, D>

LayoutRef lets functions view or modify shape/stride information without touching data. This replaces verbose signatures like:

fn alter_view<S>(a: &mut ArrayBase<S, Ix1>)
where S: Data<Elem = f64>;

Use AsRef / AsMut for best compatibility:

fn alter_shape<T>(a: &mut T)
where T: AsMut<LayoutRef<f64>>;

However, these functions now need an additional bound to allow for callers to pass in &ArrayRef types:

fn alter_shape<T>(a: &mut T)
where T: AsMut<LayoutRef<f64>> + ?Sized; // Added bound here

A huge thank you to Sarah Quiñones (@​sarah-quinones) for catching the original unsound bug and helping to fix it. She does truly excellent work with faer-rs; check it out!

Version 0.17.0 (2025-10-14) [YANKED]

Version 0.17.0 introduces a new array reference type — the preferred way to write functions and extension traits in ndarray.
This release is fully backwards-compatible but represents a major usability improvement.
The first section of this changelog explains the change in detail.

It also includes numerous new methods, math functions, and internal improvements — all credited below.

A New Way to Write Functions

TL;DR

ndarray 0.17.0 adds new reference types for writing functions and traits that work seamlessly with owned arrays and views.

When writing functions that accept array arguments:

  • Use &ArrayRef<A, D> to read elements from any array.
  • Use &mut ArrayRef<A, D> to modify elements.
  • Use &T where T: AsRef<LayoutRef<A, D>> to inspect shape/stride only.
  • Use &mut T where T: AsMut<LayoutRef<A, D>> to modify shape/stride only.

All existing function signatures continue to work; these new types are fully opt-in.

... (truncated)

Commits

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 rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @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)

@dependabot dependabot bot added dependencies Dependency updates from Dependabot quarantine Dependency in quarantine period labels Dec 11, 2025
@coderabbitai
Copy link

coderabbitai bot commented Dec 11, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Contributor

🛡️ Dependency Sentinel Check

This dependency update has been received and will follow the Git-Core Protocol lifecycle:

📋 Quarantine Protocol (14 Days)

Phase Status Date
🔬 Quarantine Start NOW 2025-12-11
🧠 AI Analysis 🔄 Pending -
🔍 Community Monitoring 🔄 Active -
🎓 Graduation ⏳ Scheduled 2025-12-25

🤖 AI Analysis Queue

The following AI agents will analyze this update:

  • Gemini 3 Pro - Risk assessment, breaking changes
  • CodeRabbit - Code patterns, best practices
  • Copilot - Final meta-analysis (post-bots)

⚠️ Architecture Check

Before adoption, this update will be validated against:

  • .✨/ARCHITECTURE.md - Critical decisions
  • docs/agent-docs/RESEARCH_STACK_CONTEXT.md - Living context

📖 Protocol Reference

Dependency Quarantine Rule: Versions < 2 weeks old are in quarantine. Never use bleeding-edge dependencies in production.


Managed by Git-Core Protocol Dependency Sentinel

Updates the requirements on [ndarray](https://github.com/rust-ndarray/ndarray) to permit the latest version.
- [Release notes](https://github.com/rust-ndarray/ndarray/releases)
- [Changelog](https://github.com/rust-ndarray/ndarray/blob/master/RELEASES.md)
- [Commits](rust-ndarray/ndarray@ndarray-rand-0.16.0...0.17.1)

---
updated-dependencies:
- dependency-name: ndarray
  dependency-version: 0.17.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/cargo/ndarray-0.17 branch from 5bda20a to bb6a649 Compare December 13, 2025 14:40
@iberi22 iberi22 merged commit d5377aa into main Dec 20, 2025
4 of 5 checks passed
@dependabot dependabot bot deleted the dependabot/cargo/ndarray-0.17 branch December 20, 2025 16:47
iberi22 added a commit that referenced this pull request Dec 20, 2025
- Closed PR #110 (duplicate technical report from Jules)
- Closed PR #100 (incomplete Sled memory implementation)
- Merged PRs #105, #104, #78 (Dependabot updates)
- Updated TECHNICAL_STATE_REPORT.md with latest findings
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency updates from Dependabot quarantine Dependency in quarantine period

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant