]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Random wasm internal doc cleanups. No code changes.
authorstephan <stephan@noemail.net>
Wed, 3 Sep 2025 13:39:15 +0000 (13:39 +0000)
committerstephan <stephan@noemail.net>
Wed, 3 Sep 2025 13:39:15 +0000 (13:39 +0000)
FossilOrigin-Name: 70923a00cfca2c64b7c7c824325ab75cdd05d452b79d2eaf43297898af891c47

ext/wasm/README.md
ext/wasm/api/README.md
ext/wasm/api/extern-post-js.c-pp.js
ext/wasm/api/pre-js.c-pp.js
manifest
manifest.uuid

index c41e54bd2a47cda8a19b2e884d736dea643a5ad1..c22d62ef4a0b1e1d93a3a4a2cf6a275820ec19ea 100644 (file)
@@ -98,10 +98,10 @@ which (almost) all of the test and demo applications can be accessed.
 real utility when it's used in conjunction with the project's
 proprietary test suite, which most users don't have access to.)
 
-Note that when serving this app via [althttpd][], it must be a version
-from 2022-09-26 or newer so that it recognizes the `--enable-sab`
-flag, which causes althttpd to emit two HTTP response headers which
-are required to enable JavaScript's `SharedArrayBuffer` and `Atomics`
+When serving this app via [althttpd][], it must be a version from
+2022-09-26 or newer so that it recognizes the `--enable-sab` flag,
+which causes althttpd to emit two HTTP response headers which are
+required to enable JavaScript's `SharedArrayBuffer` and `Atomics`
 APIs. Those APIs are required in order to enable the [OPFS][]-related
 features in the apps which use them.
 
index ce7e58ebed6dad71a4d426fefc07678907b8adfd..31a84f0ce49153c514227f541630d4e7e8d65314 100644 (file)
@@ -16,9 +16,9 @@ multiple JS files because:
 3. Certain components must be in their own standalone files in order
    to be loaded as JS Workers.
 
-Note that the structure described here is the current state of things,
-as of this writing, but is not set in stone forever and may change
-at any time.
+The structure described here is the current state of things, as of
+this writing, but is not set in stone forever and may change at any
+time.
 
 The overall idea is that the following files get concatenated
 together, in the listed order, the resulting file is loaded by a
@@ -29,13 +29,15 @@ browser client:
   objects. This is exposed as a function, rather than objects, so that
   the next step can pass in a config object which abstracts away parts
   of the WASM environment, to facilitate plugging it in to arbitrary
-  WASM toolchains.
+  WASM toolchains. The bootstrapping function gets removed from the
+  global scope in a later stage of the bootstrapping process.
 - **`../common/whwasmutil.js`**\  
   A semi-third-party collection of JS/WASM utility code intended to
   replace much of the Emscripten glue. The sqlite3 APIs internally use
   these APIs instead of their Emscripten counterparts, in order to be
-  more portable to arbitrary WASM toolchains. This API is
-  configurable, in principle, for use with arbitrary WASM
+  more portable to arbitrary WASM toolchains and help reduce
+  regressions caused by toolchain-level behavioral changes. This API
+  is configurable, in principle, for use with arbitrary WASM
   toolchains. It is "semi-third-party" in that it was created in order
   to support this tree but is standalone and maintained together
   with...
@@ -48,8 +50,8 @@ browser client:
 - **`sqlite3-api-glue.js`**\  
   Invokes functionality exposed by the previous two files to flesh out
   low-level parts of `sqlite3-api-prologue.js`. Most of these pieces
-  related to populating the `sqlite3.capi.wasm` object. This file
-  also deletes most global-scope symbols the above files create,
+  involve populating the `sqlite3.capi.wasm` object. This file also
+  deletes most global-scope symbols the above files create,
   effectively moving them into the scope being used for initializing
   the API.
 - **`<build>/sqlite3-api-build-version.js`**\  
@@ -60,8 +62,8 @@ browser client:
   Provides a high-level object-oriented wrapper to the lower-level C
   API, colloquially known as OO API #1. Its API is similar to other
   high-level sqlite3 JS wrappers and should feel relatively familiar
-  to anyone familiar with such APIs. That said, it is not a "required
-  component" and can be elided from builds which do not want it.
+  to anyone familiar with such APIs. It is not a "required component"
+  and can be elided from builds which do not want it.
 - **`sqlite3-api-worker1.js`**\  
   A Worker-thread-based API which uses OO API #1 to provide an
   interface to a database which can be driven from the main Window
@@ -96,7 +98,7 @@ browser client:
       amalgamation.
 - **`sqlite3-vfs-opfs-sahpool.c-pp.js`**\  
   is another sqlite3 VFS supporting the [OPFS][], but uses a
-  completely different approach that the above-listed one.
+  completely different approach than the above-listed one.
 - **`sqlite3-api-cleanup.js`**\  
   The previous files do not immediately extend the library. Instead
   they add callback functions to be called during its
@@ -106,8 +108,11 @@ browser client:
   process, which is what finally executes the initialization code
   installed by the previous files. As of this writing, this code
   ensures that the previous files leave no more than a single global
