Commit Graph

42 Commits

Author SHA1 Message Date
Pekka Enberg
90c1e3fc06 Switch Connection to use Arc instead of Rc
Connection needs to be Arc so that bindings can wrap it with `Mutex` for
multi-threading.
2025-06-16 10:43:19 +03:00
Anton Harniakou
11ad9b8884 napi.rs: Remove codegen for transaction 2025-06-09 10:43:43 +03:00
Anton Harniakou
a3298c3ce8 make clippy happy 2025-06-09 10:43:43 +03:00
Anton Harniakou
defb2e52e8 process errors 2025-06-09 10:43:43 +03:00
Anton Harniakou
7c9c1f60d4 Implement pragma 2025-06-09 10:40:04 +03:00
Anton Harniakou
dbc5e7f15a Add simple pragma option 2025-06-09 10:40:04 +03:00
Diego Reis
4c47e8c4dd bind/js: Fix incompatible pluck mode 2025-06-05 14:42:44 -03:00
Diego Reis
48056e0941 bind/js: Refactor presentation modes to use an enum 2025-06-05 14:42:11 -03:00
Diego Reis
0f685c5b9a bind/js: Add support for raw() Statements 2025-05-30 15:44:34 -03:00
Diego Reis
1367b453e9 bind/js: Add proper exec() method 2025-05-29 16:00:07 -03:00
Pekka Enberg
8d7f20b7d2 Merge 'Add libsql_wal_get_frame() API' from Pekka Enberg
This pull request implements the `libsql_wal_get_frame()` API. To do
that, we also introduce a `wait_for_completion()` API in I/O dispatcher.

Reviewed-by: Jussi Saurio <jussi.saurio@gmail.com>

Closes #1533
2025-05-27 18:17:32 +03:00
Pekka Enberg
eca9a5b703 core/io: Switch to Arc<Completion> 2025-05-27 11:28:49 +03:00
Diego Reis
b012d07aa3 bind/js: Apply pluck's logic to all methods 2025-05-26 17:14:33 -03:00
Diego Reis
b60fd81995 bind/js: Reduce boilerplate of binding variables and checking
Statement's state
2025-05-26 17:00:55 -03:00
Diego Reis
799f4149c5 bind/js: Add bind method 2025-05-26 16:52:48 -03:00
Diego Reis
bce4ac45db bind/js: Remove broken try/catch 2025-05-26 12:49:47 -03:00
Diego Reis
7dc69c9c39 bindings/js: Add extension loading 2025-05-26 12:25:43 -03:00
Diego Reis
dd029b3d37 fix clippy 2025-05-25 16:34:31 -03:00
Diego Reis
60b78b3566 bind/js: Partially implements pragma
Some pragmas may return more than one value, which would
break the current logic. So this cause should be handled in the future
2025-05-25 15:56:28 -03:00
Diego Reis
1ff454853b bind/js: Add close metho to Database 2025-05-25 14:47:04 -03:00
Diego Reis
f1018d97a4 bind/js: Add source attribute to Statement 2025-05-25 14:43:58 -03:00
Diego Reis
376adbb10a bind/js: Add support to variadic functions 2025-05-25 12:22:46 -03:00
Diego Reis
9f6e242e42 bind/js: Partially implements iterate() method
The API still is sync and isn't variadic
2025-05-18 00:51:23 -03:00
Pekka Enberg
e3f71259d8 Rename OwnedValue -> Value
We have not had enough merge conflicts for a while so let's do a
tree-wide rename.
2025-05-15 09:59:46 +03:00
Diego Reis
242f4d7cdc bind/js: Add tests and some fixes 2025-05-08 15:57:46 -03:00
Diego Reis
64874bca4e bind/js: Add method all() 2025-05-08 15:23:39 -03:00
Diego Reis
559263ce3c bind/js: Add execution of prepared statements with bindings 2025-05-08 15:16:19 -03:00
Diego Reis
0aa46154ab bind/js: Add conversion from js types to limbo types 2025-05-08 10:32:46 -03:00
Diego Reis
74f585d2e0 bind/js: Add missing methods for Database and Statement 2025-05-08 08:46:38 -03:00
Diego Reis
e4014d290f bind/js: Implement DatabaseStorage::sync 2025-05-08 08:42:13 -03:00
Diego Reis
259bfc04b7 bind/js: Improve error handling 2025-05-08 08:40:53 -03:00
Diego Reis
f0a08612b0 bind/js: Close Database connection when it is garbage collected 2025-05-08 08:36:27 -03:00
Diego Reis
787de5e2b3 bind/js: Comment out unused properties
Just left here so we don't lose track of which properties the objects should have
2025-05-08 08:34:48 -03:00
meteorgan
f464d15f8b refactor database open_file and open 2025-04-25 21:45:18 +08:00
Diego Reis
d9bf383507 core/io: Untie MemoryIO's lifetime of the IO layer 2025-04-13 11:10:06 -03:00
Diego Reis
79f8b83cbe Fix dumb clippy errors 2025-04-13 11:10:06 -03:00
Avinash Sajjanshetty
3543e83b91 Impl Clock trait in bindings 2025-04-06 23:34:15 +05:30
Pere Diaz Bou
ee55116ca6 return row as reference to registers 2025-03-29 22:04:08 +01:00
Pere Diaz Bou
bf37fd3314 wip 2025-03-29 22:02:49 +01:00
Pekka Enberg
94262e4660 bindings/javascript: Fix Statement.get() implementation 2025-03-28 11:32:55 +02:00
Pere Diaz Bou
9291f60722 Introduce Register struct
OwnedValue has become a powerhouse of madness, mainly because I decided
to do it like that when I first introduced AggContext. I decided it was
enough and I introduced a `Register` struct that contains `OwnedValue`,
`Record` and `Aggregation`, this way we don't use `OwnedValue` for
everything make everyone's life harder.

This is the next step towards making ImmutableRecords the default
because I want to remove unnecessary allocations. Right now we clone
OwnedValues when we generate a record more than needed.
2025-03-27 17:53:02 +01:00
Pekka Enberg
9ef729f81c Initial JavaScript bindings with napi-rs 2025-03-26 13:30:13 +02:00