Skip to content

ci(release): pre-fetch bootstrap-python so todesktop validates extraResources#506

Merged
Kosinkadink merged 1 commit intomainfrom
fix/build-release-prefetch-bootstrap-python
May 7, 2026
Merged

ci(release): pre-fetch bootstrap-python so todesktop validates extraResources#506
Kosinkadink merged 1 commit intomainfrom
fix/build-release-prefetch-bootstrap-python

Conversation

@Kosinkadink
Copy link
Copy Markdown
Member

Problem

build-release.yml for tag v0.6.0 failed at the Build with ToDesktop step:

ERROR
todesktop.json invalid.
FILE does not exist (.../bootstrap-python/win-x64)
FILE does not exist (.../bootstrap-python/mac-arm64)
FILE does not exist (.../bootstrap-python/linux-x64)

Failed run.

@todesktop/cli@1.22.0 now eagerly validates the platform-specific paths in todesktop.json platformOverrides.*.extraResources before invoking the beforeBuild hook. Our scripts/todesktop-beforeBuild.cjs is the thing that calls fetch-bootstrap-python.mjs to download the bootstrap-python archive for the active platform — by the time it runs, validation has already failed.

The CLI version is unchanged from the v0.5.0 release that worked a month ago, so this is a behavior change shipped server-side or in a non-version-bumped CLI release.

Fix

Run the existing pnpm run bootstrap:fetch script (which calls scripts/fetch-bootstrap-python.mjs for all 3 platforms) right after the ToDesktop CLI is installed, so the directories exist on disk before todesktop build validates the config.

The script already supports being a no-op for any platform whose directory already exists, and uses GITHUB_TOKEN for authenticated downloads to avoid rate limits.

Follow-up

After this merges, the v0.6.0 build needs to be re-triggered. Options:

  • Bump to v0.6.1 via version-bump.yml (cleanest).
  • Or manually workflow_dispatch build-release.yml for tag v0.6.0 after force-moving the tag to the new merge commit (avoid: tag mutation is hostile to consumers).

Recommend the bump.

Amp-Thread-ID: https://ampcode.com/threads/T-019e009a-812e-734e-b371-d5eacf9d34c2

…esources

@todesktop/cli@1.22.0 now eagerly validates the platform-specific
extraResources paths in todesktop.json before invoking the beforeBuild
hook, so the bootstrap-python/{win-x64,mac-arm64,linux-x64} directories
must exist on disk at the time todesktop build runs. Run the existing
fetch-bootstrap-python script (all platforms) right after the CLI is
installed.

Amp-Thread-ID: https://ampcode.com/threads/T-019e009a-812e-734e-b371-d5eacf9d34c2

Co-authored-by: Amp <amp@ampcode.com>
Amp-Thread-ID: https://ampcode.com/threads/T-019e009a-812e-734e-b371-d5eacf9d34c2
@Kosinkadink Kosinkadink merged commit 7531e71 into main May 7, 2026
9 checks passed
@Kosinkadink Kosinkadink deleted the fix/build-release-prefetch-bootstrap-python branch May 7, 2026 06:47
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