941 Commits

Author SHA1 Message Date
Carson M.
8b3a1edd1c refactor: attempt to load dylib immediately 2025-09-04 11:45:56 -05:00
Carson M.
2ee17aa56a fix: IoBinding memory leak
`RunWithBinding` actually creates entirely new `OrtValue`s referencing any outputs' existing data, for some reason.

`Session::run_with_options` with preallocated outputs is not affected because we already indiscriminately treat every output as if it were brand new.
2025-09-04 02:17:01 -05:00
Carson M.
c162a72a38 test: create session so env is initialized 2025-08-31 19:45:05 -05:00
Carson M.
f59858000a docs: document bind_output_to_device behavior, closes #454 2025-08-31 19:41:10 -05:00
Carson M.
466025ca46 fix: use CUDA-compatible Identity node, fixes #453
The `Identity` node in the graph used `ai.onnx` v21. CUDA only has implementations up to `ai.onnx` v19. Some surgical hex editing brings the version down to v12, which other EPs should support as well.
2025-08-31 19:38:23 -05:00
Carson M.
3fef332359 ci(code-quality): update nightly rustc 2025-08-31 18:58:45 -05:00
Carson M.
317be209b1 fix: let Environment drop, closes #441
Let it die, let it die! You shall die

Instead of creating an environment that lives throughout the duration of the process, we now hold the environment options we commit, and create the environment from those options (or grab the current env) whenever we need it. When all holders of the environment are dropped, the environment is dropped as well.

