fix: restore build and tests under TypeScript 6
Some checks failed
NYX Security Scan / nyx-scan (pull_request) Failing after 5m55s
Some checks failed
NYX Security Scan / nyx-scan (pull_request) Failing after 5m55s
The dependency bumps on main left `npm test` and `npm run build:types`
broken independently of any feature work; both fail on a clean checkout
of origin/main.
TypeScript 6 no longer auto-includes @types packages the way node10
resolution did, so every test suite failed to compile with "Cannot find
name 'describe'/'expect'". Declare the needed @types explicitly instead:
- tsconfig.json: types: ["node"]
- jest.config.js: types: ["jest", "node"]
TypeScript 6 also errors on two settings this config relied on:
- moduleResolution "node" (node10) is deprecated -> "bundler", which
matches how the package is actually consumed (rollup-bundled, with
"module": "ESNext")
- an implicit rootDir is now an error when outDir/declarationDir are
set -> rootDir: "./src"
Drop three unused imports that noUnusedLocals turns into hard errors,
failing --emitDeclarationOnly.
Finally, NodeSecureMemory logged to stdout unconditionally on
construction. This was dormant while the native addon failed to load;
once it loads, it broke the "no console.log when debug=false" test. A
library must not write to stdout uninvited, and the client already
reports this via getProtectionInfo() behind its own debug flag.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
75867ef85a
commit
84eae58317
5 changed files with 10 additions and 6 deletions
|
|
@ -3,7 +3,7 @@
|
|||
* Matches the Python implementation using AES-256-GCM with random nonces
|
||||
*/
|
||||
|
||||
import { getCrypto, arrayBufferToBase64, base64ToArrayBuffer, generateRandomBytes } from './utils';
|
||||
import { getCrypto, generateRandomBytes } from './utils';
|
||||
|
||||
export class AESEncryption {
|
||||
private subtle: SubtleCrypto;
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
* Matches the Python implementation using RSA-OAEP with SHA-256
|
||||
*/
|
||||
|
||||
import { getCrypto, pemToArrayBuffer, arrayBufferToPem, stringToArrayBuffer, arrayBufferToString, generateRandomBytes } from './utils';
|
||||
import { getCrypto, pemToArrayBuffer, arrayBufferToPem, stringToArrayBuffer, generateRandomBytes } from './utils';
|
||||
import { SecureByteContext } from '../memory/secure';
|
||||
|
||||
export class RSAOperations {
|
||||
|
|
|
|||
|
|
@ -37,10 +37,9 @@ export class NodeSecureMemory implements SecureMemory {
|
|||
private readonly hasNative: boolean;
|
||||
|
||||
constructor() {
|
||||
// Deliberately silent: a library must not write to stdout on construction.
|
||||
// Callers surface this via getProtectionInfo() under their own debug flag.
|
||||
this.hasNative = nativeAddon !== null;
|
||||
if (this.hasNative) {
|
||||
console.log('nomyo-native addon loaded: mlock + secure-zero available');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue