Skip to content

Releases: bytecodealliance/componentize-py

canary

03 Feb 17:41
79e98c3

Choose a tag to compare

canary Pre-release
Pre-release
feat: add SQLite3 support to CPython WASI build (#195)

* Add SQLite3 support to CPython WASI build

Downloads and builds SQLite 3.51.2 as a static library, then links it into
libpython3.14.so. The _sqlite3 module is enabled via Modules/Setup.local.

WASI-specific SQLite configuration:
- SQLITE_OMIT_WAL (no mmap in WASI preview1)
- SQLITE_OMIT_LOAD_EXTENSION (no dlopen)
- SQLITE_THREADSAFE=0 (single-threaded WASM)

Adds ~500KB to libpython3.14.so.zst (7.3MB → 7.8MB).

* fix: use Path::to_str instead of display for compiler paths

Path::display() does a lossy conversion which can cause subtle,
hard-to-diagnose failures when passing paths to compiler commands.
Use to_str() with explicit error handling instead, as suggested
in PR review.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Use Path::to_str throughout build.rs

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>