Previously, we held `Environment` as a static variable. Statics are never dropped, but ONNX Runtime's own destructors assumes that the environment is long gone by the time the process exits, which was not the case in `ort`! This led to issues like #441 and the dumb `0003-leak-logger-mutex.patch` from `ort-artifacts`.
2025-08-31 18:57:38 -05:00
Onur Özkan
6c0a32a029 fix(sys): print as a build warning if feature set isn't available (#458)
Signed-off-by: Onur Özkan <work@onurozkan.dev>
2025-08-30 16:33:46 -05:00
David
72816a4c60 docs: Extend the docs for the inputs! macro (#455) 2025-08-28 10:36:16 -05:00
Kalleby Santos
f7f571173b docs(website): add supabase use case (#452) 2025-08-20 06:03:08 -05:00
Carson M.
d269461e21 refactor!: make metadata methods return Option<T>
The only error case occurs when the value is not present, so `Option<T>`s make more sense here.
2025-08-14 16:42:10 -05:00
Alvaro Bartolome
9a29b40f2b docs: Add Text Embeddings Inference (TEI) in project-list (#448) 2025-08-14 06:23:54 -05:00
Carson M.
f4ab181702 fix(sys): ort-web compat 2025-08-07 15:20:22 -05:00
Carson M.
86370e0050 style: consistent lifetime syntax 2025-08-07 12:32:37 -05:00
Carson M.
80f56372f2 refactor: remove useless concat!s 2025-08-07 12:30:28 -05:00
Carson M.
f3cd995d06 feat(sys): allow overriding cache dir with environment variable 2025-08-07 12:27:54 -05:00
pembem22
5f96a2d585 fix(sys): missing static library on android (#444) 2025-08-02 12:01:02 -05:00
Wang Xin
c11464fbc8 docs: Add oar-ocr to projects using ort (#443) 2025-07-31 11:13:17 -05:00
Carson M.
d28c835c3c fix(sys): use webpki roots for rustls 2025-07-17 15:09:46 -05:00
Carson M.
15bd15cb3e feat(sys): make TLS backend configurable, closes #436 2025-07-17 15:08:34 -05:00
Carson M.
6727c984da feat: make PrepackedWeights Send + Sync
ref #434
2025-07-15 17:12:33 -05:00
Reinis Mazeiks
830e40ae5c feat: Derive interoperability traits for GraphOptimizationLevel (#433)
Co-authored-by: Reinis Mazeiks <reinis.mazeiks@lmt.lv>
2025-07-14 10:12:42 -05:00
Alfred Mathew
1e6f7ee1c8 feat(sys): multiple target directory formats in case of simulators (#432)
Legacy xcode builds will have ios-arm64_x86_64-simulator, like the ones
from pre-packaged onnxruntime.xcframework available to download, and
newer ones will use ios-arm64-simulator in case someone is building it
from source and creating xcframework with latest xcode.
2025-07-13 17:46:52 -05:00
Alfred Mathew
1a2e559b1f feat(sys): support statically linking with ios frameworks (#430) 2025-07-11 13:39:40 -05:00
Carson M.
5d85209c11 feat: WebNN & WASM execution providers 2025-07-10 14:23:04 -05:00
Carson M.
d600c92ff1 feat: ort-web support 2025-07-10 13:57:48 -05:00
Carson M.
20593489c1 chore(sys): ONNX Runtime v1.22.1 2025-07-10 13:51:13 -05:00
Carson M.
eaf9c7fafa feat: support SessionBuilder::commit_from_url in ort-web 2025-07-07 00:19:20 -05:00
pk5ls20
2501564052 docs: add retto to the README list (#425) 2025-07-02 17:10:22 -05:00
Carson M.
957174b912 chore(sys): update wasm32-unknown-emscripten dist 2025-07-01 13:24:40 -05:00
Carson M.
d0c180f304 test: add test for empty tensors 2025-07-01 12:33:21 -05:00
Carson M.
ecca2463fb fix: align dangling pointers for zero-sized tensors, closes #424 2025-07-01 11:38:21 -05:00
Carson M.
63890c58e2 chore: update MSRV to 1.85
The code still targets 1.81 but I'm tired of the CI failing and I refuse to commit `Cargo.lock` to pin `base64ct`. Thankfully, Cargo's resolver has started taking `rust-version` into account since 1.84, so this won't be a problem in the future.
2025-06-29 17:31:22 -05:00
Carson M.
ecebd960d5 fix(sys): fix #[no_std] compat
knew i was forgetting something
2025-06-29 17:27:42 -05:00
Carson M.
e9783a85b6 fix(sys): gate skip_download() behind download-binaries
resolve annoying warning when working in backends
2025-06-29 17:23:10 -05:00
Carson M.
d741147329 refactor: make backends use common stub API 2025-06-29 17:23:10 -05:00
n12n
ae2d0c2cca docs: add Valentinus to the README list (#423) 2025-06-29 08:28:15 -05:00
Carson M.
af63cea854 fix: use write when initializing no_std OnceLock
Writing by assigning to the dereference attempts to drop the old value, which by this point is uninitialized, causing UB; using `write` skips any reading or dropping.
2025-06-18 13:38:00 -05:00
Carson M.
fd738622d7 fix: compile error on WASI targets 2025-06-12 16:11:29 -05:00
Carson M.
22f71ba86a fix: gate ArrayExtensions behind std; fixes #404 2025-06-10 09:03:09 -05:00
Carson M.
2d49e052dc fix(tract): resolve identity crisis 2025-06-04 11:09:30 -05:00
Carson M.
e203ea8596 config: point backend homepages to their respective docs pages 2025-06-04 11:04:08 -05:00
Carson M.
d1ebde95d3 fix: use absolute paths for crate include v2.0.0-rc.10 2025-06-01 01:40:19 -05:00
Carson M.
daf91046dc 2.0.0-rc.10 2025-05-31 23:56:41 -05:00
Carson M.
882056cd28 ci(*): use latest version of rust-cache 2025-05-31 16:25:05 -05:00
Carson M.
180ec09065 fix(sys): update binaries with fix for #392 2025-05-31 16:14:33 -05:00
Carson M.
410ece47b9 chore: match ort-sys license with main license
see eb02ef7dc6
2025-05-31 15:50:17 -05:00
Carson M.
4745bb3a4a fix: NVExecutionProvider is not supported on linux 2025-05-22 13:40:17 -05:00
Carson M.
7976879c75 fix: ensure environment exists when registering NVExecutionProvider 2025-05-22 12:19:02 -05:00
Carson M.
fb17d4512b refactor: remove most usages of NonNull::new_unchecked
and some other `_unchecked` functions
2025-05-22 00:43:54 -05:00