Skip to content

feat(wasix): add streaming tools and local servers - #149

Merged
f0rr0 merged 4 commits into
f0rr0/wasix-sdk-clean-breakfrom
f0rr0/server-tools-parity
Aug 24, 2026
Merged

feat(wasix): add streaming tools and local servers#149
f0rr0 merged 4 commits into
f0rr0/wasix-sdk-clean-breakfrom
f0rr0/server-tools-parity

Conversation

@f0rr0

@f0rr0 f0rr0 commented Aug 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • add bounded PostgreSQL protocol streaming to WASIX TypeScript in direct and worker placements while retaining the buffered raw-protocol path
  • add optional WASIX pg_dump/psql asset and facade packages with PostgreSQL-native plain/COPY semantics and structured failures
  • add one shared Node-compatible local server implementation with explicit Node, Bun, and Deno entry points
  • consolidate WASIX Rust tools around one bounded virtual transport and stdin/stdout runner
  • align native desktop server/tool terminology, shared semantic fixtures, package metadata, examples, API inventories, and documentation

Design

  • protocol streaming is an internal transport primitive with fixed bounded buffers and backpressure, not a configurable product feature
  • tools remain separate from core database handles and preserve standard PostgreSQL dump output
  • browser tools use the worker-backed virtual pgwire path; server endpoints exist only on hosts with TCP or Unix sockets
  • compatibility servers accept one complete connection at a time and do not multiplex PostgreSQL messages
  • the concurrent WASIX postmaster remains a separate product
  • no cancellation emulation, typed COPY API, pg_restore, remote/TLS modes, concurrency knobs, storage interoperability, or mobile/browser server placeholders are added

Validation

  • repository formatting and diff checks
  • complete release policy and publication-contract check
  • committed asset verification
  • extension model verification
  • workflow security, actionlint, zizmor, and workflow behavior checks
  • SDK contracts and package checks for TypeScript, Rust, WASIX Rust, WASIX TypeScript, and WASIX tools
  • WASIX Rust release/package validation and shared-fixture pg_dump to psql round trip
  • browser source/package smoke tests
  • Node, Bun, and Deno TCP/Unix server smokes, including large COPY streams, connection rejection, transaction recovery, and SSL/GSS refusal

Local platform limitations: Swift is not installed and the Android SDK is unavailable on this runner, so Swift, Kotlin Android, and dependent React Native package lanes are left to hosted CI. Native Rust runtime-gated tests also require generated native runtime artifacts; its 108 ordinary SDK tests and package checks passed.

@vercel

vercel Bot commented Aug 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
oliphaunt-docs Skipped Skipped Aug 24, 2026 10:03am

@f0rr0
f0rr0 merged commit 57e3c0a into f0rr0/wasix-sdk-clean-break Aug 24, 2026
5 of 55 checks passed
@f0rr0
f0rr0 deleted the f0rr0/server-tools-parity branch August 24, 2026 10:06
f0rr0 added a commit that referenced this pull request Aug 25, 2026
* feat(wasix): add streaming tools and local servers

* fix(ci): align split tools package validation

* fix(ci): align native tools consumer validation

* fix(wasix): prioritize browser asset descriptors
f0rr0 added a commit that referenced this pull request Aug 26, 2026
* feat(sdk): add portable WASIX storage and extensions

* feat(wasix): add direct browser execution and PGlite benchmarks (#131)

* perf(wasix): benchmark and optimize browser queries

* feat(wasix): add direct browser execution

* feat(wasix): complete Node.js support (#133)

* feat(wasix): complete Node.js support

* perf(wasix): remove redundant Node worker hop

* perf(wasix): qualify browser benchmarks (#134)

* feat(wasix): support direct Node execution (#135)

* fix(wasix): harden portable SDK contracts

* feat(wasix): add PostgreSQL postmaster research runtime

* docs(wasix): add node bulk insert perf findings (#138)

* feat(wasix): add first-class Bun and Deno support (#139)

* feat(wasix): add first-class Bun and Deno support

* feat(release)!: remove JSR publication

* feat(wasix): promote postmaster to release product (#140)

* feat(wasix): promote postmaster to release product

* fix(ci): honor postmaster task dependencies

* fix(wasix): harden postmaster release qualification

* fix(ci): isolate bun release test processes

* fix(ci): repair postmaster release qualification

* fix(ci): make postmaster macOS qualification portable

* fix(wasix): align postmaster release artifact workflow

* refactor: simplify extension and release metadata (#141)

* perf(wasix)!: unify storage and optimize host shims (#142)

Batch transaction persistence, add incremental OPFS and IndexedDB storage, align Rust WASIX memory semantics, and reduce clock and strong-random host crossings.

BREAKING CHANGE: Rust WASIX removes temporary/application-data storage variants, and browser IndexedDB uses the new per-database v3 layout without migrating prior generations.

* fix(ci): restore cross-platform WASIX qualification

* perf(wasix)!: unify direct runtime fast paths (#143)

* feat!: unify SDK and WASIX storage contracts (#148)

* feat!: unify SDK and WASIX storage contracts

Establish the clean-break managed-root and physical archive contracts across native SDKs and WASIX bindings. Remove obsolete compatibility, runtime-profile, instrumentation, and packaging surfaces while aligning public APIs, fixtures, qualification, and documentation.

* fix!: align SDK storage and PostgreSQL contracts

* fix: defer Node ABI check without local headers

* fix: resolve cross-platform SDK CI failures

* fix: resolve remaining cross-platform CI failures

* fix: complete SDK parity cleanup and CI hardening

* fix: resolve remaining SDK and policy CI failures

* fix: resolve remaining CI failures

* fix(kotlin): align metadata package check

* fix(ci): resolve cross-platform artifact failures

* fix(ci): harden cross-platform SDK qualification

* test(swift): respect platform bundle discovery

* fix(ci): enforce staged release candidates

* fix: complete SDK and WASIX contract hardening

* fix(ci): harden release candidate qualification

* fix(wasix): preserve futex wakes during exec reattach

* fix(ci): stabilize runtime and SDK qualification

* fix(react-native): stabilize installed mobile e2e

* fix: harden native mobile release qualification

* perf(wasix): add direct OPFS storage fast path (#144)

* perf(wasix): add direct OPFS storage fast path

* fix(wasix): harden direct OPFS persistence

* feat(wasix): add streaming tools and local servers (#149)

* feat(wasix): add streaming tools and local servers

* fix(ci): align split tools package validation

* fix(ci): align native tools consumer validation

* fix(wasix): prioritize browser asset descriptors

* feat(tools): align native and WASIX PostgreSQL tooling (#151)

* perf(wasix): add quick streaming benchmark

* feat(tools): align native and WASIX PostgreSQL tooling

* fix(ci): repair cross-platform WASIX qualification

* fix(wasix): preserve inode handles through fd publication

* feat(runtime): complete cluster seeds and ICU closures (#150)

* feat(runtime): add cluster seeds and ICU closures

* fix(runtime): complete cluster seed and ICU closures

* style(kotlin): apply SDK formatting

* fix(runtime): close hosted cluster seed failures

* fix(ci): repair cross-platform release paths

* fix(wasix): decode sealed concurrency contract

* fix(native): make cluster seed probe encoding-safe

* fix(ci): harden native runtime qualification

* fix(ci): repair release qualification contracts

* fix(wasix): align rebased runtime fixtures

* fix(wasix): reconcile cluster seed metadata

* fix: resolve cross-platform CI regressions

* fix: repair iOS and postmaster qualification
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