-  symbol installed. When adapting the API for non-Emscripten
-  toolchains, this "should" be the only file where changes are needed.
+  symbol installed - `sqlite3InitModule()`. When adapting the API for
+  non-Emscripten toolchains, this "should" be the only file, of those
+  in this list, where changes are needed. The Emscripten-specific
+  pieces described below may also require counterparts in any as-yet
+  hypothetical alternative build.
 
 
 **Files with the extension `.c-pp.js`** are intended [to be processed
@@ -130,25 +135,25 @@ WASM-specific helper functions, at least one of which requires access
 to private/static `sqlite3.c` internals. `sqlite3.wasm` is compiled
 from this file rather than `sqlite3.c`.
 
-The following files are part of the build process but are injected
-into the build-generated `sqlite3.js` along with `sqlite3-api.js`.
+The following Emscripten-specific files are injected into the
+build-generated `sqlite3.js` along with `sqlite3-api.js`.
 
-- `extern-pre-js.js`\  
+- **`extern-pre-js.js`**\  
   Emscripten-specific header for Emscripten's `--extern-pre-js`
   flag. As of this writing, that file is only used for experimentation
   purposes and holds no code relevant to the production deliverables.
-- `pre-js.c-pp.js`\  
+- **`pre-js.c-pp.js`**\  
   Emscripten-specific header for Emscripten's `--pre-js` flag. This
   file is intended as a place to override certain Emscripten behavior
   before it starts up, but corner-case Emscripten bugs keep that from
   being a reality.
-- `post-js-header.js`\  
+- **`post-js-header.js`**\  
   Emscripten-specific header for the `--post-js` input. It opens up
   a lexical scope by starting a post-run handler for Emscripten.
-- `post-js-footer.js`\  
+- **`post-js-footer.js`**\  
   Emscripten-specific footer for the `--post-js` input. This closes
   off the lexical scope opened by `post-js-header.js`.
-- `extern-post-js.c-pp.js`\  
+- **`extern-post-js.c-pp.js`**\  
   Emscripten-specific header for Emscripten's `--extern-post-js`
   flag. This file overwrites the Emscripten-installed
   `sqlite3InitModule()` function with one which, after the module is
index 3598c0d6fe7912ecec31cee66e3778f733ab4eab..413e7e3bfe0b524bb2fe8e5a9c82a33a919fe560 100644 (file)
@@ -4,10 +4,9 @@
    a blank line for a sed-based kludge for the ES6 build. */
 /* extern-post-js.js must be appended to the resulting sqlite3.js
    file. It gets its name from being used as the value for the
-   --extern-post-js=... Emscripten flag. Note that this code, unlike
-   most of the associated JS code, runs outside of the
-   Emscripten-generated module init scope, in the current
-   global scope. */
+   --extern-post-js=... Emscripten flag. This code, unlike most of the
+   associated JS code, runs outside of the Emscripten-generated module
+   init scope, in the current global scope. */
 //#if target=es6-module
 const toExportForESM =
 //#endif
@@ -78,9 +77,9 @@ const toExportForESM =
          EmscriptenModule['ENVIRONMENT_IS_PTHREAD']){
         /** Workaround for wasmfs-generated worker, which calls this
             routine from each individual thread and requires that its
-            argument be returned. The conditional criteria above are
-            fragile, based solely on inspection of the offending code,
-            not public Emscripten details. */
+            argument be returned. The if() condition above is fragile,
+            based solely on inspection of the offending code, not
+            public Emscripten details. */
         //console.warn("sqlite3InitModule() returning E-module.",EmscriptenModule);
         return EmscriptenModule;
       }
index 4045fb11cdaf56ae948b328721f84c6b999799cb..7ee952365ab91b69fa69009a51c1de5d8ea87ae8 100644 (file)
@@ -23,7 +23,7 @@ sqlite3InitModuleState.debugModule('globalThis.location =',globalThis.location);
    1) If URL param named the same as `path` is set, it is returned.
 
    2) If sqlite3InitModuleState.sqlite3Dir is set, then (thatName + path)
