@aztec/bb.js 0.85.0-nightly.20250422 → 0.85.0-nightly.20250424
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.
- package/dest/browser/733.655674bbbb79bdf168c4.js +7 -0
- package/dest/browser/barretenberg-threads.js +2 -29
- package/dest/browser/barretenberg.js +2 -29
- package/dest/browser/index.js +10778 -9974
- package/dest/browser/main.worker.js +1316 -0
- package/dest/browser/thread.worker.js +1200 -0
- package/dest/node/barretenberg/index.d.ts +3 -1
- package/dest/node/barretenberg/index.d.ts.map +1 -1
- package/dest/node/barretenberg/index.js +6 -3
- package/dest/node/barretenberg_api/index.d.ts +5 -6
- package/dest/node/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node/barretenberg_api/index.js +1 -1
- package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/helpers/browser/index.js +15 -2
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/helpers/node/index.js +1 -1
- package/dest/node/barretenberg_wasm/index.d.ts +0 -13
- package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/index.js +2 -18
- package/dest/node/barretenberg_wasm/index.test.js +6 -6
- package/dest/node/bindgen/typescript.d.ts.map +1 -1
- package/dest/node/bindgen/typescript.js +5 -6
- package/dest/node/index.d.ts +2 -2
- package/dest/node/index.d.ts.map +1 -1
- package/dest/node/index.js +1 -1
- package/dest/node-cjs/barretenberg/index.d.ts +3 -1
- package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/index.js +12 -9
- package/dest/node-cjs/barretenberg_api/index.d.ts +5 -6
- package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_api/index.js +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +17 -3
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +1 -1
- package/dest/node-cjs/barretenberg_wasm/index.d.ts +0 -13
- package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/index.js +6 -23
- package/dest/node-cjs/barretenberg_wasm/index.test.js +6 -6
- package/dest/node-cjs/bindgen/typescript.d.ts.map +1 -1
- package/dest/node-cjs/bindgen/typescript.js +5 -6
- package/dest/node-cjs/index.d.ts +2 -2
- package/dest/node-cjs/index.d.ts.map +1 -1
- package/dest/node-cjs/index.js +1 -1
- package/package.json +9 -11
- package/src/barretenberg/index.ts +7 -3
- package/src/barretenberg_api/index.ts +4 -5
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +8 -3
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +4 -6
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +1 -1
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +8 -3
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +4 -6
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +1 -1
- package/src/barretenberg_wasm/helpers/browser/index.ts +18 -2
- package/src/barretenberg_wasm/helpers/node/index.ts +2 -2
- package/src/barretenberg_wasm/index.test.ts +7 -7
- package/src/barretenberg_wasm/index.ts +1 -24
- package/src/bindgen/typescript.ts +4 -5
- package/src/index.ts +2 -2
- package/dest/browser/522.6386c00ebfb22619e11b.js +0 -3
- package/dest/browser/barretenberg/backend.d.ts +0 -93
- package/dest/browser/barretenberg/backend.d.ts.map +0 -1
- package/dest/browser/barretenberg/index.d.ts +0 -51
- package/dest/browser/barretenberg/index.d.ts.map +0 -1
- package/dest/browser/barretenberg/verifier.d.ts +0 -16
- package/dest/browser/barretenberg/verifier.d.ts.map +0 -1
- package/dest/browser/barretenberg_api/index.d.ts +0 -105
- package/dest/browser/barretenberg_api/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +0 -44
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +0 -4
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +0 -21
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +0 -47
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +0 -4
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +0 -28
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +0 -6
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts +0 -22
- package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts +0 -8
- package/dest/browser/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/index.d.ts +0 -18
- package/dest/browser/barretenberg_wasm/index.d.ts.map +0 -1
- package/dest/browser/bigint-array/index.d.ts +0 -18
- package/dest/browser/bigint-array/index.d.ts.map +0 -1
- package/dest/browser/crs/browser/cached_net_crs.d.ts +0 -43
- package/dest/browser/crs/browser/cached_net_crs.d.ts.map +0 -1
- package/dest/browser/crs/browser/index.d.ts +0 -2
- package/dest/browser/crs/browser/index.d.ts.map +0 -1
- package/dest/browser/crs/index.d.ts +0 -2
- package/dest/browser/crs/index.d.ts.map +0 -1
- package/dest/browser/crs/net_crs.d.ts +0 -85
- package/dest/browser/crs/net_crs.d.ts.map +0 -1
- package/dest/browser/crs/node/index.d.ts +0 -38
- package/dest/browser/crs/node/index.d.ts.map +0 -1
- package/dest/browser/index.d.ts +0 -5
- package/dest/browser/index.d.ts.map +0 -1
- package/dest/browser/proof/index.d.ts +0 -20
- package/dest/browser/proof/index.d.ts.map +0 -1
- package/dest/browser/random/browser/index.d.ts +0 -2
- package/dest/browser/random/browser/index.d.ts.map +0 -1
- package/dest/browser/random/index.d.ts +0 -2
- package/dest/browser/random/index.d.ts.map +0 -1
- package/dest/browser/random/node/index.d.ts +0 -2
- package/dest/browser/random/node/index.d.ts.map +0 -1
- package/dest/browser/retry/index.d.ts +0 -26
- package/dest/browser/retry/index.d.ts.map +0 -1
- package/dest/browser/serialize/buffer_reader.d.ts +0 -28
- package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
- package/dest/browser/serialize/index.d.ts +0 -4
- package/dest/browser/serialize/index.d.ts.map +0 -1
- package/dest/browser/serialize/output_type.d.ts +0 -11
- package/dest/browser/serialize/output_type.d.ts.map +0 -1
- package/dest/browser/serialize/serialize.d.ts +0 -53
- package/dest/browser/serialize/serialize.d.ts.map +0 -1
- package/dest/browser/thread.worker.worker.worker.js.LICENSE.txt +0 -5
- package/dest/browser/types/fields.d.ts +0 -44
- package/dest/browser/types/fields.d.ts.map +0 -1
- package/dest/browser/types/fixed_size_buffer.d.ts +0 -26
- package/dest/browser/types/fixed_size_buffer.d.ts.map +0 -1
- package/dest/browser/types/index.d.ts +0 -6
- package/dest/browser/types/index.d.ts.map +0 -1
- package/dest/browser/types/point.d.ts +0 -17
- package/dest/browser/types/point.d.ts.map +0 -1
- package/dest/browser/types/ptr.d.ts +0 -13
- package/dest/browser/types/ptr.d.ts.map +0 -1
- package/dest/browser/types/raw_buffer.d.ts +0 -3
- package/dest/browser/types/raw_buffer.d.ts.map +0 -1
- /package/dest/browser/{main.worker.worker.js.LICENSE.txt → main.worker.js.LICENSE.txt} +0 -0
- /package/dest/browser/{thread.worker.worker.js.LICENSE.txt → thread.worker.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_wasm/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_wasm/index.ts"],"names":[],"mappings":"AAIA,wBAAsB,qBAAqB,CACzC,cAAc,SAAK,EACnB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAqC;;;GAc/D"}
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.fetchModuleAndThreads = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const comlink_1 = require("comlink");
|
|
6
5
|
const debug_1 = tslib_1.__importDefault(require("debug"));
|
|
7
|
-
const index_js_1 = require("./
|
|
8
|
-
const index_js_2 = require("./
|
|
9
|
-
const index_js_3 = require("./barretenberg_wasm_main/index.js");
|
|
10
|
-
const index_js_4 = require("./fetch_code/index.js");
|
|
6
|
+
const index_js_1 = require("./helpers/node/index.js");
|
|
7
|
+
const index_js_2 = require("./fetch_code/index.js");
|
|
11
8
|
async function fetchModuleAndThreads(desiredThreads = 32, wasmPath, logger = (0, debug_1.default)('bb.js:fetch_mat')) {
|
|
12
|
-
const shared = (0,
|
|
9
|
+
const shared = (0, index_js_1.getSharedMemoryAvailable)();
|
|
13
10
|
const availableThreads = shared ? await getAvailableThreads(logger) : 1;
|
|
14
11
|
// We limit the number of threads to 32 as we do not benefit from greater numbers.
|
|
15
12
|
const limitedThreads = Math.min(desiredThreads, availableThreads, 32);
|
|
16
13
|
logger(`Fetching bb wasm from ${wasmPath ?? 'default location'}`);
|
|
17
|
-
const code = await (0,
|
|
14
|
+
const code = await (0, index_js_2.fetchCode)(shared, wasmPath);
|
|
18
15
|
logger(`Compiling bb wasm of ${code.byteLength} bytes`);
|
|
19
16
|
const module = await WebAssembly.compile(code);
|
|
20
17
|
logger('Compilation of bb wasm complete');
|
|
@@ -36,18 +33,4 @@ async function getAvailableThreads(logger) {
|
|
|
36
33
|
}
|
|
37
34
|
}
|
|
38
35
|
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
|
|
42
|
-
* Used when running in the browser, because we can't block the main thread.
|
|
43
|
-
*/
|
|
44
|
-
static async new(desiredThreads, wasmPath, logger = (0, debug_1.default)('bb.js:bb_wasm_main')) {
|
|
45
|
-
const worker = (0, index_js_1.createMainWorker)();
|
|
46
|
-
const wasm = (0, index_js_2.getRemoteBarretenbergWasm)(worker);
|
|
47
|
-
const { module, threads } = await fetchModuleAndThreads(desiredThreads, wasmPath, logger);
|
|
48
|
-
await wasm.init(module, threads, (0, comlink_1.proxy)(logger));
|
|
49
|
-
return { worker, wasm };
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
exports.BarretenbergWasm = BarretenbergWasm;
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHFDQUFnQztBQUNoQywwREFBZ0M7QUFDaEMsNkVBQWtGO0FBQ2xGLHNEQUE4RjtBQUM5RixnRUFBcUc7QUFDckcsb0RBQWtEO0FBRTNDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsY0FBYyxHQUFHLEVBQUUsRUFDbkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsaUJBQWlCLENBQUM7SUFFOUQsTUFBTSxNQUFNLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO0lBRTFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEUsa0ZBQWtGO0lBQ2xGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sQ0FBQyx5QkFBeUIsUUFBUSxJQUFJLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUNsRSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUEsb0JBQVMsRUFBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLHdCQUF3QixJQUFJLENBQUMsVUFBVSxRQUFRLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7QUFDN0MsQ0FBQztBQWpCRCxzREFpQkM7QUFFRCxLQUFLLFVBQVUsbUJBQW1CLENBQUMsTUFBNkI7SUFDOUQsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDdEUsT0FBTyxTQUFTLENBQUMsbUJBQW1CLENBQUM7SUFDdkMsQ0FBQztTQUFNLENBQUM7UUFDTixJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsR0FBRyxnRUFBYSxJQUFJLEdBQUMsQ0FBQztZQUM5QixPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDMUIsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsTUFBTSxDQUNKLCtGQUErRixDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUNoSCxDQUFDO1lBQ0YsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFhLGdCQUFpQixTQUFRLCtCQUFvQjtJQUN4RDs7O09BR0c7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDckIsY0FBdUIsRUFDdkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsb0JBQW9CLENBQUM7UUFFakUsTUFBTSxNQUFNLEdBQUcsSUFBQSwyQkFBZ0IsR0FBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUEsb0NBQXlCLEVBQTZCLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzFGLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDaEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUFoQkQsNENBZ0JDIn0=
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDBEQUFnQztBQUNoQyxzREFBbUU7QUFDbkUsb0RBQWtEO0FBRTNDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsY0FBYyxHQUFHLEVBQUUsRUFDbkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsaUJBQWlCLENBQUM7SUFFOUQsTUFBTSxNQUFNLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO0lBRTFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEUsa0ZBQWtGO0lBQ2xGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sQ0FBQyx5QkFBeUIsUUFBUSxJQUFJLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUNsRSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUEsb0JBQVMsRUFBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLHdCQUF3QixJQUFJLENBQUMsVUFBVSxRQUFRLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7QUFDN0MsQ0FBQztBQWpCRCxzREFpQkM7QUFFRCxLQUFLLFVBQVUsbUJBQW1CLENBQUMsTUFBNkI7SUFDOUQsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDdEUsT0FBTyxTQUFTLENBQUMsbUJBQW1CLENBQUM7SUFDdkMsQ0FBQztTQUFNLENBQUM7UUFDTixJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsR0FBRyxnRUFBYSxJQUFJLEdBQUMsQ0FBQztZQUM5QixPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDMUIsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsTUFBTSxDQUNKLCtGQUErRixDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUNoSCxDQUFDO1lBQ0YsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMifQ==
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const index_js_1 = require("
|
|
3
|
+
const index_js_1 = require("../index.js");
|
|
4
4
|
describe('barretenberg wasm', () => {
|
|
5
|
-
let
|
|
5
|
+
let api;
|
|
6
6
|
let wasm;
|
|
7
7
|
beforeAll(async () => {
|
|
8
|
-
|
|
8
|
+
api = await index_js_1.Barretenberg.new({ threads: 2 });
|
|
9
|
+
wasm = api.getWasm();
|
|
9
10
|
}, 20000);
|
|
10
11
|
afterAll(async () => {
|
|
11
|
-
await
|
|
12
|
-
await worker.terminate();
|
|
12
|
+
await api.destroy();
|
|
13
13
|
});
|
|
14
14
|
it('should new malloc, transfer and slice mem', async () => {
|
|
15
15
|
const length = 1024;
|
|
@@ -37,4 +37,4 @@ describe('barretenberg wasm', () => {
|
|
|
37
37
|
expect(result).toStrictEqual(buf);
|
|
38
38
|
});
|
|
39
39
|
});
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfd2FzbS9pbmRleC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsMENBQTJDO0FBRTNDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7SUFDakMsSUFBSSxHQUFpQixDQUFDO0lBQ3RCLElBQUksSUFBZ0MsQ0FBQztJQUVyQyxTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbkIsR0FBRyxHQUFHLE1BQU0sdUJBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QyxJQUFJLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZCLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVWLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNsQixNQUFNLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0QixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywyQ0FBMkMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDcEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekUsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLFlBQVksRUFBRSxLQUFLLElBQUksRUFBRTtRQUMxQixNQUFNLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDBCQUEwQixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3hDLG1HQUFtRztRQUNuRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN4QyxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywyQ0FBMkMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDcEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekUsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../../src/bindgen/typescript.ts"],"names":[],"mappings":"AAKA,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../../src/bindgen/typescript.ts"],"names":[],"mappings":"AAKA,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,UAgBtD"}
|
|
@@ -10,10 +10,9 @@ function generateTypeScriptCode(filename) {
|
|
|
10
10
|
const functionDeclarations = JSON.parse(fileContent);
|
|
11
11
|
let output = `// WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
|
|
12
12
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
13
|
-
import { BarretenbergWasmMain } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
14
|
-
import { BarretenbergWasmWorker, BarretenbergWasm } from '../barretenberg_wasm/index.js';
|
|
13
|
+
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
15
14
|
import { BufferDeserializer, NumberDeserializer, VectorDeserializer, BoolDeserializer, StringDeserializer, serializeBufferable, OutputType } from '../serialize/index.js';
|
|
16
|
-
import { Fr,
|
|
15
|
+
import { Fr, Point, Buffer32, Ptr } from '../types/index.js';
|
|
17
16
|
|
|
18
17
|
`;
|
|
19
18
|
output += generateClass(functionDeclarations);
|
|
@@ -24,7 +23,7 @@ exports.generateTypeScriptCode = generateTypeScriptCode;
|
|
|
24
23
|
function generateClass(functionDeclarations) {
|
|
25
24
|
let output = `
|
|
26
25
|
export class BarretenbergApi {
|
|
27
|
-
constructor(protected wasm:
|
|
26
|
+
constructor(protected wasm: BarretenbergWasmMainWorker) {}
|
|
28
27
|
|
|
29
28
|
`;
|
|
30
29
|
for (const { functionName, inArgs, outArgs } of functionDeclarations) {
|
|
@@ -65,7 +64,7 @@ export class BarretenbergApi {
|
|
|
65
64
|
function generateSyncClass(functionDeclarations) {
|
|
66
65
|
let output = `
|
|
67
66
|
export class BarretenbergApiSync {
|
|
68
|
-
constructor(protected wasm:
|
|
67
|
+
constructor(protected wasm: BarretenbergWasmMain) {}
|
|
69
68
|
|
|
70
69
|
`;
|
|
71
70
|
for (const { functionName, inArgs, outArgs } of functionDeclarations) {
|
|
@@ -103,4 +102,4 @@ export class BarretenbergApiSync {
|
|
|
103
102
|
output += `}`;
|
|
104
103
|
return output;
|
|
105
104
|
}
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaW5kZ2VuL3R5cGVzY3JpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9EQUFvQjtBQUNwQiwrQ0FBeUQ7QUFDekQseURBQWlEO0FBR2pELFNBQWdCLHNCQUFzQixDQUFDLFFBQWdCO0lBQ3JELE1BQU0sV0FBVyxHQUFHLFlBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sb0JBQW9CLEdBQTBCLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFNUUsSUFBSSxNQUFNLEdBQUc7Ozs7OztDQU1kLENBQUM7SUFFQSxNQUFNLElBQUksYUFBYSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDOUMsTUFBTSxJQUFJLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFFbEQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQWhCRCx3REFnQkM7QUFFRCxTQUFTLGFBQWEsQ0FBQyxvQkFBMkM7SUFDaEUsSUFBSSxNQUFNLEdBQUc7Ozs7Q0FJZCxDQUFDO0lBRUEsS0FBSyxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1FBQ3JFLElBQUksQ0FBQztZQUNILE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFBLDhCQUFXLEVBQUMsSUFBSSxDQUFDLEtBQUssSUFBQSxxQkFBTyxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkcsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLE1BQU07aUJBQ3hDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUEs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
|
package/dest/node-cjs/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { Crs, GrumpkinCrs } from './crs/index.js';
|
|
2
|
-
export { BackendOptions, Barretenberg, BarretenbergSync, BarretenbergVerifier, UltraPlonkBackend, UltraHonkBackend, AztecClientBackend, } from './barretenberg/index.js';
|
|
2
|
+
export { type BackendOptions, Barretenberg, BarretenbergSync, BarretenbergVerifier, UltraPlonkBackend, UltraHonkBackend, AztecClientBackend, } from './barretenberg/index.js';
|
|
3
3
|
export { RawBuffer, Fr } from './types/index.js';
|
|
4
|
-
export { splitHonkProof, reconstructHonkProof, deflattenFields, ProofData } from './proof/index.js';
|
|
4
|
+
export { splitHonkProof, reconstructHonkProof, deflattenFields, type ProofData } from './proof/index.js';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,KAAK,cAAc,EACnB,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dest/node-cjs/index.js
CHANGED
|
@@ -18,4 +18,4 @@ var index_js_4 = require("./proof/index.js");
|
|
|
18
18
|
Object.defineProperty(exports, "splitHonkProof", { enumerable: true, get: function () { return index_js_4.splitHonkProof; } });
|
|
19
19
|
Object.defineProperty(exports, "reconstructHonkProof", { enumerable: true, get: function () { return index_js_4.reconstructHonkProof; } });
|
|
20
20
|
Object.defineProperty(exports, "deflattenFields", { enumerable: true, get: function () { return index_js_4.deflattenFields; } });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQWtEO0FBQXpDLCtGQUFBLEdBQUcsT0FBQTtBQUFFLHVHQUFBLFdBQVcsT0FBQTtBQUN6QixvREFRaUM7QUFOL0Isd0dBQUEsWUFBWSxPQUFBO0FBQ1osNEdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsZ0hBQUEsb0JBQW9CLE9BQUE7QUFDcEIsNkdBQUEsaUJBQWlCLE9BQUE7QUFDakIsNEdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsOEdBQUEsa0JBQWtCLE9BQUE7QUFHcEIsNkNBQWlEO0FBQXhDLHFHQUFBLFNBQVMsT0FBQTtBQUFFLDhGQUFBLEVBQUUsT0FBQTtBQUN0Qiw2Q0FBeUc7QUFBaEcsMEdBQUEsY0FBYyxPQUFBO0FBQUUsZ0hBQUEsb0JBQW9CLE9BQUE7QUFBRSwyR0FBQSxlQUFlLE9BQUEifQ==
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/bb.js",
|
|
3
3
|
"packageManager": "yarn@4.5.2",
|
|
4
|
-
"version": "0.85.0-nightly.
|
|
4
|
+
"version": "0.85.0-nightly.20250424",
|
|
5
5
|
"homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/barretenberg/ts",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"type": "module",
|
|
8
|
-
"types": "./dest/node
|
|
8
|
+
"types": "./dest/node/index.d.ts",
|
|
9
9
|
"exports": {
|
|
10
10
|
".": {
|
|
11
11
|
"require": "./dest/node-cjs/index.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"clean": "rm -rf ./dest .tsbuildinfo .tsbuildinfo.cjs",
|
|
25
25
|
"build": "yarn clean && yarn build:wasm && yarn build:esm && yarn build:cjs && yarn build:browser",
|
|
26
26
|
"build:wasm": "./scripts/build_wasm.sh",
|
|
27
|
-
"build:esm": "tsc -b && chmod +x ./dest/node/main.js",
|
|
27
|
+
"build:esm": "tsc -b tsconfig.esm.json && chmod +x ./dest/node/main.js",
|
|
28
28
|
"build:cjs": "tsc -b tsconfig.cjs.json && ./scripts/cjs_postprocess.sh",
|
|
29
29
|
"build:browser": "webpack",
|
|
30
30
|
"build:bindings": "cd .. && ./scripts/bindgen.sh",
|
|
@@ -85,21 +85,19 @@
|
|
|
85
85
|
"buffer": "^6.0.3",
|
|
86
86
|
"eslint": "^8.35.0",
|
|
87
87
|
"eslint-config-prettier": "^8.8.0",
|
|
88
|
-
"html-webpack-plugin": "^5.
|
|
88
|
+
"html-webpack-plugin": "^5.6.3",
|
|
89
89
|
"idb-keyval": "^6.2.1",
|
|
90
90
|
"jest": "^29.5.0",
|
|
91
91
|
"msgpackr": "^1.11.2",
|
|
92
|
+
"node-polyfill-webpack-plugin": "^4.1.0",
|
|
92
93
|
"prettier": "^2.8.4",
|
|
93
|
-
"
|
|
94
|
-
"source-map-support": "^0.5.21",
|
|
95
|
-
"terser-webpack-plugin": "^5.3.11",
|
|
94
|
+
"terser-webpack-plugin": "^5.3.14",
|
|
96
95
|
"ts-jest": "^29.1.0",
|
|
97
96
|
"ts-loader": "^9.4.2",
|
|
98
97
|
"ts-node": "^10.9.1",
|
|
99
98
|
"typescript": "5.4.5",
|
|
100
|
-
"webpack": "^5.
|
|
101
|
-
"webpack-cli": "^
|
|
102
|
-
"webpack-dev-server": "^5.2.
|
|
103
|
-
"worker-loader": "^3.0.8"
|
|
99
|
+
"webpack": "^5.99.6",
|
|
100
|
+
"webpack-cli": "^6.0.1",
|
|
101
|
+
"webpack-dev-server": "^5.2.1"
|
|
104
102
|
}
|
|
105
103
|
}
|
|
@@ -3,10 +3,10 @@ import { BarretenbergApi, BarretenbergApiSync } from '../barretenberg_api/index.
|
|
|
3
3
|
import { createMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js';
|
|
4
4
|
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
5
5
|
import { getRemoteBarretenbergWasm } from '../barretenberg_wasm/helpers/index.js';
|
|
6
|
-
import { BarretenbergWasmWorker, fetchModuleAndThreads } from '../barretenberg_wasm/index.js';
|
|
7
6
|
import createDebug from 'debug';
|
|
8
7
|
import { Crs, GrumpkinCrs } from '../crs/index.js';
|
|
9
8
|
import { RawBuffer } from '../types/raw_buffer.js';
|
|
9
|
+
import { fetchModuleAndThreads } from '../barretenberg_wasm/index.js';
|
|
10
10
|
|
|
11
11
|
export { BarretenbergVerifier } from './verifier.js';
|
|
12
12
|
export { UltraPlonkBackend, UltraHonkBackend, AztecClientBackend } from './backend.js';
|
|
@@ -40,7 +40,7 @@ export type CircuitOptions = {
|
|
|
40
40
|
export class Barretenberg extends BarretenbergApi {
|
|
41
41
|
private options: BackendOptions;
|
|
42
42
|
|
|
43
|
-
private constructor(private worker: any, wasm:
|
|
43
|
+
private constructor(private worker: any, wasm: BarretenbergWasmMainWorker, options: BackendOptions) {
|
|
44
44
|
super(wasm);
|
|
45
45
|
this.options = options;
|
|
46
46
|
}
|
|
@@ -52,7 +52,7 @@ export class Barretenberg extends BarretenbergApi {
|
|
|
52
52
|
* It threads > 1 (defaults to hardware availability), child threads will be created on their own workers.
|
|
53
53
|
*/
|
|
54
54
|
static async new(options: BackendOptions = {}) {
|
|
55
|
-
const worker = createMainWorker();
|
|
55
|
+
const worker = await createMainWorker();
|
|
56
56
|
const wasm = getRemoteBarretenbergWasm<BarretenbergWasmMainWorker>(worker);
|
|
57
57
|
const { module, threads } = await fetchModuleAndThreads(options.threads, options.wasmPath, options.logger);
|
|
58
58
|
await wasm.init(
|
|
@@ -97,6 +97,10 @@ export class Barretenberg extends BarretenbergApi {
|
|
|
97
97
|
await this.wasm.destroy();
|
|
98
98
|
await this.worker.terminate();
|
|
99
99
|
}
|
|
100
|
+
|
|
101
|
+
getWasm() {
|
|
102
|
+
return this.wasm;
|
|
103
|
+
}
|
|
100
104
|
}
|
|
101
105
|
|
|
102
106
|
let barrentenbergSyncSingletonPromise: Promise<BarretenbergSync>;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
// WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
3
|
-
import { BarretenbergWasmMain } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
4
|
-
import { BarretenbergWasmWorker, BarretenbergWasm } from '../barretenberg_wasm/index.js';
|
|
3
|
+
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
5
4
|
import {
|
|
6
5
|
BufferDeserializer,
|
|
7
6
|
NumberDeserializer,
|
|
@@ -11,10 +10,10 @@ import {
|
|
|
11
10
|
serializeBufferable,
|
|
12
11
|
OutputType,
|
|
13
12
|
} from '../serialize/index.js';
|
|
14
|
-
import { Fr,
|
|
13
|
+
import { Fr, Point, Buffer32, Ptr } from '../types/index.js';
|
|
15
14
|
|
|
16
15
|
export class BarretenbergApi {
|
|
17
|
-
constructor(protected wasm:
|
|
16
|
+
constructor(protected wasm: BarretenbergWasmMainWorker) {}
|
|
18
17
|
|
|
19
18
|
async pedersenCommit(inputsBuffer: Fr[], ctxIndex: number): Promise<Point> {
|
|
20
19
|
const inArgs = [inputsBuffer, ctxIndex].map(serializeBufferable);
|
|
@@ -606,7 +605,7 @@ export class BarretenbergApi {
|
|
|
606
605
|
}
|
|
607
606
|
}
|
|
608
607
|
export class BarretenbergApiSync {
|
|
609
|
-
constructor(protected wasm:
|
|
608
|
+
constructor(protected wasm: BarretenbergWasmMain) {}
|
|
610
609
|
|
|
611
610
|
pedersenCommit(inputsBuffer: Fr[], ctxIndex: number): Point {
|
|
612
611
|
const inArgs = [inputsBuffer, ctxIndex].map(serializeBufferable);
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import debug from 'debug';
|
|
2
|
-
import
|
|
2
|
+
import { readinessListener } from '../../../helpers/browser/index.js';
|
|
3
3
|
|
|
4
|
-
export function createMainWorker() {
|
|
5
|
-
|
|
4
|
+
export async function createMainWorker() {
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
6
|
+
// @ts-ignore
|
|
7
|
+
const worker = new Worker(new URL(/* webpackIgnore: true */ './main.worker.js', import.meta.url), {
|
|
8
|
+
type: 'module',
|
|
9
|
+
});
|
|
6
10
|
const debugStr = debug.disable();
|
|
7
11
|
debug.enable(debugStr);
|
|
8
12
|
worker.postMessage({ debug: debugStr });
|
|
13
|
+
await new Promise<void>(resolve => readinessListener(worker, resolve));
|
|
9
14
|
return worker;
|
|
10
15
|
}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import { expose } from 'comlink';
|
|
2
2
|
import { BarretenbergWasmMain } from '../../index.js';
|
|
3
3
|
import debug from 'debug';
|
|
4
|
+
import { Ready } from '../../../helpers/browser/index.js';
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
addEventListener('message', e => {
|
|
6
7
|
if (e.data.debug) {
|
|
7
8
|
debug.enable(e.data.debug);
|
|
8
9
|
}
|
|
9
|
-
};
|
|
10
|
+
});
|
|
10
11
|
|
|
11
12
|
expose(new BarretenbergWasmMain());
|
|
12
|
-
|
|
13
|
-
self.postMessage({ ready: true });
|
|
14
|
-
|
|
15
|
-
export default null as any;
|
|
13
|
+
postMessage(Ready);
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import debug from 'debug';
|
|
2
|
-
import
|
|
2
|
+
import { readinessListener } from '../../../helpers/browser/index.js';
|
|
3
3
|
|
|
4
|
-
export function createThreadWorker() {
|
|
5
|
-
|
|
4
|
+
export async function createThreadWorker() {
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
6
|
+
// @ts-ignore
|
|
7
|
+
const worker = new Worker(new URL(/* webpackIgnore: true */ './thread.worker.js', import.meta.url), {
|
|
8
|
+
type: 'module',
|
|
9
|
+
});
|
|
6
10
|
const debugStr = debug.disable();
|
|
7
11
|
debug.enable(debugStr);
|
|
8
12
|
worker.postMessage({ debug: debugStr });
|
|
13
|
+
await new Promise<void>(resolve => readinessListener(worker, resolve));
|
|
9
14
|
return worker;
|
|
10
15
|
}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import { expose } from 'comlink';
|
|
2
2
|
import { BarretenbergWasmThread } from '../../index.js';
|
|
3
3
|
import debug from 'debug';
|
|
4
|
+
import { Ready } from '../../../helpers/browser/index.js';
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
addEventListener('message', e => {
|
|
6
7
|
if (e.data.debug) {
|
|
7
8
|
debug.enable(e.data.debug);
|
|
8
9
|
}
|
|
9
|
-
};
|
|
10
|
+
});
|
|
10
11
|
|
|
11
12
|
expose(new BarretenbergWasmThread());
|
|
12
|
-
|
|
13
|
-
self.postMessage({ ready: true });
|
|
14
|
-
|
|
15
|
-
export default null as any;
|
|
13
|
+
postMessage(Ready);
|
|
@@ -6,7 +6,7 @@ export function getSharedMemoryAvailable() {
|
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
export function getRemoteBarretenbergWasm<T>(worker: Worker) {
|
|
9
|
-
return wrap(worker)
|
|
9
|
+
return wrap<T>(worker);
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
export function getNumCpu() {
|
|
@@ -14,9 +14,25 @@ export function getNumCpu() {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export function threadLogger(): ((msg: string) => void) | undefined {
|
|
17
|
-
return
|
|
17
|
+
return console.log;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
export function killSelf() {
|
|
21
21
|
self.close();
|
|
22
22
|
}
|
|
23
|
+
|
|
24
|
+
// Solution to async initialization of workers, taken from
|
|
25
|
+
// https://github.com/GoogleChromeLabs/comlink/issues/635#issuecomment-1598913044
|
|
26
|
+
|
|
27
|
+
/** The message expected by the `readinessListener`. */
|
|
28
|
+
export const Ready = { ready: true };
|
|
29
|
+
|
|
30
|
+
/** Listen for the readiness message from the Worker and call the `callback` once. */
|
|
31
|
+
export function readinessListener(worker: Worker, callback: () => void) {
|
|
32
|
+
worker.addEventListener('message', function ready(event: MessageEvent<typeof Ready>) {
|
|
33
|
+
if (!!event.data && event.data.ready === true) {
|
|
34
|
+
worker.removeEventListener('message', ready);
|
|
35
|
+
callback();
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
@@ -13,8 +13,8 @@ export function getSharedMemoryAvailable() {
|
|
|
13
13
|
* Note we give it the type information it needs so the returned Proxy object looks like that type.
|
|
14
14
|
* Node has a different implementation, needing this nodeEndpoint wrapper, hence this function exists here.
|
|
15
15
|
*/
|
|
16
|
-
export function getRemoteBarretenbergWasm<T>(worker: Worker)
|
|
17
|
-
return wrap(nodeEndpoint(worker))
|
|
16
|
+
export function getRemoteBarretenbergWasm<T>(worker: Worker) {
|
|
17
|
+
return wrap<T>(nodeEndpoint(worker));
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
/**
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from './barretenberg_wasm_main/index.js';
|
|
2
|
+
import { Barretenberg } from '../index.js';
|
|
3
3
|
|
|
4
4
|
describe('barretenberg wasm', () => {
|
|
5
|
-
let
|
|
6
|
-
let wasm
|
|
5
|
+
let api: Barretenberg;
|
|
6
|
+
let wasm: BarretenbergWasmMainWorker;
|
|
7
7
|
|
|
8
8
|
beforeAll(async () => {
|
|
9
|
-
|
|
9
|
+
api = await Barretenberg.new({ threads: 2 });
|
|
10
|
+
wasm = api.getWasm();
|
|
10
11
|
}, 20000);
|
|
11
12
|
|
|
12
13
|
afterAll(async () => {
|
|
13
|
-
await
|
|
14
|
-
await worker.terminate();
|
|
14
|
+
await api.destroy();
|
|
15
15
|
});
|
|
16
16
|
|
|
17
17
|
it('should new malloc, transfer and slice mem', async () => {
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import { proxy } from 'comlink';
|
|
2
1
|
import createDebug from 'debug';
|
|
3
|
-
import {
|
|
4
|
-
import { getRemoteBarretenbergWasm, getSharedMemoryAvailable } from './helpers/node/index.js';
|
|
5
|
-
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from './barretenberg_wasm_main/index.js';
|
|
2
|
+
import { getSharedMemoryAvailable } from './helpers/node/index.js';
|
|
6
3
|
import { fetchCode } from './fetch_code/index.js';
|
|
7
4
|
|
|
8
5
|
export async function fetchModuleAndThreads(
|
|
@@ -39,23 +36,3 @@ async function getAvailableThreads(logger: (msg: string) => void): Promise<numbe
|
|
|
39
36
|
}
|
|
40
37
|
}
|
|
41
38
|
}
|
|
42
|
-
|
|
43
|
-
export class BarretenbergWasm extends BarretenbergWasmMain {
|
|
44
|
-
/**
|
|
45
|
-
* Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
|
|
46
|
-
* Used when running in the browser, because we can't block the main thread.
|
|
47
|
-
*/
|
|
48
|
-
public static async new(
|
|
49
|
-
desiredThreads?: number,
|
|
50
|
-
wasmPath?: string,
|
|
51
|
-
logger: (msg: string) => void = createDebug('bb.js:bb_wasm_main'),
|
|
52
|
-
) {
|
|
53
|
-
const worker = createMainWorker();
|
|
54
|
-
const wasm = getRemoteBarretenbergWasm<BarretenbergWasmMainWorker>(worker);
|
|
55
|
-
const { module, threads } = await fetchModuleAndThreads(desiredThreads, wasmPath, logger);
|
|
56
|
-
await wasm.init(module, threads, proxy(logger));
|
|
57
|
-
return { worker, wasm };
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export type BarretenbergWasmWorker = BarretenbergWasmMainWorker;
|
|
@@ -9,10 +9,9 @@ export function generateTypeScriptCode(filename: string) {
|
|
|
9
9
|
|
|
10
10
|
let output = `// WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
|
|
11
11
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
12
|
-
import { BarretenbergWasmMain } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
13
|
-
import { BarretenbergWasmWorker, BarretenbergWasm } from '../barretenberg_wasm/index.js';
|
|
12
|
+
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
14
13
|
import { BufferDeserializer, NumberDeserializer, VectorDeserializer, BoolDeserializer, StringDeserializer, serializeBufferable, OutputType } from '../serialize/index.js';
|
|
15
|
-
import { Fr,
|
|
14
|
+
import { Fr, Point, Buffer32, Ptr } from '../types/index.js';
|
|
16
15
|
|
|
17
16
|
`;
|
|
18
17
|
|
|
@@ -25,7 +24,7 @@ import { Fr, Fq, Point, Buffer32, Buffer128, Ptr } from '../types/index.js';
|
|
|
25
24
|
function generateClass(functionDeclarations: FunctionDeclaration[]) {
|
|
26
25
|
let output = `
|
|
27
26
|
export class BarretenbergApi {
|
|
28
|
-
constructor(protected wasm:
|
|
27
|
+
constructor(protected wasm: BarretenbergWasmMainWorker) {}
|
|
29
28
|
|
|
30
29
|
`;
|
|
31
30
|
|
|
@@ -72,7 +71,7 @@ export class BarretenbergApi {
|
|
|
72
71
|
function generateSyncClass(functionDeclarations: FunctionDeclaration[]) {
|
|
73
72
|
let output = `
|
|
74
73
|
export class BarretenbergApiSync {
|
|
75
|
-
constructor(protected wasm:
|
|
74
|
+
constructor(protected wasm: BarretenbergWasmMain) {}
|
|
76
75
|
|
|
77
76
|
`;
|
|
78
77
|
|
package/src/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { Crs, GrumpkinCrs } from './crs/index.js';
|
|
2
2
|
export {
|
|
3
|
-
BackendOptions,
|
|
3
|
+
type BackendOptions,
|
|
4
4
|
Barretenberg,
|
|
5
5
|
BarretenbergSync,
|
|
6
6
|
BarretenbergVerifier,
|
|
@@ -10,4 +10,4 @@ export {
|
|
|
10
10
|
} from './barretenberg/index.js';
|
|
11
11
|
|
|
12
12
|
export { RawBuffer, Fr } from './types/index.js';
|
|
13
|
-
export { splitHonkProof, reconstructHonkProof, deflattenFields, ProofData } from './proof/index.js';
|
|
13
|
+
export { splitHonkProof, reconstructHonkProof, deflattenFields, type ProofData } from './proof/index.js';
|