From 0c0328cf451a58692ce9f9d556e5e24043fa8c14 Mon Sep 17 00:00:00 2001 From: Quantum Explorer Date: Thu, 23 Apr 2026 12:53:36 +0800 Subject: [PATCH] ci: skip ssh2 optional crypto native build MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ssh2 (pulled in transitively via docker-modem) ships an optional native "sshcrypto" binding built via node-gyp + nan. On Node 24 the vendored nan versions (2.17/2.22) don't compile against V8's newer Intercepted/ScriptOriginOptions API, producing a wall of C++ errors during `yarn install --inline-builds`. The failure is cosmetic — ssh2 catches it and falls back to pure-JS crypto, reporting "Failed to build optional crypto binding" — but the noise makes real install issues much harder to spot in CI logs. Disable the build script via dependenciesMeta so yarn doesn't try to compile the optional binding at all. Co-Authored-By: Claude Opus 4.7 (1M context) --- package.json | 8 ++++++++ yarn.lock | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/package.json b/package.json index 7065ae3b9e5..4e6fce15d6d 100644 --- a/package.json +++ b/package.json @@ -128,5 +128,13 @@ "dependencies": { "dompurify": "^3.3.2", "node-gyp": "^10.0.1" + }, + "dependenciesMeta": { + "ssh2@1.11.0": { + "built": false + }, + "ssh2@1.16.0": { + "built": false + } } } diff --git a/yarn.lock b/yarn.lock index 29511ad1881..91673a5fab2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1940,6 +1940,11 @@ __metadata: typedoc: "npm:^0.28.17" typescript: "npm:^5.7.3" ultra-runner: "npm:^3.10.5" + dependenciesMeta: + ssh2@1.11.0: + built: false + ssh2@1.16.0: + built: false languageName: unknown linkType: soft