-      is returned (note that it's assumed to end with '/').
+      is returned (it's assumed to end with '/').
 
    3) If this code is running in the main UI thread AND it was loaded
       from a SCRIPT tag, the directory part of that URL is used
index 07d8f64d9fee6a3d47c7c8c9e3056a80d4db0305..3db365154c2bbb9244f2fe243d53b005445aaba0 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\stest\scase\sfor\spushing\sWHERE\sconstraints\sinto\sa\sUNION\ssub-query\sthat\suses\svirtual\stables.
-D 2025-09-02T14:59:16.366
+C Random\swasm\sinternal\sdoc\scleanups.\sNo\scode\schanges.
+D 2025-09-03T13:39:15.597
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -579,7 +579,7 @@ F ext/session/test_session.c 8766b5973a6323934cb51248f621c3dc87ad2a98f023c3cc280
 F ext/wasm/EXPORTED_FUNCTIONS.fiddle.in 27450c8b8c70875a260aca55435ec927068b34cef801a96205adb81bdcefc65c
 F ext/wasm/GNUmakefile 35e730a01b32481f5483ea5bd72c3d4609e25f34cb5aab9f85eb3eba6f0c4935
 F ext/wasm/README-dist.txt f01081a850ce38a56706af6b481e3a7878e24e42b314cfcd4b129f0f8427066a
-F ext/wasm/README.md b89605f65661cf35bf034ff6d43e448cc169b8017fc105d498e33b81218b482c
+F ext/wasm/README.md 66ace67ae98a45e4116f2ca5425b716887bcee4d64febee804ff6398e1ae9ec7
 F ext/wasm/SQLTester/GNUmakefile e0794f676d55819951bbfae45cc5e8d7818dc460492dc317ce7f0d2eca15caff
 F ext/wasm/SQLTester/SQLTester.mjs 66e1adc3d79467b68e3e40614fd42c1a577c7e219ec0985db966eded52a941e5
 F ext/wasm/SQLTester/SQLTester.run.mjs 57f2adb33f43f2784abbf8026c1bfd049d8013af1998e7dcb8b50c89ffc332e0
@@ -589,12 +589,12 @@ F ext/wasm/api/EXPORTED_FUNCTIONS.sqlite3-core 2bcbbfe3b95c043ed6037e2708a2ee078
 F ext/wasm/api/EXPORTED_FUNCTIONS.sqlite3-extras cb4fa8842c875b6ee99381523792975c5ebb7371bd27fbd1bd863a43c7f3505a
 F ext/wasm/api/EXPORTED_FUNCTIONS.sqlite3-see fb29e62082a658f0d81102488414d422c393c4b20cc2f685b216bc566237957b
 F ext/wasm/api/EXPORTED_RUNTIME_METHODS.sqlite3-api 1ec3c73e7d66e95529c3c64ac3de2470b0e9e7fbf7a5b41261c367cf4f1b7287
-F ext/wasm/api/README.md c64ec8e84449c069e0217706d9d7d31b3bd53627228b2ba0c3cddbdc2350ca66
-F ext/wasm/api/extern-post-js.c-pp.js 3fcd904f1204685dea84e5ae90d8b7e65a1dcebab1e838386d8328b74cce46c9
+F ext/wasm/api/README.md 7f029c5fe83b3493931d2fb915e2febd3536267d538a56408a6fef284ea38d29
+F ext/wasm/api/extern-post-js.c-pp.js d8f5ffa354c790d89681d0a23594c02347d28046d60151bd598712fbdff6056c
 F ext/wasm/api/extern-pre-js.js cc61c09c7a24a07dbecb4c352453c3985170cec12b4e7e7e7a4d11d43c5c8f41
 F ext/wasm/api/post-js-footer.js 365405929f41ca0e6d389ed8a8da3f3c93e11d3ef43a90ae151e37fa9f75bf41
 F ext/wasm/api/post-js-header.js 53740d824e5d9027eb1e6fd59e216abbd2136740ce260ea5f0699ff2acb0a701
-F ext/wasm/api/pre-js.c-pp.js a614a2c82b12c4d96d8e3ba77330329efc53c4d56a8a7e60ade900f341866cfb
+F ext/wasm/api/pre-js.c-pp.js 58f823de197e2c10d76179aa05410a593b7ae03e1ece983bb42ffd818e8857e1
 F ext/wasm/api/sqlite3-api-cleanup.js 3ac1786e461ada63033143be8c3b00b26b939540661f3e839515bb92f2e35359
 F ext/wasm/api/sqlite3-api-glue.c-pp.js 0b76510f3650053bac67ca8947cb6ab9d050ad2218118a2e7796dd37be832ffa
 F ext/wasm/api/sqlite3-api-oo1.c-pp.js 852f2cd6acddbae487fc4f1c3ec952e6c1e2033aa4e6c7091d330d983c87c032
@@ -2172,8 +2172,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh 1ad0169b022b280bcaaf94a7fa231591be96b514230ab5c98fbf15cd7df842dd
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 55744ca8b8f2f95ba8bd3e01ef89e21e26c8547912c9d5637afe772d17f34486
-R be5632311d45cdba9967fc14583b2918
-U dan
-Z 29bc2637cfcfc43e3bf668a29f18cbf3
+P 13c80e903ee7f178528918716b11fc0b57fc50b923dcd8aeabf9e6e04e93cdae
+R d4bf7edf1868ff7033014bf0bf84ebaf
+U stephan
+Z d6448a1531d4b5bb134ac998a221cb98
 # Remove this line to create a well-formed Fossil manifest.
index 09baae5e153b37e340f0c1cebe45e44183c268b5..505145345efce4b68bf7f8763c5c8dc02b92c875 100644 (file)
@@ -1 +1 @@
-13c80e903ee7f178528918716b11fc0b57fc50b923dcd8aeabf9e6e04e93cdae
+70923a00cfca2c64b7c7c824325ab75cdd05d452b79d2eaf43297898af891c47