ONNX v1.19.0 is now available with exciting new features! We would like to thank everyone who contributed to this release!
Please visit onnx.ai to learn more about ONNX and associated projects.
Key Updates
IR Version 12
Added FLOAT8E8M0 type
ai.onnx Opset 24
Added Swish op
Added TensorScatter op and updated Attention op for in-place KV cache updates
BUILD_ONNX_PYTHON symbol is deprecated (we be removed for 1.20). Please, use ONNX_BUILD_PYTHON instead.
What's Changed
Breaking Changes and Deprecations
Deprecate printable_graph in helper by @justinchuby in https://github.com/onnx/onnx/pull/6803
Remove deprecated mapping constants by @justinchuby in https://github.com/onnx/onnx/pull/6914
Remove re2 dependency by @cbourjau in https://github.com/onnx/onnx/pull/7083
Use ml_dtypes everywhere by @justinchuby in https://github.com/onnx/onnx/pull/7089
Spec and Operator
Clarify the axes input of [un]Squeeze to be 1D tensors by @justinchuby in https://github.com/onnx/onnx/pull/6888
Clarify that variable shadowing is not allowed by @justinchuby in https://github.com/onnx/onnx/pull/6955
Clarify Mod operator by @cbourjau in https://github.com/onnx/onnx/pull/6973
Fix typo regarding Attention scale in the spec by @yuanyao-nv in https://github.com/onnx/onnx/pull/6984
Clarify default value for ratio input of Dropout operator by @robertknight in https://github.com/onnx/onnx/pull/7032
Correct dtype attribute docs for EyeLike operator by @robertknight in https://github.com/onnx/onnx/pull/7031
Update float8 table for the Cast op spec by @justinchuby in https://github.com/onnx/onnx/pull/7085
Document Multi-Device Configuration proto specifications in IR.md by @Copilot in https://github.com/onnx/onnx/pull/7056
Add FLOAT8E8M0 data type by @yuanyao-nv in https://github.com/onnx/onnx/pull/7030
Enable float8e8m0 for Q/DQ, and other ops by @yuanyao-nv in https://github.com/onnx/onnx/pull/7120
Update the saturating behavior for E4M3FNUZ/E5M2FNUZ in Cast and CastLike by @justinchuby in https://github.com/onnx/onnx/pull/7130
Fix ELU and Softplus operators to support tensors of any shape by @Copilot in https://github.com/onnx/onnx/pull/7136
Fix Shape operator specification: correct range bounds and document start > end behavior by @Copilot in https://github.com/onnx/onnx/pull/7132
Fix Attention 3D, reference implementation and c++ expansion by @xadupre in https://github.com/onnx/onnx/pull/7142
Fix RMS norm function definition by @justinchuby in https://github.com/onnx/onnx/pull/7135
Fix spec for ReduceSumSquare and other reduce ops when noop_with_empty_axes is set by @Copilot in https://github.com/onnx/onnx/pull/7137
Add bf16 support to TopK and SplitToSequence by @gramalingam in https://github.com/onnx/onnx/pull/7158
Add Swish operator by @isdanni in https://github.com/onnx/onnx/pull/7172
Add TensorScatter op for in-place kv cache update by @yuanyao-nv in https://github.com/onnx/onnx/pull/7114
Fix Resize operator document by @kcvlex in https://github.com/onnx/onnx/pull/6686
Add kv_nonpad_seqlen input to Attention by @yuanyao-nv in https://github.com/onnx/onnx/pull/7164
Reference Implementation
Fix Resize reference operator by @xadupre in https://github.com/onnx/onnx/pull/7105
fixed erf for empty inputs by @konstantin-pueckler-qc in https://github.com/onnx/onnx/pull/7170
Fix Softmax reference for inputs of length 1 by @konstantin-pueckler-qc in https://github.com/onnx/onnx/pull/7169
Fix return type of HardSigmoid in reference implementation by @konstantin-pueckler-qc in https://github.com/onnx/onnx/pull/7168
Fix hardmax reference implementation by @konstantin-pueckler-qc in https://github.com/onnx/onnx/pull/7167
[Reference] Fix constant of shape when input value is 0d by @justinchuby in https://github.com/onnx/onnx/pull/7177
Utilities and Tools
Support set schema inference function in python by @OYCN in https://github.com/onnx/onnx/pull/5940
Improve model Extractor by @justinchuby in https://github.com/onnx/onnx/pull/6920
Fix: prefixing of graphs when rename_inputs=False/rename_outputs=False by @KarelZe in https://github.com/onnx/onnx/pull/6994
Fix Einsum shape inference segfault for scalar inputs by @Copilot in https://github.com/onnx/onnx/pull/7055
Add support for constructing functions with graph attributes by @Copilot in https://github.com/onnx/onnx/pull/7112
Make some op-level shape inference functions public by @titaiwangms in https://github.com/onnx/onnx/pull/7091
Implement saturate_cast in numpy helper by @justinchuby in https://github.com/onnx/onnx/pull/7143
Add .txtpb as a support text proto format in serialization by @justinchuby in https://github.com/onnx/onnx/pull/7161
Build, CI and Tests
Use ONNX_WERROR=ON in all jobs by @cyyever in https://github.com/onnx/onnx/pull/6825
Cleanup CMake scripts by @cyyever in https://github.com/onnx/onnx/pull/6828
Better support of sanitizers by @cyyever in https://github.com/onnx/onnx/pull/6826
Remove the pull trigger in source dist test by @justinchuby in https://github.com/onnx/onnx/pull/6861
Use CONFIG to find protobuf by @ktf in https://github.com/onnx/onnx/pull/6840
Update to checkout submodules properly by @justinchuby in https://github.com/onnx/onnx/pull/6884
Improve lint CI by @justinchuby in https://github.com/onnx/onnx/pull/6899
Remove win arm64 from main.yml by @andife in https://github.com/onnx/onnx/pull/6906
Enhance Build Process and CI Configuration (combine pipelines) by @andife in https://github.com/onnx/onnx/pull/6926
Update and rename Install_test.yml to install_test.yml by @andife in https://github.com/onnx/onnx/pull/6950
Update CMake to 3.24 and use LINK_LIBRARY:WHOLE_ARCHIVE by @cyyever in https://github.com/onnx/onnx/pull/6934
replace requirements_release with requirements_release_build in codeql.yml by @andife in https://github.com/onnx/onnx/pull/6958
Add backend node testing for Lpnormalization op by @jagadeeshvx in https://github.com/onnx/onnx/pull/6997
Refine pybind11 integration by @cyyever in https://github.com/onnx/onnx/pull/7024
Use pybind11_add_module by @cyyever in https://github.com/onnx/onnx/pull/7034
Update input and output tensors in pb files to match the model by @amarin16 in https://github.com/onnx/onnx/pull/7074
Generate the test data that should be in the repo but was omitted by @justinchuby in https://github.com/onnx/onnx/pull/7099
Fix cast test cases by @justinchuby in https://github.com/onnx/onnx/pull/7102
Test ArgMax with multiple maximal values and select_last_index = 0 by @meilofveeningen-rl in https://github.com/onnx/onnx/pull/7104
Add more test cases with attention by @xadupre in https://github.com/onnx/onnx/pull/7117
Update CMakeLists.txt to prevent ICE protobuf failure by @justinchuby in https://github.com/onnx/onnx/pull/7121
Fix shared module name when cross-compiling by @zboszor in https://github.com/onnx/onnx/pull/7026
Add missing symbols for onnx-mlir by @Sunny-Anand in https://github.com/onnx/onnx/pull/7179
improve condition in create_release.yml by @andife in https://github.com/onnx/onnx/pull/7196
Documentation
Update CIPipelines.md by @justinchuby in https://github.com/onnx/onnx/pull/6885
Update IRv10 brief docs by @justinchuby in https://github.com/onnx/onnx/pull/6963
Fix some typos in documentation by @bentheiii in https://github.com/onnx/onnx/pull/7156
[Docs] Add tip blocks referencing ir-py project for Python APIs by @Copilot in https://github.com/onnx/onnx/pull/7109
Other Changes
Merge Windows CI jobs by @cyyever in https://github.com/onnx/onnx/pull/6827
Improve source build testing by @andife in https://github.com/onnx/onnx/pull/6831
use HEAD_SHA instead of HEAD_REF in auto_update_doc.yml by @mshudrak in https://github.com/onnx/onnx/pull/6809
Fix clang-tidy warnings by @cyyever in https://github.com/onnx/onnx/pull/6832
Update pypa / manylinux2014_x86_64 in release_linux_x86_64.yml to 2025.03.22-2 by @andife in https://github.com/onnx/onnx/pull/6833
Fix the ONNX_BUILD_CUSTOM_PROTOBUF bug introduced by PR#6495. by @cainbit in https://github.com/onnx/onnx/pull/6830
Bump protobuf to v30.1 by @cyyever in https://github.com/onnx/onnx/pull/6804
Remove onnx/onnx-data_pb.h by @cyyever in https://github.com/onnx/onnx/pull/6836
replace quansight-labs/setup-python with actions/setup-python by @ngoldbaum in https://github.com/onnx/onnx/pull/6837
integrate release_mac_freethreading into release_mac by @andife in https://github.com/onnx/onnx/pull/6841
Bump protobuf to v30.2 by @cyyever in https://github.com/onnx/onnx/pull/6839
Improve pyproject.toml and add py.typed by @cyyever in https://github.com/onnx/onnx/pull/6843
Bump ruff to 0.11 and types-protobuf to 5.29.1.20250315 by @cyyever in https://github.com/onnx/onnx/pull/6846
Bump actions/setup-python from 5.4.0 to 5.5.0 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6853
Bump actions/upload-artifact from 4.6.1 to 4.6.2 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6852
Bump actions/download-artifact from 4.1.9 to 4.2.1 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6856
Bump clang-format to 20 by @cyyever in https://github.com/onnx/onnx/pull/6850
Fix external data bug in version converter by @yuanyao-nv in https://github.com/onnx/onnx/pull/6847
Bump github/codeql-action from 3.28.11 to 3.28.13 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6858
Bump editorconfig-checker from 3.2.0 to 3.2.1 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6860
Bump reviewdog/action-misspell from 1.26.1 to 1.26.3 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6857
Bump reviewdog/action-shellcheck from 1.29.0 to 1.30.0 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6854
Added selection option to enable both release and preview builds in the create_release.yml workflow by @andife in https://github.com/onnx/onnx/pull/6851
Add Publishing Workflow for onnx to Test PyPI (https://test.pypi.org/project/onnx/) by @andife in https://github.com/onnx/onnx/pull/6849
Bump reviewdog/action-cpplint from 1.8.0 to 1.9.2 by @dependabot[bot] in https://github.com/onnx/onnx/pull/6855
Remove pyi generators by @yadunand-kamath in https://github.com/onnx/onnx/pull/6863
New Contributors
@mshudrak made their first contribution in https://github.com/onnx/onnx/pull/6809
@cainbit made their first contribution in https://github.com/onnx/onnx/pull/6830
@ngoldbaum made their first contribution in https://github.com/onnx/onnx/pull/6837
@yadunand-kamath made their first contribution in https://github.com/onnx/onnx/pull/6863
@ktf made their first contribution in https://github.com/onnx/onnx/pull/6840
@co63oc made their first contribution in https://github.com/onnx/onnx/pull/6953
@jagadeeshvx made their first contribution in https://github.com/onnx/onnx/pull/6997
@alx256 made their first contribution in https://github.com/onnx/onnx/pull/7023
@robertknight made their first contribution in https://github.com/onnx/onnx/pull/7032
@amarin16 made their first contribution in https://github.com/onnx/onnx/pull/7074
@KarelZe made their first contribution in https://github.com/onnx/onnx/pull/6994
@Copilot made their first contribution in https://github.com/onnx/onnx/pull/7056
@meilofveeningen-rl made their first contribution in https://github.com/onnx/onnx/pull/7104
@bentheiii made their first contribution in https://github.com/onnx/onnx/pull/7156
@zboszor made their first contribution in https://github.com/onnx/onnx/pull/7026
@kcvlex made their first contribution in https://github.com/onnx/onnx/pull/6686
@Sunny-Anand made their first contribution in https://github.com/onnx/onnx/pull/7179
Full Changelog: https://github.com/onnx/onnx/compare/v1.18.0...v1.19.0