Skip to content

Commit 44603f2

Browse files
authored
fix: handle yarn berry patch format in electron-updater version check (#8830)
1 parent 0046104 commit 44603f2

File tree

2 files changed

+22
-6
lines changed

2 files changed

+22
-6
lines changed

.changeset/weak-owls-obey.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"app-builder-lib": patch
3+
---
4+
5+
fix: handle yarn berry patch format in electron-updater version check

packages/app-builder-lib/src/util/packageMetadata.ts

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -98,12 +98,23 @@ function checkDependencies(dependencies: Record<string, string> | Nullish, error
9898
return
9999
}
100100

101-
const updaterVersion = dependencies["electron-updater"]
102-
const requiredElectronUpdaterVersion = "4.0.0"
103-
if (updaterVersion != null && !versionSatisfies(updaterVersion, `>=${requiredElectronUpdaterVersion}`)) {
104-
errors.push(
105-
`At least electron-updater ${requiredElectronUpdaterVersion} is recommended by current electron-builder version. Please set electron-updater version to "^${requiredElectronUpdaterVersion}"`
106-
)
101+
let updaterVersion = dependencies["electron-updater"]
102+
if (updaterVersion != null) {
103+
// Pick the version out of yarn berry patch syntax
104+
// "patch:electron-updater@npm%3A6.4.1#~/.yarn/patches/electron-updater-npm-6.4.1-ef33e6cc39.patch"
105+
if (updaterVersion.startsWith('patch:')) {
106+
const match = updaterVersion.match(/@npm%3A(.+?)#/)
107+
if (match) {
108+
updaterVersion = match[1]
109+
}
110+
}
111+
112+
const requiredElectronUpdaterVersion = "4.0.0"
113+
if (!versionSatisfies(updaterVersion, `>=${requiredElectronUpdaterVersion}`)) {
114+
errors.push(
115+
`At least electron-updater ${requiredElectronUpdaterVersion} is recommended by current electron-builder version. Please set electron-updater version to "^${requiredElectronUpdaterVersion}"`
116+
)
117+
}
107118
}
108119

109120
const swVersion = dependencies["electron-builder-squirrel-windows"]

0 commit comments

Comments
 (0)