Commit Graph

1105 Commits

Author SHA1 Message Date
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
Sebastian Jeltsch 80a90c5062 Streamline filter query parsing and allow $and/$or sequences of length >= 1. 2025-09-29 12:48:54 +02:00
Shiv Kokroo 02915446e5 Fix multiple filters on the same column. #158
Previously, applying multiple filters to the same column (e.g., $gte and $lte for date ranges) would fail because the filter parsing logic only handled single operators per column. This commit modifies the filter parsing to detect when multiple operators are applied to the same column and automatically converts them into an AND composite filter.

This enables common use cases like filtering records within a date range:
- filter[date][$gte]=2025-01-01&filter[date][$lte]=2025-12-31

The fix is applied to parsing paths in filter.rs and includes a test to verify the behavior.
2025-09-29 11:15:54 +02:00
Sebastian Jeltsch 56c78c2ad8 Add support for record-filtered subscriptions to dotnet client. 2025-09-27 10:46:37 +02:00
Sebastian Jeltsch 280ec8c5df Prepare new release of TS client: v0.7.4. 2025-09-27 01:10:11 +02:00
Sebastian Jeltsch 171be0805f Update dart client to use http instead of dio and prepare new release v0.5.0. 2025-09-27 01:08:01 +02:00
Sebastian Jeltsch 42ea051772 Update blog example's JSON schemas and generated types after changing FileUpload. Also update dart/Flutter dependencies. 2025-09-26 22:05:06 +02:00
Sebastian Jeltsch 0c2c59537f Restore ability of APIs to deal with STRICT tables weilding ANY columns. 2025-09-26 21:36:06 +02:00
Sebastian Jeltsch 21b7a2e566 Add support for record-filters to realtime subscriptions in Dart client. 2025-09-26 17:58:58 +02:00
Sebastian Jeltsch 7b52aec71c Prepare new release v0.18.1. v0.18.1 2025-09-26 14:19:23 +02:00
Sebastian Jeltsch 45c5a3c375 Update Rust dependencies. 2025-09-26 14:19:23 +02:00
Sebastian Jeltsch d94f491b81 Create a new unique filename for uploads {stem}_{rand#10}.{ext} in accordance with e.g. vite or PB. Use this as the primary way of accessing files. Having a filename extension may be useful for some consumers and having a unique name helps with content-caching strategies. #155
Also strip/hide uuid. Not really secret but we don't want folks to rely on it over the unique filename.
2025-09-26 14:19:18 +02:00
Sebastian Jeltsch b930ad4070 Support SQL LIKE in subscription filters and comparing real to integer. 2025-09-26 09:56:16 +02:00
Sebastian Jeltsch da5cee0fd5 Add subscription filter support to ts-client. 2025-09-25 23:45:13 +02:00
Sebastian Jeltsch 2b9ca865a3 Allow specifying ?filter= query params on record table subscriptions for per-subscription filtering. 2025-09-25 23:26:55 +02:00
Sebastian Jeltsch 353b913fe3 Update JavaScript dependencies. Fixes #157. 2025-09-25 23:16:04 +02:00
Sebastian Jeltsch ca5d257182 Forward v8 feature to CLI. 2025-09-25 23:01:18 +02:00
Sebastian Jeltsch 6caf4e1a91 Clean up runner image before run. We started to run out of disk space. 2025-09-25 18:46:55 +02:00