stephan
ea375f1320
Bump kvvfs's sqlite3_vfs::iVersion to 2 so that its xCurrentTimeInt64() can be used. Add JsStorageDb.exportToObject() to serialize a kvvfs to a JSON-friendly form.
...
FossilOrigin-Name: 393c1beee00ec3b3e98eb385cae0abeb1b34475140c0e8c3d57541d349904436
2025-11-23 12:14:18 +00:00
stephan
48c8405f99
Replace an alloc/free on every read of a JS kvvfs key with a one-time alloc and a long paragraph explaining why we have to leak it.
...
FossilOrigin-Name: 66fb9978f0a63887d214e895343adedfa46ee7aefccb8389d6d3af727e0a65ea
2025-11-23 11:28:27 +00:00
drh
f63bc3a922
New test case for bSplitColumn in QRF.
...
FossilOrigin-Name: 6d01f9f49eef5f7d4bddadc458691b6ca36e277bae1d4b43b60a128a44e3faca
2025-11-23 10:55:38 +00:00
drh
58a4e08e3d
In QRF in bSplitColumn mode, increase the spacing between columns to be as
...
wide as five, for improved legibility, if screen width allows.
FossilOrigin-Name: 673648cc812e1549c2b3e7749306e7395d0b7e396a7d5ac432948eb3a6c3713f
2025-11-23 00:45:47 +00:00
drh
d0056d4234
Use the new "split" mode to simplify and improve the implementation of
...
the ".tables" and ".indexes" commands in the CLI. Fix a bug in QRF
that this new implementation found.
FossilOrigin-Name: b73df612b621699cd58de6ef327fefdeb8f52eb620f0d2df00d38ff6608a8dd5
2025-11-23 00:10:06 +00:00
drh
c4190338c5
Add "split" mode in the CLI. Fix CLI commands given on the command line
...
so that they honor --once in prior commands.
FossilOrigin-Name: 2530f04d1bb02b800fda83544f5b5dcd42f52b3e56ad625cd03b40e42f24ac6b
2025-11-22 23:34:53 +00:00
drh
eeb38d3665
Add the --no-limits option to the .mode command in the CLI.
...
FossilOrigin-Name: 3cee168e8801481f6d909fb5d20a773b9c6ca0b8daedfc301c9d762a17f9d839
2025-11-22 21:47:48 +00:00
drh
946857cfee
In QRF, change the name of the bWrapSnglCol flag to bSplitColumn.
...
Similar changes to the TCL interface.
FossilOrigin-Name: 76512b3b80fdcaae22340cde0b69857e2a4d7e86a63c6759465bd8a0bcbf82bc
2025-11-22 21:34:33 +00:00
stephan
2fcc13f8c9
Cherrypick [0b53be562f1e] into trunk.
...
FossilOrigin-Name: e86e5723d778721b10c1c908545c56233d4d5549a7ca3b7cf8ca649c70450add
2025-11-22 19:29:23 +00:00
stephan
44fdf80c28
This combination of kvvfs callbacks seems to work okay for both persistent and transient storage, but it's unclear why/how, as xAccess() does not appear to be doing anything useful (and misbehaves when told to report that the storage object in question exists). These tests fail in 64-bit builds for as-yet-unknown reasons (other tests continue to pass in 64-bit).
...
FossilOrigin-Name: 69e591d0054218ead789cee199e5258f1c378a89e4b7b0e38fe74e834e23156b
2025-11-22 19:21:25 +00:00
stephan
05478c7149
Fix a misinteraction of CREATE/READONLY flags in the OPFS VFS.
...
FossilOrigin-Name: 0b53be562f1e1a5b20ffe8d72df64e753a8d759b580d949a0f32409144769bb0
2025-11-22 17:27:16 +00:00
drh
494811810c
Ignore semicolons at the end of dot-commands, if the compatibility date is
...
20251115 or later.
[forum:/forumpost/72d084ed552|Forum thread 2025-10-09T21:12:32z]
FossilOrigin-Name: 7a9e753e977ff61ceee50c4e0e5f9b1fc179e91acd9ac88378c888b3e45ebe3a
2025-11-22 16:43:52 +00:00
stephan
7ae80c0bc1
Fix storage-size counting of non-local/non-session kvvfs storage. Rename the 'global' buildin kvvfs storage object to 'localThread'.
...
FossilOrigin-Name: 61606be2ae2b0d73cdcd7947a77c7ad87cdf850bba90b0c3e3cdf8c02177db73
2025-11-22 16:29:45 +00:00
stephan
c7d155aa5d
Cherrypick [e0b33b51229a] for the latest wasmutil/jaccwabyt - all tests are happy. Fix a make deps bug which can break parallel builds involving fiddle.
...
FossilOrigin-Name: 0be777bd6cc6c6b4f52d948cdba7e9c30ad062a35c659512b3f3f89f53aaba25
2025-11-22 15:49:45 +00:00
stephan
ec274603f1
Incremental work on kvvfs v2.
...
FossilOrigin-Name: 60d61cf383b63b25dcfbf8da9539aaec253b6618ec83403f6690b7a32c13363d
2025-11-22 07:35:36 +00:00
stephan
16d127eb45
Factor KVVfsFile::zName back out. Remove the extraneous part of the storage keys for non-local/non-session storage.
...
FossilOrigin-Name: d2bf96d68c6cb2ae68558722edb22192fb1dbbf08fefdb2fd0a4827688e082a8
2025-11-22 05:37:21 +00:00
stephan
fc6096b013
Demonstrate completely transient and a semi-transient (until page reload) kvvfs instances.
...
FossilOrigin-Name: 3f9ff9873303c3900dd3cba6e922bfb8cdb1f595353b692796b62e3025013517
2025-11-22 02:43:56 +00:00
stephan
7845d312b1
Latest side-stream jaccwabyt/wasmutil.
...
FossilOrigin-Name: e0b33b51229a977cc3fa8a5a6c8ea59669f8bf566b2a6330fd24da1ad886a716
2025-11-22 02:23:02 +00:00
drh
f4197be567
Implementation of bWrapSnglCol in QRF.
...
FossilOrigin-Name: 4bbd3f7ead50c0babd7843f58972e2e1762a84866cc4ed88a2a74375b13da11c
2025-11-22 00:38:17 +00:00
stephan
92fa31bc5f
Get initial JS overrides of the kvvfs sqlite3_vfs and sqlite3_io_methods in place. It now tracks a distinct Storage-ish object per sqlite3_file instance.
...
FossilOrigin-Name: 19a3349a2031e2b7fae67847b55643e4f70f8dae863ebc1ace3b09d1f482c8eb
2025-11-21 22:13:35 +00:00
drh
081a877211
Add the bWrapSnglCol flag to the QRF spec, though it is not yet documented
...
and does not yet work. Fix column output so that it omits trailing space.
FossilOrigin-Name: a858027fc92727c680b7e984303df7f9e0a2d90c860c547176f290b113a69390
2025-11-21 20:10:12 +00:00
drh
a5e454d11c
Need a double-underscore prefix on the cplusplus macro
...
FossilOrigin-Name: 04394387e626cd99ff98df978c4b7f2d32f65760e0c26e53f1ef4f59e4e91a4f
2025-11-21 19:47:13 +00:00
drh
725e6836d0
Fix the qrf.h header so that it is usable from C++
...
FossilOrigin-Name: 1105b710934cf4a243c64d37dd147bc9378c0f7aa55a99891b7ac6e8f8f17f88
2025-11-21 19:01:26 +00:00
stephan
7c07260353
More work towards using JS generic Storage objects as db page storage via kvvfs.
...
FossilOrigin-Name: 90a33941c69b3581feaed271542f0238ca81ee34fe5b353ca7da48b81ac73a5f
2025-11-21 18:55:33 +00:00
stephan
6690972855
Remove kvvfs-specific filename validation from the oo1.DB ctor.
...
FossilOrigin-Name: 206275292217be4ff317d4c9186ecaf863ca69295e2f995ed175aa65d9ad11dc
2025-11-21 18:49:58 +00:00
drh
5b19de37b6
Fix typo in the implementation of the ".schema" command of the CLI for the
...
case when there are ATTACH-ed databases.
FossilOrigin-Name: 8a230e4da230a7b103749b069a99a58e4c220873c2f9576abdc928c3538d70b3
2025-11-21 17:30:44 +00:00
stephan
81b7e49d2d
Initial restructuring of kvvfs working towards generic support of JS's Strorage interface as storage rather than hard-coding it to just window.localStorage and window.sessionStorage. The eventual goal of that is to have a storage solution which works without the POSIX I/O APIs, getting us one step closer to a wasi-sdk build. It would be transient, like Emscripten's virtual filesystem, and could hypothetically replace our dependency on that particular feature.
...
FossilOrigin-Name: 190ef4a94005b0feebe865a960d846a1b60ec1b267b15d5a24749f174a6169bc
2025-11-21 15:23:52 +00:00
stephan
794a9b48ac
Add new file missing from [3c4061428544].
...
FossilOrigin-Name: 41f94eca01d8317364aa60ddd8e5fe3cd21a215040ef271a157d450a914139d0
2025-11-21 15:03:38 +00:00
drh
873cd21ec3
Enhance ALTER TABLE to support adding and removing NOT NULL and CHECK
...
constraints.
FossilOrigin-Name: 895498e4431e02cff65a5d96db22f0b0cb9c96aedf1e3cdcdeb3c34c6fec432b
2025-11-21 14:15:56 +00:00
drh
ac16642cc4
Fix the QRF so that it omits the closing text from styles "json" and "jobject"
...
when the result set it empty.
FossilOrigin-Name: e1ba175124be83da4db6d5d4e583b9b3b7dcb82e983c6f185d590469dcdc3139
2025-11-21 11:00:29 +00:00
stephan
40ce52a4e5
Move the JS pieces of kvvfs into their own file to facilitate pending feature experimentation.
...
FossilOrigin-Name: 3c40614285449df259a3444e36f888cfb5e782ea58287914f97f496ea61e9e9f
2025-11-21 10:49:32 +00:00
drh
1073985be7
Test cases for the fix in the prior check-in.
...
FossilOrigin-Name: 4d41bee75eda51251121c8e3903f47941116e5182238a03f41a593c47efb6fcf
2025-11-20 22:46:27 +00:00
drh
980580efec
Preserve auto-explain mode across mode changes, as has always been the
...
case before.
FossilOrigin-Name: 8896185ae0b0af8918aa8ce449f18759e6ae60358afbac1019397bae307b15d5
2025-11-20 21:08:46 +00:00
drh
a68046e79d
Fix hwtime.h (broken by [305bb022368bac9f]) so that unamalgamated windows
...
builds work again.
FossilOrigin-Name: 1245319257d03a00eddbc8ff4b43b5813f8a567a12a9957f923bef58c85c0c20
2025-11-20 12:41:26 +00:00
stephan
6d62ed4f87
Remove an extraneous loop level from the JS bootstrapping bits.
...
FossilOrigin-Name: 86817b4e9f011d296fb420be95269fecb54fb48a220bce84020e3af2d2c164a4
2025-11-20 12:14:03 +00:00
stephan
df3fca8da4
Enable the SQLITE_EXPERIMENTAL_PRAGMA_20251114 in the WASM builds for the sake of VFS experimentors. The links in the comments describe what that does.
...
FossilOrigin-Name: aaa55a3ebf8e725443030be5f31ac7fc0766c1f3c771ce69852f31e7e6f165b9
2025-11-20 12:12:55 +00:00
drh
3df99c4861
Use sqlite3MPrintf() instead of sqlite3_mprintf() internally in alter.c,
...
for improved OOM reporting.
FossilOrigin-Name: 57555d75daa2ee8345f8329749841a322b3e57679e5c4899ef749c8bc814812d
2025-11-20 11:06:58 +00:00
drh
d7e7ab7b5f
Additional checks for OOM conditions.
...
FossilOrigin-Name: 8fafd4988bf1fa1aa799c2834dd31bebdd52e7ae8e68c0197ccb497eb9b1e5f6
2025-11-20 02:03:57 +00:00
drh
6cb88552bc
Mark an unreachable branch with NEVER().
...
FossilOrigin-Name: df2259a32fd65986eafceb2c551e6e1661927f1f5b18dbb97c59d9627279eea0
2025-11-20 00:56:28 +00:00
drh
325a361d5a
Call sqlite3OomFault() rather than setting db->mallocFailed directly.
...
FossilOrigin-Name: 4fd5dfa215f14b20ddfc55904acbcc9bc9fd2123bb06fff72ef76efa17304566
2025-11-19 23:11:56 +00:00
drh
c23a1b9bea
Fix three harmless declaration-after-statement warnings in the new CLI code.
...
FossilOrigin-Name: b65b29656c835db22557733f4dcfe906bf21a7a3c36266cbbc7e3277f029b901
2025-11-19 19:37:28 +00:00
drh
57b61bf78f
Improved comments in code. Omit unneeded wrapper functions.
...
FossilOrigin-Name: 3485c7c81bee8e98ea6b403438bcdb2b6fa058afeafea150ce1c859345e1529b
2025-11-19 15:25:18 +00:00
dan
3a4c9daa5c
Strip unterminated "--" comments from the end of constraints added using ALTER TABLE ADD CONSTRAINT or ADD NOT NULL.
...
FossilOrigin-Name: c73ab47b0250c01f1ffa6e506793769744ebeb8ca7edbb78de9a08db2037d6de
2025-11-19 11:31:59 +00:00
drh
b58ccaea8a
Clarification to the header comment on dropConstraintFunc(). No changes
...
to code.
FossilOrigin-Name: 4bd53fbb20d78de7bbff1154e7ee1321b93b0ede435e150ad4ee992a4108ad5a
2025-11-19 11:28:48 +00:00
drh
7423111fe1
Trivial simplification to the ALTER TABLE ADD CONSTRAINT code.
...
FossilOrigin-Name: 383965b3ba701d3627e0bbd09ad04d0ce00d4721497d82e241dc7cffa745b1d9
2025-11-19 10:26:49 +00:00
dan
eeab52901c
Fix another problem that could follow an OOM fault on this branch.
...
FossilOrigin-Name: c4cc80eb281f7c8da3d62fec03b2258ce8d0063fc9cfff61f2cbcdd01e13c391
2025-11-18 19:58:56 +00:00
dan
b2029ca07d
Avoid a segfault that could follow an OOM in an ALTER TABLE statement.
...
FossilOrigin-Name: 0e4c2b889edbe801bb8ff29bbdb0b3139bdc85e696ccdf5bf51d7e5f9fdde961
2025-11-18 19:48:39 +00:00
drh
ec047587e3
Merge the latest trunk changes into the alter-table-constraints branch.
...
FossilOrigin-Name: 31d7aeeaef20ac42c3c395dbaf7a8225ac718256a4cbeb7c198d1c7361766b1b
2025-11-18 19:36:45 +00:00
drh
074b753bca
Merge the latest trunk enhancements into the temp-trigger-refs branch.
...
FossilOrigin-Name: 0957f4c9c45dc2f4543021cf739bfcc940da6e5fc05b7a4e8721b8c02861bfd9
2025-11-18 19:34:11 +00:00
drh
f1928b3e54
Do not attempt to make the generated file "shell.c" read-only. This turns
...
out to be annoying in general, and especially annoying on macs.
FossilOrigin-Name: 6ab18d036a3e412ee01806a40f69aca2b77283bd5336df27597cc19d32e6e6f2
2025-11-18 19:11:21 +00:00