Commit Graph

1122 Commits

Author SHA1 Message Date
Sebastian Jeltsch 9e46a099d0 Stop encoding SQL values as generic JSON values (outside the context of the record API), i.e. for admin APIs and between WASM host/guest.
This lets us simplify the parsing and add back a lot of type-safety (including int64). As a side-effect, we basically had to complete reqrite the record insert/update handling in the admin UI.

Note, however, that this is a breaking change, since it touches serialization between WASM guests and host. Guest will need to be built against an updated guest runtime.
2025-10-21 16:40:45 +02:00
Sebastian Jeltsch a94650056f Fix blog for stricter SQL type parsing, i.e. change BOOLEAN to INTEGER. 2025-10-21 16:26:31 +02:00
Bilux c0f896f621 Provide a base64_url_safe modeled based on SQLite's own base64() extension. 2025-10-21 10:18:37 +02:00
Sebastian Jeltsch dc1978ff2e Update Rust dependencies. 2025-10-18 22:17:22 +02:00
Sebastian Jeltsch 605843b1c0 Model parsed column type information more closely after SQLite's. 2025-10-18 00:40:32 +02:00
Sebastian Jeltsch 27eee1c3ea Prepare a new release v0.19.2. v0.19.2 2025-10-14 14:47:57 +02:00
Sebastian Jeltsch 45312e94f4 Update Rust dependencies. 2025-10-14 14:38:57 +02:00
Sebastian Jeltsch fc968b7621 Developer experience: add a hot-reload watcher setup to TS/JS WASM examples. #161
Simply run `npn run dev`.
2025-10-14 14:15:17 +02:00
Sebastian Jeltsch 3bb22fc92b Use winch baseline compiler - instrad of cranelif - for WASM components in --dev mode. #161 2025-10-13 15:45:54 +02:00
Sebastian Jeltsch 940c329770 Update JavaScript dependencies. 2025-10-13 15:45:54 +02:00
Sebastian Jeltsch 89eceb2b84 TS client tests: shuffle messages to ensure we're not just ordering by insertion order. 2025-10-13 15:45:54 +02:00
Brian Hicks 30c72034ea say to use _ROW_ on doc retrieval 2025-10-13 15:32:28 +02:00
Sebastian Jeltsch 82ae590442 Prepare new release v0.19.1. v0.19.1 2025-10-09 21:10:50 +02:00
Sebastian Jeltsch a0101ed2db Dart client test: randomize the lexicograpical message order to make sure we're not just sorting by insertion order. 2025-10-09 21:01:36 +02:00
Sebastian Jeltsch 642931d5b5 Parse large integer values as BigInt and display them correctly in the explorer/table view. 2025-10-09 20:29:13 +02:00
Sebastian Jeltsch 3f01ba5df8 TS client: stringify and parse i64 to BigInt when appropriate. Add tests. 2025-10-09 20:28:52 +02:00
Sebastian Jeltsch e149a065fa Use more column type information when un-parsing query params for filtered record listings. 2025-10-09 14:35:28 +02:00
Sebastian Jeltsch 4cfffe1901 Remove lossy query-parameter (qs) parse to Bool. We really can't now if "TRUE" was meant as a string or a boolean until we look at the data-type.
The `qs::Value::Double(_)` is technically lossy as well put one step at a time.
2025-10-09 13:25:23 +02:00
Sebastian Jeltsch c42d35ca5d Update Rust dependencies. 2025-10-09 12:58:59 +02:00
Sebastian Jeltsch ade42fc261 Prepare new release v0.19.0. Breaking changes: WASM-only and unique filenames in favor of index-based file access. v0.19.0 2025-10-07 21:51:01 +02:00
Sebastian Jeltsch ad5c65c537 Breaking change: remove support for getting files by index. 2025-10-07 21:51:01 +02:00
Sebastian Jeltsch 45b5dd2a7f Update TS client to use filenames instead of index-based files access. 2025-10-07 21:51:01 +02:00
Sebastian Jeltsch 08bcf98e67 Disable V8 runtime by default (custom builds can still enable it) and add a truly static binary release for Linux using MUSL.
Building with MUSL required vendoring sqlite-vec and OpenSSL.

