Skip to content

Update to Roc nightly-2026-10-03-c507926 - #503

Open
Anton-4-bot wants to merge 1 commit into
roc-lang:mainfrom
Anton-4-bot:update/roc-nightly-2026-10-03
Open

Anton-4-bot wants to merge 1 commit into
roc-lang:mainfrom
Anton-4-bot:update/roc-nightly-2026-10-03

Conversation

@Anton-4-bot

Copy link
Copy Markdown

Adapts the platform and its tooling to the compiler changes in nightly-2026-10-03-c507926.

  • Remove redundant type exposes (import IOErr exposing [IOErr]), which are now an error.
  • scripts/bundle.py lists main.roc first. roc bundle uses the first .roc file as the entry point and now reports its diagnostics, so the alphabetical order made Cmd.roc the entry point and bundling failed.
  • Bundling from the platform entry point now checks that every declared target input exists. scripts/bundle.py --stub-missing-targets (used only by scripts/test.py) creates empty placeholders for targets that were not built and removes them afterwards, so test bundles that only build the native target keep working. Release bundles still need every real target.
  • Apply the new formatter output.
  • Bump the nightly pin in the CI workflows.

The Nix pins (flake.nix, nix/release.nix) stay on nightly-2026-09-26-d6267b4 because roc-overlay does not publish this nightly yet.

Tested on macOS arm64: scripts/test.py --operation all, scripts/test.py --operation validate and the release tooling unit tests.

🤖 Generated with Claude Code

Adapt the platform and its tooling to the compiler changes in this nightly:

- Remove redundant type exposes such as `import IOErr exposing [IOErr]`,
  which are now an error: `redundant expose ... The type IOErr is
  automatically exposed when importing a type module.`
- List main.roc first when bundling. `roc bundle` treats the first .roc file
  as the entry point and now reports its diagnostics, so the previous
  alphabetical order made Cmd.roc the entry and failed with `reference has no
  value` and `This Header type is declared to be in http.Header, which does
  not exist.`
- Bundling the platform entry point now checks that every declared target
  input exists (`The targets section declares file libhost.a for target
  x64mac but this file doesn't exist.`). Add `--stub-missing-targets` to
  scripts/bundle.py, used only by test.py, so test bundles that only build the
  native target still work. Release bundles still require every real target.
- Apply the new formatter output to platform and examples.
- Bump the nightly pin in the CI workflows. The Nix pins stay on
  2026-09-26 until roc-overlay publishes this nightly.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
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