Skip to content

Require precompiled Rust modules in smoketest construction - #5925

Open
pederbe wants to merge 1 commit into
clockworklabs:masterfrom
pederbe:learn/5653-precompiled-smoketests
Open

pederbe wants to merge 1 commit into
clockworklabs:masterfrom
pederbe:learn/5653-precompiled-smoketests

Conversation

@pederbe

@pederbe pederbe commented Sep 10, 2026

Copy link
Copy Markdown

Description of Changes

Use precompiled fixtures for ordinary Rust smoketests, including the default noop module and column-default migrations. The HTTP tutorial fixture compiles Rust blocks directly from the documentation during warmup.

Remove the source-string constructor and runtime Rust publish fallback. Build-diagnostic tests use a separate helper that invokes spacetime build without starting a server. The namespace-collision test now requires the specific compilation diagnostic instead of accepting any publish failure.

Fixes #5653.

API and ABI breaking changes

Removes source-based helpers from the internal smoketest harness. Product APIs and ABIs are unaffected.

Rollback safety impact

n/a

Expected complexity level and risk

2/5. The changes affect test setup, fixture compilation, and build-diagnostic coverage.

Testing

Validated on Linux with Rust 1.93.0 and freshly built CLI/standalone binaries:

  • Built the complete precompiled module workspace.
  • Passed 3 harness unit tests, 5 focused module/default/tutorial tests, and 3 build-diagnostic tests.
  • Broader migration, view, SQL, and HTTP run: 47 passed; 5 could not run because .NET or pnpm was unavailable.
  • Passed all-target smoketest Clippy with warnings denied and formatting checks for both workspaces.
  • Verified tutorial extraction with LF/CRLF, missing and unterminated code blocks, rebuild after documentation edits, and compilation failure for invalid tutorial Rust. Restored the document and verified the original WASM output.

@CLAassistant

CLAassistant commented Sep 10, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@pederbe
pederbe marked this pull request as ready for review September 10, 2026 18:21
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.

Smoketests: remove interface for using a module source string; always require a precompiled module

2 participants