|
|
Donner SVG 0.8.0-pre
SVG editor and embeddable C++20 engine.
|
Status: In Progress Author: GPT-5 Created: 2026-07-10 Revised: 2026-07-28
The web editor ships one Geode WebGPU binary. The earlier dual-renderer package and runtime software fallback are retired. An editor Wasm build with any renderer other than Geode fails during Bazel analysis, before compilation or packaging. This keeps renderer behavior, texture ownership, thumbnails, browser verification, and release provenance on one implementation.
The pthread build still requires HTTPS plus cross-origin isolation. Header-capable hosts provide COOP and COEP directly; secure static hosts may establish the same policy with the packaged service worker.
The package is flat and has one runtime:
The packaged selector publishes geode with the package root as its asset base. There is no runtime renderer query, alternate binary directory, or backend fallback. The editor binary always links the browser WebGPU bridge and Geode runtime options. editor_wasm_geode_only_guard reads the editor-Wasm enable flag and renderer build setting; it fails analysis unless the renderer is geode.
Layers panel thumbnails use Geode texture snapshots. They do not read back a CPU bitmap and upload it again. A thumbnail pass may use the current canvas presentation version as proof that the same document version is safe to render even while the document retains render invalidation. Older presentation versions remain blocked.
SVG, XML, CSS, and font inputs remain untrusted. Document fonts use the full text tier's length-aware FreeType decoder rather than entering the compact backend's length-unaware parser. The package contains one executable renderer and no runtime selector. The service worker remains restricted to the editor origin and only establishes the isolation headers required by pthreads.
CI builds one immutable Geode candidate and records its source revision, package files, hashes, dependency lock hash, Bazel config, and target. Promotion uses that candidate without rebuilding. Browsers without required WebGPU support receive a clear capability failure. Rollback reactivates a previously reviewed candidate.