summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package.json2
-rw-r--r--src/headless/helpers.ts16
2 files changed, 12 insertions, 6 deletions
diff --git a/package.json b/package.json
index 93813c631..412d34f11 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "taler-wallet",
- "version": "0.6.8",
+ "version": "0.6.9",
"description": "",
"main": "dist/node/index.js",
"repository": {
diff --git a/src/headless/helpers.ts b/src/headless/helpers.ts
index 6832cd4f4..a5dad3856 100644
--- a/src/headless/helpers.ts
+++ b/src/headless/helpers.ts
@@ -34,6 +34,7 @@ import { WalletNotification, NotificationType } from "../types/notifications";
import { Database } from "../util/query";
import { NodeHttpLib } from "./NodeHttpLib";
import { Logger } from "../util/logging";
+import { SynchronousCryptoWorkerFactory } from "../crypto/workers/synchronousWorker";
const logger = new Logger("helpers.ts");
@@ -113,14 +114,19 @@ export async function getDefaultNodeWallet(
const myDb = await openTalerDatabase(myIdbFactory, myVersionChange);
- //const worker = new SynchronousCryptoWorkerFactory();
- //const worker = new NodeCryptoWorkerFactory();
-
- const worker = new NodeThreadCryptoWorkerFactory();
+ let workerFactory;
+ try {
+ // Try if we have worker threads available, fails in older node versions.
+ require("worker_threads")
+ workerFactory = new NodeThreadCryptoWorkerFactory();
+ } catch (e) {
+ console.log("worker threads not available, falling back to synchronous workers");
+ workerFactory = new SynchronousCryptoWorkerFactory();
+ }
const dbWrap = new Database(myDb);
- const w = new Wallet(dbWrap, myHttpLib, worker);
+ const w = new Wallet(dbWrap, myHttpLib, workerFactory);
if (args.notifyHandler) {
w.addNotificationListener(args.notifyHandler);
}