Pekka Enberg
706c4e60ae
Switch to using the testing hello.db database
2024-06-19 16:31:44 +03:00
Pekka Enberg
de11402a4a
github: Fix compat-test workflow to checkout
2024-06-19 16:27:21 +03:00
Pekka Enberg
cc89238a09
github: Separate compatibility tests in own workflow
2024-06-19 16:25:23 +03:00
Pekka Enberg
805458e37f
Drop wasm toolchain dependency for tests
2024-06-19 16:24:04 +03:00
Pekka Enberg
94c827d5ae
First pass on compatibility tests
...
With some help from GPT, add a TCL script that has similar syntax as
some of the SQLite source tree tests.
2024-06-19 16:11:55 +03:00
Pekka Enberg
70b73e7535
Fix limbo output to match sqlite3
...
Fix the output of the `limbo` program to match `sqlite3` to simplify
testing.
2024-06-19 16:06:20 +03:00
Pekka Enberg
c89924c5a1
Update SQLite compatibility table some more
2024-06-19 14:34:57 +03:00
Pekka Enberg
76c4cd525d
Update compatibility table
2024-06-19 14:29:28 +03:00
Pekka Enberg
ba1ed2ec09
Run I/O loop in benchmarks
...
Fixes #50
2024-06-08 08:43:15 +03:00
Pekka Enberg
a3c4efc13a
Random code cleanups
2024-06-08 08:38:11 +03:00
Pekka Enberg
3f722d5827
core: Extract make_record() function
2024-05-09 07:48:49 -03:00
Pekka Enberg
3afc03cc65
Fix String8 opcode handling
2024-05-08 15:51:10 -03:00
Pekka Enberg
5c0f324b3c
Improve EXPLAIN output
2024-05-08 14:22:38 -03:00
Pekka Enberg
4d4d1458e2
Update rustix in Cargo.lock
...
Fix for a security vulnerability that Dependabot complains about:
https://github.com/advisories/GHSA-c827-hfw6-qwvm
2024-05-08 13:47:30 -03:00
Pekka Enberg
7232683dfe
core: Fix benchmark
2024-05-08 11:13:29 -03:00
Pekka Enberg
b52351f8b1
sqlite3: Implement sqlite3_column_text()
2024-05-08 07:58:29 -03:00
Pekka Enberg
6dd21c6717
sqlite3: Fix example program
...
...it was not running correctly even with sqlite3.
2024-05-08 07:19:57 -03:00
Pekka Enberg
042e5476f1
Fix source formatting with cargo fmt
2024-05-08 07:18:22 -03:00
Pekka Enberg
08165fc34e
core: SELECT <string> support
2024-05-08 07:18:22 -03:00
Pekka Enberg
24e47f4648
Merge pull request #39 from penberg/sqlite3
...
SQLite C ABI compatibility
2024-05-08 07:11:30 -03:00
Pekka Enberg
f5cc3a08f0
Initial pass on SQLite C ABI
...
This adds initial SQLite C ABI compatibility to Limbo to make sure we
drive the Rust API in the right way that allows us to implement SQLite
semantics.
2024-05-08 07:05:56 -03:00
Pekka Enberg
3420556018
License
2024-05-07 16:33:44 -03:00
Pekka Enberg
cda036f18f
Update README.md
2024-05-07 15:43:49 -03:00
Pekka Enberg
707cc53911
Explanation for pager interface
2024-05-07 07:50:42 -03:00
Pekka Enberg
40e5d58cea
Fix RewindAwait branching when cursor is empty
...
Even if we have a page, the cursor can still be empty if there are no
records.
2024-05-07 06:46:03 -03:00
Pekka Enberg
5ebf51ae5a
Add tracing to prepare() and query()
2024-05-07 06:38:13 -03:00
Pekka Enberg
a447ea0f49
Dynamic cursor ID allocation
...
With sorter, for example, we need more cursors per program.
2024-03-29 09:26:18 +02:00
Pekka Enberg
454b1047ce
Simplify translate_select()
2024-03-29 09:22:02 +02:00
Pekka Enberg
a9eb6918d3
SELECT expression support
2024-03-28 19:41:21 +02:00
Pekka Enberg
3f17ac0e17
Simplify code
2024-03-28 19:32:38 +02:00
Pekka Enberg
9a73ded4fa
Add a Cursor trait and use it
...
We need an abstract cursor trait to implement a sorter, for example.
2024-03-28 15:01:52 +02:00
Pekka Enberg
1dd33bedcd
Remove commented out code
2024-03-28 14:33:59 +02:00
Pekka Enberg
88f335db16
Fix SQL identifiers to be case insensitive
...
SQLite seems to treat everything as case insensitive so let's do that
too.
Fixes #37
2024-03-27 21:00:47 +02:00
Pekka Enberg
81f003d29f
Extract create_table() function
2024-03-27 20:44:52 +02:00
Pekka Enberg
ced83ee59c
Update README.md
2024-03-05 17:00:18 +02:00
Pekka Enberg
7eba7bb99c
Merge pull request #44 from penberg/javascript
...
Improve JavaScript/Wasm packaging
2024-03-03 14:21:50 +02:00
Pekka Enberg
5eb9ec0d03
Improve JavaScript/Wasm packaging
2024-03-03 14:18:32 +02:00
Pekka Enberg
227afd6c6f
Merge pull request #42 from penberg/single-thread
...
Single-threaded architecture
2024-03-03 12:57:17 +02:00
Pekka Enberg
ed9f3e6d1e
Single-threaded architecture
...
Use Rc instead of Arc and replace the concurrent LRU with
single-threaded SIEVE.
Fixes #23
Fixes #29
2024-03-03 12:44:45 +02:00
Pekka Enberg
8f48416de0
Update README.md
2024-03-03 12:22:27 +02:00
Pekka Enberg
ec79c39331
Merge pull request #40 from penberg/windows
...
Windows support
2024-03-03 11:53:29 +02:00
Pekka Enberg
69c6b67a26
github: Run CI build on Windows
2024-03-03 11:49:55 +02:00
Pekka Enberg
59822e2c6f
core: Don't depend on pprof on Windows
2024-03-03 11:49:55 +02:00
Pekka Enberg
84a5115d77
core: Add Windows I/O module
...
It's a copy of the synchronous I/O module that we use on Darwin. In the
future, let's switch to Windows IOCP API.
2024-03-03 11:34:53 +02:00
Pekka Enberg
e0dc9dc86d
Optimize trace_insn()
2024-01-28 13:14:39 +02:00
Pekka Enberg
3d1d4e5355
core: Make OwnedValue cloning cheaper
2024-01-28 12:56:34 +02:00
Pekka Enberg
07912ee139
Use OwnedRecord::new()
2024-01-28 10:22:22 +02:00
Pekka Enberg
2c55cc797d
cargo clippy --fix
2024-01-28 10:21:38 +02:00
Pekka Enberg
9f733b5a73
Simplify Statement::step()
2024-01-28 10:20:45 +02:00
Pekka Enberg
64213766a2
Remove redundant lifetime parameter from Statement::step()
2024-01-28 10:19:31 +02:00