# What changed in onnx

> 42 changes in onnx 1 from its official release notes, upgrade guides and advisories: 2 breaking, 7 security, 10 new APIs and options. Each one cited. Sources checked 2026-10-18. HTML: https://unstale.sh/pypi/onnx/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## onnx 1

### Breaking changes

- The IR version changes from 13 to 14; developers creating or consuming models may need to account for the new version. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- ReduceLogSum operators in opset 28 are restricted to float types. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)

### Security

- ONNX has Null Pointer Dereference in Upsample Version Converter Adapter (Zero Inputs) (1.22.0) — [security advisory](https://github.com/advisories/GHSA-HWPQ-HMQ9-WJ77)
- ONNX: Heap-Buffer-Overflow READ in Gemm Version Converter Adapter via Undersized Input Shape (1.22.0) — [security advisory](https://github.com/advisories/GHSA-P893-RVQ9-2XF9)
- ONNX: Arbitrary File Read via ExternalData Hardlink Bypass in ONNX load (1.21.0) — [security advisory](https://github.com/advisories/GHSA-CMW6-HCPP-C6JP)
- ONNX: External Data Symlink Traversal (1.21.0) — [security advisory](https://github.com/advisories/GHSA-P433-9WV8-28XJ)
- ONNX: Malicious ONNX models can crash servers by exploiting unprotected object settings. (1.21.0) — [security advisory](https://github.com/advisories/GHSA-538C-55JV-C5G9)
- ONNX: TOCTOU arbitrary file read/write in save_external_dat (1.21.0) — [security advisory](https://github.com/advisories/GHSA-Q56X-G2FJ-4RJ6)
- onnx Vulnerable to Path Traversal via Symlink (1.21.0) — [security advisory](https://github.com/advisories/GHSA-3R9X-F23J-GC73)

### New APIs and options

- Attention opset 25 adds the local_window_size attribute. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- BitShift-28 adds signed integer type support. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Celu-28 adds float16, bfloat16, and double support. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Compress and related operators add bfloat16 support. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The latest DequantizeLinear reference implementation is registered. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- FLOAT6E2M3 is added as a quantization data type. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- FLOAT6E3M2 is added as a quantization data type. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The latest QuantizeLinear reference implementation is registered. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Opset 28 adds a mode attribute with DCR and CRD choices; function bodies are also added for SpaceToDepth and DepthToSpace. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- SwiGLU is added as an ONNX function-op. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)

### Performance

- The reference Conv implementation is vectorized, changing its performance. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)

### Behavior and default changes

- Mod allows float input when fmod is 0. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Optional operators support all IR14 types. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Range is marked deterministic. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Reference evaluation now supports higher-rank inputs. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The reference evaluator performs runtime checks of shape annotations. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)

### Fixes and other changes

- Fixes a version miss for Opset 28. (1.23.2) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.2)
- Validates the offset in save_external_data. (1.23.1) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.1)
- The causal-mask and padding-mask paths in opsets 23 and 24 fix a bfloat16 type mismatch. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Causal-mask alignment and NaN robustness are fixed when is_causal is composed with attn_mask for external static KV caches. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Float parsing no longer depends on the locale. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The reference implementation rejects out-of-range axes. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- A heap buffer over-read in shape inference for weight rank mismatch is fixed. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Einsum-28 adds bfloat16 support. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The checker rejects non-canonical FLOAT6 encodings. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The reference implementation fixes output shape for empty indices. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The reference implementation now handles scalar inputs. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Shape inference is fixed when depth is empty. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The reference implementation fixes behavior on empty boolean tensors. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The reference implementation now handles zero-length slices. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Shape inference validates num_scan_inputs to prevent underflow. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- The reference implementation fixes min and max with multi-axis indices. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
- Circular mode now wraps non-sequence coordinates correctly. (1.23.0) — [release notes](https://github.com/onnx/onnx/releases/tag/v1.23.0)
