Skip to content

Release v7.1.0 - #62

Merged
mikebarkmin merged 1 commit into
mainfrom
changeset
Oct 28, 2026
Merged

mikebarkmin merged 1 commit into
mainfrom
changeset

Conversation

@github-actions

Copy link
Copy Markdown

Games can run in a web page. The core (scratch) no longer depends on LWJGL: the window,
OpenGL, sound and image decoding come from a platform module. scratch-desktop is the desktop
one (LWJGL, as before) and scratch-web the browser one: org.openpatch.scratch.web.export.WebExport
compiles a game and the library to WebAssembly with TeaVM and writes a page that runs it.
The fat jar (scratch-<version>-all.jar) contains the core and scratch-desktop, so programs that
use it change nothing. Maven projects that depend on scratch alone now also need scratch-desktop.
Text is drawn by a Java port of stb_truetype, pixel for pixel as before, on every platform.
Tiled maps work in a web page too: scratch-tiled reads .tmx and .tsx files itself and no longer
depends on Jackson (maps load exactly as before; checked on 78 maps and tilesets). TiledMap.spawn
takes the sprite classes it may make, map.spawn("Objects", Player.class, Wall.class), instead of
looking classes up by the type names in the map, which a web page cannot do. NRW projects get
their own web jar, scratch-<version>-nrw-web.jar.
Saving needs no Jackson either: SaveData and File read and write JSON themselves (the same
rules as before: public fields, unknown or mistyped values are refused by SaveData). In a web
page, saves are kept in the browser's storage for that page. File.saveXML, File.loadXML and
File.loadXMLOrCreate are gone: use File.save and File.load (JSON). The web jar contains every
extension but gamepad.

Compatibility artifacts and catalogs are prepared for 7.1.0. Before merging, review the browser policy and synchronize openpatch/online-ide from this release branch:

scripts/sync-online-ide.sh /path/to/online-ide

The script also verifies the checkout. Commit and push the browser updates in online-ide and run its browser compatibility tests (npm run test:browser) before merging this PR. RELEASING.md has the full cross-repository runbook.

@mikebarkmin
mikebarkmin merged commit 7fa696e into main Oct 28, 2026
@github-actions
github-actions Bot deleted the changeset branch October 28, 2026 07:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant