diff --git a/Cargo.lock b/Cargo.lock index d07531612e..0b85cbeb3c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1517,6 +1517,14 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "fractal" +version = "0.1.0" +source = "git+https://github.com/AdaWorldAPI/ndarray?branch=master#db3a7dde568eb6d7f8806faff58bc0aa17d2a733" +dependencies = [ + "libm", +] + [[package]] name = "fs-err" version = "3.3.1" @@ -2499,13 +2507,15 @@ dependencies = [ [[package]] name = "ndarray" version = "0.17.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520080814a7a6b4a6e9070823bb24b4531daac8c4627e08ba5de8c5ef2f2752d" +source = "git+https://github.com/AdaWorldAPI/ndarray?branch=master#db3a7dde568eb6d7f8806faff58bc0aa17d2a733" dependencies = [ + "fractal", "matrixmultiply", "num-complex", "num-integer", "num-traits", + "p64", + "paste", "portable-atomic", "portable-atomic-util", "rawpointer", @@ -2946,6 +2956,14 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" +[[package]] +name = "p64" +version = "0.1.0" +source = "git+https://github.com/AdaWorldAPI/ndarray?branch=master#db3a7dde568eb6d7f8806faff58bc0aa17d2a733" +dependencies = [ + "fractal", +] + [[package]] name = "page_size" version = "0.6.0" diff --git a/Cargo.toml b/Cargo.toml index 3cbe58e5c3..8264ba49b3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -124,7 +124,7 @@ default-members = [ [workspace.package] # MSRV source of truth: CI derives the tested toolchain from this. Keep the # README rustc badge in sync when bumping. -rust-version = "1.91" +rust-version = "1.97" [workspace.dependencies] anstyle = "1.0.2" @@ -265,3 +265,11 @@ opt-level = 2 debug = false # strip = "debuginfo" does not work on android and ios incremental = false + +# AdaWorldAPI/ndarray fork: same 0.17.2 API surface as upstream, plus a +# `simd`/`hpc` module (crate::simd::F32x16 etc.) with a LazyLock-cached +# AVX-512 -> AVX2 -> NEON -> scalar dispatch tier (src/simd.rs, +# src/simd_avx512.rs). Pinned via git (not a sibling path) so this +# resolves in any checkout, CI included. +[patch.crates-io] +ndarray = { git = "https://github.com/AdaWorldAPI/ndarray", branch = "master" } diff --git a/README.md b/README.md index 0755a39815..655556c04c 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ ![tract-logo](assets/tract-logo/PNG/tract-horizontal-blue.png) ![Rust](https://img.shields.io/badge/rust-%23000000.svg?style=for-the-badge&logo=rust&logoColor=white) -![rustc >= 1.91.0](https://img.shields.io/badge/rustc-%3E%3D1.91.0-brightgreen) +![rustc >= 1.97.0](https://img.shields.io/badge/rustc-%3E%3D1.97.0-brightgreen) ![MIT/Apache 2](https://img.shields.io/crates/l/tract) [![Native Linux test status](https://github.com/sonos/tract/workflows/Native%20Linux/badge.svg)](https://github.com/sonos/tract/actions) [![Embedded targets status](https://github.com/sonos/tract/workflows/Embedded%20targets/badge.svg)](https://github.com/sonos/tract/actions) diff --git a/api/rs/deny.toml b/api/rs/deny.toml index 0ec5a9aa9c..00db08df14 100644 --- a/api/rs/deny.toml +++ b/api/rs/deny.toml @@ -49,6 +49,7 @@ skip = [ # trusted git sources. allow-git = [ "https://github.com/rustformers/llm.git", + "https://github.com/AdaWorldAPI/ndarray", ] [licenses] diff --git a/cli/deny.toml b/cli/deny.toml index bee6142bb0..dab870aa0e 100644 --- a/cli/deny.toml +++ b/cli/deny.toml @@ -35,6 +35,7 @@ deny = [ # trusted git sources. allow-git = [ "https://github.com/rustformers/llm.git", + "https://github.com/AdaWorldAPI/ndarray", ] [licenses]