Commit Graph

144 Commits

Author SHA1 Message Date
Sebastian Jeltsch
6887fdfdfa Cache auth queries + small opportunistic cleanups. 2024-12-17 11:16:40 +01:00
Sebastian Jeltsch
be85b5186b Update Rust dependencies. 2024-12-17 00:17:13 +01:00
Sebastian Jeltsch
18d1d87710 Add a hooks API to trailbase_sqlite::Connection. 2024-12-16 17:07:17 +01:00
Sebastian Jeltsch
746f0c1108 Make connection constructor synchronous. 2024-12-16 17:00:51 +01:00
Sebastian Jeltsch
4894cc0bb0 Minor: move Row/Rows into a separate file. 2024-12-16 17:00:47 +01:00
Sebastian Jeltsch
51a6af3149 Remove sqlite-loadable and use rusqlite functions instead. 2024-12-16 16:41:52 +01:00
Sebastian Jeltsch
bd857aa2b1 Offer a sync RecordApi::check_record_level_access. 2024-12-14 12:33:10 +01:00
Sebastian Jeltsch
b8f873642c Remove workaround for broken protobuf-compiler package. 2024-12-14 10:13:06 +01:00
Sebastian Jeltsch
74c69df14a Escape SQL queries more consistently following ISO as opposed to MSSQL compat style: []. 2024-12-13 11:00:27 +01:00
Sebastian Jeltsch
54ea61788a Surface command not found in build.rs, provide readable error for missing pnpm, and drop --frozen-lockfile. 2024-12-13 10:03:50 +01:00
Sebastian Jeltsch
86ac59b356 Update Rust deps (remove idna). 2024-12-12 17:04:51 +01:00
Sebastian Jeltsch
15fba9359e Fail all trailbase-core builds if a UI build fails unless SKIP_ERROR is set. 2024-12-12 09:35:33 +01:00
Sebastian Jeltsch
af115d03f8 Update JS dependencies. 2024-12-11 22:05:40 +01:00
Sebastian Jeltsch
bdab976aa7 Update dependencies. 2024-12-10 12:49:28 +01:00
Sebastian Jeltsch
a675d09b1f Remove unused conn.call_and_forget function. 2024-12-09 21:43:30 +01:00
Sebastian Jeltsch
38b60b34c9 Make dotnet client AOT compatible. 2024-12-09 14:38:01 +01:00
Sebastian Jeltsch
4595b72010 Link all submodules using web URL rather than SSH to avoid users needing to register their SSH keys first. 2024-12-08 21:36:43 +01:00
Sebastian Jeltsch
03da541e14 Fix typo in NPM packages repository link. 2024-12-08 21:13:22 +01:00
Sebastian Jeltsch
fde7f4bfb0 Make sure that all clients encode special url characters correctly across all client libraries.
Drive-by: make their READMEs consistent again.
2024-12-08 11:28:44 +01:00
Sebastian Jeltsch
be6cd1e811 Minor: Update project README to make instructions for windows users more clear. 2024-12-08 11:28:44 +01:00
Sebastian Jeltsch
6071025fca Run CI also on the dev branch. 2024-12-08 11:27:48 +01:00
Sebastian Jeltsch
711536c12c Use URLSearchParams for params construction and fix filter splitting in JS. 2024-12-08 00:50:04 +01:00
Sebastian Jeltsch
fff83ea810 Prepare release v0.3.1. v0.3.1 2024-12-07 22:28:10 +01:00
Sebastian Jeltsch
12cbca7e1a Update Rust dependencies. 2024-12-07 21:55:34 +01:00
Sebastian Jeltsch
91d9db6223 Wire up request type in logging. 2024-12-07 20:49:17 +01:00
Sebastian Jeltsch
765401af35 Trigger sqlite log writes on a specific span. 2024-12-07 13:38:44 +01:00
Sebastian Jeltsch
b8be749244 Fix client-ip logging and add a test. 2024-12-06 22:44:42 +01:00
Sebastian Jeltsch
26207b380b Update out-of-sync lock file. 2024-12-06 21:35:54 +01:00
Sebastian Jeltsch
94ac2af4a6 Update javascript dependencies. Note that starlight does not yet support astrojs v5. 2024-12-06 20:29:38 +01:00
Sebastian Jeltsch
99e619cb96 Fix SQL injection vulnerability in tutorial app. Thanks jddj and chrismorgan for pointing it out. 2024-12-06 13:26:24 +01:00
vladislav doster
86aad1b583 docs: grammar & punctuation fixes (#8)
* docs(faq): add missing preposition

* docs(philosophy): grammar & punctuation fixes

Signed-off-by: Vladislav Doster <mvdoster@gmail.com>

---------

Signed-off-by: Vladislav Doster <mvdoster@gmail.com>
2024-12-06 13:01:07 +01:00
Sebastian Jeltsch
05f4dea774 Update minor versions of JS dependencies. v0.3.0 2024-12-05 23:05:32 +01:00
Sebastian Jeltsch
8b2f535344 Update Rust dependencies. 2024-12-05 22:39:40 +01:00
Sebastian Jeltsch
fb0fe373f5 Remove query apis and improve docs in preparation for v3.0.
More context in the CHANGELOG.
2024-12-05 22:17:47 +01:00
Sebastian Jeltsch
996bc27788 Update performance measurements and benchmark article post SQLite execution model changes. 2024-12-05 22:05:00 +01:00
Sebastian Jeltsch
38e0580fdc Further reduce logging overhead: use dedicated writer task and most importantly box the logs to reduce the memory growth of the channels. 2024-12-05 15:47:50 +01:00
Sebastian Jeltsch
93a9ebc089 Implement batch log inserts via stealing. 2024-12-05 12:09:06 +01:00
Sebastian Jeltsch
03d918cd94 Remove unused code. 2024-12-05 10:10:43 +01:00
Sebastian Jeltsch
0f1b2ef7d5 Do not initialize v8 when number of workers is zero. Plus some minor cleanups. 2024-12-05 09:41:44 +01:00
Sebastian Jeltsch
3dcae4443e Minor: simplify logging some more and log js-runtime thread errors. 2024-12-05 09:16:01 +01:00
Sebastian Jeltsch
7730faf883 Minor: streamline logs layer. 2024-12-05 00:22:13 +01:00
Sebastian Jeltsch
1b5c957415 Move SQLite orchestration into trailbase-sqlite and fix js-runtime completion bug with true async (previously libsql was sync under the hood). 2024-12-04 16:57:15 +01:00
Sebastian Jeltsch
3b9a122e06 Install sqlite-vec to replace libsql's builtin vector search. 2024-12-04 13:14:14 +01:00
Sebastian Jeltsch
6cbea390fb Herculean migration from libsql's rust bindings to plain rusqlite+SQLite.
There's a couple of reasons:

* As for the rust bindings: they're sub-par to rusqlite, though
  rusqlite is amazing. Even libsql-server uses rusqlite over their own
  bindings. The bindings are missing features such as update hooks
  and the hard-coded execution model suffers from lock congestion.
* We've fixed bugs (e.g. trivial null ptr accesses went unnoticed),
  raised issues, and tried to add missing functionality such as update
  hooks. It's unclear if the rust-bindings are a priority or covered by
  the principles laid out in the libsql manifesto. From the outside it
  looks like focus has shifted to https://github.com/penberg/limbo.
* As for the C-libsql fork for SQLite itself, it's getting more and
  more outdated (2024-01-30 (3.45.1)) and it's unclear when and if the
  ideas from the manifesto will manifest.

Looking forward this opens the door for TrailBase to:

* Bundle more recent versions of SQLite
* Implement more performant, better scaling execution models.
* Implement realtime APIs for subscribing to data changes.
2024-12-04 13:03:06 +01:00
Sebastian Jeltsch
9942669f86 Prepare release v0.2.6. v0.2.6 2024-11-28 14:12:34 +01:00
Sebastian Jeltsch
52c5178f66 Documention: some more polish on the benchmark presentation. 2024-11-28 14:05:12 +01:00
Sebastian Jeltsch
4c96da2d84 Fix input validation in admin dash for nullable columns in the insert/alter-row form. 2024-11-28 12:29:52 +01:00
Sebastian Jeltsch
0b097950c6 More strictly type JSON APIs. 2024-11-28 12:17:17 +01:00
Sebastian Jeltsch
9c2e753f23 Factor out row conversion utility to avoid test depending on ui components, which allows us to update vite. 2024-11-28 10:47:14 +01:00
Sebastian Jeltsch
15b4ca9424 Update Rust dependencies. 2024-11-28 00:43:19 +01:00