fix: update node-abi for Electron 41 packaging (#14403)

### What this PR does

Before this PR:
Packaging failed after upgrading to Electron 41.2.1 because the pinned
`node-abi` version could not resolve the ABI for the new Electron
runtime.

After this PR:
Packaging uses `node-abi` 4.28.0, which recognizes Electron 41.2.1 and
allows the build pipeline to resolve the correct ABI during packaging.

<!-- (optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)`
format, will close the issue(s) when PR gets merged)*: -->

Fixes #N/A

### Why we need it and why it was done in this way

The following tradeoffs were made:
A minimal override-only change was used so the fix stays suitable for a
`hotfix/*` branch and avoids unrelated packaging or dependency
refactors.

The following alternatives were considered:
Upgrading broader packaging dependencies such as `electron-builder` and
related transitive tooling was considered, but rejected because it would
increase scope and risk for a hotfix.

Links to places where the discussion took place: <!-- optional: slack,
other GH issue, mailinglist, ... -->
N/A

### Breaking changes

<!-- optional -->

If this PR introduces breaking changes, please describe the changes and
the impact on users.

N/A

### Special notes for your reviewer

This PR only updates the pinned `node-abi` override and lockfile entries
required for Electron 41.2.1 packaging.

Validation performed locally:
- `pnpm format`
- `pnpm test`
- `pnpm lint`

### Checklist

This checklist is not enforcing, but it's a reminder of items that could
be relevant to every PR.
Approvers are expected to review this list.

- [x] PR: The PR description is expressive enough and will help future
contributors
- [x] Code: [Write code that humans can
understand](https://en.wikiquote.org/wiki/Martin_Fowler#code-for-humans)
and [Keep it simple](https://en.wikipedia.org/wiki/KISS_principle)
- [x] Refactor: You have [left the code cleaner than you found it (Boy
Scout
Rule)](https://learning.oreilly.com/library/view/97-things-every/9780596809515/ch08.html)
- [x] Upgrade: Impact of this change on upgrade flows was considered and
addressed if required
- [ ] Documentation: A [user-guide update](https://docs.cherry-ai.com)
was considered and is present (link) or not required. Check this only
when the PR introduces or changes a user-facing feature or behavior.
- [x] Self-review: I have reviewed my own code (e.g., via
[`/gh-pr-review`](/.claude/skills/gh-pr-review/SKILL.md), `gh pr diff`,
or GitHub UI) before requesting review from others

### Release note

<!--  Write your release note:
1. Enter your extended release note in the below block. If the PR
requires additional action from users switching to the new release,
include the string "action required".
2. If no release note is required, just write "NONE".
3. Only include user-facing changes (new features, bug fixes visible to
users, UI changes, behavior changes). For CI, maintenance, internal
refactoring, build tooling, or other non-user-facing work, write "NONE".
-->

```release-note
NONE
```

Signed-off-by: kangfenmao <kangfenmao@qq.com>
This commit is contained in:
亢奋猫
2026-04-20 12:23:49 +08:00
committed by GitHub
parent 7c2ada6d6a
commit 2120fddf4e
2 changed files with 9 additions and 9 deletions

View File

@@ -466,7 +466,7 @@
"@codemirror/lint": "6.9.5",
"@lezer/common": "1.5.1",
"esbuild": "^0.25.0",
"node-abi": "4.24.0",
"node-abi": "4.28.0",
"openai": "npm:@cherrystudio/openai@6.15.0",
"tar-fs": "^2.1.4",
"undici": "6.23.0",

16
pnpm-lock.yaml generated
View File

@@ -18,7 +18,7 @@ overrides:
'@codemirror/lint': 6.9.5
'@lezer/common': 1.5.1
esbuild: ^0.25.0
node-abi: 4.24.0
node-abi: 4.28.0
openai: npm:@cherrystudio/openai@6.15.0
tar-fs: ^2.1.4
undici: 6.23.0
@@ -9892,8 +9892,8 @@ packages:
resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==}
engines: {node: '>= 0.4.0'}
node-abi@4.24.0:
resolution: {integrity: sha512-u2EC1CeNe25uVtX3EZbdQ275c74zdZmmpzrHEQh2aIYqoVjlglfUpOX9YY85x1nlBydEKDVaSmMNhR7N82Qj8A==}
node-abi@4.28.0:
resolution: {integrity: sha512-Qfp5XZL1cJDOabOT8H5gnqMTmM4NjvYzHp4I/Kt/Sl76OVkOBBHRFlPspGV0hYvMoqQsypFjT/Yp7Km0beXW9g==}
engines: {node: '>=22.12.0'}
node-addon-api@1.7.2:
@@ -14654,7 +14654,7 @@ snapshots:
detect-libc: 2.1.2
got: 11.8.6
graceful-fs: 4.2.11
node-abi: 4.24.0
node-abi: 4.28.0
node-api-version: 0.2.1
node-gyp: 11.5.0
ora: 5.4.1
@@ -14672,7 +14672,7 @@ snapshots:
detect-libc: 2.1.2
got: 11.8.6
graceful-fs: 4.2.11
node-abi: 4.24.0
node-abi: 4.28.0
node-api-version: 0.2.1
node-gyp: 11.5.0
ora: 5.4.1
@@ -23208,7 +23208,7 @@ snapshots:
netmask@2.0.2: {}
node-abi@4.24.0:
node-abi@4.28.0:
dependencies:
semver: 7.7.1
@@ -23748,7 +23748,7 @@ snapshots:
minimist: 1.2.8
mkdirp-classic: 0.5.3
napi-build-utils: 1.0.2
node-abi: 4.24.0
node-abi: 4.28.0
noop-logger: 0.1.1
npmlog: 4.1.2
pump: 3.0.3
@@ -23766,7 +23766,7 @@ snapshots:
minimist: 1.2.8
mkdirp-classic: 0.5.3
napi-build-utils: 2.0.0
node-abi: 4.24.0
node-abi: 4.28.0
pump: 3.0.3
rc: 1.2.8
simple-get: 4.0.1