@ondeinference / onde / commits / d67b6c0

Convert onde to a Cargo workspace

Add a root [workspace] table to the existing onde package, making it a hybrid root-package workspace. Members are the root crate plus the uniffi-bindgen helper and the Dart and React Native Rust SDK crates; the React Native example app is excluded. No files are moved. Closes #21 Co-Authored-By: siGit Code v1.6.5-acp <noreply@sigit.si>

Seto Elkahfi committed Oct 9, 2026 at 20:52 UTC d67b6c08fad0d4cb389758393b490f23e01c2bed
2 files changed +353 -2
Cargo.lock
+348 -2
@@ -12,6 +12,15 @@ dependencies = [
12 "regex",
13 ]
14
15 +[[package]]
16 +name = "addr2line"
17 +version = "0.25.1"
18 +source = "registry+https://github.com/rust-lang/crates.io-index"
19 +checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b"
20 +dependencies = [
21 + "gimli",
22 +]
23 +
24 [[package]]
25 name = "adler2"
26 version = "2.0.1"
@@ -65,12 +74,40 @@ dependencies = [
74 "equator",
75 ]
76
77 +[[package]]
78 +name = "allo-isolate"
79 +version = "0.1.27"
80 +source = "registry+https://github.com/rust-lang/crates.io-index"
81 +checksum = "449e356a4864c017286dbbec0e12767ea07efba29e3b7d984194c2a7ff3c4550"
82 +dependencies = [
83 + "anyhow",
84 + "atomic",
85 + "backtrace",
86 +]
87 +
88 [[package]]
89 name = "allocator-api2"
90 version = "0.2.21"
91 source = "registry+https://github.com/rust-lang/crates.io-index"
92 checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
93
94 +[[package]]
95 +name = "android_log-sys"
96 +version = "0.3.2"
97 +source = "registry+https://github.com/rust-lang/crates.io-index"
98 +checksum = "84521a3cf562bc62942e294181d9eef17eb38ceb8c68677bc49f144e4c3d4f8d"
99 +
100 +[[package]]
101 +name = "android_logger"
102 +version = "0.15.1"
103 +source = "registry+https://github.com/rust-lang/crates.io-index"
104 +checksum = "dbb4e440d04be07da1f1bf44fb4495ebd58669372fe0cffa6e48595ac5bd88a3"
105 +dependencies = [
106 + "android_log-sys",
107 + "env_filter",
108 + "log",
109 +]
110 +
111 [[package]]
112 name = "android_system_properties"
113 version = "0.1.6"
@@ -281,6 +318,12 @@ dependencies = [
318 "syn 3.0.5",
319 ]
320
321 +[[package]]
322 +name = "atomic"
323 +version = "0.5.3"
324 +source = "registry+https://github.com/rust-lang/crates.io-index"
325 +checksum = "c59bdb34bc650a32731b31bd8f0829cc15d24a708ee31559e0bb34f2bc320cba"
326 +
327 [[package]]
328 name = "atomic-waker"
329 version = "1.1.2"
@@ -370,6 +413,21 @@ dependencies = [
413 "pkg-config",
414 ]
415
416 +[[package]]
417 +name = "backtrace"
418 +version = "0.3.76"
419 +source = "registry+https://github.com/rust-lang/crates.io-index"
420 +checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6"
421 +dependencies = [
422 + "addr2line",
423 + "cfg-if",
424 + "libc",
425 + "miniz_oxide 0.8.9",
426 + "object",
427 + "rustc-demangle",
428 + "windows-link 0.2.1",
429 +]
430 +
431 [[package]]
432 name = "base64"
433 version = "0.13.1"
@@ -506,6 +564,12 @@ dependencies = [
564 "serde_core",
565 ]
566
567 +[[package]]
568 +name = "build-target"
569 +version = "0.4.0"
570 +source = "registry+https://github.com/rust-lang/crates.io-index"
571 +checksum = "832133bbabbbaa9fbdba793456a2827627a7d2b8fb96032fa1e7666d7895832b"
572 +
573 [[package]]
574 name = "built"
575 version = "0.8.1"
@@ -668,6 +732,12 @@ dependencies = [
732 "shlex",
733 ]
734
735 +[[package]]
736 +name = "cesu8"
737 +version = "1.1.0"
738 +source = "registry+https://github.com/rust-lang/crates.io-index"
739 +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
740 +
741 [[package]]
742 name = "cfg-if"
743 version = "1.0.4"
@@ -846,6 +916,16 @@ dependencies = [
916 "windows-sys 0.61.2",
917 ]
918
919 +[[package]]
920 +name = "console_error_panic_hook"
921 +version = "0.1.7"
922 +source = "registry+https://github.com/rust-lang/crates.io-index"
923 +checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc"
924 +dependencies = [
925 + "cfg-if",
926 + "wasm-bindgen",
927 +]
928 +
929 [[package]]
930 name = "convert_case"
931 version = "0.6.0"
@@ -1144,6 +1224,15 @@ dependencies = [
1224 "syn 2.0.119",
1225 ]
1226
1227 +[[package]]
1228 +name = "dart-sys"
1229 +version = "4.1.5"
1230 +source = "registry+https://github.com/rust-lang/crates.io-index"
1231 +checksum = "57967e4b200d767d091b961d6ab42cc7d0cc14fe9e052e75d0d3cf9eb732d895"
1232 +dependencies = [
1233 + "cc",
1234 +]
1235 +
1236 [[package]]
1237 name = "dary_heap"
1238 version = "0.3.9"
@@ -1153,6 +1242,19 @@ dependencies = [
1242 "serde",
1243 ]
1244
1245 +[[package]]
1246 +name = "dashmap"
1247 +version = "5.5.3"
1248 +source = "registry+https://github.com/rust-lang/crates.io-index"
1249 +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
1250 +dependencies = [
1251 + "cfg-if",
1252 + "hashbrown 0.14.5",
1253 + "lock_api",
1254 + "once_cell",
1255 + "parking_lot_core",
1256 +]
1257 +
1258 [[package]]
1259 name = "data-encoding"
1260 version = "2.11.1"
@@ -1196,6 +1298,17 @@ dependencies = [
1298 "thiserror 2.0.20",
1299 ]
1300
1301 +[[package]]
1302 +name = "delegate-attr"
1303 +version = "0.3.1"
1304 +source = "registry+https://github.com/rust-lang/crates.io-index"
1305 +checksum = "a84c9a9c129b98e707ac9a31e204c10c064dd9f949b7da362310ff1a8b137d79"
1306 +dependencies = [
1307 + "proc-macro2",
1308 + "quote",
1309 + "syn 3.0.5",
1310 +]
1311 +
1312 [[package]]
1313 name = "deranged"
1314 version = "0.5.8"
@@ -1483,6 +1596,16 @@ dependencies = [
1596 "syn 2.0.119",
1597 ]
1598
1599 +[[package]]
1600 +name = "env_filter"
1601 +version = "0.1.4"
1602 +source = "registry+https://github.com/rust-lang/crates.io-index"
1603 +checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2"
1604 +dependencies = [
1605 + "log",
1606 + "regex",
1607 +]
1608 +
1609 [[package]]
1610 name = "equator"
1611 version = "0.4.2"
@@ -1620,6 +1743,48 @@ dependencies = [
1743 "rand_distr 0.5.1",
1744 ]
1745
1746 +[[package]]
1747 +name = "flutter_rust_bridge"
1748 +version = "2.12.0"
1749 +source = "registry+https://github.com/rust-lang/crates.io-index"
1750 +checksum = "a0884853aae8a6517b5b58cf36f55da487f2fe110e1686938eb29b6640aae4a5"
1751 +dependencies = [
1752 + "allo-isolate",
1753 + "android_logger",
1754 + "anyhow",
1755 + "build-target",
1756 + "bytemuck",
1757 + "byteorder",
1758 + "console_error_panic_hook",
1759 + "dart-sys",
1760 + "delegate-attr",
1761 + "flutter_rust_bridge_macros",
1762 + "futures",
1763 + "js-sys",
1764 + "lazy_static",
1765 + "log",
1766 + "oslog",
1767 + "portable-atomic",
1768 + "threadpool",
1769 + "tokio",
1770 + "wasm-bindgen",
1771 + "wasm-bindgen-futures",
1772 + "web-sys",
1773 +]
1774 +
1775 +[[package]]
1776 +name = "flutter_rust_bridge_macros"
1777 +version = "2.12.0"
1778 +source = "registry+https://github.com/rust-lang/crates.io-index"
1779 +checksum = "6b5ce32f35f710ced8c5aa557f023f1a624e737b5460cee2b70fcd3a8df09e1b"
1780 +dependencies = [
1781 + "hex",
1782 + "md-5",
1783 + "proc-macro2",
1784 + "quote",
1785 + "syn 2.0.119",
1786 +]
1787 +
1788 [[package]]
1789 name = "fnv"
1790 version = "1.0.7"
@@ -2127,6 +2292,12 @@ dependencies = [
2292 "weezl",
2293 ]
2294
2295 +[[package]]
2296 +name = "gimli"
2297 +version = "0.32.3"
2298 +source = "registry+https://github.com/rust-lang/crates.io-index"
2299 +checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7"
2300 +
2301 [[package]]
2302 name = "glob"
2303 version = "0.3.4"
@@ -2184,6 +2355,12 @@ version = "0.12.3"
2355 source = "registry+https://github.com/rust-lang/crates.io-index"
2356 checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
2357
2358 +[[package]]
2359 +name = "hashbrown"
2360 +version = "0.14.5"
2361 +source = "registry+https://github.com/rust-lang/crates.io-index"
2362 +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
2363 +
2364 [[package]]
2365 name = "hashbrown"
2366 version = "0.15.5"
@@ -2756,6 +2933,22 @@ dependencies = [
2933 "jiff-tzdb",
2934 ]
2935
2936 +[[package]]
2937 +name = "jni"
2938 +version = "0.21.1"
2939 +source = "registry+https://github.com/rust-lang/crates.io-index"
2940 +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
2941 +dependencies = [
2942 + "cesu8",
2943 + "cfg-if",
2944 + "combine",
2945 + "jni-sys 0.3.1",
2946 + "log",
2947 + "thiserror 1.0.69",
2948 + "walkdir",
2949 + "windows-sys 0.45.0",
2950 +]
2951 +
2952 [[package]]
2953 name = "jni"
2954 version = "0.22.4"
@@ -2765,7 +2958,7 @@ dependencies = [
2958 "cfg-if",
2959 "combine",
2960 "jni-macros",
2768 - "jni-sys",
2961 + "jni-sys 0.4.1",
2962 "log",
2963 "simd_cesu8",
2964 "thiserror 2.0.20",
@@ -2786,6 +2979,15 @@ dependencies = [
2979 "syn 2.0.119",
2980 ]
2981
2982 +[[package]]
2983 +name = "jni-sys"
2984 +version = "0.3.1"
2985 +source = "registry+https://github.com/rust-lang/crates.io-index"
2986 +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258"
2987 +dependencies = [
2988 + "jni-sys 0.4.1",
2989 +]
2990 +
2991 [[package]]
2992 name = "jni-sys"
2993 version = "0.4.1"
@@ -3069,6 +3271,16 @@ dependencies = [
3271 "rayon",
3272 ]
3273
3274 +[[package]]
3275 +name = "md-5"
3276 +version = "0.10.6"
3277 +source = "registry+https://github.com/rust-lang/crates.io-index"
3278 +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
3279 +dependencies = [
3280 + "cfg-if",
3281 + "digest",
3282 +]
3283 +
3284 [[package]]
3285 name = "memchr"
3286 version = "2.8.3"
@@ -3494,6 +3706,15 @@ dependencies = [
3706 "objc2-foundation",
3707 ]
3708
3709 +[[package]]
3710 +name = "object"
3711 +version = "0.37.3"
3712 +source = "registry+https://github.com/rust-lang/crates.io-index"
3713 +checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe"
3714 +dependencies = [
3715 + "memchr",
3716 +]
3717 +
3718 [[package]]
3719 name = "once_cell"
3720 version = "1.21.4"
@@ -3863,6 +4084,18 @@ dependencies = [
4084 "rayon",
4085 ]
4086
4087 +[[package]]
4088 +name = "onde-react-native"
4089 +version = "1.3.1"
4090 +dependencies = [
4091 + "jni 0.21.1",
4092 + "log",
4093 + "onde",
4094 + "serde",
4095 + "serde_json",
4096 + "tokio",
4097 +]
4098 +
4099 [[package]]
4100 name = "onde-tqdm"
4101 version = "0.8.2"
@@ -3874,6 +4107,25 @@ dependencies = [
4107 "once_cell",
4108 ]
4109
4110 +[[package]]
4111 +name = "onde-uniffi-bindgen"
4112 +version = "0.1.0"
4113 +dependencies = [
4114 + "uniffi",
4115 +]
4116 +
4117 +[[package]]
4118 +name = "onde_inference_dart"
4119 +version = "1.1.1"
4120 +dependencies = [
4121 + "flutter_rust_bridge",
4122 + "log",
4123 + "onde",
4124 + "smbcloud-gresiq-sdk",
4125 + "thiserror 2.0.20",
4126 + "tokio",
4127 +]
4128 +
4129 [[package]]
4130 name = "onig"
4131 version = "6.5.3"
@@ -3941,6 +4193,17 @@ dependencies = [
4193 "num-traits",
4194 ]
4195
4196 +[[package]]
4197 +name = "oslog"
4198 +version = "0.2.0"
4199 +source = "registry+https://github.com/rust-lang/crates.io-index"
4200 +checksum = "80d2043d1f61d77cb2f4b1f7b7b2295f40507f5f8e9d1c8bf10a1ca5f97a3969"
4201 +dependencies = [
4202 + "cc",
4203 + "dashmap",
4204 + "log",
4205 +]
4206 +
4207 [[package]]
4208 name = "packedvec"
4209 version = "1.2.5"
@@ -4776,6 +5039,12 @@ dependencies = [
5039 "serde_derive",
5040 ]
5041
5042 +[[package]]
5043 +name = "rustc-demangle"
5044 +version = "0.1.28"
5045 +source = "registry+https://github.com/rust-lang/crates.io-index"
5046 +checksum = "b74b56ffa8bb2830709a538c2cbcae9aa062db0d2a42563bfb09bdaae44020eb"
5047 +
5048 [[package]]
5049 name = "rustc-hash"
5050 version = "1.1.0"
@@ -4870,7 +5139,7 @@ checksum = "26d1e2536ce4f35f4846aa13bff16bd0ff40157cdb14cc056c7b14ba41233ba0"
5139 dependencies = [
5140 "core-foundation 0.10.1",
5141 "core-foundation-sys",
4873 - "jni",
5142 + "jni 0.22.4",
5143 "log",
5144 "once_cell",
5145 "rustls",
@@ -6068,6 +6337,15 @@ dependencies = [
6337 "cfg-if",
6338 ]
6339
6340 +[[package]]
6341 +name = "threadpool"
6342 +version = "1.8.1"
6343 +source = "registry+https://github.com/rust-lang/crates.io-index"
6344 +checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa"
6345 +dependencies = [
6346 + "num_cpus",
6347 +]
6348 +
6349 [[package]]
6350 name = "tiff"
6351 version = "0.11.3"
@@ -6609,7 +6887,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
6887 checksum = "b8c6dec3fc6645f71a16a3fa9ff57991028153bd194ca97f4b55e610c73ce66a"
6888 dependencies = [
6889 "anyhow",
6890 + "camino",
6891 "cargo_metadata",
6892 + "clap 4.6.6",
6893 "uniffi_bindgen",
6894 "uniffi_build",
6895 "uniffi_core",
@@ -7292,6 +7572,15 @@ dependencies = [
7572 "windows-link 0.2.1",
7573 ]
7574
7575 +[[package]]
7576 +name = "windows-sys"
7577 +version = "0.45.0"
7578 +source = "registry+https://github.com/rust-lang/crates.io-index"
7579 +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
7580 +dependencies = [
7581 + "windows-targets 0.42.2",
7582 +]
7583 +
7584 [[package]]
7585 name = "windows-sys"
7586 version = "0.52.0"
@@ -7328,6 +7617,21 @@ dependencies = [
7617 "windows-link 0.2.1",
7618 ]
7619
7620 +[[package]]
7621 +name = "windows-targets"
7622 +version = "0.42.2"
7623 +source = "registry+https://github.com/rust-lang/crates.io-index"
7624 +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
7625 +dependencies = [
7626 + "windows_aarch64_gnullvm 0.42.2",
7627 + "windows_aarch64_msvc 0.42.2",
7628 + "windows_i686_gnu 0.42.2",
7629 + "windows_i686_msvc 0.42.2",
7630 + "windows_x86_64_gnu 0.42.2",
7631 + "windows_x86_64_gnullvm 0.42.2",
7632 + "windows_x86_64_msvc 0.42.2",
7633 +]
7634 +
7635 [[package]]
7636 name = "windows-targets"
7637 version = "0.48.5"
@@ -7385,6 +7689,12 @@ dependencies = [
7689 "windows-link 0.1.3",
7690 ]
7691
7692 +[[package]]
7693 +name = "windows_aarch64_gnullvm"
7694 +version = "0.42.2"
7695 +source = "registry+https://github.com/rust-lang/crates.io-index"
7696 +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
7697 +
7698 [[package]]
7699 name = "windows_aarch64_gnullvm"
7700 version = "0.48.5"
@@ -7403,6 +7713,12 @@ version = "0.53.1"
7713 source = "registry+https://github.com/rust-lang/crates.io-index"
7714 checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53"
7715
7716 +[[package]]
7717 +name = "windows_aarch64_msvc"
7718 +version = "0.42.2"
7719 +source = "registry+https://github.com/rust-lang/crates.io-index"
7720 +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
7721 +
7722 [[package]]
7723 name = "windows_aarch64_msvc"
7724 version = "0.48.5"
@@ -7421,6 +7737,12 @@ version = "0.53.1"
7737 source = "registry+https://github.com/rust-lang/crates.io-index"
7738 checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006"
7739
7740 +[[package]]
7741 +name = "windows_i686_gnu"
7742 +version = "0.42.2"
7743 +source = "registry+https://github.com/rust-lang/crates.io-index"
7744 +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
7745 +
7746 [[package]]
7747 name = "windows_i686_gnu"
7748 version = "0.48.5"
@@ -7451,6 +7773,12 @@ version = "0.53.1"
7773 source = "registry+https://github.com/rust-lang/crates.io-index"
7774 checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c"
7775
7776 +[[package]]
7777 +name = "windows_i686_msvc"
7778 +version = "0.42.2"
7779 +source = "registry+https://github.com/rust-lang/crates.io-index"
7780 +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
7781 +
7782 [[package]]
7783 name = "windows_i686_msvc"
7784 version = "0.48.5"
@@ -7469,6 +7797,12 @@ version = "0.53.1"
7797 source = "registry+https://github.com/rust-lang/crates.io-index"
7798 checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2"
7799
7800 +[[package]]
7801 +name = "windows_x86_64_gnu"
7802 +version = "0.42.2"
7803 +source = "registry+https://github.com/rust-lang/crates.io-index"
7804 +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
7805 +
7806 [[package]]
7807 name = "windows_x86_64_gnu"
7808 version = "0.48.5"
@@ -7487,6 +7821,12 @@ version = "0.53.1"
7821 source = "registry+https://github.com/rust-lang/crates.io-index"
7822 checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499"
7823
7824 +[[package]]
7825 +name = "windows_x86_64_gnullvm"
7826 +version = "0.42.2"
7827 +source = "registry+https://github.com/rust-lang/crates.io-index"
7828 +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
7829 +
7830 [[package]]
7831 name = "windows_x86_64_gnullvm"
7832 version = "0.48.5"
@@ -7505,6 +7845,12 @@ version = "0.53.1"
7845 source = "registry+https://github.com/rust-lang/crates.io-index"
7846 checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1"
7847
7848 +[[package]]
7849 +name = "windows_x86_64_msvc"
7850 +version = "0.42.2"
7851 +source = "registry+https://github.com/rust-lang/crates.io-index"
7852 +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
7853 +
7854 [[package]]
7855 name = "windows_x86_64_msvc"
7856 version = "0.48.5"
Cargo.toml
+5
@@ -11,6 +11,11 @@ readme = "README.md"
11 keywords = ["inference", "on-device", "chat", "llm", "mistral"]
12 categories = ["artificial-intelligence", "api-bindings"]
13
14 +[workspace]
15 +resolver = "2"
16 +members = [".", "uniffi-bindgen", "sdk/dart/rust", "sdk/react-native/rust"]
17 +exclude = ["sdk/react-native/example"]
18 +
19 [lib]
20 name = "onde"
21 # "lib" – normal Rust dependency for other crates.