sqlmath 2025.8.30 → 2025.9.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.npmignore CHANGED
@@ -1,12 +1,15 @@
1
1
  *
2
2
  .*
3
3
  node_modules
4
+
4
5
  !.npmignore
5
6
  !CHANGELOG.md
6
7
  !LICENSE
7
8
  !README.md
8
9
 
9
- !_binary_*
10
+ !_sqlmath*
10
11
  !jslint.mjs
11
12
  !sqlmath.mjs
13
+ !sqlmath_browser.mjs
12
14
  !sqlmath_custom.mjs
15
+ !test.mjs
package/CHANGELOG.md CHANGED
@@ -5,6 +5,22 @@
5
5
  - sqlite - Add similar error-handling from builtin-sql-function PERCENTILE() into custom-sql-function QUANTILE().
6
6
  - none
7
7
 
8
+ # v2025.9.30
9
+ - sqlmath - Update function dbExecProfile() with additional-arg sqlLength.
10
+ - sqlmath - Update function dbOpenAsync() with default-filename :memory:.
11
+ - coverage - Add coverage-directives '/*coverage-disable*/', '/*coverage-enable*/'. '//coverage-ignore-line'.
12
+ - sqlmath - Add function dbExecProfile() to profile sql-queries.
13
+ - sqlmath - Update function dbCallAsync() to include db.filename in error-message.
14
+ - sqlmath - Replace miniz-library with native-zib-library.
15
+ - sqlmath - ugly-hack - win32-sqlite-shell doesn't like nodejs-builtin-zlib, so link with external-zlib.
16
+ - sqlmath - Replace sql-functions ZLIB_COMPRESS() to GZIP_COMPRESS(), ZLIB_UNCOMPRESS() to GZIP_UNCOMPRESS().
17
+ - sqlmath - Prefer platform-native zlib over sqlmath_external_sqlite.c.
18
+ - sqlmath - bugfix - Fix sql-functions ZLIB_COMPRESS(), ZLIB_UNCOMPRESS() crashing sqlite-shell-executable.
19
+ - ml - Update sql-function LGBM_TRAINFROMTABLE() to use C_API_FEATURE_IMPORTANCE_GAIN instead of C_API_FEATURE_IMPORTANCE_SPLIT.
20
+ - sqlmath - Update function win_sinefit() to rename outputs from/to xx0/xxa, xx1/xxb, yy0/yya, yy1/yyb, rr0/rra, rr1/rrb.
21
+ - sqlmath - Update sql-function SINEFIT_REFITLAST() to create copy of wsf-blob, so original argument is not mutated.
22
+ - sqlmath - Update function win_sinefit() to allow outputting prm grr, mrr, vrr.
23
+
8
24
  # v2025.8.30
9
25
  - sqlite - Upgrade to sqlite-v3.50.4.
10
26
  - python - Add support for PEP 703 – Making the Global Interpreter Lock Optional in CPython.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
  # Status
