Skip to content

FormLogic v0.1.15

Choose a tag to compare

@github-actions github-actions released this 30 Oct 04:08
· 186 commits to main since this release

Before you update

  • This release installs SoftN v0.0.28 (ZIPP v0.0.32, as before: no sandbox rebuild). Its app frame needs this FormLogic's checks: a FormLogic before v0.1.15 runs the new frame, but its test:zipp-sharing check refuses the frame's connect-src data:.
  • Nothing to migrate. Native app data, keys and backups are untouched.

What's new

Hosting SoftN apps

  • Apps open with their seed data. The .xdb files a SoftN app ships with are added to each visitor's copy before the app first draws: once per record, never over the visitor's own, and a removed seed stays removed. A collection too large for browser storage (about 30,000 characters) is skipped with a console warning, and the app opens with the rest.
  • More media: video (MP4, WebM), more sound and picture formats, TrueType/OpenType fonts, 3D models (glTF, GLB, OBJ, STL, FBX) and WGSL shaders, text and Markdown can be uploaded with an app. The browser and the server check the same list, and a test keeps them together.
  • Apps without a backend need no runtime on the server: they install, publish and restore (including from account backups) where the native runtime is not prepared, and the hosting panels no longer warn about it for them.
  • A native app's helper logic reaches its backend (it got the browser's fetch before the entry file's bridge ran), methods like post work, and a request's Idempotency-Key reaches the app's handler, so a retried write can be told from a second one. A write that commits late is no longer reported to the app as failed.
  • Request bodies keep {} and [] apart, both ways. A burst of requests waits briefly for a free runner instead of being answered busy.
  • Saves to an app's browser storage no longer count against its four backend calls, so a busy screen's saves aren't refused.
  • "The app could not load" shows only when the app did not open, not over a running app that hit an error inside it.
  • An app that dropped its manifest id in a later version restores with its keys; a version without a server block can't replace a backend whose migrations have run (it says why); an apiVersion written 1.0 and file names with .. are refused as you choose the file, as the server refuses them.

Creating apps

  • Create app now asks what you want to make: Forms & data, Website or web app (AI, the visual starter, or a file), or Bring an app you have (/apps/new?type=upload: drop the .softn file, the name is optional). On phones the choices are compact rows.
  • The starter app's button uses @click, so the Visual Builder opens it without a warning.
  • On phones the Apps header no longer cuts its title to "A…".

Tested with

SoftN v0.0.28 (ZIPP v0.0.32), OAIY CLI v0.1.10. CI and the end-to-end suite are green, including new end-to-end checks for seeded apps (40 records, reopened without duplicates) and an oversized seed.