[test] replace node-libgpiod with serialport in electron-rebuild workflow (#3945)

`node-libgpiod` uses deprecated NAN which is incompatible with Electron
v39+. `serialport` uses N-API ensuring compatibility with current and
future Electron versions.

`node-libgpiod` is only used by 1 of ~1300 3rd-party-modules
(MMM-PresenceScreenControl), while serialport is used by at least 4
modules (MMM-Serial-Notification, MMM-RadarPresence, MMM-LKY-TIC and
MMM-Gestures), making it a better test candidate.

Also updates Electron to v39.

Fixes #3933
This commit is contained in:
Kristjan ESPERANTO
2025-11-04 22:46:20 +01:00
committed by GitHub
parent 67fead74b4
commit 9d713ffd69
4 changed files with 8 additions and 11 deletions

8
package-lock.json generated
View File

@@ -62,7 +62,7 @@
"node": ">=22.20.0 <23 || >=24"
},
"optionalDependencies": {
"electron": "^38.3.0"
"electron": "^39.0.0"
}
},
"node_modules/@acemir/cssom": {
@@ -4801,9 +4801,9 @@
"license": "MIT"
},
"node_modules/electron": {
"version": "38.5.0",
"resolved": "https://registry.npmjs.org/electron/-/electron-38.5.0.tgz",
"integrity": "sha512-dbC7V+eZweerYMJfxQldzHOg37a1VdNMCKxrJxlkp3cA30gOXtXSg4ZYs07L5+QwI19WOy1uyvtEUgbw1RRsCQ==",
"version": "39.0.0",
"resolved": "https://registry.npmjs.org/electron/-/electron-39.0.0.tgz",
"integrity": "sha512-UejnuOK4jpRZUq7MkEAnR/szsRWLKBJAdvn6j3xdQLT57fVv13VSNdaUHHjSheaqGzNhCGIdkPsPJnGJVh5kiA==",
"hasInstallScript": true,
"license": "MIT",
"optional": true,