50 most recent check-ins
|
2026-10-31
| ||
| 20:26 | Add a the SQLITE_DISPOSAL_NOTIFIER internal-use hook to alert callers when certain objects are finalized. This allows the WASM builds to better clean up associated JS-side state. e.g. passing an oo1.DB instance to sqlite3_close_v2() is now well-behaved, disconnecting any oo1.DB instances which share that pointer and any DB.Stmt objects still opened by those. (leaf check-in: 055fdd4709 ... user: stephan tags: trunk) | |
| 20:14 | Flesh out the documentation for the SQLITE_DISPOSAL_NOTIFIER (internal) interface. (closed check-in: cd96471ae0 ... user: stephan tags: disposal-notification) | |
| 20:12 | Fix an ALTER TABLE problem with renaming a temp table when there is a temp trigger defined on a main db table of the same name. Report 2026-10-27T20:00:22Z. (check-in: f7a9970ec1 ... user: dan tags: trunk) | |
| 20:08 | Fix the display of current optimizations in the CLI. (check-in: 8d891830dd ... user: drh tags: trunk) | |
| 19:47 | Consolidate some duplicate code. (check-in: 0a13364732 ... user: stephan tags: disposal-notification) | |
| 19:30 | Fix a typo in the previous checkin which caused a corner case to not clean up properly. (check-in: d58903a30e ... user: stephan tags: disposal-notification) | |
| 19:26 | Fix deregistration of shared-handle DB/Stmt instances. Add tests demonstrating that closing the prime handle disassociates other oo1-level objects which share that handle. Simplify the by-typeId dispatching of being-disposed pointers. (check-in: c15dc8027f ... user: stephan tags: disposal-notification) | |
| 18:36 | Hook oo1.DB and DB.Stmt into SQLITE_DISPOSAL_NOTIFIER, such that passing an instance to sqlite3_close_v2() resp. sqlite3_finalize() will cleanly unplug the oo1 instance from its native. (check-in: 6c8982f153 ... user: stephan tags: disposal-notification) | |
| 17:55 | Expand the optimization disable mask from 32 to 64 bits. Add a new bit to disable the having-to-where optimization, for testing purposes. (check-in: 89ea662676 ... user: drh tags: trunk) | |
| 17:48 | When renaming a non-temp table using ALTER TABLE RENAME TO, do not also modify references within temp triggers to a temp table of the same name. Report 2026-10-27T19:51:14Z. (check-in: 6488dbedd1 ... user: dan tags: trunk) | |
| 16:47 | JS: remove the hand-written sqlite3_close_v2() binding, moving its cleanup work into the new disposal notification. This makes it safe and easy to map arbitrary JS state to dbs and stmts with the certainty that any mappings can be deleted regardless of how the C counterparts are disposed. (check-in: 6e21a7b4cd ... user: stephan tags: disposal-notification) | |
| 16:26 | Fix ALTER TABLE RENAME COLUMN statements to correctly rename column references that appear in ON clauses that are part of triggers and views. Report 2026-10-27T19:54:24Z. (check-in: 9138604750 ... user: dan tags: trunk) | |
| 15:12 | Make the "-DevTest" optimization flag available for testing purposes. Don't actually use it for anything permanent. Just have it available for use during debugging builds, in enable/disable features for comparison. (check-in: 439a702e5c ... user: drh tags: trunk) | |
| 14:25 | Generic cleanups. Add a missing finalizer call in the new test code. (check-in: 727d1886f6 ... user: stephan tags: disposal-notification) | |
| 14:08 | Remove a couple of unnecessary levels of indirection. Add some comments explaining what's going on JS-side. (check-in: 724b7da264 ... user: stephan tags: disposal-notification) | |
| 13:27 | A proof-of-concept for a compile-time-provided hook to notify when the library disposes of certain memory. The use case is providing the JS bindings with a way to unmap native-to-JS bindings when a db, statement, etc. are finalized in some way other than the JS-side bindings which do this work. (check-in: 50785fb6cb ... user: stephan tags: disposal-notification) | |
| 13:06 | Back out part of [a7f314264fc98f50] which turns out to have been ill-advised. (check-in: c80f9edb34 ... user: stephan tags: trunk) | |
| 10:45 | Preprocessor-strip approximately 4k of JS we don't need client-side. (check-in: 7da6c2681e ... user: stephan tags: trunk) | |
| 10:31 | JS: add some docs explaining the problem the Module.instantiateWasm() override solves. (check-in: a7f314264f ... user: stephan tags: trunk) | |
| 07:43 | Merge branch-3.54 into trunk and resolve merge conflicts in the JS pieces. (check-in: 65091cea03 ... user: stephan tags: trunk) | |
| 07:35 | Handle ALTER TABLE ADD COLUMN statements when the new column definition ends with a comment. Report 2026-10-27T19:49:19Z. (check-in: 7ae2d4d1e4 ... user: dan tags: trunk) | |
| 06:38 | Have ALTER TABLE ADD CHECK handle the case where input ends with an unterminated C-style comment. e.g. "ALTER TABLE t1 ADD CHECK (x!=0) /* unterminated". Report 2026-10-27T19:57:50Z. (check-in: 64f9e76132 ... user: dan tags: trunk) | |
| 02:36 | Fix RCEs so that if the self-reference table in the recursive section is on the nullable size of an outer join, it gets the correct answer. Test cases are in TH3. Bug 2026-10-26T12:56:29Z. Other systems simple do not allow this. Claude tells me that the SQL standard does not allow it. I'm not sure why anyone would want to do it. But in any event, I believe it is now working as of this patch. (check-in: 36b78a7509 ... user: drh tags: trunk) | |
| 00:22 | Fix the REGEXP extension so that "|" has higher precedence than "^". Bug 2026-10-27T07:20:52Z (check-in: c6399317f0 ... user: drh tags: trunk) | |
| 00:01 | Improved formatting of quirky column names in ".mode line" in QRF. Bug 2026-10-27T07:26:52Z (check-in: 164b284fab ... user: drh tags: trunk) | |
|
2026-10-30
| ||
| 23:32 | In the ext/misc/csv.c extension, if the last row of CSV input is incomplete, fill it out with empty strings rather than NULLs. Bug 2026-10-28T05:07:03Z (check-in: fc7692c39b ... user: drh tags: trunk) | |
| 23:08 | When the zipfile extension writes a file with a timestamp before 1980-01-01T00:00:01, set the DOS timestamp to that minimum value so that can be displayed on Windows11, which appears to ignore the 0x5455 extended timestamp. Bug 2026-10-27T07:28:08Z (check-in: 8c3db88586 ... user: drh tags: trunk) | |
| 20:32 | Fix ALTER TABLE so that it works when a trigger contains an UPSERT with more than one ON CONFLICT clause. Report 2026-10-27T19:46:34Z. (check-in: 3c038169f7 ... user: dan tags: trunk) | |
| 19:22 | Simplify an ESM export construct. (check-in: 78d9fd1175 ... user: stephan tags: trunk) | |
| 19:14 | Update JS README.md to more closely reflect current reality. (check-in: 244db4ef9b ... user: stephan tags: trunk) | |
| 18:56 | JS internal docs and filtering out of state not needed in bundler-friendly builds. (check-in: 02a05ed7f0 ... user: stephan tags: trunk) | |
| 18:35 | Update RBU to correctly handle short-rows with non-NULL default values. Report 2026-10-20T03:22:29Z. (check-in: 2deabdd391 ... user: dan tags: trunk) | |
| 18:15 | JS internal doc modernization and removal of unnecessary globalThis references. (check-in: 984d7f0e57 ... user: stephan tags: trunk) | |
| 17:42 | Rename one of the JS files for consistency. (check-in: 47ccd1b823 ... user: stephan tags: trunk) | |
| 16:36 | Small performance optimization and size reduction to covering index detection. (check-in: 7b45acf8ca ... user: drh tags: trunk) | |
| 16:31 | JS: remove another superfluous globalThis reference. Internal doc tweaks. (check-in: 66dfdcd648 ... user: stephan tags: trunk) | |
| 16:21 | Improvements to the detection of partial indexes working as covering indexes. Enhancement request 2026-10-30T13:03:10Z (check-in: 2c20240ad2 ... user: drh tags: trunk) | |
| 15:51 | Add a missing preprocessor define which caused some JS pieces to inject into the global scope instead of file scope. (check-in: aa7f7af405 ... user: stephan tags: trunk) | |
| 15:46 | Rework sqlite3Worker1Promiser() to not need the globalThis binding. We still add that binding in non-ESM builds because docs have historically referred to it, but ESM builds have never liked that. (check-in: e0c59098f5 ... user: stephan tags: trunk) | |
| 15:09 | JS: rework sqlite3APIBootstrap() to avoid attaching it to the globalThis object. (check-in: acc2425a6c ... user: stephan tags: trunk) | |
| 11:13 | Optimization: Do not parse or record trigger definitions on a read-only database. (check-in: afa137dbeb ... user: drh tags: trunk) | |
|
2026-10-29
| ||
| 23:25 | Enhance the recover extension so that it uses alternative names for the rowid if its first choices are used for ordinary columns. Bug 2026-10-20T02:57:35Z (check-in: ee05abbb91 ... user: drh tags: trunk) | |
| 23:20 | A micro-optimization in the JS 'string:static' arg converter and improve associated tests. (check-in: 1688100029 ... user: stephan tags: trunk) | |
| 23:01 | Add a refcount to the WASM/JS auxdata dtor binding, keyed on the input Function object. Add a test which triggers the dtors more frequently (further demonstrating how costly this automated conversion is). (closed check-in: 262b0a2609 ... user: stephan tags: wasm-auxdata-dtor) | |
| 22:55 | Fix the recover extension so that it understands that INTEGER PRIMARY KEY DESC is not the same as the rowid. Bug 2026-10-20T02:57:07Z (check-in: d8c729e0f5 ... user: drh tags: trunk) | |
| 22:05 | Cleanups, docs, and tests for sqlite3_set_auxdata() dtor binding finalization. (check-in: 65aaa0c544 ... user: stephan tags: wasm-auxdata-dtor) | |
| 21:41 | JS test code cleanups. (check-in: d6f230c3aa ... user: stephan tags: wasm-auxdata-dtor) | |
| 21:17 | JS: add a test demonstrating the cost and lifetime management of automated JS-to-WASM destructor conversions for sqlite3_set_auxdata(). Whether to allow this from client code is still TBD because it comes equipped with a fully-loaded foot gun. (check-in: 111583f5dc ... user: stephan tags: wasm-auxdata-dtor) | |
| 20:40 | Merge trunk changes into wasm-auxdata-dtor to revive this experiment. (check-in: 9fd2c9c077 ... user: stephan tags: wasm-auxdata-dtor) | |
| 20:33 | JS: remove an outdated test warning and refine the sqlite3_set_auxdata() tests. (check-in: e6c2b84f26 ... user: stephan tags: trunk) | |