From 77f44d77606c1d0578a61105c5f91af3c3f99a94 Mon Sep 17 00:00:00 2001 From: samikshya-chand_data Date: Wed, 14 May 2025 16:34:40 +0530 Subject: [PATCH 1/2] Lenient LZ4 check --- lib/utils/lz4.ts | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/lib/utils/lz4.ts b/lib/utils/lz4.ts index 8186024d..45507097 100644 --- a/lib/utils/lz4.ts +++ b/lib/utils/lz4.ts @@ -6,11 +6,25 @@ function tryLoadLZ4Module(): LZ4Module | undefined { try { return require('lz4'); // eslint-disable-line global-require } catch (err) { - const isModuleNotFoundError = err instanceof Error && 'code' in err && err.code === 'MODULE_NOT_FOUND'; - if (!isModuleNotFoundError) { - throw err; + if (!(err instanceof Error) || !('code' in err)) { + console.warn('Unexpected error loading LZ4 module: Invalid error object', err); + return undefined; } + + if (err.code === 'MODULE_NOT_FOUND') { + console.warn('LZ4 module not installed: Missing dependency', err); + return undefined; + } + + if (err.code === 'ERR_DLOPEN_FAILED') { + console.warn('LZ4 native module failed to load: Architecture or version mismatch', err); + return undefined; + } + + // If it's not a known error, return undefined + console.warn('Unknown error loading LZ4 module: Unhandled error code', err); + return undefined; } } -export default tryLoadLZ4Module(); +export default tryLoadLZ4Module(); \ No newline at end of file From 5946c2daf4a723da7aea755c9109d4deb1257b20 Mon Sep 17 00:00:00 2001 From: samikshya-chand_data Date: Wed, 14 May 2025 17:05:08 +0530 Subject: [PATCH 2/2] lint --- lib/utils/lz4.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/utils/lz4.ts b/lib/utils/lz4.ts index 45507097..b8a8e8ad 100644 --- a/lib/utils/lz4.ts +++ b/lib/utils/lz4.ts @@ -27,4 +27,4 @@ function tryLoadLZ4Module(): LZ4Module | undefined { } } -export default tryLoadLZ4Module(); \ No newline at end of file +export default tryLoadLZ4Module();