Also clean up no-longer-supported TypeScript guest scripts.
2025-10-07 20:47:28 +02:00
Sebastian Jeltsch 06ed63c896 Prepare new release v0.18.5. v0.18.5 2025-10-07 15:05:33 +02:00
Sebastian Jeltsch 386a75aebc Add an explicit log warning where V8 is still in use. 2025-10-07 14:56:45 +02:00
Sebastian Jeltsch 61ecadc860 Push minimal required Rust version to v1.88. #160 2025-10-07 14:56:40 +02:00
Sebastian Jeltsch 64efae9ff8 Update more docs references to V8 2025-10-07 14:10:50 +02:00
Sebastian Jeltsch 9e766f1646 Use filename rather than index in admin UI when fetching images. 2025-10-07 13:51:33 +02:00
Sebastian Jeltsch 57573d1bc8 Add test for value conversion in subscription filters. #160 2025-10-07 12:25:40 +02:00
Sebastian Jeltsch fff6d78d02 Pre-process filter query to ensure referenced columns exist and filter values can match column values based on type. #160
This is lacking test coverage.
2025-10-07 11:50:49 +02:00
Sebastian Jeltsch fb5577c0f9 Prepare new release v0.18.4. v0.18.4 2025-10-06 22:59:42 +02:00
Sebastian Jeltsch db945733e9 Update Rust and JS dependencies. 2025-10-06 22:53:04 +02:00
Sebastian Jeltsch ba18a1a08a Update all workspace:* references to plain * and set prefer-workspace-packages to make examples more copyable. 2025-10-06 20:39:34 +02:00
Sebastian Jeltsch f9f5f1f7d6 Minor: clean up .dockerignore #159. 2025-10-06 16:47:10 +02:00
Sebastian Jeltsch fa59a49c9c Add more validation to access rules, e.g. ensure that magics like _REQ_, _ROW_, ... are only included in appropriate queries. 2025-10-04 22:28:10 +02:00
Sebastian Jeltsch d6d0534df4 Dart client: make events more match-able and cache/share realtime subscriptions. 2025-10-03 16:25:33 +02:00
Sebastian Jeltsch 7a384f2ca7 Update Rust dependencies. 2025-10-03 13:00:05 +02:00
Sebastian Jeltsch 4548137813 Add kotlin examples to docs. #144 #146 2025-10-03 12:51:12 +02:00
Sebastian Jeltsch 1eca4bdb5e Add plugin and setup for publishing our kotlin client to maven central. 2025-10-02 23:35:16 +02:00
Sebastian Jeltsch dfae76bed5 Make kotlin integration tests "hermetic" and hook 'em up with CI. 2025-10-01 20:24:19 +02:00
Sebastian Jeltsch be3cd2f6f7 Add an initial Kotlin client. #146 #144
Missing:
 * No docs examples yet.
 * No realtime subscriptions yet.

I'm not overly familar with Kotlin, so another set of eyes would be appreciated to converge towards a more idiomatic implementation.
2025-10-01 14:51:38 +02:00
Sebastian Jeltsch 972f6a50af Dart client: test addFilterParams and simplify token constructor. 2025-10-01 14:32:17 +02:00
Sebastian Jeltsch b7a0124d43 Dart client: remove abstractions, questionable APIs and failure modes. 2025-09-30 23:42:04 +02:00
Sebastian Jeltsch c09666f447 Prepare new release v0.18.3. v0.18.3 2025-09-30 18:05:21 +02:00
Sebastian Jeltsch 21ed66fefc Make clippy happy. 2025-09-30 17:27:39 +02:00
Sebastian Jeltsch 362e284d03 Remove WIT thread-id method after changing the execution model. 2025-09-30 17:22:01 +02:00
Sebastian Jeltsch be4e54fb53 Update Rust dependencies. 2025-09-30 16:31:51 +02:00
Sebastian Jeltsch 33a770d4ea Change WASM execution model from a per-component executor to a shared executor.
Previously, we were aiming for a simple non-Send parallel execution model to minimize overhead. However, wanting to allow many components, the isolation may become prohibitive. Now use a dedicated but shared Tokio runtime with `--runtime-threads` parallelism. This means WASM tasks, i.e. continuuations, are sent between threads. Naively, we would expect that work-stealing and higher utilization, will benefit most workloads.
2025-09-30 13:07:29 +02:00
Sebastian Jeltsch 3740d7da1f Prepare new release v0.18.2. v0.18.2 2025-09-29 12:57:13 +02:00
Sebastian Jeltsch 29c376564d Update Rust dependencies. 2025-09-29 12:49:44 +02:00