Pekka Enberg
44ed4d562f
core: Initial pass on synchronous pragma
...
This adds support for "OFF" and "FULL" (default) synchronous modes. As
future work, we need to add NORMAL and EXTRA as well because
applications expect them.
2025-08-28 16:02:41 +03:00
pedrocarlo
aa025c9798
fix missing functions after revert
2025-08-26 10:13:45 -03:00
Pekka Enberg
26ba09c45f
Revert "Merge 'Remove double indirection in the Parser' from Pedro Muniz"
...
This reverts commit 71c1b357e4 , reversing
changes made to 6bc568ff69 because it
actually makes things slower.
2025-08-26 14:58:21 +03:00
Pekka Enberg
5dd1bca4d3
Merge 'Decouple SQL generation from Simulator crate' from Pedro Muniz
...
Decouple Sql generation code from simulator code, so that it can
potentially be reused for fuzzing on other crates and to create a
`GenerationContext` trait so that it becomes easier to create
`Simulation Profiles`. Ideally in further PRs, I want to expand the
`GenerationContext` trait so we can guide the generation with context
from the simulation profile.
Depends on #2789 .
Reviewed-by: Jussi Saurio <jussi.saurio@gmail.com >
Closes #2793
2025-08-26 09:41:58 +03:00
Pekka Enberg
8f11311473
Merge 'Improve encryption API' from Avinash Sajjanshetty
...
This patch brings a bunch of quality of life improvements to encryption:
1. Previously, we just let any string to be used as a key. I have
updated the `PRAGMA hexkey=''` to get the key in hex. I have also
renamed from `key`, because that will be used to get passphrase
2. Added `PRAGMA cipher` so that now users can select which cipher they
want to use (for now, either `aegis256` or `aes256gcm`)
3. We now set the encryption context when both cipher and key are set
I also updated tests to reflect this.
Reviewed-by: Preston Thorpe <preston@turso.tech >
Closes #2779
2025-08-26 08:32:29 +03:00
pedrocarlo
0c1228b484
add Generation context trait to decouple Simulator specific code
2025-08-25 22:59:31 -03:00
pedrocarlo
642060f283
refactor sql_generation/model/query
2025-08-25 22:59:31 -03:00
pedrocarlo
5108c72a28
remove box from Vec<Box<Expr>>
2025-08-25 19:47:46 -03:00
Pekka Enberg
8eab179a53
parser/ast: Add Register AST node
2025-08-25 17:48:17 +03:00
Avinash Sajjanshetty
328c5edf4d
Add PRAGMA cipher to allow setting cipher algo
2025-08-25 02:17:53 +05:30
Avinash Sajjanshetty
543025f57a
rename encryption PRAGMA key to hexkey
2025-08-25 01:32:41 +05:30
TcMits
fd63688ede
reduce cloning Token in parser
2025-08-23 15:07:32 +07:00
Pekka Enberg
52ef4c2dfe
Merge 'correctly implement offset() in parser' from Lâm Hoàng Phúc
...
Closes #2731
2025-08-22 15:40:18 +03:00
TcMits
81603f6706
correctly implement offset() in parser
2025-08-22 17:47:39 +07:00
TcMits
4b07555e87
remove dup test
2025-08-22 17:02:10 +07:00
TcMits
f49c47f248
remove dup check
2025-08-22 16:47:41 +07:00
TcMits
df8ab9c104
clippy again
2025-08-22 16:39:59 +07:00
TcMits
a1bc3bf988
clippy
2025-08-22 16:36:10 +07:00
TcMits
14eb8a8ffe
move check code into parser
2025-08-22 16:28:56 +07:00
Levy A.
34724a0571
fix: proper parser offset tracking
2025-08-22 02:11:53 -03:00
Levy A.
8a610a776f
refactor: Result type alias
2025-08-21 15:24:01 -03:00
Levy A.
07975603d3
fix: incorrect sql statement in parser test
2025-08-21 15:24:01 -03:00
Levy A.
d9c7cbf7f2
fix: report TK_ILLEGAL as error
2025-08-21 15:24:01 -03:00
Levy A.
0138aade31
tidy error reporting
2025-08-21 15:24:01 -03:00
Levy A.
8f198a3086
fix create view columns length check
2025-08-21 15:24:01 -03:00
Levy A.
a86a066a91
fix order by function clause
2025-08-21 15:24:01 -03:00
Levy A.
c6b032de63
feat: add AST formating and checking
2025-08-21 15:19:17 -03:00
Levy A.
f8daf2ff95
fix: copy TokenType's as_str from the old parser
2025-08-21 15:19:17 -03:00
Levy A.
b0537d02c7
fix: SQLite operators are left associative
2025-08-21 15:19:16 -03:00
Levy A.
40fce89238
fix: empty variables are allowed
2025-08-21 15:19:16 -03:00
Levy A.
8f10f2f240
fix number parser
...
the added test case was failing
2025-08-21 15:19:16 -03:00
Levy A.
dd39f47cda
feat: add materialized view + implement essential methods for core
2025-08-21 15:19:16 -03:00
Levy A.
186e2f5d8e
switch to new parser
2025-08-21 15:19:16 -03:00
TcMits
e90e154f51
fmt
2025-08-15 17:09:30 +07:00
TcMits
4d91f19ab2
rebase
2025-08-15 17:05:28 +07:00
TcMits
fb5203ce45
make eat_assert faster
2025-08-15 16:45:20 +07:00
TcMits
22f53d1fe6
clippy again
2025-08-15 16:45:18 +07:00
TcMits
1cafdc1f8e
fmt
2025-08-15 16:45:18 +07:00
TcMits
f0bd4cca69
clippy
2025-08-15 16:45:18 +07:00
TcMits
bbd96d263c
finish REINDEX
2025-08-15 16:45:08 +07:00
TcMits
49a0a3417a
finish UPDATE
2025-08-13 15:11:32 +07:00
TcMits
b8ad44bf07
finish INSERT
2025-08-13 14:45:34 +07:00
TcMits
161c87212e
finish all DROP
2025-08-13 14:07:28 +07:00
TcMits
179cce2ceb
finish DELETE
2025-08-13 13:56:58 +07:00
TcMits
c444b80d2e
finish CREATE VIRTUAL TABLE
2025-08-12 19:14:10 +07:00
TcMits
ba87698448
finish CREATE VIEW
2025-08-12 17:46:43 +07:00
TcMits
3622370d27
finish CREATE TRIGGER
2025-08-12 17:25:29 +07:00
TcMits
1b925e4f92
finish CREATE TRIGGER without tests
2025-08-12 14:22:42 +07:00
TcMits
4849db3335
finish CREATE TABLE
2025-08-11 16:17:26 +07:00
TcMits
df514ec75a
finish CREATE INDEX
2025-08-11 13:27:32 +07:00