5
- | Branch | [master<br>(v2025.8.30)](https://github.com/sqlmath/sqlmath/tree/master) | [beta<br>(Web Demo)](https://github.com/sqlmath/sqlmath/tree/beta) | [alpha<br>(Development)](https://github.com/sqlmath/sqlmath/tree/alpha) |
5
+ | Branch | [master<br>(v2025.9.30)](https://github.com/sqlmath/sqlmath/tree/master) | [beta<br>(Web Demo)](https://github.com/sqlmath/sqlmath/tree/beta) | [alpha<br>(Development)](https://github.com/sqlmath/sqlmath/tree/alpha) |
6
6
  |--:|:--:|:--:|:--:|
7
7
  | CI | [![ci](https://github.com/sqlmath/sqlmath/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/sqlmath/sqlmath/actions?query=branch%3Amaster) | [![ci](https://github.com/sqlmath/sqlmath/actions/workflows/ci.yml/badge.svg?branch=beta)](https://github.com/sqlmath/sqlmath/actions?query=branch%3Abeta) | [![ci](https://github.com/sqlmath/sqlmath/actions/workflows/ci.yml/badge.svg?branch=alpha)](https://github.com/sqlmath/sqlmath/actions?query=branch%3Aalpha) |
8
8
  | Coverage | [![coverage](https://sqlmath.github.io/sqlmath/branch-master/.artifact/coverage/coverage_badge.svg)](https://sqlmath.github.io/sqlmath/branch-master/.artifact/coverage/index.html) | [![coverage](https://sqlmath.github.io/sqlmath/branch-beta/.artifact/coverage/coverage_badge.svg)](https://sqlmath.github.io/sqlmath/branch-beta/.artifact/coverage/index.html) | [![coverage](https://sqlmath.github.io/sqlmath/branch-alpha/.artifact/coverage/coverage_badge.svg)](https://sqlmath.github.io/sqlmath/branch-alpha/.artifact/coverage/index.html) |
@@ -106,7 +106,7 @@ PORT=8080 sh jslint_ci.sh shHttpFileServer
106
106
  # License
107
107
  - [sqlite](https://github.com/sqlite/sqlite) is under [public domain](https://www.sqlite.org/copyright.html).
108
108
  - [jslint](https://github.com/jslint-org/jslint) is under [Unlicense License](https://github.com/jslint-org/jslint/blob/master/LICENSE).
109
- - [zlib](https://github.com/madler/zlib) is under [zlib License](https://github.com/madler/zlib/blob/v1.2.13/LICENSE).
109
+ - [zlib](https://github.com/madler/zlib) is under [zlib License](https://github.com/madler/zlib/blob/v1.3.1/LICENSE).
110
110
  - [cpplint.py](cpplint.py) is under [3-Clause BSD License](https://github.com/cpplint/cpplint/blob/2.0.0/LICENSE).
111
111
  - [indent.exe](indent.exe) is under [GPLv3 License](https://www.gnu.org/licenses/gpl-3.0.txt)<!--no-validate-->.
112
112
  - Everything else is under MIT License.
@@ -121,11 +121,11 @@ PORT=8080 sh jslint_ci.sh shHttpFileServer
121
121
  ```shell
122
122
  python -m build
123
123
  #
124
- twine upload --repository testpypi dist/sqlmath-2025.8.30*
125
- py -m pip install --index-url https://test.pypi.org/simple/ sqlmath==2025.8.30
124
+ twine upload --repository testpypi dist/sqlmath-2025.9.30*
125
+ py -m pip install --index-url https://test.pypi.org/simple/ sqlmath==2025.9.30
126
126
  #
127
- twine upload dist/sqlmath-2025.8.30*
128
- pip install sqlmath==2025.8.30
127
+ twine upload dist/sqlmath-2025.9.30*
128
+ pip install sqlmath==2025.9.30
129
129
  ```
130
130
 
131
131
 
@@ -142,9 +142,6 @@ pip install sqlmath==2025.8.30
142
142
  sh jslint_ci.sh shRollupUpgrade "3.50.3" "3.50.4" ".ci.sh sqlmath_external_sqlite.c"
143
143
  sh jslint_ci.sh shRollupUpgrade "3500300" "3500400" ".ci.sh sqlmath_external_sqlite.c"
144
144
  #
145
- # zlib
146
- # sh jslint_ci.sh shRollupUpgrade "1.3" "1.3.1" ".ci.sh sqlmath_external_zlib.c"
147
- #
148
145
  # shSqlmathUpdate
149
146
  read -p "Press Enter to shSqlmathUpdate:"
150
147
  sh jslint_ci.sh shSqlmathUpdate
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
package/jslint.mjs CHANGED
@@ -106,9 +106,9 @@
106
106
  formatted_message, free, freeze, from, froms, fsWriteFileWithParents,
107
107
  fud_stmt, functionName, function_list, function_stack, functions, get,
108
108
  getset, github_repo, globExclude, global, global_dict, global_list,
109
- holeList, htmlEscape, id, identifier, import, import_list, import_meta_url,
110
- inc, includeList, indent2, index, indexOf, init, initial, isArray,
111
- isBlockCoverage, isHole, isNaN, is_equal, is_weird, join, jslint,
109
+ holeList, htmlEscape, id, identifier, ignoreLine, import, import_list,
110
+ import_meta_url, inc, includeList, indent2, index, indexOf, init, initial,
111
+ isArray, isBlockCoverage, isHole, isNaN, is_equal, is_weird, join, jslint,
112
112
  jslint_apidoc, jslint_assert, jslint_charset_ascii, jslint_cli,
113
113
  jslint_edition, jslint_phase1_split, jslint_phase2_lex, jslint_phase3_parse,
114
114
  jslint_phase4_walk, jslint_phase5_whitage, jslint_report, json,
@@ -163,7 +163,7 @@ let jslint_charset_ascii = (
163
163
  + "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
164
164
  + "`abcdefghijklmnopqrstuvwxyz{|}~\u007f"
165
165
  );
166
- let jslint_edition = "v2025.3.31";
166
+ let jslint_edition = "v2025.9.1-beta";
167
167
  let jslint_export; // The jslint object to be exported.
168
168
  let jslint_fudge = 1; // Fudge starting line and starting
169
169
  // ... column to 1.
@@ -10882,12 +10882,15 @@ body {
10882
10882
  background: #9d9;
10883
10883
  }
10884
10884
  .coverage .count {
10885
- color: #666;
10885
+ color: #333;
10886
10886
  }
10887
10887
  .coverage .coverageIgnore {
10888
10888
  background: #ccc;
10889
10889
  }
10890
10890
  .coverage .coverageLow,
10891
+ .coverage .ignore {
10892
+ background: #ccc;
10893
+ }
10891
10894
  .coverage .uncovered {
10892
10895
  background: #ebb;
10893
10896
  }
@@ -10911,6 +10914,10 @@ body {
10911
10914
  .coverage tr:hover td {
10912
10915
  background: #7d7;
10913
10916
  }
10917
+ .coverage pre:hover span.ignore,
10918
+ .coverage tr:hover td.coverageIgnore {
10919
+ background: #ccc;
10920
+ }
10914
10921
  .coverage pre:hover span.uncovered,
10915
10922
  .coverage tr:hover td.coverageLow {
10916
10923
  background: #f99;
@@ -11112,6 +11119,7 @@ body {
11112
11119
  lineList.forEach(function ({
11113
11120
  count,
11114
11121
  holeList,
11122
+ ignoreLine,
11115
11123
  line,
11116
11124
  startOffset
11117
11125
  }, ii) {
@@ -11159,7 +11167,11 @@ body {
11159
11167
  // true.
11160
11168
 
11161
11169
  if (isHole) {
11162
- lineHtml += " class=\"uncovered\"";
11170
+ lineHtml += (
11171
+ ignoreLine
11172
+ ? " class=\"ignore\""
11173
+ : " class=\"uncovered\""
11174
+ );
11163
11175
  }
11164
11176
  lineHtml += ">";
11165
11177
  chunk = "";
@@ -11179,7 +11191,9 @@ body {
11179
11191
  </span>
11180
11192
  <span class="count
11181
11193
  ${(
11182
- count <= 0
11194
+ (count <= 0 && ignoreLine)
11195
+ ? "ignore"
11196
+ : count <= 0
11183
11197
  ? "uncovered"
11184
11198
  : ""
11185
11199
  )}"
@@ -11416,6 +11430,7 @@ function sentinel() {}
11416
11430
  functions,
11417
11431
  url: pathname
11418
11432
  }) {
11433
+ let ignoreBlock = false;
11419
11434
  let lineList;
11420
11435
  let linesCovered;
11421
11436
  let linesTotal;
@@ -11425,14 +11440,23 @@ function sentinel() {}
11425
11440
  source.replace((
11426
11441
  /^.*$/gm
11427
11442
  ), function (line, startOffset) {
11443
+ if (line === "/*coverage-disable*/") {
11444
+ ignoreBlock = true;
11445
+ }
11428
11446
  lineList[lineList.length - 1].endOffset = startOffset - 1;
11429
11447
  lineList.push({
11430
11448
  count: -1,
11431
11449
  endOffset: 0,
11432
11450
  holeList: [],
11451
+ ignoreLine: (
11452
+ ignoreBlock || line.endsWith("//coverage-ignore-line")
11453
+ ),
11433
11454
  line,
11434
11455
  startOffset
11435
11456
  });
11457
+ if (line === "/*coverage-enable*/") {
11458
+ ignoreBlock = false;
11459
+ }
11436
11460
  return "";
11437
11461
  });
11438
11462
  lineList.shift();
@@ -11485,11 +11509,13 @@ function sentinel() {}
11485
11509
  });
11486
11510
  });
11487
11511
  linesTotal = lineList.length;
11488
- linesCovered = lineList.filter(function ({
11489
- count
11512
+ linesCovered = 0;
11513
+ lineList.forEach(function ({
11514
+ count,
11515
+ ignoreLine
11490
11516
  }) {
11491
- return count > 0;
11492
- }).length;
11517
+ linesCovered += count > 0 || ignoreLine;
11518
+ });
11493
11519
  await moduleFs.promises.mkdir((
11494
11520
  modulePath.dirname(coverageDir + pathname)
11495
11521
  ), {
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "email": "kaizhu256@gmail.com",
4
4
  "name": "kai zhu"
5
5
  },
6
- "counter": 2,
6
+ "counter": 0,
7
7
  "description": "sqlite for data-science",
8
8
  "fileCount": 46,
9
9
  "homepage": "https://github.com/sqlmath/sqlmath",
@@ -32,5 +32,5 @@
32
32
  },
33
33
  "shCiArtifactUpload": 1,
34
34
  "shCiPublishNpm": 1,
35
- "version": "2025.8.30"
35
+ "version": "2025.9.30"
36
36
  }