Skip to content

Prepare for the 5.1.5 release - #47

Merged
aborovsky merged 6 commits into
masterfrom
develop
Oct 6, 2026
Merged

aborovsky merged 6 commits into
masterfrom
develop

Conversation

@aborovsky

Copy link
Copy Markdown
Collaborator

No description provided.

aborovsky and others added 6 commits October 6, 2026 16:12
The Windows source build pulls some vcpkg dependencies (notably the gsasl
port -> gsasl-<ver>.tar.gz) only from the GNU FTP network (ftpmirror.gnu.org
/ ftp.gnu.org). That network is intermittently unreachable; when it times out
the native build fails with 'Download failed, halting portfile'.

Set X_VCPKG_ASSET_SOURCES to an x-script asset provider that redirects
GNU-FTP asset URLs to a reachable GNU mirror (mirrors.kernel.org, overridable
via NODE_LIBCURL_GNU_MIRROR) and falls back to the original URL for every
other asset. The value is appended to any X_VCPKG_ASSET_SOURCES the consumer
already set, so their asset cache keeps precedence. vcpkg still verifies each
asset's SHA512, so the mirror swap cannot substitute a different file.

The helper uses only native Node.js modules and is a no-op on non-Windows
(the source build only runs on Windows).
vcpkg launches the x-script asset command with CreateProcessW (no shell) in
its own build environment, where PATH is reset. A bare `node` program token
therefore isn't found and the download fails with 'CreateProcessW failed with
2', so vcpkg falls back to the unreachable GNU-FTP origin and times out.

Use process.execPath (the absolute path to the running Node) as the program
token instead of `node`, keeping both the interpreter and script paths
quoted for spaces.
fix(install): fall back to a GNU mirror for vcpkg asset downloads
@aborovsky aborovsky self-assigned this Oct 6, 2026
@aborovsky
aborovsky merged commit b5a46ed into master Oct 6, 2026
42 of 44 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant