Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changelog
[v0.2.0]
Breaking Changes
Rknnis no longerClone: TheCloneimplementation has been removed from theRknnstruct to prevent double-free errors. The context is now a unique resource. If you need to share theRknninstance, consider wrapping it inArcorRc.Rknn::destroyremoved: Thedestroymethod has been removed. Resource cleanup is now handled automatically via theDroptrait when theRknninstance goes out of scope.outputs_getreturn type changed: This method now returns a safeRknnOutput<'a, T>instead ofManuallyDrop<RknnOutput<T>>.outputs_get_rawremoved: Because RknnOutput type is safe type and not need copy so removeoutputs_get_raw.RknnOutputties its lifetime to theRknninstance to prevent Use-After-Free errors.rknn_outputs_releaseon drop, so manual release is no longer required or possible.&[T]) instead of aVec, preventing unsafe memory management.rknn-sys-rs: Low-level FFI bindings.rknn-rs: Safe Rust wrappers (the main entry point).Added
rknnmrtfeature: Added a new feature flagrknnmrt. When enabled, the library links againstlibrknnmrtinstead oflibrknnrt.rknn_init:rknn_initnow returns aResultinstead of panicking if the model path contains invalid characters (e.g., null bytes).Changed
Errorstruct andrkerr!macro have been moved to a dedicatedrknn::errormodule (re-exported inprelude).