@aztec/bb.js 0.0.1-commit.24de95ac → 0.0.1-commit.2ed92850

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (630) hide show
  1. package/build/amd64-linux/bb +0 -0
  2. package/build/amd64-linux/nodejs_module.node +0 -0
  3. package/build/amd64-macos/bb +0 -0
  4. package/build/amd64-macos/nodejs_module.node +0 -0
  5. package/build/arm64-linux/bb +0 -0
  6. package/build/arm64-linux/nodejs_module.node +0 -0
  7. package/build/arm64-macos/bb +0 -0
  8. package/build/arm64-macos/nodejs_module.node +0 -0
  9. package/dest/browser/async_map/index.d.ts +1 -1
  10. package/dest/browser/async_map/index.js +1 -1
  11. package/dest/browser/barretenberg/backend.d.ts +58 -40
  12. package/dest/browser/barretenberg/backend.d.ts.map +1 -1
  13. package/dest/browser/barretenberg/backend.js +143 -94
  14. package/dest/browser/barretenberg/index.d.ts +3 -5
  15. package/dest/browser/barretenberg/index.d.ts.map +1 -1
  16. package/dest/browser/barretenberg/index.js +19 -28
  17. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts +17 -0
  18. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  19. package/dest/browser/barretenberg/testing/bigint-buffer.js +37 -0
  20. package/dest/browser/barretenberg/testing/fields.d.ts +16 -0
  21. package/dest/browser/barretenberg/testing/fields.d.ts.map +1 -0
  22. package/dest/browser/barretenberg/testing/fields.js +47 -0
  23. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  24. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  25. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
  26. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  27. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  28. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  29. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  30. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  31. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  32. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  33. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  34. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  35. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  36. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  37. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  38. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  39. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  40. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  41. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  42. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  43. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  44. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  45. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  46. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  47. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  48. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  49. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  50. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  51. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  52. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  53. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  54. package/dest/browser/barretenberg_wasm/helpers/browser/index.js +9 -2
  55. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +1 -1
  56. package/dest/browser/barretenberg_wasm/index.d.ts +1 -1
  57. package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -1
  58. package/dest/browser/barretenberg_wasm/index.js +2 -3
  59. package/dest/browser/bb_backends/browser/index.d.ts +1 -1
  60. package/dest/browser/bb_backends/browser/index.js +1 -1
  61. package/dest/browser/bb_backends/browser/platform.d.ts +4 -0
  62. package/dest/browser/bb_backends/browser/platform.d.ts.map +1 -0
  63. package/dest/browser/bb_backends/browser/platform.js +10 -0
  64. package/dest/browser/bb_backends/index.d.ts +12 -7
  65. package/dest/browser/bb_backends/index.d.ts.map +1 -1
  66. package/dest/browser/bb_backends/index.js +8 -7
  67. package/dest/browser/bb_backends/interface.d.ts +1 -1
  68. package/dest/browser/bb_backends/wasm.d.ts +1 -1
  69. package/dest/browser/bb_backends/wasm.d.ts.map +1 -1
  70. package/dest/browser/bb_backends/wasm.js +5 -3
  71. package/dest/browser/bbapi_exception.d.ts +1 -1
  72. package/dest/browser/bbapi_exception.d.ts.map +1 -1
  73. package/dest/browser/bbapi_exception.js +1 -1
  74. package/dest/browser/bin/index.d.ts +3 -0
  75. package/dest/browser/bin/index.d.ts.map +1 -0
  76. package/dest/browser/bin/index.js +11 -0
  77. package/dest/browser/cbind/generate.d.ts +5 -2
  78. package/dest/browser/cbind/generate.d.ts.map +1 -1
  79. package/dest/browser/cbind/generate.js +47 -25
  80. package/dest/browser/cbind/generated/api_types.d.ts +766 -1687
  81. package/dest/browser/cbind/generated/api_types.d.ts.map +1 -1
  82. package/dest/browser/cbind/generated/api_types.js +1465 -1555
  83. package/dest/browser/cbind/generated/async.d.ts +3 -5
  84. package/dest/browser/cbind/generated/async.d.ts.map +1 -1
  85. package/dest/browser/cbind/generated/async.js +14 -33
  86. package/dest/browser/cbind/generated/curve_constants.d.ts +1 -1
  87. package/dest/browser/cbind/generated/sync.d.ts +3 -5
  88. package/dest/browser/cbind/generated/sync.d.ts.map +1 -1
  89. package/dest/browser/cbind/generated/sync.js +14 -31
  90. package/dest/browser/cbind/naming.d.ts +16 -0
  91. package/dest/browser/cbind/naming.d.ts.map +1 -0
  92. package/dest/browser/cbind/naming.js +24 -0
  93. package/dest/browser/cbind/rust_codegen.d.ts +26 -0
  94. package/dest/browser/cbind/rust_codegen.d.ts.map +1 -0
  95. package/dest/browser/cbind/rust_codegen.js +461 -0
  96. package/dest/browser/cbind/schema_visitor.d.ts +47 -0
  97. package/dest/browser/cbind/schema_visitor.d.ts.map +1 -0
  98. package/dest/browser/cbind/schema_visitor.js +158 -0
  99. package/dest/browser/cbind/typescript_codegen.d.ts +30 -0
  100. package/dest/browser/cbind/typescript_codegen.d.ts.map +1 -0
  101. package/dest/browser/cbind/typescript_codegen.js +365 -0
  102. package/dest/browser/crs/browser/cached_net_crs.d.ts +1 -1
  103. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +1 -1
  104. package/dest/browser/crs/browser/cached_net_crs.js +6 -1
  105. package/dest/browser/crs/browser/index.d.ts +1 -1
  106. package/dest/browser/crs/index.d.ts +1 -1
  107. package/dest/browser/crs/net_crs.d.ts +1 -16
  108. package/dest/browser/crs/net_crs.d.ts.map +1 -1
  109. package/dest/browser/crs/net_crs.js +6 -1
  110. package/dest/browser/index.d.ts +3 -2
  111. package/dest/browser/index.d.ts.map +1 -1
  112. package/dest/browser/index.js +3 -2
  113. package/dest/browser/proof/index.d.ts +1 -1
  114. package/dest/browser/proof/index.js +1 -1
  115. package/dest/browser/random/browser/index.d.ts +1 -1
  116. package/dest/browser/random/browser/index.d.ts.map +1 -1
  117. package/dest/browser/random/browser/index.js +1 -1
  118. package/dest/browser/random/index.d.ts +1 -1
  119. package/dest/browser/retry/index.d.ts +1 -1
  120. package/dest/browser/retry/index.js +1 -1
  121. package/dest/node/async_map/index.d.ts +1 -1
  122. package/dest/node/async_map/index.js +1 -1
  123. package/dest/node/barretenberg/backend.d.ts +58 -40
  124. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  125. package/dest/node/barretenberg/backend.js +143 -94
  126. package/dest/node/barretenberg/backend.test.d.ts +2 -0
  127. package/dest/node/barretenberg/backend.test.d.ts.map +1 -0
  128. package/dest/node/barretenberg/backend.test.js +103 -0
  129. package/dest/node/barretenberg/blake2s.test.d.ts +1 -1
  130. package/dest/node/barretenberg/blake2s.test.js +2 -2
  131. package/dest/node/barretenberg/index.d.ts +3 -5
  132. package/dest/node/barretenberg/index.d.ts.map +1 -1
  133. package/dest/node/barretenberg/index.js +19 -28
  134. package/dest/node/barretenberg/pedersen.test.d.ts +1 -1
  135. package/dest/node/barretenberg/pedersen.test.js +2 -2
  136. package/dest/node/barretenberg/poseidon.bench.test.d.ts +1 -1
  137. package/dest/node/barretenberg/poseidon.bench.test.js +80 -79
  138. package/dest/node/barretenberg/poseidon.test.d.ts +1 -1
  139. package/dest/node/barretenberg/poseidon.test.js +2 -2
  140. package/dest/node/barretenberg/testing/bigint-buffer.d.ts +17 -0
  141. package/dest/node/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  142. package/dest/node/barretenberg/testing/bigint-buffer.js +37 -0
  143. package/dest/node/barretenberg/testing/fields.d.ts +16 -0
  144. package/dest/node/barretenberg/testing/fields.d.ts.map +1 -0
  145. package/dest/node/barretenberg/testing/fields.js +47 -0
  146. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  147. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  148. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  149. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
  150. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  151. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  152. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  153. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  154. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  155. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  156. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  157. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  158. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  159. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  160. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  161. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  162. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  163. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  164. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  165. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  166. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  167. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  168. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  169. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  170. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  171. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  172. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  173. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  174. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  175. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  176. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  177. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  178. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  179. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  180. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  181. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  182. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  183. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  184. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  185. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +1 -1
  186. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  187. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  188. package/dest/node/barretenberg_wasm/helpers/browser/index.js +9 -2
  189. package/dest/node/barretenberg_wasm/helpers/index.d.ts +1 -1
  190. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  191. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  192. package/dest/node/barretenberg_wasm/helpers/node/index.js +14 -6
  193. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  194. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  195. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  196. package/dest/node/barretenberg_wasm/index.d.ts +1 -1
  197. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
  198. package/dest/node/barretenberg_wasm/index.js +2 -3
  199. package/dest/node/barretenberg_wasm/index.test.d.ts +1 -1
  200. package/dest/node/barretenberg_wasm/index.test.js +1 -1
  201. package/dest/node/bb_backends/browser/index.d.ts +1 -1
  202. package/dest/node/bb_backends/browser/index.js +1 -1
  203. package/dest/node/bb_backends/browser/platform.d.ts +4 -0
  204. package/dest/node/bb_backends/browser/platform.d.ts.map +1 -0
  205. package/dest/node/bb_backends/browser/platform.js +10 -0
  206. package/dest/node/bb_backends/index.d.ts +12 -7
  207. package/dest/node/bb_backends/index.d.ts.map +1 -1
  208. package/dest/node/bb_backends/index.js +8 -7
  209. package/dest/node/bb_backends/interface.d.ts +1 -1
  210. package/dest/node/bb_backends/node/index.d.ts +1 -1
  211. package/dest/node/bb_backends/node/index.d.ts.map +1 -1
  212. package/dest/node/bb_backends/node/index.js +17 -11
  213. package/dest/node/bb_backends/node/native_pipe.d.ts +1 -1
  214. package/dest/node/bb_backends/node/native_pipe.d.ts.map +1 -1
  215. package/dest/node/bb_backends/node/native_pipe.js +11 -10
  216. package/dest/node/bb_backends/node/native_shm.d.ts +4 -3
  217. package/dest/node/bb_backends/node/native_shm.d.ts.map +1 -1
  218. package/dest/node/bb_backends/node/native_shm.js +85 -39
  219. package/dest/node/bb_backends/node/native_shm_async.d.ts +51 -0
  220. package/dest/node/bb_backends/node/native_shm_async.d.ts.map +1 -0
  221. package/dest/node/bb_backends/node/native_shm_async.js +233 -0
  222. package/dest/node/bb_backends/node/native_socket.d.ts +2 -2
  223. package/dest/node/bb_backends/node/native_socket.d.ts.map +1 -1
  224. package/dest/node/bb_backends/node/native_socket.js +46 -32
  225. package/dest/node/bb_backends/node/platform.d.ts +1 -1
  226. package/dest/node/bb_backends/node/platform.d.ts.map +1 -1
  227. package/dest/node/bb_backends/node/platform.js +7 -2
  228. package/dest/node/bb_backends/wasm.d.ts +1 -1
  229. package/dest/node/bb_backends/wasm.d.ts.map +1 -1
  230. package/dest/node/bb_backends/wasm.js +5 -3
  231. package/dest/node/bbapi/exception_handling.test.d.ts +2 -0
  232. package/dest/node/bbapi/exception_handling.test.d.ts.map +1 -0
  233. package/dest/node/bbapi/exception_handling.test.js +48 -0
  234. package/dest/node/bbapi_exception.d.ts +1 -1
  235. package/dest/node/bbapi_exception.d.ts.map +1 -1
  236. package/dest/node/bbapi_exception.js +1 -1
  237. package/dest/node/benchmark/index.d.ts +1 -1
  238. package/dest/node/benchmark/index.js +1 -1
  239. package/dest/node/benchmark/timer.d.ts +1 -1
  240. package/dest/node/benchmark/timer.d.ts.map +1 -1
  241. package/dest/node/benchmark/timer.js +2 -1
  242. package/dest/node/bin/index.d.ts +3 -0
  243. package/dest/node/bin/index.d.ts.map +1 -0
  244. package/dest/node/bin/index.js +11 -0
  245. package/dest/node/cbind/generate.d.ts +5 -2
  246. package/dest/node/cbind/generate.d.ts.map +1 -1
  247. package/dest/node/cbind/generate.js +47 -25
  248. package/dest/node/cbind/generated/api_types.d.ts +766 -1687
  249. package/dest/node/cbind/generated/api_types.d.ts.map +1 -1
  250. package/dest/node/cbind/generated/api_types.js +1465 -1555
  251. package/dest/node/cbind/generated/async.d.ts +3 -5
  252. package/dest/node/cbind/generated/async.d.ts.map +1 -1
  253. package/dest/node/cbind/generated/async.js +14 -33
  254. package/dest/node/cbind/generated/curve_constants.d.ts +1 -1
  255. package/dest/node/cbind/generated/sync.d.ts +3 -5
  256. package/dest/node/cbind/generated/sync.d.ts.map +1 -1
  257. package/dest/node/cbind/generated/sync.js +14 -31
  258. package/dest/node/cbind/naming.d.ts +16 -0
  259. package/dest/node/cbind/naming.d.ts.map +1 -0
  260. package/dest/node/cbind/naming.js +24 -0
  261. package/dest/node/cbind/rust_codegen.d.ts +26 -0
  262. package/dest/node/cbind/rust_codegen.d.ts.map +1 -0
  263. package/dest/node/cbind/rust_codegen.js +461 -0
  264. package/dest/node/cbind/schema_visitor.d.ts +47 -0
  265. package/dest/node/cbind/schema_visitor.d.ts.map +1 -0
  266. package/dest/node/cbind/schema_visitor.js +158 -0
  267. package/dest/node/cbind/typescript_codegen.d.ts +30 -0
  268. package/dest/node/cbind/typescript_codegen.d.ts.map +1 -0
  269. package/dest/node/cbind/typescript_codegen.js +365 -0
  270. package/dest/node/crs/browser/cached_net_crs.d.ts +1 -1
  271. package/dest/node/crs/browser/cached_net_crs.d.ts.map +1 -1
  272. package/dest/node/crs/browser/cached_net_crs.js +6 -1
  273. package/dest/node/crs/browser/index.d.ts +1 -1
  274. package/dest/node/crs/index.d.ts +1 -1
  275. package/dest/node/crs/net_crs.d.ts +1 -16
  276. package/dest/node/crs/net_crs.d.ts.map +1 -1
  277. package/dest/node/crs/net_crs.js +6 -1
  278. package/dest/node/crs/node/index.d.ts +1 -1
  279. package/dest/node/crs/node/index.d.ts.map +1 -1
  280. package/dest/node/crs/node/index.js +11 -6
  281. package/dest/node/index.d.ts +3 -2
  282. package/dest/node/index.d.ts.map +1 -1
  283. package/dest/node/index.js +3 -2
  284. package/dest/node/proof/index.d.ts +1 -1
  285. package/dest/node/proof/index.js +1 -1
  286. package/dest/node/random/browser/index.d.ts +1 -1
  287. package/dest/node/random/browser/index.d.ts.map +1 -1
  288. package/dest/node/random/browser/index.js +1 -1
  289. package/dest/node/random/index.d.ts +1 -1
  290. package/dest/node/random/node/index.d.ts +1 -1
  291. package/dest/node/random/node/index.js +1 -1
  292. package/dest/node/retry/index.d.ts +1 -1
  293. package/dest/node/retry/index.js +1 -1
  294. package/dest/node-cjs/async_map/index.d.ts +1 -1
  295. package/dest/node-cjs/async_map/index.js +1 -1
  296. package/dest/node-cjs/barretenberg/backend.d.ts +58 -40
  297. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  298. package/dest/node-cjs/barretenberg/backend.js +151 -100
  299. package/dest/node-cjs/barretenberg/backend.test.d.ts +2 -0
  300. package/dest/node-cjs/barretenberg/backend.test.d.ts.map +1 -0
  301. package/dest/node-cjs/barretenberg/backend.test.js +105 -0
  302. package/dest/node-cjs/barretenberg/blake2s.test.d.ts +1 -1
  303. package/dest/node-cjs/barretenberg/blake2s.test.js +6 -6
  304. package/dest/node-cjs/barretenberg/index.d.ts +3 -5
  305. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  306. package/dest/node-cjs/barretenberg/index.js +27 -34
  307. package/dest/node-cjs/barretenberg/pedersen.test.d.ts +1 -1
  308. package/dest/node-cjs/barretenberg/pedersen.test.js +9 -9
  309. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts +1 -1
  310. package/dest/node-cjs/barretenberg/poseidon.bench.test.js +89 -88
  311. package/dest/node-cjs/barretenberg/poseidon.test.d.ts +1 -1
  312. package/dest/node-cjs/barretenberg/poseidon.test.js +4 -4
  313. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts +17 -0
  314. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  315. package/dest/node-cjs/barretenberg/testing/bigint-buffer.js +43 -0
  316. package/dest/node-cjs/barretenberg/testing/fields.d.ts +16 -0
  317. package/dest/node-cjs/barretenberg/testing/fields.d.ts.map +1 -0
  318. package/dest/node-cjs/barretenberg/testing/fields.js +51 -0
  319. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  320. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  321. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  322. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +7 -8
  323. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  324. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  325. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +3 -5
  326. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  327. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  328. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  329. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  330. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  331. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  332. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  333. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  334. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  335. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  336. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  337. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  338. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  339. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  340. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  341. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +3 -5
  342. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  343. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  344. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  345. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  346. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  347. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  348. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  349. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  350. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  351. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  352. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  353. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  354. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  355. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  356. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  357. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +2 -2
  358. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  359. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  360. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +2 -2
  361. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  362. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  363. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +9 -2
  364. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +1 -1
  365. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  366. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  367. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +15 -7
  368. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  369. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  370. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  371. package/dest/node-cjs/barretenberg_wasm/index.d.ts +1 -1
  372. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
  373. package/dest/node-cjs/barretenberg_wasm/index.js +2 -3
  374. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +1 -1
  375. package/dest/node-cjs/barretenberg_wasm/index.test.js +1 -1
  376. package/dest/node-cjs/bb_backends/browser/index.d.ts +1 -1
  377. package/dest/node-cjs/bb_backends/browser/index.js +1 -1
  378. package/dest/node-cjs/bb_backends/browser/platform.d.ts +4 -0
  379. package/dest/node-cjs/bb_backends/browser/platform.d.ts.map +1 -0
  380. package/dest/node-cjs/bb_backends/browser/platform.js +15 -0
  381. package/dest/node-cjs/bb_backends/index.d.ts +12 -7
  382. package/dest/node-cjs/bb_backends/index.d.ts.map +1 -1
  383. package/dest/node-cjs/bb_backends/index.js +6 -6
  384. package/dest/node-cjs/bb_backends/interface.d.ts +1 -1
  385. package/dest/node-cjs/bb_backends/node/index.d.ts +1 -1
  386. package/dest/node-cjs/bb_backends/node/index.d.ts.map +1 -1
  387. package/dest/node-cjs/bb_backends/node/index.js +17 -11
  388. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts +1 -1
  389. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts.map +1 -1
  390. package/dest/node-cjs/bb_backends/node/native_pipe.js +11 -10
  391. package/dest/node-cjs/bb_backends/node/native_shm.d.ts +4 -3
  392. package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +1 -1
  393. package/dest/node-cjs/bb_backends/node/native_shm.js +85 -39
  394. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts +51 -0
  395. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts.map +1 -0
  396. package/dest/node-cjs/bb_backends/node/native_shm_async.js +237 -0
  397. package/dest/node-cjs/bb_backends/node/native_socket.d.ts +2 -2
  398. package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +1 -1
  399. package/dest/node-cjs/bb_backends/node/native_socket.js +46 -32
  400. package/dest/node-cjs/bb_backends/node/platform.d.ts +1 -1
  401. package/dest/node-cjs/bb_backends/node/platform.d.ts.map +1 -1
  402. package/dest/node-cjs/bb_backends/node/platform.js +8 -3
  403. package/dest/node-cjs/bb_backends/wasm.d.ts +1 -1
  404. package/dest/node-cjs/bb_backends/wasm.d.ts.map +1 -1
  405. package/dest/node-cjs/bb_backends/wasm.js +5 -3
  406. package/dest/node-cjs/bbapi/exception_handling.test.d.ts +2 -0
  407. package/dest/node-cjs/bbapi/exception_handling.test.d.ts.map +1 -0
  408. package/dest/node-cjs/bbapi/exception_handling.test.js +50 -0
  409. package/dest/node-cjs/bbapi_exception.d.ts +1 -1
  410. package/dest/node-cjs/bbapi_exception.d.ts.map +1 -1
  411. package/dest/node-cjs/bbapi_exception.js +1 -1
  412. package/dest/node-cjs/benchmark/index.d.ts +1 -1
  413. package/dest/node-cjs/benchmark/index.js +2 -2
  414. package/dest/node-cjs/benchmark/timer.d.ts +1 -1
  415. package/dest/node-cjs/benchmark/timer.d.ts.map +1 -1
  416. package/dest/node-cjs/benchmark/timer.js +2 -1
  417. package/dest/node-cjs/bin/index.d.ts +3 -0
  418. package/dest/node-cjs/bin/index.d.ts.map +1 -0
  419. package/dest/node-cjs/bin/index.js +13 -0
  420. package/dest/node-cjs/cbind/generate.d.ts +5 -2
  421. package/dest/node-cjs/cbind/generate.d.ts.map +1 -1
  422. package/dest/node-cjs/cbind/generate.js +47 -25
  423. package/dest/node-cjs/cbind/generated/api_types.d.ts +766 -1687
  424. package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -1
  425. package/dest/node-cjs/cbind/generated/api_types.js +1671 -1771
  426. package/dest/node-cjs/cbind/generated/async.d.ts +3 -5
  427. package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -1
  428. package/dest/node-cjs/cbind/generated/async.js +13 -32
  429. package/dest/node-cjs/cbind/generated/curve_constants.d.ts +1 -1
  430. package/dest/node-cjs/cbind/generated/sync.d.ts +3 -5
  431. package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -1
  432. package/dest/node-cjs/cbind/generated/sync.js +13 -30
  433. package/dest/node-cjs/cbind/naming.d.ts +16 -0
  434. package/dest/node-cjs/cbind/naming.d.ts.map +1 -0
  435. package/dest/node-cjs/cbind/naming.js +28 -0
  436. package/dest/node-cjs/cbind/rust_codegen.d.ts +26 -0
  437. package/dest/node-cjs/cbind/rust_codegen.d.ts.map +1 -0
  438. package/dest/node-cjs/cbind/rust_codegen.js +465 -0
  439. package/dest/node-cjs/cbind/schema_visitor.d.ts +47 -0
  440. package/dest/node-cjs/cbind/schema_visitor.d.ts.map +1 -0
  441. package/dest/node-cjs/cbind/schema_visitor.js +162 -0
  442. package/dest/node-cjs/cbind/typescript_codegen.d.ts +30 -0
  443. package/dest/node-cjs/cbind/typescript_codegen.d.ts.map +1 -0
  444. package/dest/node-cjs/cbind/typescript_codegen.js +369 -0
  445. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +1 -1
  446. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +1 -1
  447. package/dest/node-cjs/crs/browser/cached_net_crs.js +6 -1
  448. package/dest/node-cjs/crs/browser/index.d.ts +1 -1
  449. package/dest/node-cjs/crs/browser/index.js +2 -2
  450. package/dest/node-cjs/crs/index.d.ts +1 -1
  451. package/dest/node-cjs/crs/index.js +2 -2
  452. package/dest/node-cjs/crs/net_crs.d.ts +1 -16
  453. package/dest/node-cjs/crs/net_crs.d.ts.map +1 -1
  454. package/dest/node-cjs/crs/net_crs.js +6 -1
  455. package/dest/node-cjs/crs/node/index.d.ts +1 -1
  456. package/dest/node-cjs/crs/node/index.d.ts.map +1 -1
  457. package/dest/node-cjs/crs/node/index.js +11 -6
  458. package/dest/node-cjs/index.d.ts +3 -2
  459. package/dest/node-cjs/index.d.ts.map +1 -1
  460. package/dest/node-cjs/index.js +12 -8
  461. package/dest/node-cjs/proof/index.d.ts +1 -1
  462. package/dest/node-cjs/proof/index.js +1 -1
  463. package/dest/node-cjs/random/browser/index.d.ts +1 -1
  464. package/dest/node-cjs/random/browser/index.d.ts.map +1 -1
  465. package/dest/node-cjs/random/browser/index.js +1 -1
  466. package/dest/node-cjs/random/index.d.ts +1 -1
  467. package/dest/node-cjs/random/node/index.d.ts +1 -1
  468. package/dest/node-cjs/random/node/index.js +1 -1
  469. package/dest/node-cjs/retry/index.d.ts +1 -1
  470. package/dest/node-cjs/retry/index.js +1 -1
  471. package/package.json +8 -6
  472. package/src/barretenberg/backend.test.ts +122 -0
  473. package/src/barretenberg/backend.ts +170 -122
  474. package/src/barretenberg/blake2s.test.ts +1 -1
  475. package/src/barretenberg/index.ts +25 -28
  476. package/src/barretenberg/pedersen.test.ts +1 -1
  477. package/src/barretenberg/poseidon.bench.test.ts +160 -157
  478. package/src/barretenberg/poseidon.test.ts +1 -1
  479. package/src/{types → barretenberg/testing}/fields.ts +12 -26
  480. package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +1 -2
  481. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +0 -2
  482. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +0 -7
  483. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +0 -2
  484. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.ts +0 -9
  485. package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +38 -5
  486. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +0 -2
  487. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +0 -7
  488. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +0 -2
  489. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.ts +0 -7
  490. package/src/barretenberg_wasm/barretenberg_wasm_thread/index.ts +3 -2
  491. package/src/barretenberg_wasm/helpers/browser/index.ts +8 -1
  492. package/src/barretenberg_wasm/helpers/node/index.ts +13 -6
  493. package/src/barretenberg_wasm/index.ts +1 -2
  494. package/src/bb_backends/browser/platform.ts +11 -0
  495. package/src/bb_backends/index.ts +12 -6
  496. package/src/bb_backends/node/index.ts +23 -10
  497. package/src/bb_backends/node/native_shm.ts +81 -38
  498. package/src/bb_backends/node/native_shm_async.ts +262 -0
  499. package/src/bb_backends/node/native_socket.ts +35 -19
  500. package/src/bb_backends/node/platform.ts +6 -1
  501. package/src/bb_backends/wasm.ts +1 -2
  502. package/src/bbapi/exception_handling.test.ts +54 -0
  503. package/src/bin/index.ts +14 -0
  504. package/src/cbind/generate.ts +51 -32
  505. package/src/cbind/naming.ts +27 -0
  506. package/src/cbind/rust_codegen.ts +504 -0
  507. package/src/cbind/schema_visitor.ts +219 -0
  508. package/src/cbind/typescript_codegen.ts +419 -0
  509. package/src/crs/node/index.ts +4 -5
  510. package/src/index.ts +6 -0
  511. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts +0 -15
  512. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  513. package/dest/browser/bb_backends/sync_to_async_adapter.js +0 -20
  514. package/dest/browser/bigint-array/index.d.ts +0 -17
  515. package/dest/browser/bigint-array/index.d.ts.map +0 -1
  516. package/dest/browser/bigint-array/index.js +0 -37
  517. package/dest/browser/cbind/schema_compiler.d.ts +0 -68
  518. package/dest/browser/cbind/schema_compiler.d.ts.map +0 -1
  519. package/dest/browser/cbind/schema_compiler.js +0 -599
  520. package/dest/browser/log/browser/index.d.ts +0 -6
  521. package/dest/browser/log/browser/index.d.ts.map +0 -1
  522. package/dest/browser/log/browser/index.js +0 -28
  523. package/dest/browser/log/index.d.ts +0 -2
  524. package/dest/browser/log/index.d.ts.map +0 -1
  525. package/dest/browser/log/index.js +0 -2
  526. package/dest/browser/log/types.d.ts +0 -6
  527. package/dest/browser/log/types.d.ts.map +0 -1
  528. package/dest/browser/log/types.js +0 -2
  529. package/dest/browser/serialize/index.d.ts +0 -2
  530. package/dest/browser/serialize/index.d.ts.map +0 -1
  531. package/dest/browser/serialize/index.js +0 -2
  532. package/dest/browser/serialize/serialize.d.ts +0 -18
  533. package/dest/browser/serialize/serialize.d.ts.map +0 -1
  534. package/dest/browser/serialize/serialize.js +0 -72
  535. package/dest/browser/types/fields.d.ts +0 -23
  536. package/dest/browser/types/fields.d.ts.map +0 -1
  537. package/dest/browser/types/fields.js +0 -61
  538. package/dest/browser/types/index.d.ts +0 -3
  539. package/dest/browser/types/index.d.ts.map +0 -1
  540. package/dest/browser/types/index.js +0 -3
  541. package/dest/browser/types/point.d.ts +0 -18
  542. package/dest/browser/types/point.d.ts.map +0 -1
  543. package/dest/browser/types/point.js +0 -28
  544. package/dest/node/bb_backends/sync_to_async_adapter.d.ts +0 -15
  545. package/dest/node/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  546. package/dest/node/bb_backends/sync_to_async_adapter.js +0 -20
  547. package/dest/node/bigint-array/index.d.ts +0 -17
  548. package/dest/node/bigint-array/index.d.ts.map +0 -1
  549. package/dest/node/bigint-array/index.js +0 -37
  550. package/dest/node/cbind/schema_compiler.d.ts +0 -68
  551. package/dest/node/cbind/schema_compiler.d.ts.map +0 -1
  552. package/dest/node/cbind/schema_compiler.js +0 -599
  553. package/dest/node/log/browser/index.d.ts +0 -6
  554. package/dest/node/log/browser/index.d.ts.map +0 -1
  555. package/dest/node/log/browser/index.js +0 -28
  556. package/dest/node/log/index.d.ts +0 -2
  557. package/dest/node/log/index.d.ts.map +0 -1
  558. package/dest/node/log/index.js +0 -2
  559. package/dest/node/log/node/index.d.ts +0 -6
  560. package/dest/node/log/node/index.d.ts.map +0 -1
  561. package/dest/node/log/node/index.js +0 -40
  562. package/dest/node/log/types.d.ts +0 -6
  563. package/dest/node/log/types.d.ts.map +0 -1
  564. package/dest/node/log/types.js +0 -2
  565. package/dest/node/serialize/index.d.ts +0 -2
  566. package/dest/node/serialize/index.d.ts.map +0 -1
  567. package/dest/node/serialize/index.js +0 -2
  568. package/dest/node/serialize/serialize.d.ts +0 -18
  569. package/dest/node/serialize/serialize.d.ts.map +0 -1
  570. package/dest/node/serialize/serialize.js +0 -72
  571. package/dest/node/types/fields.d.ts +0 -23
  572. package/dest/node/types/fields.d.ts.map +0 -1
  573. package/dest/node/types/fields.js +0 -61
  574. package/dest/node/types/index.d.ts +0 -3
  575. package/dest/node/types/index.d.ts.map +0 -1
  576. package/dest/node/types/index.js +0 -3
  577. package/dest/node/types/point.d.ts +0 -18
  578. package/dest/node/types/point.d.ts.map +0 -1
  579. package/dest/node/types/point.js +0 -28
  580. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts +0 -15
  581. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  582. package/dest/node-cjs/bb_backends/sync_to_async_adapter.js +0 -24
  583. package/dest/node-cjs/bigint-array/index.d.ts +0 -17
  584. package/dest/node-cjs/bigint-array/index.d.ts.map +0 -1
  585. package/dest/node-cjs/bigint-array/index.js +0 -43
  586. package/dest/node-cjs/cbind/schema_compiler.d.ts +0 -68
  587. package/dest/node-cjs/cbind/schema_compiler.d.ts.map +0 -1
  588. package/dest/node-cjs/cbind/schema_compiler.js +0 -606
  589. package/dest/node-cjs/log/browser/index.d.ts +0 -6
  590. package/dest/node-cjs/log/browser/index.d.ts.map +0 -1
  591. package/dest/node-cjs/log/browser/index.js +0 -30
  592. package/dest/node-cjs/log/index.d.ts +0 -2
  593. package/dest/node-cjs/log/index.d.ts.map +0 -1
  594. package/dest/node-cjs/log/index.js +0 -8
  595. package/dest/node-cjs/log/node/index.d.ts +0 -6
  596. package/dest/node-cjs/log/node/index.d.ts.map +0 -1
  597. package/dest/node-cjs/log/node/index.js +0 -42
  598. package/dest/node-cjs/log/types.d.ts +0 -6
  599. package/dest/node-cjs/log/types.d.ts.map +0 -1
  600. package/dest/node-cjs/log/types.js +0 -3
  601. package/dest/node-cjs/serialize/index.d.ts +0 -2
  602. package/dest/node-cjs/serialize/index.d.ts.map +0 -1
  603. package/dest/node-cjs/serialize/index.js +0 -5
  604. package/dest/node-cjs/serialize/serialize.d.ts +0 -18
  605. package/dest/node-cjs/serialize/serialize.d.ts.map +0 -1
  606. package/dest/node-cjs/serialize/serialize.js +0 -82
  607. package/dest/node-cjs/types/fields.d.ts +0 -23
  608. package/dest/node-cjs/types/fields.d.ts.map +0 -1
  609. package/dest/node-cjs/types/fields.js +0 -65
  610. package/dest/node-cjs/types/index.d.ts +0 -3
  611. package/dest/node-cjs/types/index.d.ts.map +0 -1
  612. package/dest/node-cjs/types/index.js +0 -6
  613. package/dest/node-cjs/types/point.d.ts +0 -18
  614. package/dest/node-cjs/types/point.d.ts.map +0 -1
  615. package/dest/node-cjs/types/point.js +0 -32
  616. package/src/bb_backends/sync_to_async_adapter.ts +0 -21
  617. package/src/cbind/generated/api_types.ts +0 -4271
  618. package/src/cbind/generated/async.ts +0 -717
  619. package/src/cbind/generated/curve_constants.ts +0 -53
  620. package/src/cbind/generated/sync.ts +0 -663
  621. package/src/cbind/schema_compiler.ts +0 -745
  622. package/src/log/browser/index.ts +0 -35
  623. package/src/log/index.ts +0 -1
  624. package/src/log/node/index.ts +0 -52
  625. package/src/log/types.ts +0 -6
  626. package/src/serialize/index.ts +0 -1
  627. package/src/serialize/serialize.ts +0 -75
  628. package/src/types/index.ts +0 -2
  629. package/src/types/point.ts +0 -32
  630. /package/src/{bigint-array/index.ts → barretenberg/testing/bigint-buffer.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"native_pipe.d.ts","sourceRoot":"","sources":["../../../../src/bb_backends/node/native_pipe.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE5E;;;;;;;GAOG;AACH,qBAAa,kCAAmC,YAAW,oBAAoB;IAC7E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,aAAa,CAAyC;IAG9D,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,iBAAiB,CAAa;gBAE1B,YAAY,EAAE,MAAM;IAkChC,OAAO,CAAC,UAAU;IA4CZ,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAiBlD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B"}
1
+ {"version":3,"file":"native_pipe.d.ts","sourceRoot":"","sources":["../../../../src/bb_backends/node/native_pipe.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE5E;;;;;;;GAOG;AACH,qBAAa,kCAAmC,YAAW,oBAAoB;IAC7E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,aAAa,CAAyC;IAG9D,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,iBAAiB,CAAa;IAEtC,YAAY,YAAY,EAAE,MAAM,EAgC/B;IAED,OAAO,CAAC,UAAU;IA4CZ,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAevD;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7B;CACF"}
@@ -11,16 +11,17 @@ const child_process_1 = require("child_process");
11
11
  * - Response: 4-byte little-endian length + msgpack buffer
12
12
  */
13
13
  class BarretenbergNativePipeAsyncBackend {
14
+ process;
15
+ pendingResolve = null;
16
+ pendingReject = null;
17
+ // State machine for reading responses
18
+ readingLength = true;
19
+ lengthBuffer = Buffer.alloc(4);
20
+ lengthBytesRead = 0;
21
+ responseLength = 0;
22
+ responseBuffer = null;
23
+ responseBytesRead = 0;
14
24
  constructor(bbBinaryPath) {
15
- this.pendingResolve = null;
16
- this.pendingReject = null;
17
- // State machine for reading responses
18
- this.readingLength = true;
19
- this.lengthBuffer = Buffer.alloc(4);
20
- this.lengthBytesRead = 0;
21
- this.responseLength = 0;
22
- this.responseBuffer = null;
23
- this.responseBytesRead = 0;
24
25
  this.process = (0, child_process_1.spawn)(bbBinaryPath, ['msgpack', 'run'], {
25
26
  stdio: ['pipe', 'pipe', 'inherit'],
26
27
  });
@@ -114,4 +115,4 @@ class BarretenbergNativePipeAsyncBackend {
114
115
  }
115
116
  }
116
117
  exports.BarretenbergNativePipeAsyncBackend = BarretenbergNativePipeAsyncBackend;
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3BpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmJfYmFja2VuZHMvbm9kZS9uYXRpdmVfcGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBb0Q7QUFJcEQ7Ozs7Ozs7R0FPRztBQUNILE1BQWEsa0NBQWtDO0lBYTdDLFlBQVksWUFBb0I7UUFYeEIsbUJBQWMsR0FBd0MsSUFBSSxDQUFDO1FBQzNELGtCQUFhLEdBQW9DLElBQUksQ0FBQztRQUU5RCxzQ0FBc0M7UUFDOUIsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFDOUIsaUJBQVksR0FBVyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLG9CQUFlLEdBQVcsQ0FBQyxDQUFDO1FBQzVCLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBQzNCLG1CQUFjLEdBQWtCLElBQUksQ0FBQztRQUNyQyxzQkFBaUIsR0FBVyxDQUFDLENBQUM7UUFHcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFBLHFCQUFLLEVBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ3JELEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDO1NBQ25DLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFhLEVBQUUsRUFBRTtZQUNoRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQzdCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLGlDQUFpQyxHQUFHLENB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
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3BpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmJfYmFja2VuZHMvbm9kZS9uYXRpdmVfcGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBb0Q7QUFJcEQ7Ozs7Ozs7R0FPRztBQUNIO0lBQ1UsT0FBTyxDQUFlO0lBQ3RCLGNBQWMsR0FBd0MsSUFBSSxDQUFDO0lBQzNELGFBQWEsR0FBb0MsSUFBSSxDQUFDO0lBRTlELHNDQUFzQztJQUM5QixhQUFhLEdBQVksSUFBSSxDQUFDO0lBQzlCLFlBQVksR0FBVyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLGVBQWUsR0FBVyxDQUFDLENBQUM7SUFDNUIsY0FBYyxHQUFXLENBQUMsQ0FBQztJQUMzQixjQUFjLEdBQWtCLElBQUksQ0FBQztJQUNyQyxpQkFBaUIsR0FBVyxDQUFDLENBQUM7SUFFdEMsWUFBWSxZQUFvQixFQUFFO1FBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBQSxxQkFBSyxFQUFDLFlBQVksRUFBRSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUNyRCxLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQztTQUNuQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU8sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQUEsQ0FDeEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDOUIsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLENBQUMsaUNB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
@@ -13,16 +13,17 @@ import { IMsgpackBackendSync } from '../interface.js';
13
13
  export declare class BarretenbergNativeShmSyncBackend implements IMsgpackBackendSync {
14
14
  private process;
15
15
  private client;
16
+ private logFd?;
16
17
  private constructor();
17
18
  /**
18
19
  * Create and initialize a shared memory backend.
19
20
  * @param bbBinaryPath Path to bb binary
21
+ * @param napiPath Path to NAPI binary
20
22
  * @param threads Optional number of threads
21
- * @param maxClients Optional maximum concurrent clients (default: 1)
22
23
  */
23
- static new(bbBinaryPath: string, threads?: number, maxClients?: number): Promise<BarretenbergNativeShmSyncBackend>;
24
+ static new(bbBinaryPath: string, napiPath: string, threads?: number, logger?: (msg: string) => void): Promise<BarretenbergNativeShmSyncBackend>;
24
25
  call(inputBuffer: Uint8Array): Uint8Array;
25
26
  private cleanup;
26
27
  destroy(): void;
27
28
  }
28
- //# sourceMappingURL=native_shm.d.ts.map
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3NobS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JiX2JhY2tlbmRzL25vZGUvbmF0aXZlX3NobS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQU10RDs7Ozs7Ozs7OztHQVVHO0FBQ0gscUJBQWEsZ0NBQWlDLFlBQVcsbUJBQW1CO0lBQzFFLE9BQU8sQ0FBQyxPQUFPLENBQWU7SUFDOUIsT0FBTyxDQUFDLE1BQU0sQ0FBTTtJQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLENBQVM7SUFFdkIsT0FBTyxlQUlOO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFhLEdBQUcsQ0FDZCxZQUFZLEVBQUUsTUFBTSxFQUNwQixRQUFRLEVBQUUsTUFBTSxFQUNoQixPQUFPLENBQUMsRUFBRSxNQUFNLEVBQ2hCLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sS0FBSyxJQUFJLEdBQzdCLE9BQU8sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQXlJM0M7SUFFRCxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsR0FBRyxVQUFVLENBT3hDO0lBRUQsT0FBTyxDQUFDLE9BQU87SUFpQmYsT0FBTyxJQUFJLElBQUksQ0FLZDtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"native_shm.d.ts","sourceRoot":"","sources":["../../../../src/bb_backends/node/native_shm.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAkBtD;;;;;;;;;;GAUG;AACH,qBAAa,gCAAiC,YAAW,mBAAmB;IAC1E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAM;IAEpB,OAAO;IAKP;;;;;OAKG;WACU,GAAG,CACd,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,gCAAgC,CAAC;IA+F5C,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,UAAU;IASzC,OAAO,CAAC,OAAO;IAUf,OAAO,IAAI,IAAI;CAMhB"}
1
+ {"version":3,"file":"native_shm.d.ts","sourceRoot":"","sources":["../../../../src/bb_backends/node/native_shm.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAMtD;;;;;;;;;;GAUG;AACH,qBAAa,gCAAiC,YAAW,mBAAmB;IAC1E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,KAAK,CAAC,CAAS;IAEvB,OAAO,eAIN;IAED;;;;;OAKG;IACH,OAAa,GAAG,CACd,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC7B,OAAO,CAAC,gCAAgC,CAAC,CAyI3C;IAED,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,UAAU,CAOxC;IAED,OAAO,CAAC,OAAO;IAiBf,OAAO,IAAI,IAAI,CAKd;CACF"}
@@ -3,22 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BarretenbergNativeShmSyncBackend = void 0;
4
4
  const module_1 = require("module");
5
5
  const child_process_1 = require("child_process");
6
+ const fs_1 = require("fs");
6
7
  const platform_js_1 = require("./platform.js");
7
- // Import the NAPI module
8
- // The addon is built to the nodejs_module directory
9
- const addonPath = (0, platform_js_1.findNapiBinary)();
10
- // Try loading, but don't throw if it doesn't exist (will be caught in constructor)
11
- let addon = null;
12
- try {
13
- if (addonPath) {
14
- const require = (0, module_1.createRequire)((0, platform_js_1.findPackageRoot)());
15
- addon = require(addonPath);
16
- }
17
- }
18
- catch (err) {
19
- // Addon not built yet or not available
20
- addon = null;
21
- }
8
+ const worker_threads_1 = require("worker_threads");
9
+ let instanceCounter = 0;
22
10
  /**
23
11
  * Synchronous shared memory backend that communicates with bb binary via shared memory.
24
12
  * Uses NAPI module to interface with shared memory IPC.
@@ -31,38 +19,80 @@ catch (err) {
31
19
  * - Handled internally by IpcClient (no manual length prefixes needed)
32
20
  */
33
21
  class BarretenbergNativeShmSyncBackend {
34
- constructor(process, client) {
22
+ process;
23
+ client; // NAPI MsgpackClient instance
24
+ logFd; // File descriptor for logs
25
+ constructor(process, client, logFd) {
35
26
  this.process = process;
36
27
  this.client = client;
28
+ this.logFd = logFd;
37
29
  }
38
30
  /**
39
31
  * Create and initialize a shared memory backend.
40
32
  * @param bbBinaryPath Path to bb binary
33
+ * @param napiPath Path to NAPI binary
41
34
  * @param threads Optional number of threads
42
- * @param maxClients Optional maximum concurrent clients (default: 1)
43
35
  */
44
- static async new(bbBinaryPath, threads, maxClients) {
45
- if (!addon || !addon.MsgpackClient) {
46
- throw new Error('Shared memory NAPI not available.');
36
+ static async new(bbBinaryPath, napiPath, threads, logger) {
37
+ // Import the NAPI module
38
+ // The addon is built to the nodejs_module directory
39
+ const addonPath = (0, platform_js_1.findNapiBinary)(napiPath);
40
+ // Try loading
41
+ let addon = null;
42
+ try {
43
+ const require = (0, module_1.createRequire)((0, platform_js_1.findPackageRoot)());
44
+ addon = require(addonPath);
45
+ }
46
+ catch (err) {
47
+ // Addon not built yet or not available
48
+ throw new Error('Shared memory sync NAPI not available.');
47
49
  }
48
50
  // Create a unique shared memory name
49
- const shmName = `bb-${process.pid}-${Date.now()}`;
50
- // Default maxClients to 1 if not specified
51
- const clientCount = maxClients ?? 1;
52
- // Set HARDWARE_CONCURRENCY if threads specified
53
- const env = threads !== undefined ? { ...process.env, HARDWARE_CONCURRENCY: threads.toString() } : process.env;
54
- // Spawn bb process with shared memory mode
55
- const args = [bbBinaryPath, 'msgpack', 'run', '--input', `${shmName}.shm`, '--max-clients', clientCount.toString()];
56
- const bbProcess = (0, child_process_1.spawn)((0, platform_js_1.findPackageRoot)() + '/scripts/kill_wrapper.sh', args, {
57
- stdio: ['ignore', 'ignore', 'ignore'],
51
+ const shmName = `bb-sync-${process.pid}-${worker_threads_1.threadId}-${instanceCounter++}`;
52
+ // If threads not set use 1 thread. We're not expected to do long lived work on sync backends.
53
+ const hwc = threads ? threads.toString() : '1';
54
+ const env = { ...process.env, HARDWARE_CONCURRENCY: hwc };
55
+ // Set up file logging if logger is provided.
56
+ // Direct file redirection bypasses Node event loop - logs are written even if process hangs.
57
+ let logFd;
58
+ let logPath;
59
+ if (logger) {
60
+ logPath = `/tmp/${shmName}.log`;
61
+ logFd = (0, fs_1.openSync)(logPath, 'w');
62
+ logger(`BB process logs redirected to: ${logPath}`);
63
+ }
64
+ // Clean up any stale shared memory files from previous runs
65
+ // This handles the case where a previous process crashed without cleanup
66
+ const shmRequestPath = `/dev/shm/${shmName}_request`;
67
+ const shmResponsePath = `/dev/shm/${shmName}_response`;
68
+ try {
69
+ (0, fs_1.unlinkSync)(shmRequestPath);
70
+ }
71
+ catch (err) {
72
+ const isNotFound = err && typeof err === 'object' && 'code' in err && err.code === 'ENOENT';
73
+ if (!isNotFound) {
74
+ throw new Error(`Failed to clean up stale shared memory file ${shmRequestPath}: ${err}`);
75
+ }
76
+ }
77
+ try {
78
+ (0, fs_1.unlinkSync)(shmResponsePath);
79
+ }
80
+ catch (err) {
81
+ const isNotFound = err && typeof err === 'object' && 'code' in err && err.code === 'ENOENT';
82
+ if (!isNotFound) {
83
+ throw new Error(`Failed to clean up stale shared memory file ${shmResponsePath}: ${err}`);
84
+ }
85
+ }
86
+ // Spawn bb process with shared memory mode (SPSC-only, no max-clients needed)
87
+ const args = ['msgpack', 'run', '--input', `${shmName}.shm`, '--request-ring-size', `${1024 * 1024 * 4}`];
88
+ const bbProcess = (0, child_process_1.spawn)(bbBinaryPath, args, {
89
+ stdio: ['ignore', logFd ?? 'ignore', logFd ?? 'ignore'],
58
90
  env,
59
91
  });
60
- // Disconnect from event loop so process can exit. The kill wrapper will reap bb once parent (node) dies.
92
+ // Disconnect from event loop so process can exit without waiting for bb
93
+ // The bb process has parent death monitoring (prctl on Linux, kqueue on macOS)
94
+ // so it will automatically exit when Node.js exits
61
95
  bbProcess.unref();
62
- // Capture stderr for error diagnostics
63
- // bbProcess.stderr?.on('data', (data: Buffer) => {
64
- // stderrOutput += data.toString();
65
- // });
66
96
  // Track if process has exited
67
97
  let processExited = false;
68
98
  let exitError = null;
@@ -96,8 +126,8 @@ class BarretenbergNativeShmSyncBackend {
96
126
  await new Promise(resolve => setTimeout(resolve, retryInterval));
97
127
  }
98
128
  try {
99
- // Create NAPI client with matching max_clients value
100
- client = new addon.MsgpackClient(shmName, clientCount);
129
+ // Create NAPI client (SPSC-only, no max_clients needed)
130
+ client = new addon.MsgpackClient(shmName);
101
131
  break; // Success!
102
132
  }
103
133
  catch (err) {
@@ -114,13 +144,21 @@ class BarretenbergNativeShmSyncBackend {
114
144
  if (!client) {
115
145
  throw new Error('Failed to create client connection');
116
146
  }
117
- return new BarretenbergNativeShmSyncBackend(bbProcess, client);
147
+ return new BarretenbergNativeShmSyncBackend(bbProcess, client, logFd);
118
148
  }
119
149
  finally {
120
- // If we failed to connect, ensure the process is killed
150
+ // If we failed to connect, ensure the process is killed and log file closed
121
151
  // kill() returns false if process already exited, but doesn't throw
122
152
  if (!client) {
123
153
  bbProcess.kill('SIGKILL');
154
+ if (logFd !== undefined) {
155
+ try {
156
+ (0, fs_1.closeSync)(logFd);
157
+ }
158
+ catch (e) {
159
+ // Ignore errors during cleanup
160
+ }
161
+ }
124
162
  }
125
163
  }
126
164
  }
@@ -142,6 +180,14 @@ class BarretenbergNativeShmSyncBackend {
142
180
  // Ignore errors during cleanup
143
181
  }
144
182
  }
183
+ if (this.logFd !== undefined) {
184
+ try {
185
+ (0, fs_1.closeSync)(this.logFd);
186
+ }
187
+ catch (e) {
188
+ // Ignore errors during cleanup
189
+ }
190
+ }
145
191
  }
146
192
  destroy() {
147
193
  this.cleanup();
@@ -151,4 +197,4 @@ class BarretenbergNativeShmSyncBackend {
151
197
  }
152
198
  }
153
199
  exports.BarretenbergNativeShmSyncBackend = BarretenbergNativeShmSyncBackend;
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3NobS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iYl9iYWNrZW5kcy9ub2RlL25hdGl2ZV9zaG0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXVDO0FBQ3ZDLGlEQUFvRDtBQUVwRCwrQ0FBZ0U7QUFFaEUseUJBQXlCO0FBQ3pCLG9EQUFvRDtBQUNwRCxNQUFNLFNBQVMsR0FBRyxJQUFBLDRCQUFjLEdBQUUsQ0FBQztBQUNuQyxtRkFBbUY7QUFDbkYsSUFBSSxLQUFLLEdBQVEsSUFBSSxDQUFDO0FBQ3RCLElBQUksQ0FBQztJQUNILElBQUksU0FBUyxFQUFFLENBQUM7UUFDZCxNQUFNLE9BQU8sR0FBRyxJQUFBLHNCQUFhLEVBQUMsSUFBQSw2QkFBZSxHQUFHLENBQUMsQ0FBQztRQUNsRCxLQUFLLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdCLENBQUM7QUFDSCxDQUFDO0FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUNiLHVDQUF1QztJQUN2QyxLQUFLLEdBQUcsSUFBSSxDQUFDO0FBQ2YsQ0FBQztBQUVEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFhLGdDQUFnQztJQUkzQyxZQUFvQixPQUFxQixFQUFFLE1BQVc7UUFDcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQ2QsWUFBb0IsRUFDcEIsT0FBZ0IsRUFDaEIsVUFBbUI7UUFFbkIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVELHFDQUFxQztRQUNyQyxNQUFNLE9BQU8sR0FBRyxNQUFN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
200
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3NobS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iYl9iYWNrZW5kcy9ub2RlL25hdGl2ZV9zaG0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXVDO0FBQ3ZDLGlEQUFvRDtBQUNwRCwyQkFBcUQ7QUFFckQsK0NBQWdFO0FBQ2hFLG1EQUEwQztBQUUxQyxJQUFJLGVBQWUsR0FBRyxDQUFDLENBQUM7QUFFeEI7Ozs7Ozs7Ozs7R0FVRztBQUNIO0lBQ1UsT0FBTyxDQUFlO0lBQ3RCLE1BQU0sQ0FBTSxDQUFDLDhCQUE4QjtJQUMzQyxLQUFLLENBQVUsQ0FBQywyQkFBMkI7SUFFbkQsWUFBb0IsT0FBcUIsRUFBRSxNQUFXLEVBQUUsS0FBYyxFQUFFO1FBQ3RFLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQUEsQ0FDcEI7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUNkLFlBQW9CLEVBQ3BCLFFBQWdCLEVBQ2hCLE9BQWdCLEVBQ2hCLE1BQThCLEVBQ2E7UUFDM0MseUJBQXlCO1FBQ3pCLG9EQUFvRDtRQUNwRCxNQUFNLFNBQVMsR0FBRyxJQUFBLDRCQUFjLEVBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsY0FBYztRQUNkLElBQUksS0FBSyxHQUFRLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUM7WUFDSCxNQUFNLE9BQU8sR0FBRyxJQUFBLHNCQUFhLEVBQUMsSUFBQSw2QkFBZSxHQUFHLENBQUMsQ0FBQztZQUNsRCxLQUFLLEdBQUcsT0FBTyxDQUFDLFNBQVUsQ0FBQyxDQUFDO1FBQzlCLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsdUNBQXVDO1lBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMs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
@@ -0,0 +1,51 @@
1
+ import { IMsgpackBackendAsync } from '../interface.js';
2
+ /**
3
+ * Asynchronous shared memory backend that communicates with bb binary via shared memory.
4
+ * Uses NAPI module with background thread polling for async operations.
5
+ * Supports request pipelining - multiple requests can be in flight simultaneously.
6
+ *
7
+ * Architecture (matches socket backend pattern):
8
+ * - bb acts as the SERVER, TypeScript is the CLIENT
9
+ * - bb creates the shared memory region
10
+ * - TypeScript connects via NAPI wrapper (MsgpackClientAsync)
11
+ * - TypeScript manages promise queue (single-threaded, no mutex needed)
12
+ * - C++ background thread polls for responses, calls JavaScript callback
13
+ * - JavaScript callback pops queue and resolves promises in FIFO order
14
+ */
15
+ export declare class BarretenbergNativeShmAsyncBackend implements IMsgpackBackendAsync {
16
+ private process;
17
+ private client;
18
+ private logFd?;
19
+ private pendingCallbacks;
20
+ private constructor();
21
+ /**
22
+ * Handle response from C++ background thread
23
+ * Dequeues the next pending callback and resolves it (FIFO order)
24
+ */
25
+ private handleResponse;
26
+ /**
27
+ * Create and initialize an async shared memory backend.
28
+ * @param bbBinaryPath Path to bb binary
29
+ * @param threads Optional number of threads (defaults to min(32, num_cpus))
30
+ * @param logger Optional logger function for bb output
31
+ */
32
+ static new(bbBinaryPath: string, napiPath: string, threads?: number, logger?: (msg: string) => void): Promise<BarretenbergNativeShmAsyncBackend>;
33
+ /**
34
+ * Send a msgpack request asynchronously.
35
+ * Supports pipelining - can be called multiple times before awaiting responses.
36
+ * Use Promise.all() to send multiple requests concurrently.
37
+ *
38
+ * Example:
39
+ * const results = await Promise.all([
40
+ * backend.call(buf1),
41
+ * backend.call(buf2),
42
+ * backend.call(buf3)
43
+ * ]);
44
+ *
45
+ * @param inputBuffer The msgpack-encoded request
46
+ * @returns Promise resolving to msgpack-encoded response
47
+ */
48
+ call(inputBuffer: Uint8Array): Promise<Uint8Array>;
49
+ destroy(): Promise<void>;
50
+ }
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3NobV9hc3luYy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JiX2JhY2tlbmRzL25vZGUvbmF0aXZlX3NobV9hc3luYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQU12RDs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxxQkFBYSxpQ0FBa0MsWUFBVyxvQkFBb0I7SUFDNUUsT0FBTyxDQUFDLE9BQU8sQ0FBZTtJQUM5QixPQUFPLENBQUMsTUFBTSxDQUFNO0lBQ3BCLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBUztJQUl2QixPQUFPLENBQUMsZ0JBQWdCLENBR2hCO0lBRVIsT0FBTyxlQVVOO0lBRUQ7OztPQUdHO0lBQ0gsT0FBTyxDQUFDLGNBQWM7SUFnQnRCOzs7OztPQUtHO0lBQ0gsT0FBYSxHQUFHLENBQ2QsWUFBWSxFQUFFLE1BQU0sRUFDcEIsUUFBUSxFQUFFLE1BQU0sRUFDaEIsT0FBTyxDQUFDLEVBQUUsTUFBTSxFQUNoQixNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEtBQUssSUFBSSxHQUM3QixPQUFPLENBQUMsaUNBQWlDLENBQUMsQ0E0SDVDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7O09BY0c7SUFDRyxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBMEJ2RDtJQUVLLE9BQU8sSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBYzdCO0NBQ0YifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native_shm_async.d.ts","sourceRoot":"","sources":["../../../../src/bb_backends/node/native_shm_async.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAMvD;;;;;;;;;;;;GAYG;AACH,qBAAa,iCAAkC,YAAW,oBAAoB;IAC5E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,KAAK,CAAC,CAAS;IAIvB,OAAO,CAAC,gBAAgB,CAGhB;IAER,OAAO,eAUN;IAED;;;OAGG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;;;OAKG;IACH,OAAa,GAAG,CACd,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC7B,OAAO,CAAC,iCAAiC,CAAC,CA4H5C;IAED;;;;;;;;;;;;;;OAcG;IACG,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CA0BvD;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAc7B;CACF"}
@@ -0,0 +1,237 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BarretenbergNativeShmAsyncBackend = void 0;
4
+ const module_1 = require("module");
5
+ const child_process_1 = require("child_process");
6
+ const fs_1 = require("fs");
7
+ const platform_js_1 = require("./platform.js");
8
+ const worker_threads_1 = require("worker_threads");
9
+ let instanceCounter = 0;
10
+ /**
11
+ * Asynchronous shared memory backend that communicates with bb binary via shared memory.
12
+ * Uses NAPI module with background thread polling for async operations.
13
+ * Supports request pipelining - multiple requests can be in flight simultaneously.
14
+ *
15
+ * Architecture (matches socket backend pattern):
16
+ * - bb acts as the SERVER, TypeScript is the CLIENT
17
+ * - bb creates the shared memory region
18
+ * - TypeScript connects via NAPI wrapper (MsgpackClientAsync)
19
+ * - TypeScript manages promise queue (single-threaded, no mutex needed)
20
+ * - C++ background thread polls for responses, calls JavaScript callback
21
+ * - JavaScript callback pops queue and resolves promises in FIFO order
22
+ */
23
+ class BarretenbergNativeShmAsyncBackend {
24
+ process;
25
+ client; // NAPI MsgpackClientAsync instance
26
+ logFd; // File descriptor for logs
27
+ // Queue of pending callbacks for pipelined requests
28
+ // Responses come back in FIFO order, so we match them with queued callbacks
29
+ pendingCallbacks = [];
30
+ constructor(process, client, logFd) {
31
+ this.process = process;
32
+ this.client = client;
33
+ this.logFd = logFd;
34
+ // Register our response handler with the C++ client
35
+ // This callback will be invoked from the background thread via ThreadSafeFunction
36
+ this.client.setResponseCallback((responseBuffer) => {
37
+ this.handleResponse(responseBuffer);
38
+ });
39
+ }
40
+ /**
41
+ * Handle response from C++ background thread
42
+ * Dequeues the next pending callback and resolves it (FIFO order)
43
+ */
44
+ handleResponse(responseBuffer) {
45
+ // Response is complete - dequeue the next pending callback (FIFO)
46
+ const callback = this.pendingCallbacks.shift();
47
+ if (callback) {
48
+ callback.resolve(new Uint8Array(responseBuffer));
49
+ }
50
+ else {
51
+ // This shouldn't happen - response without a pending request
52
+ console.warn('Received response but no pending callback');
53
+ }
54
+ // If no more pending callbacks, release ref to allow process to exit
55
+ if (this.pendingCallbacks.length === 0) {
56
+ this.client.release();
57
+ }
58
+ }
59
+ /**
60
+ * Create and initialize an async shared memory backend.
61
+ * @param bbBinaryPath Path to bb binary
62
+ * @param threads Optional number of threads (defaults to min(32, num_cpus))
63
+ * @param logger Optional logger function for bb output
64
+ */
65
+ static async new(bbBinaryPath, napiPath, threads, logger) {
66
+ // Import the NAPI module
67
+ // The addon is built to the nodejs_module directory
68
+ const addonPath = (0, platform_js_1.findNapiBinary)(napiPath);
69
+ // Try loading
70
+ let addon = null;
71
+ try {
72
+ const require = (0, module_1.createRequire)((0, platform_js_1.findPackageRoot)());
73
+ addon = require(addonPath);
74
+ }
75
+ catch (err) {
76
+ // Addon not built yet or not available
77
+ throw new Error('Shared memory async NAPI not available.');
78
+ }
79
+ // Create a unique shared memory name
80
+ const shmName = `bb-async-${process.pid}-${worker_threads_1.threadId}-${instanceCounter++}`;
81
+ // If threads not set use num cpu cores, max 16 (same as socket backend)
82
+ const hwc = threads ? threads.toString() : '16';
83
+ const env = { ...process.env, HARDWARE_CONCURRENCY: hwc };
84
+ // Set up file logging if logger is provided
85
+ // Direct file redirection bypasses Node event loop - logs are written even if process hangs
86
+ let logFd;
87
+ let logPath;
88
+ if (logger) {
89
+ logPath = `/tmp/${shmName}.log`;
90
+ logFd = (0, fs_1.openSync)(logPath, 'w');
91
+ logger(`BB process logs redirected to: ${logPath}`);
92
+ }
93
+ // Spawn bb process with shared memory mode
94
+ // Use larger ring buffers for async mode to support pipelining
95
+ const args = [
96
+ 'msgpack',
97
+ 'run',
98
+ '--input',
99
+ `${shmName}.shm`,
100
+ '--request-ring-size',
101
+ `${1024 * 1024 * 4}`,
102
+ '--response-ring-size',
103
+ `${1024 * 1024 * 4}`,
104
+ ];
105
+ const bbProcess = (0, child_process_1.spawn)(bbBinaryPath, args, {
106
+ stdio: ['ignore', logFd ?? 'ignore', logFd ?? 'ignore'],
107
+ env,
108
+ });
109
+ // Disconnect from event loop so process can exit without waiting for bb
110
+ // The bb process has parent death monitoring (prctl on Linux, kqueue on macOS)
111
+ // so it will automatically exit when Node.js exits
112
+ bbProcess.unref();
113
+ // Track if process has exited
114
+ let processExited = false;
115
+ let exitError = null;
116
+ bbProcess.on('error', err => {
117
+ processExited = true;
118
+ exitError = new Error(`Native backend process error: ${err.message}`);
119
+ });
120
+ bbProcess.on('exit', (code, signal) => {
121
+ processExited = true;
122
+ if (code !== null && code !== 0) {
123
+ exitError = new Error(`Native backend process exited with code ${code}`);
124
+ }
125
+ else if (signal && signal !== 'SIGTERM') {
126
+ exitError = new Error(`Native backend process killed with signal ${signal}`);
127
+ }
128
+ });
129
+ // Wait for bb to create shared memory
130
+ // Retry connection every 100ms for up to 5 seconds (longer than sync for thread startup)
131
+ const retryInterval = 100; // ms
132
+ const timeout = 5000; // ms
133
+ const maxAttempts = Math.floor(timeout / retryInterval);
134
+ let client = null;
135
+ try {
136
+ for (let attempt = 0; attempt < maxAttempts; attempt++) {
137
+ // Check if bb process has exited before attempting connection
138
+ if (processExited) {
139
+ throw exitError || new Error('Native backend process exited unexpectedly during startup');
140
+ }
141
+ // Wait before attempting connection (except first attempt)
142
+ if (attempt > 0) {
143
+ await new Promise(resolve => setTimeout(resolve, retryInterval));
144
+ }
145
+ try {
146
+ // Create NAPI async client
147
+ client = new addon.MsgpackClientAsync(shmName);
148
+ break; // Success!
149
+ }
150
+ catch (err) {
151
+ // Connection failed, will retry
152
+ if (attempt === maxAttempts - 1) {
153
+ // Last attempt failed - check one more time if process exited
154
+ if (processExited && exitError) {
155
+ throw exitError;
156
+ }
157
+ throw new Error(`Failed to connect to shared memory after ${timeout}ms: ${err.message}`);
158
+ }
159
+ }
160
+ }
161
+ if (!client) {
162
+ throw new Error('Failed to create client connection');
163
+ }
164
+ return new BarretenbergNativeShmAsyncBackend(bbProcess, client, logFd);
165
+ }
166
+ finally {
167
+ // If we failed to connect, ensure the process is killed and log file closed
168
+ if (!client) {
169
+ bbProcess.kill('SIGKILL');
170
+ if (logFd !== undefined) {
171
+ try {
172
+ (0, fs_1.closeSync)(logFd);
173
+ }
174
+ catch (e) {
175
+ // Ignore errors during cleanup
176
+ }
177
+ }
178
+ }
179
+ }
180
+ }
181
+ /**
182
+ * Send a msgpack request asynchronously.
183
+ * Supports pipelining - can be called multiple times before awaiting responses.
184
+ * Use Promise.all() to send multiple requests concurrently.
185
+ *
186
+ * Example:
187
+ * const results = await Promise.all([
188
+ * backend.call(buf1),
189
+ * backend.call(buf2),
190
+ * backend.call(buf3)
191
+ * ]);
192
+ *
193
+ * @param inputBuffer The msgpack-encoded request
194
+ * @returns Promise resolving to msgpack-encoded response
195
+ */
196
+ async call(inputBuffer) {
197
+ return new Promise((resolve, reject) => {
198
+ // If this is the first pending callback, acquire ref to keep event loop alive
199
+ if (this.pendingCallbacks.length === 0) {
200
+ this.client.acquire();
201
+ }
202
+ // Enqueue this promise's callbacks (FIFO order)
203
+ this.pendingCallbacks.push({ resolve, reject });
204
+ try {
205
+ // Send request to shared memory (synchronous write)
206
+ // C++ call() no longer returns a promise - we manage them here
207
+ this.client.call(Buffer.from(inputBuffer));
208
+ }
209
+ catch (err) {
210
+ // Send failed - dequeue the callback we just added and reject
211
+ this.pendingCallbacks.pop();
212
+ // If queue is now empty, release ref to allow exit
213
+ if (this.pendingCallbacks.length === 0) {
214
+ this.client.release();
215
+ }
216
+ reject(new Error(`Shared memory async call failed: ${err.message}`));
217
+ }
218
+ });
219
+ }
220
+ async destroy() {
221
+ // Kill the bb process
222
+ // Background thread and callbacks will be cleaned up by OS on process exit
223
+ this.process.kill('SIGTERM');
224
+ this.process.removeAllListeners();
225
+ // Close log file if open
226
+ if (this.logFd !== undefined) {
227
+ try {
228
+ (0, fs_1.closeSync)(this.logFd);
229
+ }
230
+ catch (e) {
231
+ // Ignore errors during cleanup
232
+ }
233
+ }
234
+ }
235
+ }
236
+ exports.BarretenbergNativeShmAsyncBackend = BarretenbergNativeShmAsyncBackend;
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3NobV9hc3luYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iYl9iYWNrZW5kcy9ub2RlL25hdGl2ZV9zaG1fYXN5bmMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXVDO0FBQ3ZDLGlEQUFvRDtBQUNwRCwyQkFBeUM7QUFFekMsK0NBQWdFO0FBQ2hFLG1EQUEwQztBQUUxQyxJQUFJLGVBQWUsR0FBRyxDQUFDLENBQUM7QUFFeEI7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0g7SUFDVSxPQUFPLENBQWU7SUFDdEIsTUFBTSxDQUFNLENBQUMsbUNBQW1DO0lBQ2hELEtBQUssQ0FBVSxDQUFDLDJCQUEyQjtJQUVuRCxvREFBb0Q7SUFDcEQsNEVBQTRFO0lBQ3BFLGdCQUFnQixHQUduQixFQUFFLENBQUM7SUFFUixZQUFvQixPQUFxQixFQUFFLE1BQVcsRUFBRSxLQUFjLEVBQUU7UUFDdEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsb0RBQW9EO1FBQ3BELGtGQUFrRjtRQUNsRixJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsY0FBc0IsRUFBRSxFQUFFLENBQUM7WUFDMUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUFBLENBQ3JDLENBQUMsQ0FBQztJQUFBLENBQ0o7SUFFRDs7O09BR0c7SUFDSyxjQUFjLENBQUMsY0FBc0IsRUFBUTtRQUNuRCxrRUFBa0U7UUFDbEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQy9DLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFD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
@@ -24,11 +24,11 @@ export declare class BarretenbergNativeSocketAsyncBackend implements IMsgpackBac
24
24
  private responseLength;
25
25
  private responseBuffer;
26
26
  private responseBytesRead;
27
- constructor(bbBinaryPath: string, threads?: number);
27
+ constructor(bbBinaryPath: string, threads?: number, logger?: (msg: string) => void);
28
28
  private waitForSocketAndConnect;
29
29
  private handleData;
30
30
  call(inputBuffer: Uint8Array): Promise<Uint8Array>;
31
31
  private cleanup;
32
32
  destroy(): Promise<void>;
33
33
  }
34
- //# sourceMappingURL=native_socket.d.ts.map
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX3NvY2tldC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JiX2JhY2tlbmRzL25vZGUvbmF0aXZlX3NvY2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQU12RDs7Ozs7Ozs7Ozs7R0FXRztBQUNILHFCQUFhLG9DQUFxQyxZQUFXLG9CQUFvQjtJQUMvRSxPQUFPLENBQUMsT0FBTyxDQUFlO0lBQzlCLE9BQU8sQ0FBQyxNQUFNLENBQTJCO0lBQ3pDLE9BQU8sQ0FBQyxVQUFVLENBQVM7SUFDM0IsT0FBTyxDQUFDLGlCQUFpQixDQUFnQjtJQUN6QyxPQUFPLENBQUMsaUJBQWlCLENBQStCO0lBSXhELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FHaEI7SUFHUixPQUFPLENBQUMsYUFBYSxDQUFpQjtJQUN0QyxPQUFPLENBQUMsWUFBWSxDQUEyQjtJQUMvQyxPQUFPLENBQUMsZUFBZSxDQUFhO0lBQ3BDLE9BQU8sQ0FBQyxjQUFjLENBQWE7SUFDbkMsT0FBTyxDQUFDLGNBQWMsQ0FBdUI7SUFDN0MsT0FBTyxDQUFDLGlCQUFpQixDQUFhO0lBRXRDLFlBQVksWUFBWSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxLQUFLLElBQUksRUFvR2pGO1lBRWEsdUJBQXVCO0lBaUVyQyxPQUFPLENBQUMsVUFBVTtJQW1EWixJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBd0J2RDtJQUVELE9BQU8sQ0FBQyxPQUFPO0lBaUNULE9BQU8sSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBSTdCO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"native_socket.d.ts","sourceRoot":"","sources":["../../../../src/bb_backends/node/native_socket.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvD;;;;;;;;;;;GAWG;AACH,qBAAa,oCAAqC,YAAW,oBAAoB;IAC/E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,iBAAiB,CAA+B;IAIxD,OAAO,CAAC,gBAAgB,CAGhB;IAGR,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,iBAAiB,CAAa;gBAE1B,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;YA4FpC,uBAAuB;IAiErC,OAAO,CAAC,UAAU;IA8CZ,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAqBxD,OAAO,CAAC,OAAO;IAiCT,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAY/B"}
1
+ {"version":3,"file":"native_socket.d.ts","sourceRoot":"","sources":["../../../../src/bb_backends/node/native_socket.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAMvD;;;;;;;;;;;GAWG;AACH,qBAAa,oCAAqC,YAAW,oBAAoB;IAC/E,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,iBAAiB,CAA+B;IAIxD,OAAO,CAAC,gBAAgB,CAGhB;IAGR,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,iBAAiB,CAAa;IAEtC,YAAY,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAoGjF;YAEa,uBAAuB;IAiErC,OAAO,CAAC,UAAU;IAmDZ,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAwBvD;IAED,OAAO,CAAC,OAAO;IAiCT,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAI7B;CACF"}