Commit Graph

124 Commits

Author SHA1 Message Date
Joan Martinez
642603b6c7 perf-latency: fix enabling to build multitenancy 2024-07-21 19:13:02 +02:00
Joan Martinez
4bcae54aa9 fix: use Arc to handle IO 2024-07-21 19:01:58 +02:00
Pekka Enberg
17727ef1af sqlite3: Make stub function failures more explicit 2024-07-21 13:34:39 +03:00
Pekka Enberg
15eb26f802 Merge pull request #187 from mazchew/cpython-error-compatibility
Add implementations of sqlite3 error codes and messages for compatibility with CPython
2024-07-21 13:32:44 +03:00
mazchew
c90f7b8222 add cpython compatibility for error codes and messages
edits

minor edit
2024-07-21 17:56:05 +08:00
JeanArhancet
569322446a feat: add round scalar function 2024-07-21 10:29:30 +02:00
Pekka Enberg
af7b8b6768 sqlite3: Implement some auxiliary functions
This adds `sqlite3_libversion()`, `sqlite3_libversion_number()`, and
`libsql3_threadsafe()`.
2024-07-17 13:00:35 +03:00
Pekka Enberg
a08051b106 sqlite3: Disable tests that SIGSEGV with sqlite3 on x86 2024-07-17 12:59:54 +03:00
Pekka Enberg
4efa6e5efa sqlite3: API function tracing 2024-07-17 12:59:54 +03:00
Pekka Enberg
8fb50cc9bc sqlite3: Auto initialize in sqlite3_open() 2024-07-17 12:34:29 +03:00
Pekka Enberg
d81a346d74 sqlite3: Implement sqlite3_{initialize,shutdown}
They're no-ops for now.
2024-07-17 12:34:29 +03:00
Pekka Enberg
80fc9bacf1 sqlite3: Fix test linking 2024-07-17 12:34:17 +03:00
Pekka Enberg
3e73694370 build: Add sqlite3 API tests to make test 2024-07-17 12:13:45 +03:00
Pekka Enberg
54feddabed sqlite3/tests: Add missing test-prepare.c 2024-07-17 12:13:45 +03:00
Raminder Singh
e4a9c5ce6e fix clippy warnings 2024-07-14 16:50:54 +05:30
Pekka Enberg
b14150f3b5 sqlite3: Add stubs to make Python build link
Add enough stubs to be able to link CPython build against Limbo's SQLite
compatibility API:

```
export LIBSQLITE3_LIBS=../limbo/target/debug/liblimbo_sqlite3.a
./configure
make -j8

[snip]

gcc -shared      Modules/_sqlite/blob.o Modules/_sqlite/connection.o Modules/_sqlite/cursor.o Modules/_sqlite/microprotocols.o Modules/_sqlite/module.o Modules/_sqlite/prepare_protocol.o Modules/_sqlite/row.o Modules/_sqlite/statement.o Modules/_sqlite/util.o ../limbo/target/debug/liblimbo_sqlite3.a  -o Modules/_sqlite3.cpython-314-x86_64-linux-gnu.so
thread '<unnamed>' panicked at sqlite3/src/lib.rs:751:5:
not yet implemented
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
fatal runtime error: failed to initiate panic, error 5
make: *** [Makefile:1511: checksharedmods] Aborted (core dumped)
```

All that's left is to actually implement all of this...
2024-07-12 10:08:37 +03:00
Kunal Singh
00c26286ce fix: lint warnings 2024-07-08 22:43:11 +05:30
Pekka Enberg
5f678ca57d sqlite3: Disable missing_safety_doc warnings
There's no point in sprinkling safety documentation to all functions.
This is, after all, the unsafe C API...
2024-07-03 11:43:01 +03:00
Pekka Enberg
cc101b1b00 Use larger and more realistic database for testing 2024-06-29 10:03:11 +03:00
Pekka Enberg
a3c4efc13a Random code cleanups 2024-06-08 08:38:11 +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
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