Skip to content

Bump tract-onnx from 0.22.1 to 0.22.3 in the cargo group across 1 directory#1221

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/cargo-f0abaf91fb
Open

Bump tract-onnx from 0.22.1 to 0.22.3 in the cargo group across 1 directory#1221
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/cargo-f0abaf91fb

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 6, 2026

Copy link
Copy Markdown
Contributor

Bumps the cargo group with 1 update in the / directory: tract-onnx.

Updates tract-onnx from 0.22.1 to 0.22.3

Changelog

Sourced from tract-onnx's changelog.

0.22.x → 0.23 in a nutshell

  • tract facade is now the recommended public API. Renamed from tract-rs; sole crate under semver, one curated surface (Model/Runnable/State/Tensor/TDim + nnef()/onnx()/runtime_for_name). ndarray removed from public types in favour of opt-in impl_ndarray_interop!(). Most other API renames in this release fall out of this consolidation (ValueTensor, concretize_symbolsset_symbols, default runtime → cpu, …).
  • GPU is first-class. cuda + metal Runtime impls with f16 conv + cuDNN, CUDA 13 (CUDA 12 dropped), automatic per-node CPU fallback when GPU rejects a shape; virtual gpu / gpu-or-cpu names for portable downstream code.
  • Supply-chain hardening. Cargo.lock tracked; CDX + SPDX SBOMs on release binaries plus PEP 770 SBOMs in wheels (cargo-auditable + GitHub attestations);

Migrating from 0.22.x to 0.23

For normal usage we recommend adopting the tract facade crate (the public API at api/rs) instead of wiring tract-core, tract-nnef, tract-onnx, tract-pulse, tract-cuda, tract-metal, etc. directly. The facade exposes one stable surface — nnef(), onnx(), runtime_for_name("cpu" | "gpu" | "gpu-or-cpu" | "cuda" | "metal" | ...), plus Model, Runnable, State, Tensor, TDim, and a SetSymbols transform builder — with all the backends curated behind it. impl_ndarray_interop!() (0.23.0-dev.5) keeps ndarray interop opt-in without leaking an ndarray version into the public API. Downstream code that pinned tract-core + tract-onnx directly can usually drop those deps in favour of tract = "0.23" and use tract::prelude::*;. Examples are now organised around this facade — see examples/onnx-mobilenet-v2, examples/nnef-mobilenet-v2, and examples/causal_llm.

0.23.4 - 2026-07-08

Security / deps

  • RUSTSEC-2026-0204: bump crossbeam-epoch to 0.9.20 (invalid pointer deref in fmt::Display for Atomic/Shared) (#2454).
  • RUSTSEC-2026-0190: bump anyhow to 1.0.103.
  • RUSTSEC-2026-0186: dependency refresh.
  • Drop the ggml dev-dependency, removing the memmap2 0.5 RustSec advisory.

GPU

  • CUDA per-thread streams. Each thread gets its own non-blocking stream; cudarc cross-stream event tracking is disabled and constant uploads are drained at prepare, cutting cross-stream synchronization overhead.
  • Metal GGML matmul runs in f16. f16 activations/output for the GGML matmul (no more f32 round-trips), with the f16/f32 branch hoisted out of the hot loop and activation selection done at runtime rather than by template.

CPU / linalg

  • Intel AMX GEMM kernels (x86_64). int8 (avx512amx_mmm_i32_8x8 / 16x16) and bf16→f32 (avx512amx_mmm_f32_16x16, TDPBF16PS) matmul micro-kernels with shape-adaptive dispatch (16x16 for large, 8x8 for small), CPUID cache-size detection, and oneDNN-style prefetch. The AMX bf16 f32 path is opt-in via TRACT_AMX_BF16.
  • AVX-VNNI int8 GEMM kernels. avxvnni_mmm_i32_8x8 (ymm) and a zmm 16x16 AVX-512-VNNI kernel, the latter gated on runtime-probed dual 512-bit FMA presence (TRACT_AVX512_FMA_UNITS).
  • Cache-aware L3 blocking. LLC/SLC-aware budget for the L3 outer blocking tier, gated on the working set actually spilling the LLC (#2352).
  • Q1_58 ternary block-quant (BitNet b1.58) and Q4_0::w4a8_gemv (W4A8 int8-dot decode GEMV). (The former Q1_58 label was renamed to Q2_0_T.)
  • Separable average pool. Concrete-geometry pool codegen plus an opt-in separable avg-pool, with an NHWC kernel.
  • SIMD ReduceMin mirroring the existing max reducer.

Transformers / LLM

... (truncated)

Commits
  • 1541d40 release 0.22.3
  • 5f994bc Sanitize ONNX external_data location and bound offset/length
  • df98b34 release.sh: push the release commit and only its version tag. The script push...
  • 5fcd0c0 post-release 0.22.3-pre
  • 19a2c2a release 0.22.2
  • 4773e92 fix(nnef): reject overflowing block-quant tensor dims
  • ee5f019 fix(nnef): reject overflowing tensor dims
  • a213cbc Support value_ints, value_floats, value_string(s) in ONNX Constant op
  • 0eb5ced backport wheels build from amin
  • c92b8a1 post-release 0.22.2-pre
  • See full diff in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file Rust labels Jul 6, 2026
@dependabot dependabot Bot requested a review from ladvoc as a code owner July 6, 2026 15:02
@dependabot dependabot Bot added Rust dependencies Pull requests that update a dependency file labels Jul 6, 2026
devin-ai-integration[bot]

This comment was marked as resolved.

Bumps the cargo group with 1 update in the / directory: [tract-onnx](https://github.com/snipsco/tract).


Updates `tract-onnx` from 0.22.1 to 0.22.3
- [Release notes](https://github.com/snipsco/tract/releases)
- [Changelog](https://github.com/sonos/tract/blob/main/CHANGELOG.md)
- [Commits](sonos/tract@0.22.1...0.22.3)

---
updated-dependencies:
- dependency-name: tract-onnx
  dependency-version: 0.22.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/cargo/cargo-f0abaf91fb branch from 5c4a6d1 to 0a9a11b Compare July 9, 2026 20:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file Rust

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants