SQLite

All files named "ext/wasm/GNUmakefile"
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for ext/wasm/GNUmakefile

2024-04-25
06:52
[21f015f3] part of check-in [d99a01a0] wasm: add a makefile comment about the static sqlite3.h/c version info injected into the JS files possibly differing from the runtime-emited version info when a user provides their own sqlite3.c. (check-in: [d99a01a0] user: stephan branch: trunk, size: 54497)
2024-04-22
16:46
[0d5ccc8a] part of check-in [8fbda563] Extend the JS/WASM SEE build support by (A) filtering SEE-related bits out of the JS when not building with SEE and (B) accepting an optional key/textkey/hexkey option to the sqlite3.oo1.DB and subclass constructors to create/open SEE-encrypted databases with. Demonstrate SEE in the test app using the kvvfs. This obviates the changes made in [5c505ee8a7]. (check-in: [8fbda563] user: stephan branch: trunk, size: 54176)
2024-03-07
18:53
[4bb4cf70] part of check-in [9347d9b9] Resolve duplicate loading of promiser v2 demo code (a side effect of having done precisely what it was told to do). Consolidate demo-worker1-promiser(-esm).html/(m)js variants into central copies processed with c-pp. (check-in: [9347d9b9] user: stephan branch: wasm-promiser1-v2, size: 53954)
17:56
[fc361b47] part of check-in [aa877ce0] wasm promiser.v2 is essentially working but the demo code is double-loading the module for as-yet-undetermined reasons. (check-in: [aa877ce0] user: stephan branch: wasm-promiser1-v2, size: 53275)
16:04
[e04f36fe] part of check-in [0e272123] Initial work at getting sqlite3Worker1Promiser.v2() to return a Promise instead of using an onready() callback, and also creating an ESM build for promiser1 per user request. It seems to work but requires more testing. (check-in: [0e272123] user: stephan branch: wasm-promiser1-v2, size: 53098)
2024-03-06
08:45
[d71fa280] part of check-in [0bcbde7c] Wasm build tweaks to attempt to get the node.js-for-node.js build to use Emscripten's nodefs filesystem driver for persistent storage. This is completely untested - validating it requires a nodeist. (check-in: [0bcbde7c] user: stephan branch: wasm-nodefs, size: 52993)
2024-03-04
09:56
[92e92931] part of check-in [f6e88720] Document why the wasm build does not use Emscripten's -sSTRICT=1 flag and account for a behaviour change in emsdk 3.1.55 regarding the HEAPxyz symbols. (check-in: [f6e88720] user: stephan branch: trunk, size: 52828)
2024-02-05
03:56
[31634910] part of check-in [26f848e5] Extend [d294a23ed6d] to apply to all wasm speedtest1 builds. (check-in: [26f848e5] user: stephan branch: trunk, size: 52421)
02:36
[a0de0b77] part of check-in [d294a23e] wasm: squelch a new (and, in our case, invalid) warning from emcc 3.1.52. (check-in: [d294a23e] user: stephan branch: trunk, size: 52414)
2024-01-16
14:28
[8a4d5ca2] part of check-in [90dd5115] wasm build: reformulate an awk invocation to account for awks which do not support the -e flag. Problem reported on the forum via a docker-hosted build. (check-in: [90dd5115] user: stephan branch: branch-3.45, size: 52079)
2024-01-11
16:10
[867c903a] part of check-in [58366579] wasm build: reformulate an awk invocation to account for awks which do not support the -e flag. Problem reported on the forum via a docker-hosted build. (check-in: [58366579] user: stephan branch: wasm-post-3.45, size: 52257)
12:31
[693ff54a] part of check-in [ede945fd] Split the JS vfs/vtab helper code into discreet units as a step towards a build which optionally elides those pieces. This is an internal restructuring change and does not affect the API. (check-in: [ede945fd] user: stephan branch: wasm-post-3.45, size: 52156)
2024-01-08
07:52
[0f4ccfd3] part of check-in [0eddc20f] Make explicit which JS APIs are for internal use only by moving the JS-bound internal-use-only functions out of client-visible reach and renaming the WASM-exported ones from sqlite3_wasm... to sqlite3__wasm... (with two underscores). These have always been documented as internal-use-only, so this is not a breaking change except for clients which have ignored the docs. (check-in: [0eddc20f] user: stephan branch: wasm-post-3.45, size: 52051)
2024-01-02
09:20
[99aad6d6] part of check-in [d489232a] Elaborate on the various build flavors used by ext/wasm/. Doc changes only. (check-in: [d489232a] user: stephan branch: trunk, size: 51978)
09:03
[5b1f425d] part of check-in [7a7b295e] Update and clean up the in-makefile docs for ext/wasm. (check-in: [7a7b295e] user: stephan branch: trunk, size: 51504)
2024-01-01
05:58
[a8a171af] part of check-in [563d3131] WASM: various build cleanups and add initial infrastructure for a build which elides the oo1 API and its dependents (worker1 and promiser). Sidebar: an attempt was made to move generation of the build rules to an external script, but the mixed-mode make/script was even less legible than the $(eval) indirection going on in the makefile. (check-in: [563d3131] user: stephan branch: trunk, size: 48671)
2023-12-15
13:38
[62403519] part of check-in [7b9b757d] Correct --enable-sab flag in ext/wasm/GNUmakefile to fix a silent alhttpd args-parsing error. (check-in: [7b9b757d] user: stephan branch: trunk, size: 47521)
2023-11-30
20:34
[57439eec] part of check-in [883990e7] Add a basic batch-mode SQL runner for the SAH Pool VFS, for use in comparing it against WebSQL. Bring the WebSQL batch runner up to date, noting that it cannot run without addition of an "origin trial" activation key from Google because that's now the only way to enable WebSQL in Chrome (that part is not checked in because that key is private). Minor code-adjacent cleanups. (check-in: [883990e7] user: stephan branch: trunk, size: 47519)
2023-08-28
05:06
[7eea788d] part of check-in [289d2a0e] Resolve a makefile bug which causes sqlite3-worker1-bundler-friendly.mjs to be built incorrectly. Reported in forum post a874e435cf4690c1. (check-in: [289d2a0e] user: stephan branch: branch-3.43, size: 47928)
04:59
[0e362f3f] part of check-in [9d68c7ef] Resolve a makefile bug which causes sqlite3-worker1-bundler-friendly.mjs to be built incorrectly. Reported in forum post a874e435cf4690c1. (check-in: [9d68c7ef] user: stephan branch: trunk, size: 47519)
2023-08-14
14:21
[594f5a6d] part of check-in [ea574cd5] Remove some obsolete, commented-out makefile code. No functional or build changes. (check-in: [ea574cd5] user: stephan branch: wasm-post-343, size: 47503)
2023-08-12
21:08
[d02f3c87] part of check-in [0a6930a7] Update wasm's push-testing rule to exclude files which were recently removed from the build. (check-in: [0a6930a7] user: stephan branch: trunk, size: 47912)
2023-08-11
17:38
[8159bc5f] part of check-in [da6eaf8d] Add sqlite3.capi.sqlite3_js_posix_create_file() and oo1.OpfsDb.importDb() as alternatives for the newly-deprecated sqlite3_js_vfs_create_file(). (check-in: [da6eaf8d] user: stephan branch: trunk, size: 47945)
14:31
[887923b4] part of check-in [f3647a3a] Deprecate sqlite3_js_vfs_create_file() because, it was discovered today, its out-of-scope use of the sqlite3_vfs, sqlite3_file, and sqlite3_io_methods APIs triggers unresolvable assertions in the core when built with SQLITE_DEBUG. (check-in: [f3647a3a] user: stephan branch: trunk, size: 47837)
2023-08-10
17:32
[50a4bd40] part of check-in [4b0871fd] Move ext/wasm/version-info.c to tool/ for re-use in build other dist bundles. (check-in: [4b0871fd] user: stephan branch: trunk, size: 47656)
2023-08-03
16:21
[a33d4acc] part of check-in [163e3e44] More infrastructure towards binding FTS5 customization support to WASM. (check-in: [163e3e44] user: stephan branch: wasm-fts5, size: 47963)
2023-07-26
18:11
[d5e296c9] part of check-in [5b178f92] Initial experimentation with getting JSPI (JavaScript Promise Integration) support working. It builds, but requires disabling func argument count validation checks on sqlite3.wasm.xWrap()-processed exports and it crashes cryptically in wasm when the tests are run. (check-in: [5b178f92] user: stephan branch: jspi, size: 47930)
11:41
[ddf1aede] part of check-in [b8f708e3] Remove the batch SQL runner from the JS build's 'all' target, as it's long-since unused and adds noticable build time. Add makefile comments about JSPI. (check-in: [b8f708e3] user: stephan branch: trunk, size: 47660)
07:57
[f1aab41e] part of check-in [82ff7cc6] Reformulate [907dfc4a7aa1] using awk instead of sed for better cross-platform portability. (check-in: [82ff7cc6] user: stephan branch: trunk, size: 47250)
2023-07-25
12:26
[a3e316bf] part of check-in [907dfc4a] Reformulate a (sed -i) construct in ext/wasm/GNUmakefile to account for Mac's sed -i being different than GNU's. (check-in: [907dfc4a] user: stephan branch: trunk, size: 47262)
2023-07-22
19:57
[4e8260d0] part of check-in [d2e602cd] Add the opfs-sahpool sqlite3_vfs implementation to JS, offering an alternative to the other OPFS VFS (with tradeoffs). (check-in: [d2e602cd] user: stephan branch: trunk, size: 47127)
2023-07-20
09:06
[437beb3e] part of check-in [080a4d0a] Filter the OPFS VFSes out of the sqlite3-node.mjs build. Add another level of subdirectory to the sahpool to later enable transparent support of client-provided files under the VFS's root dir. Rework the awkward sahpool-via-oo1 mapping. (check-in: [080a4d0a] user: stephan branch: opfs-sahpool, size: 47289)
2023-07-17
07:43
[b4250914] part of check-in [5ad8f998] Another -DSQLITE_TEMP_STORE=3 to 2 change for the wasm build. (check-in: [5ad8f998] user: stephan branch: opfs-sahpool, size: 47284)
2023-07-15
11:23
[e38d5835] part of check-in [5d92d5f4] opfs-sahpool VFS now seems to work, in that it runs fine (and blazingly fast) in speedtest1. Add sqlite3.config options for the high-level configurable parts of opfs-sahpool. (check-in: [5d92d5f4] user: stephan branch: opfs-sahpool, size: 47284)
01:02
[1712a1fb] part of check-in [b4e005fd] More work on porting the sahpool bits. Revert to random backing-store names because it works better with the capacity-reduction algorithm. (check-in: [b4e005fd] user: stephan branch: opfs-sahpool, size: 47284)
2023-07-14
21:48
[b3d23a5f] part of check-in [ef96e6b5] Integrate the opfs-sahpool VFS into the JS build and get it loading (but it's still far from functional). (check-in: [ef96e6b5] user: stephan branch: opfs-sahpool, size: 47284)
12:21
[74e351ff] part of check-in [816b503f] Minor wasm build cleanups. (check-in: [816b503f] user: stephan branch: trunk, size: 47187)
2023-07-13
18:35
[e5973aed] part of check-in [7e4c594e] Reintroduce WASMFS+OPFS support, albeit as a separate (less portable) WASM build. (check-in: [7e4c594e] user: stephan branch: trunk, size: 47474)
14:08
[fec1dd8a] part of check-in [215c37fc] Significant surgery on the wasm build on the way to incorporating wasmfs as a first-class build option. (check-in: [215c37fc] user: stephan branch: wasmfs-2023, size: 47445)
10:41
[daedd26b] part of check-in [4850a9e2] More work on the wasmfs build. Resolve the inconsistent argument type passed to sqlite3InitModule() in such builds. (check-in: [4850a9e2] user: stephan branch: wasmfs-2023, size: 46341)
04:26
[319505a3] part of check-in [647761ed] Get wasmfs build and its bare-bones test app working again, albeit currently in ES6 mode only. (check-in: [647761ed] user: stephan branch: wasmfs-2023, size: 46520)
2023-03-09
08:51
[38700d50] part of check-in [a5db97fa] Experimental addition of sqlite3-node.mjs, for node.js, based on feedback from forum post ac7a94d4f77db235 and related off-list discussions. Build changes only - no code changes. (check-in: [a5db97fa] user: stephan branch: trunk, size: 46299)
2023-03-08
10:05
[97f01bb8] part of check-in [dd8612c8] Extend wasm build to support a custom sqlite3.c to support building against sqlite3-see.c. The JS code now binds the SEE-specific functions if it detects an SEE build. (check-in: [dd8612c8] user: stephan branch: trunk, size: 45040)
2023-03-07
19:12
[6c0c0e9d] part of check-in [dbbe8f25] Replace use of 'self' in JS code with 'globalThis', as that works in browsers and node environments. Avoid using globalThis.location if it's not set (e.g. in node). Based on feedback in forum post ac7a94d4f77db235. Minor JS build tweaks. (check-in: [dbbe8f25] user: stephan branch: trunk, size: 43895)
2023-03-05
07:44
[7bc0f80c] part of check-in [af312b13] Rename sqlite3-worker1-bundler-friendly.js to sqlite3-worker1-bundler-friendly.mjs and refactor it to work as an ES6 module, based on feedback in forum post a255f89c2eadf4c4. (check-in: [af312b13] user: stephan branch: trunk, size: 43804)
2023-03-02
06:58
[08fb7a68] part of check-in [75fdd5b8] Resolve a parallel build timing issue when building sqlite3.c/h from ext/wasm. For the time being, do not add sqlite3_wasm_extra_init.c to fiddle.wasm because it can cause duplicate definitions of extensions which are already built into the shell (a better resolution for this conflict is pending). No longer add sqlite3_wasm_extra_init.c to speedtest1.wasm because it's useless there. (check-in: [75fdd5b8] user: stephan branch: trunk, size: 43803)
05:51
[d5f0eac7] part of check-in [c23589d9] Rename some vars in the ext/wasm makefiles for consistency's sake. (check-in: [c23589d9] user: stephan branch: trunk, size: 43703)
2023-02-27
07:12
[122607cd] part of check-in [68a52caf] Extend wasm build to enable inclusion of client-custom C code, initialized via the SQLITE_EXTRA_INIT mechanism, per discussion in forum post 1e1c04f3ed1bc96b. (check-in: [68a52caf] user: stephan branch: trunk, size: 43695)
2023-02-21
18:47
[5a8dc82f] part of check-in [b5e0b696] Unconditionally disable -sSTRICT_JS flag in wasm build because it no longer works with emsdk 3.1.31+. (check-in: [b5e0b696] user: stephan branch: trunk, size: 42523)
2023-01-29
05:09
[5418b470] part of check-in [9062b311] Correct the handling of the worker1 and promiser JS files in the face of the bundler-friendly changes. Those files require separate, bundler-friendly copies. (check-in: [9062b311] user: stephan branch: trunk, size: 42556)
2023-01-28
09:51
[6fee35e9] part of check-in [3458a481] Makefile doc touchups - no code/build changes. (check-in: [3458a481] user: stephan branch: trunk, size: 41272)
09:11
[a32c527f] part of check-in [168e5a93] Overhaul ext/wasm/GNUmakefile to consolidate what amounts to much copy/paste/slightly-edit duplication into a single function, called once per distinctive build mode (vanilla, ESM, bundler-friendly). (check-in: [168e5a93] user: stephan branch: trunk, size: 41519)
04:20
[8d82b51a] part of check-in [24d3a53d] Add JS bundler-friendly JS build. Minor test code cleanups. (check-in: [24d3a53d] user: stephan branch: trunk, size: 43013)
2023-01-27
17:19
[217dcb2e] part of check-in [50cf4300] Cherrypick [3773934e91c20ca243] into trunk. (check-in: [50cf4300] user: stephan branch: trunk, size: 39688)
17:14
[31cf6243] part of check-in [3773934e] Extract emcc version in JS build and use it to conditionally set build flags. Initially a workaround for Emscripten ticket #18610 but may have other uses. (check-in: [3773934e] user: stephan branch: js-bundler-friendly, size: 42413)
03:18
[e1bd4abe] part of check-in [b7b896fb] More work on creating a separate sqlite3.js build which is hopefully friendly to JS bundlers. (check-in: [b7b896fb] user: stephan branch: js-bundler-friendly, size: 41923)
01:33
[9685958e] part of check-in [4271bf5f] Beginnings of a bundler-friendly build of sqlite3.mjs. Not yet ready for downstream testing. (check-in: [4271bf5f] user: stephan branch: js-bundler-friendly, size: 41824)
2023-01-18
17:39
[4ce83fdd] part of check-in [966b55c5] Emit sqlite3-api.(m)js during the JS build process, which are the JS APIs without the Emscripten/wasm-loading parts. They are hypothetically useful for arbitrary build environments/toolchains but have notable caveats related to the wasm imports, as elaborated on in the makefile. (check-in: [966b55c5] user: stephan branch: trunk, size: 39198)
2022-12-23
18:38
[ffe0e981] part of check-in [5d9a1471] Explicitly omit threading and extension loading from the ext/wasm/c-pp binary build to avoid a link error on some systems. (check-in: [5d9a1471] user: stephan branch: trunk, size: 37655)
2022-12-19
14:46
[06d385b5] part of check-in [49efcf6d] Minor sed script tweak in the wasm GNUmakefile for BSD portability, as reported in forum post 4a97813fcbd4f63e. (check-in: [49efcf6d] user: stephan branch: trunk, size: 37480)
2022-12-17
11:14
[5c3398af] part of check-in [32dc98c8] Update wasmfs.make to get WASMFS building again, but changes made to OPFS-over-WASMFS since we last tested it have made it incompatible with how we used it. It can now only be used from worker threads, eliminating the one benefit it had over the sqlite3_vfs OPFS implementation. Remove/amend references to WASMFS in the docs and remove all WASMFS-specific test app links from index.html. (check-in: [32dc98c8] user: stephan branch: trunk, size: 37479)
2022-12-15
02:26
[32e5d192] part of check-in [fa278022] Remove an unnecessary/obsolete Emscripten-specific export. (check-in: [fa278022] user: stephan branch: trunk, size: 37268)
2022-12-12
07:52
[32ad3deb] part of check-in [5a3f2224] Add sqlite3.mjs to the new 'quick' wasm build for the sake of the snapshot build. (check-in: [5a3f2224] user: stephan branch: trunk, size: 37429)
2022-12-11
07:53
[89feb939] part of check-in [6a61b14a] Minor build tweaks in ext/wasm to create a faster-running build for the common dev-mode cases. No code changes. (check-in: [6a61b14a] user: stephan branch: trunk, size: 37370)
2022-12-10
17:45
[3af95180] part of check-in [35a88747] Remove -flto from wasm build flags, as it increases build time and doesn't seem to have a measurable benefit. (check-in: [35a88747] user: stephan branch: trunk, size: 36926)
2022-12-06
06:09
[54c0db93] part of check-in [60482c97] Add a demonstration sqlite3_vtab/module implemented in JS, based on ext/misc/templatevtab.c. Add oo1.selectArrays() and selectObjects(). (check-in: [60482c97] user: stephan branch: wasm-vtab, size: 36915)
2022-12-03
11:16
[bfa47f16] part of check-in [eeb84ba5] JavaScript: add sqlite3.wasm.realloc(), sqlite3.capi.SQLITE_MAX_ALLOCATION_SIZE, and related tests. (check-in: [eeb84ba5] user: stephan branch: trunk, size: 36917)
03:06
[004f3662] part of check-in [b820db32] wasm build: rename the path to the wasm docs checkout, for clarity and consistency. (check-in: [b820db32] user: stephan branch: trunk, size: 36917)
02:42
[6f64170c] part of check-in [13eb1abd] wasm snapshot and doc-related build automation tweaks. (check-in: [13eb1abd] user: stephan branch: trunk, size: 36917)
2022-12-02
11:35
[54ab8da1] part of check-in [0881f3e9] Minor touchups to the JS test index page and test server push rules. (check-in: [0881f3e9] user: stephan branch: trunk, size: 36804)
10:43
[3ccde691] part of check-in [75811246] wasm builds: explicitly set a default stack size because emsdk 3.1.27 reduced it from 4MB to only 64kb, leading to memory corruption when kvvfs is used (it requires at least twice that for I/O). (check-in: [75811246] user: stephan branch: trunk, size: 36794)
07:14
[891c5ce2] part of check-in [75f610d3] Expand JS tests for db export/import and document reason it cannot currently work with kvvfs. Fix a minor JS build dependencies bug. Update page title with PASS/FAIL prefix for tester1.js to improve overview when launching multiple test tabs. Add ability of tester1 should-run-test predicates to report why a given test is disabled. (check-in: [75f610d3] user: stephan branch: trunk, size: 36544)
03:37
[6b90a38f] part of check-in [8e4d30ac] Remove extraneous/unused sqlite3.oo1.version object. Add httpd makefile target. (check-in: [8e4d30ac] user: stephan branch: trunk, size: 36546)
2022-11-30
18:21
[85fb066f] part of check-in [2eade7c7] Rename some JS files from X.js to X.c-pp.js to keep the maintainer, and downstream build customizers, aware that those files contain constructs specific to the c-pp preprocessor and will not run as-is in JS. (check-in: [2eade7c7] user: stephan branch: trunk, size: 36440)
07:17
[c6b88ce5] part of check-in [79832808] Rename some OPFS JS files. Prevent JS bindings of sqlite3_uri_...() from performing JS-to-C-string argument conversion on their first argument, as doing so is specifically illegal. (check-in: [79832808] user: stephan branch: trunk, size: 36417)
05:27
[a1a94ff4] part of check-in [e25d7b08] Refactor a significant chunk of the OPFS sqlite3_vfs init code into sqlite3.VfsHelper, and internal-use-only API encapsulating code relevant to creating new VFSes in JS. Intended to assist in pending experimentation with an alternative OPFS VFS. (check-in: [e25d7b08] user: stephan branch: trunk, size: 36417)
2022-11-21
06:07
[bc1696a1] part of check-in [07182dca] Add new JS tests dir to those pushed to the test server. (check-in: [07182dca] user: stephan branch: trunk, size: 36364)
2022-11-20
05:36
[712795c4] part of check-in [100a5968] Further minor cleanups in the JS build related to vanilla vs ESM. (check-in: [100a5968] user: stephan branch: trunk, size: 36352)
04:14
[003235fe] part of check-in [d10f385e] Generic cleanups and doc additions in the wasm build files. (check-in: [d10f385e] user: stephan branch: trunk, size: 35387)
01:15
[3de890d6] part of check-in [205884a2] Minor cleanups in the ESM-related preprocessor filtering. (check-in: [205884a2] user: stephan branch: trunk, size: 31972)
2022-11-19
16:16
[616c2a3e] part of check-in [90480586] Get tester1.js working via an ES6 worker module and add that variant to the dist zipfile. (check-in: [90480586] user: stephan branch: trunk, size: 31546)
05:26
[1e38a4f7] part of check-in [2e783670] Add build of sqlite3.mjs (ES6 module), add a test app for it, and include it in the dist build. (check-in: [2e783670] user: stephan branch: trunk, size: 31036)
02:51
[6a0d03e8] part of check-in [6b826e70] More work towards creation of a ES6 JS module. (check-in: [6b826e70] user: stephan branch: js-cpp, size: 29092)
2022-11-18
02:29
[3c97824c] part of check-in [49d70f07] Replace use of cpp with the fit-to-purpose c-pp to avoid cpp's C-centric/JS-unfriendly quirks. (check-in: [49d70f07] user: stephan branch: js-cpp, size: 28974)
2022-11-17
15:21
[5034e5c0] part of check-in [e047b33d] Merge trunk into js-cpp branch. (check-in: [e047b33d] user: stephan branch: js-cpp, size: 29117)
2022-11-16
21:39
[dd6352a5] part of check-in [85c3f2ac] wasm build: include FTS5 instead of FTS4, per /chat and HN discussions. (check-in: [85c3f2ac] user: stephan branch: trunk, size: 26987)
2022-11-03
22:51
[3aa8c160] part of check-in [e55d8eba] Add experimental esm target to ext/wasm/GNUmakefile to tell emcc to generate sqlite3.mjs (ES6 module) instead of sqlite3.js. Related to discussion at ed4596cf8496a39b. (check-in: [e55d8eba] user: stephan branch: trunk, size: 26987)
22:14
[5f04a470] part of check-in [718a6d37] Experimentally use clang's C preprocessor to filter #ifdef's out of the generated sqlite3-api.js, the goal being to see if we can feasibly use cpp to include ES6 module-specific code in the main code base and conditionally filter it out. (check-in: [718a6d37] user: stephan branch: js-cpp, size: 28586)
2022-11-02
14:08
[78b64d11] part of check-in [70ee6ee0] Minor build cleanups and fix a harmless race condition in the OPFS part of tester1.js. (check-in: [70ee6ee0] user: stephan branch: trunk, size: 26481)
2022-10-30
09:47
[49dbcffa] part of check-in [50f67884] Minor WASM build cleanups. Enable custom Module.instantiateWasm() when not in WASMFS mode (where it doesn't work). Add sqlite3.debugModule URL param to enable some module-init-time debugging output. (check-in: [50f67884] user: stephan branch: trunk, size: 26376)
08:39
[63d6b799] part of check-in [ed9d93c4] Reduce wasm module's starting memory from 128mb to 16mb. The latter value is needed only for WASMFS-based batch-runner.js, as WASMFS builds cannot be configured for dynamic memory growth without a tremendous performance hit. (check-in: [ed9d93c4] user: stephan branch: trunk, size: 26086)
2022-10-29
09:45
[94b55d2d] part of check-in [362ec11e] Expand and document the wasm doc-update make rules. Extend the dist rules to fail more readily if there's a problem. (check-in: [362ec11e] user: stephan branch: trunk, size: 25157)
07:54
[10fabfc0] part of check-in [3f16eb18] Move the sqlite3.capi.wasm namespace to sqlite3.wasm. This causes a tiny bit of naming confusion with the sqlite3.wasm *file*, but seems to make more sense than having it as a sub-namespace of capi. (check-in: [3f16eb18] user: stephan branch: trunk, size: 24499)
2022-10-26
06:05
[7a8c06f9] part of check-in [6f2a40d0] Add --download-version flag to ext/wasm/version-info.c and correct dist target's output version format to match. (check-in: [6f2a40d0] user: stephan branch: trunk, size: 24037)
2022-10-25
15:59
[ef0b2ab5] part of check-in [3d7b4f36] Rename fiddle.html to index.html and move fiddle push-to-server rules from GNUmakefile into fiddle.make. (check-in: [3d7b4f36] user: stephan branch: trunk, size: 24041)
08:41
[72f8ca58] part of check-in [9c8df130] Minor doc tweaks in the JS GNUmakefile. (check-in: [9c8df130] user: stephan branch: trunk, size: 24749)
2022-10-20
18:31
[645bd567] part of check-in [ac9af71b] Rename sqlite3_web_... to sqlite3_js_... Document the worker1.close.unlink option. Fix unlink usage in speedtest1.html. Minor JS build cleanups. (check-in: [ac9af71b] user: stephan branch: trunk, size: 24475)
2022-10-19
07:51
[6cd57a8c] part of check-in [c4a0f745] Update the wasm/js 'push' rule to account for this morning's changes. (check-in: [c4a0f745] user: stephan branch: trunk, size: 24467)
06:06
[1c60c998] part of check-in [a0ef0f32] Update the dist rules for this evening's js/wasm build changes and include an index.html specifically for the subset of apps included in the dist archive. (check-in: [a0ef0f32] user: stephan branch: trunk, size: 24439)
04:44
[e9686a03] part of check-in [6d468dab] Apply considerable acrobatics to get the JS/WASM deliverables building to and loadable from a directory other than the one which contains the app-level code. Requires an only-slightly-leaky abstraction of passing a URL argument when loading sqlite3.js but provides much greater flexibility in where the JS/WASM files are located. (check-in: [6d468dab] user: stephan branch: trunk, size: 24409)
01:07
[d5a39121] part of check-in [5b23e067] Considerable wasm/js build cleanups and reworking. Remove wasmfs builds from the end-user deliverables and disable the wasmfs build by default, per /chat discussion, as it doubles our deliverable count for only marginal gain. Attempt to move the sqlite3.js/wasm files into subdirectories but rediscovered that that breaks loading in Worker mode because URI resolution of the wasm files differs depending on whether the main script is loaded from a script tag or a Worker. (check-in: [5b23e067] user: stephan branch: trunk, size: 23832)
2022-10-18
20:36
[279fd458] part of check-in [2156f074] More work on the JS end-user deliverables. Add tool/stripccomments.c to support that. (check-in: [2156f074] user: stephan branch: trunk, size: 22571)
2022-10-17
17:34
[2fd83d71] part of check-in [f6cee114] Initial draft of archive generation for the wasm/js deliverables. (check-in: [f6cee114] user: stephan branch: trunk, size: 21790)
16:47
[a483eb1b] part of check-in [6e511df5] Repair version-info.c after a local mishap caused all of the intended edits from [36e197cb3d0c]/[e9b407a4d0a0] to get deleted before checkin. Simplify version-info build (only requires sqlite3.h, not the library). (check-in: [6e511df5] user: stephan branch: trunk, size: 21794)
15:52
[0fd09868] part of check-in [36e197cb] Rework ext/wasm/version-info.c to make it more useful for the upcoming dist build rules. (check-in: [36e197cb] user: stephan branch: trunk, size: 21728)
2022-10-16
16:38
[ce1eb95c] part of check-in [b5f462c2] JS: add build-time-generated version info to the sqlite3.version object. Remove some stray debug output from tester1.js. (check-in: [b5f462c2] user: stephan branch: trunk, size: 21568)
15:38
[e298b8a9] part of check-in [0f1a06e8] Add a top-level license and build-time version info header to generated sqlite3*.js. Correct a broken link in ext/wasm/index.html. (check-in: [0f1a06e8] user: stephan branch: trunk, size: 20996)
2022-10-13
16:48
[4ec27053] part of check-in [4e2a8aff] Move the rest of testing1.js into tester1.js and eliminate the dependency on jaccwabyt_test.c. Extend the list of default config-related #defines in sqlite3-wasm.c and reorganize them for maintainability. (check-in: [4e2a8aff] user: stephan branch: trunk, size: 20229)
2022-10-03
18:05
[8ab74ed1] part of check-in [88efe2a6] Omit WAL mode from the wasm build. (check-in: [88efe2a6] user: stephan branch: fiddle-opfs, size: 20885)
2022-09-29
22:08
[b313a820] part of check-in [88d9253b] Add JS infrastructure to ostensibly allow us to customize the wasm imports, which will hypothetically allow us to eliminate the dependency on EM_JS(), but the corresponding Emscripten glue-level feature currently breaks fatally with WASMFS builds so it's disabled. (check-in: [88d9253b] user: stephan branch: fiddle-opfs, size: 20863)
17:35
[4446cf93] part of check-in [27d24d5d] Ensure that the wasm builds always, even when passing -Ox flags from the CLI, use -g3 to avoid problems caused by symbol minification with optimization levels -O2 and higher. (check-in: [27d24d5d] user: stephan branch: fiddle-opfs, size: 19515)
13:17
[7cf6c434] part of check-in [0dbaa0e2] Rework the Emscripten-emitted module loader/init function such that it passes on the sqlite3 module, instead of the Emscripten module, to the first then() of sqlite3InitModule()'s returned Promise. This eliminates any need to mention the Emscripten module object in client-side code unless they want to configure it in advance for loading-status reports. (check-in: [0dbaa0e2] user: stephan branch: fiddle-opfs, size: 19353)
2022-09-28
13:01
[86ee7562] part of check-in [bbfcfba2] Correct duplicate copies of sqlite3-api.js being embedded in the wasmfs-based builds. (check-in: [bbfcfba2] user: stephan branch: fiddle-opfs, size: 19024)
07:53
[984c33a3] part of check-in [f5d6bf86] Work around broken -Os wasm builds by adding the -g3 flag. Unrelated documentation tweaks. (check-in: [f5d6bf86] user: stephan branch: fiddle-opfs, size: 19024)
2022-09-27
14:31
[0baf7702] part of check-in [f61475ef] Comment the -Os wasm builds as being broken (mysteriously missing JS bits). (check-in: [f61475ef] user: stephan branch: fiddle-opfs, size: 18730)
2022-09-21
20:24
[34a84e30] part of check-in [e1249369] Reformulate some JS to work around a buggy/broken code transformation in one of the Emscripten-driven code optimizers. (check-in: [e1249369] user: stephan branch: fiddle-opfs, size: 18652)
19:51
[592baa34] part of check-in [7c7fb753] Put pieces in place for fiddle to support opfs, but more cleanup is required in the sqlite3.js/fiddle connection. bigIntEnabled now defaults to whether the Emscripten's module has bigint enabled. Add wasm-sensible defaults for several SQLITE_ENABLE/OMIT flags in sqlite3-wasm.c. (check-in: [7c7fb753] user: stephan branch: fiddle-opfs, size: 18705)
08:39
[45b28154] part of check-in [113f8204] Move fiddle build rules into the wasm-centric build files. Add rule to push wasm bits to the wasm test server. (check-in: [113f8204] user: stephan branch: fiddle-opfs, size: 18728)
2022-09-20
16:10
[0635cb6e] part of check-in [e3d36dcd] Merge kv-vfs-magic-names branch into fiddle-opfs branch and make some kvvfs-relevant tweaks. (check-in: [e3d36dcd] user: stephan branch: fiddle-opfs, size: 18402)
14:21
[e6359a72] part of check-in [1e438554] Remove an obsolete file. (check-in: [1e438554] user: stephan branch: opfs-proxy-atomics, size: 18403)
10:11
[5b848d4d] part of check-in [88de2071] Remove extraneous result-code SAB slots. Doc additions. (check-in: [88de2071] user: stephan branch: opfs-proxy-atomics, size: 18482)
08:27
[b65cd280] part of check-in [a83ee308] An alternative messaging strategy for the OPFS VFS proxy which uses only SharedArrayBuffer and Atomics, instead of worker messages, for communication (only the initial one-time handshake during initialization uses worker messages). It runs speedtest1 approx. 15-20% faster but still 20-ish% slower than WASMFS Edit: further tests showed it to be very close to the same speed as the Worker-message variant, inconsistently faster or slower within a small margin of error. The former impl is easier to understand, though. (check-in: [a83ee308] user: stephan branch: opfs-proxy-atomics, size: 18432)
2022-09-19
13:16
[b6a5b642] part of check-in [ec09f32f] Merge kv-vfs branch into fiddle-opfs. Adjust various JS APIs and apps to deal with the new method of handling kvvfs. Adjust speedtest1 JS build to include sqlite3-api.js so that it can use kvvfs and opfs VFSes. Permit passing of the vfs as a URL parameter to certain demo/test apps. Milestone: speedtest-worker.html?vfs=opfs runs with the standalone OPFS impl. (check-in: [ec09f32f] user: stephan branch: fiddle-opfs, size: 18277)
00:40
[19ba3304] part of check-in [9a9eeebc] Disable build of wasmfs-using components on aarch64 (ARM), as wasmfs won't build there. (check-in: [9a9eeebc] user: stephan branch: fiddle-opfs, size: 17699)
2022-09-18
02:35
[24e5802c] part of check-in [1c660970] Move the OPFS VFS bits back into api/sqlite3-api-opfs.js. Refactor the OPFS VFS init process to use a Promise-returning function which the client must call, as that eliminates any uncertainty about when the VFS (necessarily activated asynchronously) actually becomes available to the client. (check-in: [1c660970] user: stephan branch: fiddle-opfs, size: 17190)
2022-09-16
20:16
[0323a759] part of check-in [afb79050] Merge kv-vfs branch into fiddle-opfs branch. Adjust speedtest1 --size flags to account for new size limit. (check-in: [afb79050] user: stephan branch: fiddle-opfs, size: 17116)
02:30
[ab4a43ee] part of check-in [d8df2592] Add batch-runner-kvvfs.html, a kvvfs-specific build of batch-runner.html. Reduce the speedtest1 --size X value for the batch list generation to 5 so that the kvvfs batch runner can handle it. (check-in: [d8df2592] user: stephan branch: fiddle-opfs, size: 17116)
01:05
[bec8b98f] part of check-in [13839759] Add return value checks to kvstorageWrite(), necessary for recognizing storage-full errors in the JS binding. speedtest1-kvvfs.html runs successfully on localStorage with --size 1 to 6 and starts failing with storage shortage at --size 7. (check-in: [13839759] user: stephan branch: fiddle-opfs, size: 17018)
2022-09-15
06:42
[104ad527] part of check-in [00ee49a3] More work on the synchronous OPFS experimentation. Numerous wasm/js build tweaks. Add speeedtest-wasmfs.html, the wasmfs/opfs counterpart of speedtest1.html. (check-in: [00ee49a3] user: stephan branch: fiddle-opfs, size: 16230)
03:09
[f06963ec] part of check-in [08476f3c] Split wasmfs-enabled build of sqlite3.js/wasm into sqlite3-wasmfs.js/wasm, as enabling wasmfs breaks all tests/demos which run from a Worker thread. (check-in: [08476f3c] user: stephan branch: fiddle-opfs, size: 15308)
2022-09-12
22:27
[b175a005] part of check-in [333a4572] Get testing1.js working with a kvvfs build. (check-in: [333a4572] user: stephan branch: fiddle-opfs, size: 15862)
20:18
[0434268a] part of check-in [8b1608a9] Merge kv-vfs branch into fiddle-opfs and add speedtest1-kvvfs.html test app (which currently fails early on). (check-in: [8b1608a9] user: stephan branch: fiddle-opfs, size: 15793)
16:09
[6e642a0d] part of check-in [a7d8b26a] Merge kv-vfs branch into fiddle-opfs branch to add kvvfs-based wasm build and demo. (check-in: [a7d8b26a] user: stephan branch: fiddle-opfs, size: 15897)
12:39
[12a672ab] part of check-in [1a2f24a0] Initial build of kvvfs in wasm. It loads but cannot find the VFS for as-yet-unknown reasons (sqlite3 shell works fine), and most APIs throw "null function or function signature mismatch" from deep within wasm, presumably as a side effect of the "missing" VFS. (check-in: [1a2f24a0] user: stephan branch: kv-vfs, size: 10832)
2022-09-11
04:49
[18b80a06] part of check-in [06610314] Add EM_JS() impl for kvstorageRead(). (check-in: [06610314] user: stephan branch: fiddle-opfs, size: 15803)
02:43
[e8dcbf6d] part of check-in [a4bd96f5] Initial prototype impls of write/delete-key ops for the pending kvvfs which use sessionStorage or localStorage for db page storage. read-key op is pending. (check-in: [a4bd96f5] user: stephan branch: fiddle-opfs, size: 15723)
2022-09-08
20:04
[04e1df08] part of check-in [5240fb4d] Minor build cleanups and tweaks in the speedtest1 wasm apps. (check-in: [5240fb4d] user: stephan branch: fiddle-opfs, size: 15675)
2022-09-06
23:04
[5c566211] part of check-in [5ea06236] Add a note about Emscripten's -sSINGLE_FILE flag, why it would be nice, and why we can't use it. (check-in: [5ea06236] user: stephan branch: fiddle-opfs, size: 15641)
20:17
[2333e782] part of check-in [40e60f57] Get speedtest1.js working with WASMFS/OPFS. (check-in: [40e60f57] user: stephan branch: fiddle-opfs, size: 15097)
16:47
[445b81c4] part of check-in [4441535e] Initial build of speedtest1.wasm and speedtest1.html with which to run it. (check-in: [4441535e] user: stephan branch: fiddle-opfs, size: 14168)
2022-09-03
11:41
[49d76f7b] part of check-in [36ceef94] wasm: minor text and build cleanups. (check-in: [36ceef94] user: stephan branch: fiddle-opfs, size: 13068)
2022-08-30
17:57
[fd1ba419] part of check-in [b26e2bc0] batch-runner.js: add rudimentary metrics export to CSV. Add a toggle to reverse the log output mode (in normal order or most recent first). (check-in: [b26e2bc0] user: stephan branch: fiddle-opfs, size: 12747)
10:04
[b5d1e285] part of check-in [06c106a7] batch-runner.js: move generated SQL files into ./sql and start adding hand-written ones (like the Mandelbrot) to that set. (check-in: [06c106a7] user: stephan branch: fiddle-opfs, size: 12638)
2022-08-29
18:58
[cabfbb17] part of check-in [24b82b95] Lots of tweaking in batch-runner.js. Minor internal API update in OO #1 API. (check-in: [24b82b95] user: stephan branch: fiddle-opfs, size: 12561)
12:39
[61c0d9dc] part of check-in [11f3ed61] Add batch-runner.js for running batch SQL scripts with timing info. (check-in: [11f3ed61] user: stephan branch: fiddle-opfs, size: 12483)
08:04
[12b4cefa] part of check-in [b5058f14] oo #1 api: correct a case where a null callback is called. Rename some vars for clarity. Increase wasm-side memory in order to be able to load the speedtest1 output. (check-in: [b5058f14] user: stephan branch: fiddle-opfs, size: 11912)
2022-08-23
17:02
[79f0ddba] part of check-in [c8eb3aa8] Wasm build flag tweaks and documentation. (check-in: [c8eb3aa8] user: stephan branch: fiddle-opfs, size: 11870)
2022-08-17
16:44
[19c21ce4] part of check-in [f5059ee6] Minor cleanups, reorgs, and doc updates for the JS APIs. Renamed sqlite3(-api)-worker.js to sqlite3(-api)-worker1.js, for symmetry with sqlite3-api-oo1.js. (check-in: [f5059ee6] user: stephan branch: fiddle-opfs, size: 11647)
2022-08-16
16:16
[b5b34ee0] part of check-in [6dad5e05] wasm: move another file and update testing1/testing2 to account for [e38d00c2b82d]. Disable wasmfs by default as it breaks the worker-based module loader (reason as yet unknown). (check-in: [6dad5e05] user: stephan branch: fiddle-opfs, size: 11646)
16:06
[e3f2a8ce] part of check-in [e38d00c2] wasm: disable shared cache mode by default. Experimentally move wasm-build generated files up one dir to rule the extra dir out as a problem for Emscripten-related worker-loading failures. (check-in: [e38d00c2] user: stephan branch: fiddle-opfs, size: 11646)
2022-08-13
16:36
[5c9b0813] part of check-in [75561dea] wasmfs: use unix-none VFS by default to avoid locking errors in non-OPFS mode. (check-in: [75561dea] user: stephan branch: fiddle-opfs, size: 11315)
16:11
[1bcfcde9] part of check-in [ae24ac0f] Add scratchpad/test app for WASMFS/OPFS running in the main window thread. Enable WASMFS by default in the library build. (check-in: [ae24ac0f] user: stephan branch: fiddle-opfs, size: 11258)
13:56
[15ee5d1e] part of check-in [41045be7] Cleanups in the wasmfs/opfs integration but disable it in order to get the build into a known-working state before continuing with experimentation. (check-in: [41045be7] user: stephan branch: fiddle-opfs, size: 11203)
2022-08-12
17:57
[c354ad5c] part of check-in [a16f0a46] Build fiddle with WASMFS OPFS support and attempt to use it if available. It does not work because of an inexplicable exception in Emscripten-generated code and perpetually-locked db, but it's not yet clear why. (check-in: [a16f0a46] user: stephan branch: fiddle-opfs, size: 10878)
2022-08-10
11:26
[5359a37f] part of check-in [27f9da4e] wasm refactoring part 2 of (apparently) 2: moved ext/fiddle/... into ext/wasm and restructured the core API-related parts of the JS/WASM considerably. (check-in: [27f9da4e] user: stephan branch: wasm-cleanups, size: 10813)
09:36
Renamed ext/fiddle/Makefile → ext/wasm/GNUmakefile. [c7125775] part of check-in [fb4eb930] wasm/fiddle refactoring part 1 of N: move fiddle app from ext/fiddle to ext/wasm/fiddle, which only contains files intended to be pushed to the live site. Disabled build of the non-fiddle wasm parts, pending a later step of the refactoring. (check-in: [fb4eb930] user: stephan branch: wasm-cleanups, size: 856)