Skip to content

fix(asset-canister): bump sync plugin to v2.2.1#29

Merged
lwshang merged 1 commit into
mainfrom
bump-sync-plugin-v2.2.1
Jun 7, 2026
Merged

fix(asset-canister): bump sync plugin to v2.2.1#29
lwshang merged 1 commit into
mainfrom
bump-sync-plugin-v2.2.1

Conversation

@lwshang

@lwshang lwshang commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

Bumps the asset-canister recipe's sync plugin to the new migration-v2.2.1-6b48585 release on dfinity/certified-assets.

Why

A user reported that icp deploy failed during sync when the recipe's dir was a nested path such as src/frontend/dist:

failed to run plugin
  caused by: plugin returned error: canonicalize src/frontend/dist: No such file or directory (os error 44)

The v2.2.0 plugin called canonicalize during its scan step. Under WASI that calls realpath, which returns ENOENT for any path beneath a preopened directory whose guest name has more than one component (e.g. src/frontend/dist) — even though ordinary access works. Single-component dirs like dist happened to work, which is why our examples didn't catch it. The v2.2.1 plugin drops canonicalize; fix + regression test in dfinity/certified-assets#71.

Change

Only recipes/asset-canister/recipe.hbs — the plugin url + sha256:

old (v2.2.0) new (v2.2.1)
url …/migration-v2.2.0-209d688/sync_plugin.wasm …/migration-v2.2.1-6b48585/sync_plugin.wasm
sha256 297c2ef0… ca7cb566…

The canister wasm is unchanged (still the legacy dfx assetstorage canister), so this is a drop-in patch bump for existing users.

Releasing

After merge, push the asset-canister-v2.2.1 tag to trigger release-recipe.yml and publish the recipe release.

Ref: https://forum.dfinity.org/t/icp-cli-announcements-and-feedback-discussion/60410/97

Point the sync step at the new migration-v2.2.1-6b48585 plugin release on
dfinity/certified-assets. The new plugin fixes a sync failure when the
recipe's `dir` is a nested path (e.g. `src/frontend/dist`): the previous
plugin called `canonicalize`, which under WASI returns ENOENT for any path
beneath a preopened dir whose guest name has more than one component, even
though plain access works. Single-component dirs like `dist` were unaffected.

Canister wasm is unchanged (still the legacy dfx assetstorage canister).

- URL:    https://github.com/dfinity/certified-assets/releases/download/migration-v2.2.1-6b48585/sync_plugin.wasm
- sha256: ca7cb5666c30d2875f8d5e10535f8a53f97a86c79c263f7d5bdac2fdd1bbf83c

Plugin fix: dfinity/certified-assets#71
Reported:  https://forum.dfinity.org/t/icp-cli-announcements-and-feedback-discussion/60410/97
@lwshang lwshang requested a review from a team as a code owner June 7, 2026 13:30
@lwshang lwshang enabled auto-merge (squash) June 7, 2026 13:32
@lwshang lwshang merged commit 6a80115 into main Jun 7, 2026
5 checks passed
@lwshang lwshang deleted the bump-sync-plugin-v2.2.1 branch June 7, 2026 13:33
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.

2 participants