Skip to content

release: grow the stub lists with MiniScript and Forth - #3009

Merged
nesbox merged 2 commits into
mainfrom
release-langs-forth-miniscript
Sep 18, 2026
Merged

nesbox merged 2 commits into
mainfrom
release-langs-forth-miniscript

Conversation

@nesbox

@nesbox nesbox commented Sep 18, 2026

Copy link
Copy Markdown
Owner

MiniScript (#2992) and Forth (#2947) compile into every build — CI proved that on both merges — but the lists that drive the per-language export stubs still stopped at the old twelve. Until they grow, a cart written in either language has no stub to export against, so this has to land before the next release.

What it touches:

  • the six langs=(...) arrays in build.yml, one per platform job that builds stubs, and the duplicate check right after them (tic80{lua,...,python}.wasm — the run fails if any two stubs are byte-identical, which is what catches a language flag that did not take);
  • STUB_LANGS in bin/release/package.sh, which is what puts the stubs into the release assets;
  • LANGS in bin/release/check-export-stubs.sh, the script that drives a real PRO client through every export path against a deployed site.

The name in all of them is miniscript and forth, which is what each script's tic_script.name carries and what the client appends to the system in its export URL (/export/<tag>/<system><name>).

Proof is a manual dispatch with stubs: true, not a reading: the job's own guard prints how many stubs it checked and fails on duplicates.

Left out of this pass, deliberately: the help version table (cmake/runtime_versions.cmake, runtime_versions.h.in, the console's language list). Neither runtime exposes a version string in a place the CMake gather can read, so that wants its own small look; without it the two languages are simply absent from that output.

🤖 Generated with Claude Code

nesbox and others added 2 commits September 18, 2026 19:37
MiniScript and Forth compile into every build, but the lists that drive the
per-language export stubs still stopped at the old twelve, so a cart in either
language had no stub to export against. This adds both to the six arrays in
build.yml and the duplicate check beside them, to STUB_LANGS in package.sh, and
to LANGS in check-export-stubs.sh.

The run that proves it is a manual dispatch with stubs: true, whose own guard
prints how many stubs it checked and fails if any two are identical.

Co-Authored-By: Claude Code <noreply@anthropic.com>
The dispatch run proved the two new stubs build — tic80forth links, and the wasm
job checked fourteen — and then five jobs failed on a guard that still expected
twelve files. The guard now compares against ${#langs[@]}, the same array it is
checking, so the next language cannot leave this behind either.
@nesbox
nesbox merged commit ed331da into main Sep 18, 2026
22 checks passed
@nesbox
nesbox deleted the release-langs-forth-miniscript branch September 18, 2026 18:54
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