Skip to content

ci(r): attach webR wasm assets to r/v* GitHub releases - #318

Merged
schloerke merged 1 commit into
mainfrom
schloerke/tag-r-release
Sep 13, 2026
Merged

schloerke merged 1 commit into
mainfrom
schloerke/tag-r-release

Conversation

@schloerke

Copy link
Copy Markdown
Collaborator

Closes #268.

shinylive:::get_github_wasm_assets() is the only path shinylive has for a
GitHub-installed R package: it looks up
/repos/posit-dev/shinyreact/releases/tags/<RemoteRef> and wants
library.data* + library.js.metadata assets on it. This repo has no R
release, so any {shinylive-r} block using shinyreact aborts at render.

release-r-wasm.yaml calls r-wasm/actions' release-file-system-image
reusable workflow on every published r/v* release. It builds a webR
filesystem image of pkg-r/ plus dependencies and uploads the two assets.

Two repo-specific details:

  • The package is in pkg-r/, so packages: local::./pkg-r.
  • The release tag and the ref users install must be the same string:
    pak::pak("posit-dev/shinyreact/pkg-r@r/v0.1.0") records
    RemoteRef: r/v0.1.0. Verified that pak parses a slashed ref and that
    gh::gh() resolves releases/tags/py/v0.1.0 against this repo, so the
    existing r/v prefix convention holds.
  • webr-image is pinned to ghcr.io/r-wasm/webr:v0.6.0 — the webR shinylive
    ships (R 4.6.0). An image built against another R version won't load.

release events only run workflows from the default branch, so this has to
merge before the r/v0.1.0 tag and release are created. That unblocks
schloerke/presentation-2026-09-15-posit-conf-shinyreact#7.

If this turns out to need more work, the tag and release can be deleted and
re-cut.

shinylive's only path for installing a GitHub-hosted R package is a release
tagged with the installed RemoteRef carrying library.data* and
library.js.metadata assets. shinyreact has no such release, so a
{shinylive-r} block using it aborts at render time.

Adds release-r-wasm.yaml, which calls r-wasm/actions'
release-file-system-image reusable workflow on every published r/v* release,
pinned to the webR version shinylive ships (v0.6.0 / R 4.6.0).

Refs #268
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.

Publish a GitHub release with WebAssembly assets so shinylive can install shinyreact

1 participant