diff --git a/docz/docs/03-demos/02-frontend/09-blazor.md b/docz/docs/03-demos/02-frontend/09-blazor.md
index ec2ef01..f1fb5f6 100644
--- a/docz/docs/03-demos/02-frontend/09-blazor.md
+++ b/docz/docs/03-demos/02-frontend/09-blazor.md
@@ -296,8 +296,9 @@ This demo was tested in the following deployments:
| Architecture | Date |
|:-------------|:-----------|
| `darwin-x64` | 2025-04-17 |
-| `darwin-arm` | 2024-10-15 |
+| `darwin-arm` | 2025-04-24 |
| `win11-x64` | 2025-04-17 |
+| `win11-arm` | 2025-04-24 |
:::
diff --git a/docz/docs/03-demos/03-net/09-dom.md b/docz/docs/03-demos/03-net/09-dom.md
index a6c5b5f..0f5be1f 100644
--- a/docz/docs/03-demos/03-net/09-dom.md
+++ b/docz/docs/03-demos/03-net/09-dom.md
@@ -111,24 +111,25 @@ XLSX.writeFile(workbook, "SheetJSDOM.xlsx");
This demo was tested in the following deployments:
-| JSDOM | Date |
-|:--------|:-----------|
-| 25.0.1 | 2024-10-30 |
-| 24.1.3 | 2024-10-30 |
-| 23.2.0 | 2024-10-30 |
-| 22.1.0 | 2024-10-30 |
-| 21.1.2 | 2024-10-30 |
-| 20.0.3 | 2024-10-30 |
-| 19.0.0 | 2024-10-30 |
-| 18.1.1 | 2024-10-30 |
-| 17.0.0 | 2024-10-30 |
-| 16.7.0 | 2024-10-30 |
-| 15.2.1 | 2024-10-30 |
-| 14.1.0 | 2024-10-30 |
-| 13.2.0 | 2024-10-30 |
-| 12.2.0 | 2024-10-30 |
-| 11.12.0 | 2024-10-30 |
-| 10.1.0 | 2024-10-30 |
+| JSDOM | Date |
+|:----------|:-----------|
+| `26.1.0` | 2025-04-24 |
+| `25.0.1` | 2025-04-24 |
+| `24.1.3` | 2025-04-24 |
+| `23.2.0` | 2025-04-24 |
+| `22.1.0` | 2025-04-24 |
+| `21.1.2` | 2025-04-24 |
+| `20.0.3` | 2025-04-24 |
+| `19.0.0` | 2025-04-24 |
+| `18.1.1` | 2025-04-24 |
+| `17.0.0` | 2025-04-24 |
+| `16.7.0` | 2025-04-24 |
+| `15.2.1` | 2025-04-24 |
+| `14.1.0` | 2025-04-24 |
+| `13.2.0` | 2025-04-24 |
+| `12.2.0` | 2025-04-24 |
+| `11.12.0` | 2025-04-24 |
+| `10.1.0` | 2025-04-24 |
:::
@@ -175,20 +176,22 @@ This demo was tested in the following deployments:
| HappyDOM | Date |
|:---------|:-----------|
-| 15.7.4 | 2024-10-30 |
-| 14.12.3 | 2024-10-30 |
-| 13.10.1 | 2024-10-30 |
-| 12.10.3 | 2024-10-30 |
-| 11.2.0 | 2024-10-30 |
-| 10.11.2 | 2024-10-30 |
-| 9.20.3 | 2024-10-30 |
-| 8.9.0 | 2024-10-30 |
-| 7.8.1 | 2024-10-30 |
-| 6.0.4 | 2024-10-30 |
-| 5.4.0 | 2024-10-30 |
-| 4.1.0 | 2024-10-30 |
-| 3.2.2 | 2024-10-30 |
-| 2.55.0 | 2024-10-30 |
+| 17.4.4 | 2025-04-24 |
+| 16.8.1 | 2025-04-24 |
+| 15.11.7 | 2025-04-24 |
+| 14.12.3 | 2025-04-24 |
+| 13.10.1 | 2025-04-24 |
+| 12.10.3 | 2025-04-24 |
+| 11.2.0 | 2025-04-24 |
+| 10.11.2 | 2025-04-24 |
+| 9.20.3 | 2025-04-24 |
+| 8.9.0 | 2025-04-24 |
+| 7.8.1 | 2025-04-24 |
+| 6.0.4 | 2025-04-24 |
+| 5.4.0 | 2025-04-24 |
+| 4.1.0 | 2025-04-24 |
+| 3.2.2 | 2025-04-24 |
+| 2.55.0 | 2025-04-24 |
:::
@@ -246,8 +249,8 @@ This demo was tested in the following deployments:
| XMLDOM | Date |
|:---------|:-----------|
-| `0.9.5` | 2024-10-30 |
-| `0.8.10` | 2024-10-30 |
+| `0.9.8` | 2025-04-24 |
+| `0.8.10` | 2025-04-24 |
:::
@@ -295,8 +298,8 @@ This demo was tested in the following deployments:
| CheerioJS | Date |
|:--------------|:-----------|
-| `1.0.0` | 2024-10-30 |
-| `1.0.0-rc.12` | 2024-10-30 |
+| `1.0.0` | 2025-04-24 |
+| `1.0.0-rc.12` | 2025-04-24 |
:::
@@ -373,7 +376,7 @@ This demo was tested in the following deployments:
| Architecture | DenoDOM | Deno | Date |
|:-------------|:--------|:-------|:-----------|
| `darwin-x64` | 0.1.48 | 2.2.6 | 2025-03-31 |
-| `darwin-arm` | 0.1.48 | 2.0.4 | 2024-10-30 |
+| `darwin-arm` | 0.1.48 | 2.2.12 | 2025-04-24 |
| `win11-x64` | 0.1.48 | 2.0.4 | 2024-10-30 |
| `win11-arm` | 0.1.48 | 2.2.1 | 2025-02-23 |
| `linux-x64` | 0.1.48 | 2.0.5 | 2025-01-10 |
diff --git a/docz/docs/03-demos/12-static/08-nextjs.md b/docz/docs/03-demos/12-static/08-nextjs.md
index 2b8d0ff..1b34ab5 100644
--- a/docz/docs/03-demos/12-static/08-nextjs.md
+++ b/docz/docs/03-demos/12-static/08-nextjs.md
@@ -75,12 +75,13 @@ This demo was tested in the following environments:
| NextJS | NodeJS | Date |
|:----------|:----------|:-----------|
-| ` 9.5.5` | `16.20.2` | 2024-06-07 |
-| `10.2.3` | `16.20.2` | 2024-06-07 |
-| `11.1.4` | `16.20.2` | 2024-06-07 |
-| `12.3.4` | `20.14.0` | 2024-06-07 |
-| `13.5.6` | `20.14.0` | 2024-06-07 |
-| `14.2.3` | `20.14.0` | 2024-06-07 |
+| ` 9.5.5` | `16.20.2` | 2025-04-24 |
+| `10.2.3` | `16.20.2` | 2025-04-24 |
+| `11.1.4` | `16.20.2` | 2025-04-24 |
+| `12.3.7` | `20.14.0` | 2025-04-24 |
+| `13.5.11` | `20.14.0` | 2025-04-24 |
+| `14.2.28` | `20.14.0` | 2025-04-24 |
+| `15.3.1` | `20.18.0` | 2025-04-24 |
:::
@@ -113,7 +114,7 @@ but does not support live reloading.
:::caution pass
When the demo was last tested, Turbopack did not support true raw loaders. For
-development use, the normal `npx next dev` should be used.
+development use, the normal `npx -y next dev` should be used.
:::
@@ -583,6 +584,7 @@ npx -y next@13.5.6 telemetry status
```bash
mkdir sheetjs-next
cd sheetjs-next
+npm init -y
mkdir -p pages/sheets/
```
@@ -665,7 +667,7 @@ cd ../..
6) Test the deployment:
```bash
-npx next
+npx -y next
```
Open a web browser and access:
@@ -691,7 +693,7 @@ After saving the file, the website should refresh with the new row.
8) Stop the server and run a production build:
```bash
-npx next build
+npx -y next build
```
The final output will show a list of the routes and types:
@@ -726,7 +728,7 @@ was changed to a stylized lowercase F (`ƒ`) in recent versions of NextJS.
```bash
-npx next export
+npx -y next export
```
@@ -751,7 +753,7 @@ module.exports = {
After adding the line, run the `build` command:
```bash
-npx next build
+npx -y next build
```
@@ -791,7 +793,7 @@ After editing `next.config.js`, run the build command:
```bash
-npx next build
+npx -y next build
```
Inspecting the output, there should be no lines with `λ` or `ƒ`:
@@ -814,7 +816,7 @@ Route (pages) Size First Load JS
```bash
-npx next export
+npx -y next export
```
@@ -832,7 +834,7 @@ module.exports = {
After adding the line, run the `build` command:
```bash
-npx next build
+npx -y next build
```
@@ -843,7 +845,7 @@ The static site will be written to the `out` subfolder
13) Serve the static site:
```bash
-npx http-server out
+npx -y http-server out
```
The command will start a local HTTP server at `http://localhost:8080/` for
diff --git a/docz/docs/03-demos/32-extensions/03-excelapi.md b/docz/docs/03-demos/32-extensions/03-excelapi.md
index 29f92de..c2b8247 100644
--- a/docz/docs/03-demos/32-extensions/03-excelapi.md
+++ b/docz/docs/03-demos/32-extensions/03-excelapi.md
@@ -40,8 +40,9 @@ This demo was tested in the following deployments:
| OS and Version | Architecture | Excel | Date |
|:---------------|:-------------|:-----------|:-----------|
| macOS 15.3 | `darwin-x64` | 16.95.4 | 2025-04-17 |
-| macOS 14.5 | `darwin-arm` | 16.81 | 2024-12-22 |
+| macOS 14.5 | `darwin-arm` | 16.96.1 | 2025-04-24 |
| Windows 11 | `win11-x64` | 365 (2501) | 2025-01-19 |
+| Windows 11 | `win11-arm` | 365 (2503) | 2025-04-24 |
:::
@@ -200,7 +201,7 @@ If prompted to `Allow localhost loopback for Microsoft Edge WebView`, type
N and press Enter.
If prompted to install "Developer CA for Microsoft Office Add-ins" certificate,
-select "Yes"
+select "Yes". On macOS, the `security` popup will ask for a password.
If Windows Firewall prompts to allow Node.js on private networks, select "Yes"
A new terminal window running NodeJS will be created. Keep the window open.
diff --git a/docz/docs/03-demos/32-extensions/10-stata.md b/docz/docs/03-demos/32-extensions/10-stata.md
index c4fd725..808f0d3 100644
--- a/docz/docs/03-demos/32-extensions/10-stata.md
+++ b/docz/docs/03-demos/32-extensions/10-stata.md
@@ -54,7 +54,7 @@ This demo was tested in the following deployments:
| Architecture | Version | Date |
|:-------------|:------------------|:-----------|
| `darwin-x64` | `18.5` (StataNow) | 2025-01-08 |
-| `darwin-arm` | `18.5` (StataNow) | 2024-12-15 |
+| `darwin-arm` | `18.5` (StataNow) | 2025-04-24 |
| `win11-x64` | `18.5` (StataNow) | 2024-12-19 |
| `win11-arm` | `18.5` (StataNow) | 2025-02-23 |
| `linux-x64` | `18.5` (StataNow) | 2025-01-09 |
diff --git a/docz/docs/03-demos/37-bigdata/01-stream.md b/docz/docs/03-demos/37-bigdata/01-stream.md
index dde4356..0a00872 100644
--- a/docz/docs/03-demos/37-bigdata/01-stream.md
+++ b/docz/docs/03-demos/37-bigdata/01-stream.md
@@ -182,22 +182,22 @@ This demo was tested in the following deployments:
| Node Version | Date | Node Status when tested |
|:-------------|:-----------|:------------------------|
-| `0.12.18` | 2024-07-18 | End-of-Life |
-| `4.9.1` | 2024-07-18 | End-of-Life |
-| `6.17.1` | 2024-07-18 | End-of-Life |
-| `8.17.0` | 2024-07-18 | End-of-Life |
-| `10.24.1` | 2024-07-18 | End-of-Life |
-| `12.22.12` | 2024-07-18 | End-of-Life |
-| `14.21.3` | 2024-07-18 | End-of-Life |
-| `16.20.2` | 2024-07-18 | End-of-Life |
-| `18.20.4` | 2024-07-18 | Maintenance LTS |
-| `20.15.1` | 2024-07-18 | Active LTS |
-| `22.5.0` | 2024-07-18 | Current |
+| `0.12.18` | 2025-04-24 | End-of-Life |
+| `4.9.1` | 2025-04-24 | End-of-Life |
+| `6.17.1` | 2025-04-24 | End-of-Life |
+| `8.17.0` | 2025-04-24 | End-of-Life |
+| `10.24.1` | 2025-04-24 | End-of-Life |
+| `12.22.12` | 2025-04-24 | End-of-Life |
+| `14.15.5` | 2025-04-24 | End-of-Life |
+| `16.20.2` | 2025-04-24 | End-of-Life |
+| `18.20.8` | 2025-04-24 | Maintenance LTS |
+| `20.18.0` | 2025-04-24 | Active LTS |
+| `22.14.0` | 2025-04-24 | Current |
While streaming methods work in End-of-Life versions of NodeJS, production
deployments should upgrade to a Current or LTS version of NodeJS.
-This demo was also tested against BunJS `1.1.18` on 2024-07-18.
+This demo was also tested against BunJS `1.2.10` on 2025-04-24.
:::
@@ -285,8 +285,8 @@ Each browser demo was tested in the following environments:
| Browser | Date |
|:-------------|:-----------|
-| Chromium 126 | 2024-07-18 |
-| Safari 17.4 | 2024-07-18 |
+| Chromium 135 | 2025-04-24 |
+| Safari 17.5 | 2025-04-24 |
| Konqueror 22 | 2025-04-23 |
:::
@@ -519,7 +519,12 @@ stream.to_csv(wb.Sheets[wb.SheetNames[0]]).resume();`}
:::note Tested Deployments
-This demo was last tested on 2024-07-18 against Deno `1.45.2`.
+This demo was tested in the following deployments:
+
+| Deno | Date |
+|:----------|:-----------|
+| `1.46.3` | 2025-04-24 |
+| `2.2.11` | 2025-04-24 |
:::
diff --git a/docz/docs/03-demos/42-engines/02-v8.md b/docz/docs/03-demos/42-engines/02-v8.md
index 3b87e16..f8d6525 100644
--- a/docz/docs/03-demos/42-engines/02-v8.md
+++ b/docz/docs/03-demos/42-engines/02-v8.md
@@ -1483,7 +1483,7 @@ This demo was last tested in the following deployments:
| Architecture | V8 Version | Python | Date |
|:-------------|:--------------|:---------|:-----------|
| `darwin-x64` | `13.1.201.22` | `3.13.1` | 2025-03-31 |
-| `darwin-arm` | `13.0.245.16` | `3.13.0` | 2024-10-20 |
+| `darwin-arm` | `13.1.201.22` | `3.13.2` | 2025-04-24 |
:::
@@ -1514,8 +1514,8 @@ The wheel can be downloaded and forcefully installed. The following commands
download and install version `13.0.245.16` for Python `3.13` on `darwin-arm`:
```bash
-curl -LO https://github.com/cloudflare/stpyv8/releases/download/v13.0.245.16/stpyv8-13.0.245.16-cp313-cp313-macosx_14_0_arm64.whl
-sudo python -m pip install --upgrade stpyv8-13.0.245.16-cp313-cp313-macosx_14_0_arm64.whl --break-system-packages
+curl -LO https://github.com/cloudflare/stpyv8/releases/download/v13.1.201.22/stpyv8-13.1.201.22-cp313-cp313-macosx_14_0_arm64.whl
+sudo python -m pip install --upgrade stpyv8-13.1.201.22-cp313-cp313-macosx_14_0_arm64.whl --break-system-packages
```
:::
@@ -1573,7 +1573,7 @@ This demo was last tested in the following deployments:
| Architecture | V8 Version | Crate | Date |
|:-------------|:--------------|:----------|:-----------|
| `darwin-x64` | `13.5.212.10` | `136.0.0` | 2025-04-21 |
-| `darwin-arm` | `12.6.228.3` | `0.92.0` | 2024-12-20 |
+| `darwin-arm` | `13.5.212.10` | `136.0.0` | 2025-04-24 |
| `win11-x64` | `12.6.228.3` | `0.92.0` | 2024-12-20 |
| `linux-x64` | `12.6.228.3` | `0.92.0` | 2025-01-02 |
| `linux-arm` | `13.4.114.9` | `134.4.0` | 2025-02-15 |
diff --git a/docz/docs/03-demos/42-engines/08-quickjs.md b/docz/docs/03-demos/42-engines/08-quickjs.md
index f8e2b9f..da2dbec 100644
--- a/docz/docs/03-demos/42-engines/08-quickjs.md
+++ b/docz/docs/03-demos/42-engines/08-quickjs.md
@@ -264,7 +264,7 @@ This demo was tested in the following deployments:
| Architecture | Library | Git Commit | Date |
|:-------------|:-----------|:-----------|:-----------|
| `darwin-x64` | QuickJS | `0d7aaed` | 2025-03-31 |
-| `darwin-arm` | QuickJS | `6e2e68f` | 2024-12-17 |
+| `darwin-arm` | QuickJS | `3306254` | 2025-04-24 |
| `win11-x64` | QuickJS-NG | `865ba1f` | 2025-04-18 |
| `win11-arm` | QuickJS-NG | `865ba1f` | 2025-04-18 |
| `linux-x64` | QuickJS | `6e2e68f` | 2025-01-09 |
@@ -281,7 +281,7 @@ When the demo was tested, `0d7aaed` was the HEAD commit on the `master` branch.
```bash
git clone https://github.com/bellard/quickjs
cd quickjs
-git checkout 0d7aaed
+git checkout 3306254
make
cd ..
```
diff --git a/tests/bigdata-stream-bun.sh b/tests/bigdata/stream-bun.sh
similarity index 100%
rename from tests/bigdata-stream-bun.sh
rename to tests/bigdata/stream-bun.sh
diff --git a/tests/bigdata-stream-nodejs.sh b/tests/bigdata/stream-nodejs.sh
similarity index 76%
rename from tests/bigdata-stream-nodejs.sh
rename to tests/bigdata/stream-nodejs.sh
index 01b0a9c..92924cd 100755
--- a/tests/bigdata-stream-nodejs.sh
+++ b/tests/bigdata/stream-nodejs.sh
@@ -1,5 +1,6 @@
#!/bin/bash
# https://docs.sheetjs.com/docs/demos/bigdata/stream#nodejs
+. ~/.bashrc ## This is apparently needed in macos
cd /tmp
rm -rf sheetjs-stream
@@ -13,9 +14,10 @@ curl -LO https://docs.sheetjs.com/stream/SheetJSNodeJStream.js
curl -LO https://docs.sheetjs.com/pres.xlsx
-# this version uses `n` to cycle through node versions
+# this version uses `nvm` to cycle through node versions
for n in 0.12 4 6 8 10 12 14 16 18 20 22; do
- sudo n $n
+ #sudo n $n
+ nvm use $n
node --version
node SheetJSNodeJStream.js pres.xlsx
done
diff --git a/tests/data-knexjs.sh b/tests/data/knexjs.sh
similarity index 100%
rename from tests/data-knexjs.sh
rename to tests/data/knexjs.sh
diff --git a/tests/data-postgres.sh b/tests/data/postgres.sh
similarity index 100%
rename from tests/data-postgres.sh
rename to tests/data/postgres.sh
diff --git a/tests/dom-cheerio.sh b/tests/dom/cheerio.sh
similarity index 100%
rename from tests/dom-cheerio.sh
rename to tests/dom/cheerio.sh
diff --git a/tests/dom-happydom.sh b/tests/dom/happydom.sh
similarity index 95%
rename from tests/dom-happydom.sh
rename to tests/dom/happydom.sh
index 715cc52..1431089 100755
--- a/tests/dom-happydom.sh
+++ b/tests/dom/happydom.sh
@@ -11,7 +11,7 @@ npm i --save https://cdn.sheetjs.com/xlsx-latest/xlsx-latest.tgz
curl -LO https://docs.sheetjs.com/dom/SheetJSHappyDOM.js
curl -LO https://docs.sheetjs.com/dom/SheetJSTable.html
-for n in {2..15}; do
+for n in {2..17}; do
rm -f SheetJSHappyDOM.xlsx
npm i --save happy-dom@$n
npm ls | grep happy-dom
diff --git a/tests/dom-jsdom.sh b/tests/dom/jsdom.sh
similarity index 97%
rename from tests/dom-jsdom.sh
rename to tests/dom/jsdom.sh
index ca21d34..38076ab 100755
--- a/tests/dom-jsdom.sh
+++ b/tests/dom/jsdom.sh
@@ -27,7 +27,7 @@ EOF
curl -LO https://docs.sheetjs.com/dom/SheetJSTable.html
-for n in {10..25}; do
+for n in {10..26}; do
rm -f SheetJSDom.xlsx
npm i --save jsdom@$n
npm ls | grep jsdom
diff --git a/tests/dom-xmldom.sh b/tests/dom/xmldom.sh
similarity index 100%
rename from tests/dom-xmldom.sh
rename to tests/dom/xmldom.sh