From 36e4c6f6953ed28856370e1e9fac06752cf99d4d Mon Sep 17 00:00:00 2001 From: ray Date: Sat, 9 Nov 2024 11:04:17 +0000 Subject: [PATCH] Fully isomorphic impl. - Upgrade engine to v17.4 where webcrypto getRandomValues() was introduced (https://nodejs.org/en/blog/release/v17.4.0) - Remove redundant node types - Update readme --- README.md | 1 - package-lock.json | 20 +++++--------------- package.json | 3 +-- src/TinyWASI.ts | 4 +--- tsconfig.json | 5 +---- 5 files changed, 8 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 323ad37..944b522 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,6 @@ None. ### Dev-Dependencies * typescript - for compiling the typescript source files to javascript -* @types/node - typescript definitions for node's API Optionally: diff --git a/package-lock.json b/package-lock.json index b4315d9..712b9ce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,24 +1,20 @@ { "name": "tinywasi", - "version": "1.0.0", + "version": "1.0.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "tinywasi", - "version": "1.0.0", + "version": "1.0.2", "license": "MIT", "devDependencies": { - "@types/node": "^17.0.21", "typescript": "^4.6.2" + }, + "engines": { + "node": ">=17.4.0" } }, - "node_modules/@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==", - "dev": true - }, "node_modules/typescript": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz", @@ -34,12 +30,6 @@ } }, "dependencies": { - "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==", - "dev": true - }, "typescript": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz", diff --git a/package.json b/package.json index 793e185..9e55cac 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "test": "echo \"Error: no test specified\" && exit 1" }, "engines": { - "node": "^14.19.0 || >=16.0.0" + "node": ">=17.4.0" }, "license": "MIT", "author": "QRDate.org + contributors", @@ -23,7 +23,6 @@ "url": "https://github.com/qrdate/tinywasi.git" }, "devDependencies": { - "@types/node": "^17.0.21", "typescript": "^4.6.2" }, "files": [ diff --git a/src/TinyWASI.ts b/src/TinyWASI.ts index 267c1cc..289e909 100644 --- a/src/TinyWASI.ts +++ b/src/TinyWASI.ts @@ -1,5 +1,3 @@ -import * as crypto from 'crypto'; - export class TinyWASI { private instance?: WebAssembly.Instance = undefined; @@ -210,7 +208,7 @@ export class TinyWASI { const buffer = new Uint8Array(memory.buffer, pointer, size); - crypto.randomFillSync(buffer); + crypto.getRandomValues(buffer); return this.WASI_ERRNO_SUCCESS; } diff --git a/tsconfig.json b/tsconfig.json index 31b185d..f21bd86 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -6,9 +6,6 @@ "declaration": true, "rootDir": "./src", "outDir": "./dist", - "strict": true, - "types": [ - "node" - ], + "strict": true } } \ No newline at end of file