Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions .changeset/brown-boxes-know.md

This file was deleted.

7 changes: 0 additions & 7 deletions .changeset/chatty-points-shop.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/fuzzy-kings-cry.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/hot-cars-attack.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/long-wasps-divide.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/lovely-brooms-move.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/lovely-geckos-chew.md

This file was deleted.

17 changes: 0 additions & 17 deletions .changeset/lovely-moose-worry.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/old-spies-lick.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/pr-9260.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/rotten-bags-carry.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/rude-donuts-bathe.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/selfish-trees-begin.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/shaggy-garlics-joke.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/sharp-elephants-shout.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/sixty-mice-accept.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/tough-walls-bathe.md

This file was deleted.

32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,35 @@
# [](https://github.com/electron-userland/electron-builder/compare/v26.0.19...v) (2025-08-29)


### Bug Fixes

* add quotation marks around variable in AppArmor profile ([#9231](https://github.com/electron-userland/electron-builder/issues/9231)) ([f262a73](https://github.com/electron-userland/electron-builder/commit/f262a7358dafe189b5d9bf06d7be43478ee35faa))
* auto-update powershell script for powershell version test with `ConvertTo-Json test` ([#9232](https://github.com/electron-userland/electron-builder/issues/9232)) ([cfc4f36](https://github.com/electron-userland/electron-builder/commit/cfc4f36a5af20fb6c61dc7dfa6202cbc0fd9f201))
* Change dependency collection to parse from root ([#9260](https://github.com/electron-userland/electron-builder/issues/9260)) ([49c782c](https://github.com/electron-userland/electron-builder/commit/49c782cb838e495f60c4d284df8ab4b56b619da9))
* correct broken links in builder.ts and cli.md ([#9218](https://github.com/electron-userland/electron-builder/issues/9218)) ([e375149](https://github.com/electron-userland/electron-builder/commit/e37514998a25ada30c4e776e43134d466cac7221))
* **deps:** update dependency form-data to v4.0.4 [security] ([#9212](https://github.com/electron-userland/electron-builder/issues/9212)) ([7977708](https://github.com/electron-userland/electron-builder/commit/79777089ca2b98c55dd1cabd157ec420994af696))
* detect wrong package manager for two package.json structure ([#9257](https://github.com/electron-userland/electron-builder/issues/9257)) ([b778686](https://github.com/electron-userland/electron-builder/commit/b778686fb7f9294ec74bcb9a213a7f311a21357e))
* **electron-updater:** Do not wrap update command when updating with sudo ([#9225](https://github.com/electron-userland/electron-builder/issues/9225)) ([d27ac52](https://github.com/electron-userland/electron-builder/commit/d27ac523bb1581f274c018952d55162315e7a9b8))
* fix argument names mismatch in publish command to make it work ([#9227](https://github.com/electron-userland/electron-builder/issues/9227)) ([8f0ad06](https://github.com/electron-userland/electron-builder/commit/8f0ad06eae4716b7b753301531241166a7333058))
* flaky unit tests ([#9251](https://github.com/electron-userland/electron-builder/issues/9251)) ([80f5f83](https://github.com/electron-userland/electron-builder/commit/80f5f83d5f35337853af488d2abe9e6f9187e3d5))
* generate stubExecutableExe and sign it ([#8959](https://github.com/electron-userland/electron-builder/issues/8959)) ([0ad8f91](https://github.com/electron-userland/electron-builder/commit/0ad8f91cd5478a2063eb9e20df47797c8b42d48c))
* **nsis:** fix file association ([#9217](https://github.com/electron-userland/electron-builder/issues/9217)) ([e9251f4](https://github.com/electron-userland/electron-builder/commit/e9251f4725f1f7c14c9792f5af8053dde1793d6a))
* **nsis:** undefined vars when `customCheckAppRunning` is defined ([#9245](https://github.com/electron-userland/electron-builder/issues/9245)) ([3735881](https://github.com/electron-userland/electron-builder/commit/3735881f3259d0638d24fadc75809e5ea76114d7))
* scrubbing more aggressively anything in the logs ([#9182](https://github.com/electron-userland/electron-builder/issues/9182)) ([c54a060](https://github.com/electron-userland/electron-builder/commit/c54a0609753a11d032f87e727eccbab1f6836081))
* **squirrel-windows:** update loadingGif handling to prioritize user-defined option ([#9222](https://github.com/electron-userland/electron-builder/issues/9222)) ([9997660](https://github.com/electron-userland/electron-builder/commit/9997660e20cbdaa4ddb01d1c6078dea91097d6f0))
* strip auth headers for GitHub release assets redirects ([#9211](https://github.com/electron-userland/electron-builder/issues/9211)) ([7c7fd6c](https://github.com/electron-userland/electron-builder/commit/7c7fd6ca240eda72048835f754adac92c4ab4e8c))
* support option to override publish trigger (`--policy`) in publish command ([#9228](https://github.com/electron-userland/electron-builder/issues/9228)) ([d031eea](https://github.com/electron-userland/electron-builder/commit/d031eeaa7eb282e516471eed2e2a764716999b20))
* **test:** gitlab related failed cases ([#9221](https://github.com/electron-userland/electron-builder/issues/9221)) ([c6d0ff9](https://github.com/electron-userland/electron-builder/commit/c6d0ff9870457d122f9fde6e10315a975bc696aa))
* uncaught exception during differential downloading via multipleRangDownloader ([#9248](https://github.com/electron-userland/electron-builder/issues/9248)) ([8cbf079](https://github.com/electron-userland/electron-builder/commit/8cbf079ec20bbc642f9b6c306e3e9141a1fcc385))
* **yarn:** check for dependencies in both projectDir and appDir during installation ([#9219](https://github.com/electron-userland/electron-builder/issues/9219)) ([cf0ac45](https://github.com/electron-userland/electron-builder/commit/cf0ac45db79e3e3ff1cef3ad931f7272646d1cb1))


### Features

* **github:** Add `tagNamePrefix` option to github publisher options (deprecates `vPrefixedTagName`) ([#9216](https://github.com/electron-userland/electron-builder/issues/9216)) ([44b2899](https://github.com/electron-userland/electron-builder/commit/44b28997f15314730d1bb69303a47dc26f7950d1))



# [](https://github.com/electron-userland/electron-builder/compare/v26.0.18...v) (2025-07-15)


Expand Down
25 changes: 25 additions & 0 deletions packages/app-builder-lib/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,30 @@
# app-builder-lib

## 26.0.20

### Patch Changes

- [#9231](https://github.com/electron-userland/electron-builder/pull/9231) [`f262a735`](https://github.com/electron-userland/electron-builder/commit/f262a7358dafe189b5d9bf06d7be43478ee35faa) Thanks [@rastiqdev](https://github.com/rastiqdev)! - fix: add quotation marks around variable in AppArmor profile

- [#9216](https://github.com/electron-userland/electron-builder/pull/9216) [`44b28997`](https://github.com/electron-userland/electron-builder/commit/44b28997f15314730d1bb69303a47dc26f7950d1) Thanks [@taylorhadden](https://github.com/taylorhadden)! - feat(github): Add `tagNamePrefix` option and deprecate `vPrefixedTagName`

- [#9245](https://github.com/electron-userland/electron-builder/pull/9245) [`3735881f`](https://github.com/electron-userland/electron-builder/commit/3735881f3259d0638d24fadc75809e5ea76114d7) Thanks [@dlon](https://github.com/dlon)! - fix(nsis): undefined vars when `customCheckAppRunning` is defined

- [#9260](https://github.com/electron-userland/electron-builder/pull/9260) [`49c782cb`](https://github.com/electron-userland/electron-builder/commit/49c782cb838e495f60c4d284df8ab4b56b619da9) Thanks [@Julusian](https://github.com/Julusian)! - fix(app-builder-lib): Change dependency collection to parse from root to better handle monorepos

- [#9219](https://github.com/electron-userland/electron-builder/pull/9219) [`cf0ac45d`](https://github.com/electron-userland/electron-builder/commit/cf0ac45db79e3e3ff1cef3ad931f7272646d1cb1) Thanks [@beyondkmp](https://github.com/beyondkmp)! - fix(yarn): check for dependencies in both projectDir and appDir during installation

- [#9217](https://github.com/electron-userland/electron-builder/pull/9217) [`e9251f47`](https://github.com/electron-userland/electron-builder/commit/e9251f4725f1f7c14c9792f5af8053dde1793d6a) Thanks [@sabonerune](https://github.com/sabonerune)! - fix(nsis): Fix file associations according to the Windows documentation

- [#9257](https://github.com/electron-userland/electron-builder/pull/9257) [`b778686f`](https://github.com/electron-userland/electron-builder/commit/b778686fb7f9294ec74bcb9a213a7f311a21357e) Thanks [@DamonYu6](https://github.com/DamonYu6)! - fix detect wrong package manager for two package.json structure

- Updated dependencies [[`44b28997`](https://github.com/electron-userland/electron-builder/commit/44b28997f15314730d1bb69303a47dc26f7950d1), [`0ad8f91c`](https://github.com/electron-userland/electron-builder/commit/0ad8f91cd5478a2063eb9e20df47797c8b42d48c), [`9997660e`](https://github.com/electron-userland/electron-builder/commit/9997660e20cbdaa4ddb01d1c6078dea91097d6f0), [`7c7fd6ca`](https://github.com/electron-userland/electron-builder/commit/7c7fd6ca240eda72048835f754adac92c4ab4e8c), [`c54a0609`](https://github.com/electron-userland/electron-builder/commit/c54a0609753a11d032f87e727eccbab1f6836081)]:
- builder-util-runtime@9.4.0
- electron-publish@26.0.20
- electron-builder-squirrel-windows@26.0.20
- builder-util@26.0.20
- dmg-builder@26.0.20

## 26.0.19

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/app-builder-lib/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "app-builder-lib",
"description": "electron-builder lib",
"version": "26.0.19",
"version": "26.0.20",
"main": "out/index.js",
"files": [
"out",
Expand Down
8 changes: 4 additions & 4 deletions packages/app-builder-lib/scheme.json
Original file line number Diff line number Diff line change
Expand Up @@ -1578,6 +1578,10 @@
"$ref": "#/definitions/OutgoingHttpHeaders",
"description": "Any custom request headers"
},
"tagNamePrefix": {
"description": "If defined, sets the prefix of the tag name that comes before the semver number.\ne.g. \"v\" in \"v1.2.3\" or \"test\" of \"test1.2.3\".\nOverrides `vPrefixedTagName`",
"type": "string"
},
"timeout": {
"default": 120000,
"description": "Request timeout in milliseconds. (Default is 2 minutes; O is ignored)",
Expand All @@ -1603,10 +1607,6 @@
"default": true,
"description": "Whether to use `v`-prefixed tag name.",
"type": "boolean"
},
"tagNamePrefix": {
"description": "Sets the prefix of the tag name that comes before the semver number. Overrides vPrefixedTagName.",
"type": "string"
}
},
"required": [
Expand Down
4 changes: 2 additions & 2 deletions packages/app-builder-lib/src/node-module-collector/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ export async function getNodeModules(pm: PM, rootDir: string, tempDirManager: Tm
}

export function detectPackageManager(dirs: string[]): PM {
let pm: PM | null = null;
let pm: PM | null = null

for (const dir of dirs) {
pm = detectPackageManagerByLockfile(dir)
Expand All @@ -36,7 +36,7 @@ export function detectPackageManager(dirs: string[]): PM {
}
}

return detectPackageManagerByEnv('pnpm') || detectPackageManagerByEnv('yarn') || detectPackageManagerByEnv('npm') || PM.NPM
return detectPackageManagerByEnv("pnpm") || detectPackageManagerByEnv("yarn") || detectPackageManagerByEnv("npm") || PM.NPM
}

export { PM, getPackageManagerCommand }
Original file line number Diff line number Diff line change
Expand Up @@ -42,22 +42,22 @@ export function getPackageManagerCommand(pm: PM) {
return resolved
}

export function detectPackageManagerByEnv(pm: 'npm' | 'yarn' | 'pnpm'): PM | null {
export function detectPackageManagerByEnv(pm: "npm" | "yarn" | "pnpm"): PM | null {
const ua = process.env.npm_config_user_agent ?? ""
const execPath = process.env.npm_execpath?.toLowerCase() ?? ""

const yarnVersion = process.env.YARN_VERSION
const isBerry = yarnVersion?.startsWith("2.") || yarnVersion?.startsWith("3.")

switch (pm) {
case 'pnpm':
case "pnpm":
return ua.includes("pnpm") || execPath.includes("pnpm") || process.env.PNPM_HOME ? PM.PNPM : null
case 'yarn':
case "yarn":
if (ua.includes("yarn") || execPath.includes("yarn") || process.env.YARN_REGISTRY) {
return isBerry || ua.includes("yarn/2") || ua.includes("yarn/3") ? PM.YARN_BERRY : PM.YARN
}
return null
case 'npm':
case "npm":
return ua.includes("npm") || execPath.includes("npm") || process.env.npm_package_json ? PM.NPM : null
default:
return null
Expand All @@ -78,7 +78,7 @@ export function detectPackageManagerByLockfile(cwd: string): PM | null {

if (detected.length === 1) {
if (detected[0] === PM.YARN) {
return detectPackageManagerByEnv('yarn') === PM.YARN_BERRY ? PM.YARN_BERRY : PM.YARN
return detectPackageManagerByEnv("yarn") === PM.YARN_BERRY ? PM.YARN_BERRY : PM.YARN
}
return detected[0]
}
Expand Down
2 changes: 1 addition & 1 deletion packages/app-builder-lib/src/version.ts
Original file line number Diff line number Diff line change
@@ -1 +1 @@
export const PACKAGE_VERSION = "26.0.19"
export const PACKAGE_VERSION = "26.0.20"
23 changes: 23 additions & 0 deletions packages/builder-util-runtime/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,28 @@
# builder-util-runtime

## 9.4.0

### Minor Changes

- [#9211](https://github.com/electron-userland/electron-builder/pull/9211) [`7c7fd6ca`](https://github.com/electron-userland/electron-builder/commit/7c7fd6ca240eda72048835f754adac92c4ab4e8c) Thanks [@FringeNet](https://github.com/FringeNet)! - fix: implement industry-standard cross-origin redirect auth handling

Replace hardcoded service-specific hostname checks with sophisticated cross-origin redirect detection that matches industry standards from Python requests library and Apache HttpClient.

**Key improvements:**

- **Case-insensitive hostname comparison** for robust origin detection
- **HTTP→HTTPS upgrade allowance** on standard ports (80→443) for backward compatibility
- **Proper default port handling** that treats implicit and explicit default ports as equivalent
- **Standards-compliant cross-origin detection** following RFC specifications

**Fixes GitHub issue #9207:** GitHub release asset downloads failing with 403 Forbidden when redirected from `api.github.com` to `release-assets.githubusercontent.com` (Azure backend) or other cloud storage services that don't accept GitHub tokens.

The implementation now handles all cross-origin redirect scenarios while maintaining compatibility with legitimate same-origin redirects and industry-standard HTTP→HTTPS upgrades.

### Patch Changes

- [#9216](https://github.com/electron-userland/electron-builder/pull/9216) [`44b28997`](https://github.com/electron-userland/electron-builder/commit/44b28997f15314730d1bb69303a47dc26f7950d1) Thanks [@taylorhadden](https://github.com/taylorhadden)! - feat(github): Add `tagNamePrefix` option and deprecate `vPrefixedTagName`

## 9.3.3

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/builder-util-runtime/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "builder-util-runtime",
"version": "9.3.3",
"version": "9.4.0",
"main": "out/index.js",
"author": "Vladimir Krivosheev",
"license": "MIT",
Expand Down
2 changes: 1 addition & 1 deletion packages/builder-util-runtime/src/httpExecutor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -354,7 +354,7 @@ Please double check that your authentication token is correct. Due to security r
// Special case: allow http -> https redirect on same host with standard ports
// This matches the behavior of Python requests library for backward compatibility
// url.port returns an empty string if the port is omitted
// or explicitly set to the default port for a given protocol.
// or explicitly set to the default port for a given protocol.
if (
originalUrl.protocol === "http:" &&
// This can be replaced with `!originalUrl.port`, but for the sake of clarity.
Expand Down
4 changes: 2 additions & 2 deletions packages/builder-util-runtime/src/publishOptions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -156,9 +156,9 @@ export function githubTagPrefix(options: GithubOptions) {
return options.tagNamePrefix
}
if (options.vPrefixedTagName ?? true) {
return 'v'
return "v"
}
return ''
return ""
}

/**
Expand Down
9 changes: 9 additions & 0 deletions packages/builder-util/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
# builder-util

## 26.0.20

### Patch Changes

- [#9182](https://github.com/electron-userland/electron-builder/pull/9182) [`c54a0609`](https://github.com/electron-userland/electron-builder/commit/c54a0609753a11d032f87e727eccbab1f6836081) Thanks [@mmaietta](https://github.com/mmaietta)! - fix: scrubbing more aggressively anything in the logs that MIGHT be password affiliated (handling spaces in secrets)

- Updated dependencies [[`44b28997`](https://github.com/electron-userland/electron-builder/commit/44b28997f15314730d1bb69303a47dc26f7950d1), [`7c7fd6ca`](https://github.com/electron-userland/electron-builder/commit/7c7fd6ca240eda72048835f754adac92c4ab4e8c)]:
- builder-util-runtime@9.4.0

## 26.0.19

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/builder-util/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "builder-util",
"version": "26.0.19",
"version": "26.0.20",
"main": "out/util.js",
"author": "Vladimir Krivosheev",
"license": "MIT",
Expand Down
8 changes: 8 additions & 0 deletions packages/dmg-builder/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# dmg-builder

## 26.0.20

### Patch Changes

- Updated dependencies [[`f262a735`](https://github.com/electron-userland/electron-builder/commit/f262a7358dafe189b5d9bf06d7be43478ee35faa), [`44b28997`](https://github.com/electron-userland/electron-builder/commit/44b28997f15314730d1bb69303a47dc26f7950d1), [`3735881f`](https://github.com/electron-userland/electron-builder/commit/3735881f3259d0638d24fadc75809e5ea76114d7), [`49c782cb`](https://github.com/electron-userland/electron-builder/commit/49c782cb838e495f60c4d284df8ab4b56b619da9), [`cf0ac45d`](https://github.com/electron-userland/electron-builder/commit/cf0ac45db79e3e3ff1cef3ad931f7272646d1cb1), [`e9251f47`](https://github.com/electron-userland/electron-builder/commit/e9251f4725f1f7c14c9792f5af8053dde1793d6a), [`c54a0609`](https://github.com/electron-userland/electron-builder/commit/c54a0609753a11d032f87e727eccbab1f6836081), [`b778686f`](https://github.com/electron-userland/electron-builder/commit/b778686fb7f9294ec74bcb9a213a7f311a21357e)]:
- app-builder-lib@26.0.20
- builder-util@26.0.20

## 26.0.19

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/dmg-builder/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "dmg-builder",
"version": "26.0.19",
"version": "26.0.20",
"main": "out/dmgUtil.js",
"author": "Vladimir Krivosheev",
"license": "MIT",
Expand Down
Loading