From 892396d40f5aa95927bc87acf71a21e721e6b3c3 Mon Sep 17 00:00:00 2001 From: SheetJS Date: Sun, 23 Feb 2025 20:17:05 -0500 Subject: [PATCH] Windows 11 ARM Tests --- docz/data/mobile.xls | 2 +- .../01-installation/07-bun.md | 5 +- docz/docs/03-demos/01-math/21-pandas.md | 4 +- docz/docs/03-demos/03-net/09-dom.md | 2 +- docz/docs/03-demos/17-mobile/04-ionic.md | 43 +++++++++------ docz/docs/03-demos/19-desktop/01-electron.md | 2 +- docz/docs/03-demos/19-desktop/02-nwjs.md | 5 +- docz/docs/03-demos/19-desktop/03-wails.md | 2 +- docz/docs/03-demos/19-desktop/04-tauri.md | 3 +- .../docs/03-demos/19-desktop/05-neutralino.md | 2 +- .../03-demos/19-desktop/06-reactnative.md | 31 ++++++++--- docz/docs/03-demos/20-cli/03-nexe.md | 53 ++++++++++++++++--- docz/docs/03-demos/20-cli/05-pkg.md | 23 +++++++- docz/docs/03-demos/20-cli/11-nodesea.md | 4 +- docz/docs/03-demos/20-cli/12-bunsea.md | 2 +- docz/docs/03-demos/20-cli/13-denosea.md | 2 +- docz/docs/03-demos/32-extensions/10-stata.md | 8 ++- docz/docs/03-demos/42-engines/01-duktape.md | 9 ++-- docz/docs/03-demos/42-engines/02-v8.md | 2 +- docz/docs/03-demos/42-engines/05-jint.md | 10 ++-- docz/docs/03-demos/42-engines/06-goja.md | 2 +- docz/docs/03-demos/42-engines/08-quickjs.md | 34 +++++++++--- docz/docs/03-demos/42-engines/09-hermes.md | 27 +++++++++- docz/docs/03-demos/42-engines/15-rb.md | 14 +++-- docz/docs/03-demos/42-engines/20-chakra.md | 2 +- docz/docs/03-demos/42-engines/21-boa.md | 2 +- .../03-demos/42-engines/23-jerryscript.md | 2 +- docz/docs/03-demos/42-engines/25-mujs.md | 2 +- docz/docs/03-demos/42-engines/26-jurassic.md | 23 +++++++- docz/docs/07-csf/03-sheet.md | 4 +- docz/docs/07-csf/07-features/03-hyperlinks.md | 4 +- docz/docs/07-csf/07-features/04-comments.md | 2 +- docz/docs/07-csf/07-features/06-nf.md | 2 +- docz/docs/09-miscellany/05-contributing.md | 2 +- 34 files changed, 251 insertions(+), 85 deletions(-) diff --git a/docz/data/mobile.xls b/docz/data/mobile.xls index ef09aac..2a3408f 100644 --- a/docz/data/mobile.xls +++ b/docz/data/mobile.xls @@ -121,7 +121,7 @@ - + diff --git a/docz/docs/02-getting-started/01-installation/07-bun.md b/docz/docs/02-getting-started/01-installation/07-bun.md index cb75d70..fabbdc3 100644 --- a/docz/docs/02-getting-started/01-installation/07-bun.md +++ b/docz/docs/02-getting-started/01-installation/07-bun.md @@ -124,7 +124,7 @@ This demo was last tested in the following deployments: | `darwin-x64` | `1.1.39` | 2024-12-17 | | `darwin-arm` | `1.2.2` | 2025-02-16 | | `win11-x64` | `1.1.42` | 2024-12-22 | -| `win11-arm` | `1.1.40` | 2024-12-19 | +| `win11-arm` | `1.2.3` | 2025-02-23 | | `linux-x64` | `1.1.40` | 2024-12-19 | | `linux-arm` | `1.2.2` | 2025-02-16 | @@ -249,7 +249,7 @@ This procedure will generate `app.js`. 4) Remove the module artifacts and original script: ```bash -rm package.json bun.lockb SheetJSBun.js +rm package.json bun.lock bun.lockb SheetJSBun.js rm -rf ./node_modules ``` @@ -259,6 +259,7 @@ PowerShell does not support `rm -rf`. Instead, each file must be removed: ```powershell title="Windows Powershell commands" rm package.json +rm bun.lock rm bun.lockb rm SheetJSBun.js rm .\\node_modules -r -fo diff --git a/docz/docs/03-demos/01-math/21-pandas.md b/docz/docs/03-demos/01-math/21-pandas.md index 8f32553..66ef270 100644 --- a/docz/docs/03-demos/01-math/21-pandas.md +++ b/docz/docs/03-demos/01-math/21-pandas.md @@ -43,7 +43,7 @@ This demo was tested in the following deployments: | `darwin-x64` | Duktape `2.7.0` | 2.2.3 | 3.13.1 | 2024-12-31 | | `darwin-arm` | Duktape `2.7.0` | 2.2.2 | 3.12.3 | 2024-06-30 | | `win11-x64` | Duktape `2.7.0` | 2.2.3 | 3.11.8 | 2024-12-21 | -| `win11-arm` | Duktape `2.7.0` | 2.2.2 | 3.11.5 | 2024-06-20 | +| `win11-arm` | Duktape `2.7.0` | 2.2.3 | 3.13.2 | 2025-02-23 | | `linux-x64` | Duktape `2.7.0` | 1.5.3 | 3.11.7 | 2025-01-01 | | `linux-arm` | Duktape `2.7.0` | 1.5.3 | 3.11.2 | 2025-02-16 | @@ -530,7 +530,7 @@ This demo was tested in the following deployments: | `darwin-x64` | Duktape `2.7.0` | 1.18.0 | 3.13.1 | 2024-12-31 | | `darwin-arm` | Duktape `2.7.0` | 0.20.31 | 3.12.3 | 2024-06-30 | | `win11-x64` | Duktape `2.7.0` | 1.17.1 | 3.11.8 | 2024-12-21 | -| `win11-arm` | Duktape `2.7.0` | 0.20.31 | 3.11.5 | 2024-06-20 | +| `win11-arm` | Duktape `2.7.0` | 1.23.0 | 3.13.2 | 2025-02-23 | | `linux-x64` | Duktape `2.7.0` | 1.18.0 | 3.11.7 | 2025-01-01 | | `linux-arm` | Duktape `2.7.0` | 1.22.0 | 3.11.2 | 2025-02-16 | diff --git a/docz/docs/03-demos/03-net/09-dom.md b/docz/docs/03-demos/03-net/09-dom.md index 1fa2066..d9aa18b 100644 --- a/docz/docs/03-demos/03-net/09-dom.md +++ b/docz/docs/03-demos/03-net/09-dom.md @@ -375,7 +375,7 @@ This demo was tested in the following deployments: | `darwin-x64` | 0.1.48 | 2.0.4 | 2024-10-30 | | `darwin-arm` | 0.1.48 | 2.0.4 | 2024-10-30 | | `win11-x64` | 0.1.48 | 2.0.4 | 2024-10-30 | -| `win11-arm` | 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 | | `linux-arm` | 0.1.48 | 2.1.10 | 2025-02-16 | diff --git a/docz/docs/03-demos/17-mobile/04-ionic.md b/docz/docs/03-demos/17-mobile/04-ionic.md index 50410c6..f543cb0 100644 --- a/docz/docs/03-demos/17-mobile/04-ionic.md +++ b/docz/docs/03-demos/17-mobile/04-ionic.md @@ -78,18 +78,10 @@ Configuration A: :::danger Telemetry -Before starting this demo, manually disable telemetry. On Linux and MacOS: +Before starting this demo, manually disable telemetry: ```bash -rm -rf ~/.ionic/ -mkdir ~/.ionic -cat < ~/.ionic/config.json -{ - "version": "6.20.1", - "telemetry": false, - "npmClient": "npm" -} -EOF +npx @ionic/cli config set -g telemetry false npx @capacitor/cli telemetry off ``` @@ -174,7 +166,7 @@ These objects can be parsed with the SheetJS `read` method[^4]. The SheetJS `sheet_to_json` method[^5] with the option `header: 1` generates an array of arrays which can be assigned to the page state: -```ts +```ts title="Read file from device and update state" /* read a workbook file */ const ab: ArrayBuffer = await this.file.readAsArrayBuffer(url, filename); /* parse */ @@ -195,7 +187,7 @@ worksheet object. The `book_new` and `book_append_sheet` helpers[^7] generate a workbook object. The SheetJS `write` method[^8] with the option `type: "array"` will generate an `ArrayBuffer`, from which a `Blob` can be created: -```ts +```ts title="Export state data to XLSX workbook and write to device" /* generate worksheet */ const ws: XLSX.WorkSheet = XLSX.utils.aoa_to_sheet(this.data); @@ -268,9 +260,9 @@ ionic start SheetJSIonic blank --type angular --cordova --quiet --no-git --no-li When asked to select `NgModules` or `Standalone Components`, select `NgModules` -If a prompt asks to confirm Cordova use, enter `Yes` to continue. +If a prompt asks to confirm Cordova use, enter Y to continue. -If a prompt asks about creating an Ionic account, enter `N` to opt out. +If a prompt asks about creating an Ionic account, enter N to opt out. :::caution pass @@ -292,8 +284,8 @@ cd .. ```bash cd SheetJSIonic ionic cordova plugin add cordova-plugin-file -ionic cordova platform add ios --confirm ionic cordova platform add android --confirm +ionic cordova platform add ios --confirm npm i --save @awesome-cordova-plugins/core @awesome-cordova-plugins/file @ionic/cordova-builders ``` @@ -341,9 +333,9 @@ After adding the lines, the `npm i` command will succeed. npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`} -6) Add `@awesome-cordova-plugins/file` to the module. Differences highlighted below: +6) Add the `@awesome-cordova-plugins/file` plugin to `src/app/app.module.ts`: -```ts title="src/app/app.module.ts" +```ts title="src/app/app.module.ts (add highlighted lines)" import { AppComponent } from './app.component'; import { AppRoutingModule } from './app-routing.module'; @@ -367,6 +359,23 @@ export class AppModule {} curl -o src/app/home/home.page.ts -L https://docs.sheetjs.com/ionic/home.page.ts ``` +:::note pass + +In PowerShell, the command may fail with a parameter error: + +``` +Invoke-WebRequest : A parameter cannot be found that matches parameter name 'L'. +``` + +`curl.exe` must be invoked directly: + +```bash +curl.exe -o src/app/home/home.page.ts -L https://docs.sheetjs.com/ionic/home.page.ts +``` + +::: + + ### iOS 8) Enable file sharing and make the documents folder visible in the iOS app. diff --git a/docz/docs/03-demos/19-desktop/01-electron.md b/docz/docs/03-demos/19-desktop/01-electron.md index e0a834b..c4e63cd 100644 --- a/docz/docs/03-demos/19-desktop/01-electron.md +++ b/docz/docs/03-demos/19-desktop/01-electron.md @@ -210,7 +210,7 @@ This demo was tested in the following environments: | macOS 15.2 | `darwin-x64` | `33.2.1` | 2024-12-31 | | macOS 14.5 | `darwin-arm` | `30.0.8` | 2024-05-28 | | Windows 11 | `win11-x64` | `33.2.1` | 2025-02-11 | -| Windows 11 | `win11-arm` | `30.0.8` | 2024-05-28 | +| Windows 11 | `win11-arm` | `33.2.1` | 2025-02-23 | | Linux (HoloOS) | `linux-x64` | `33.2.1` | 2025-01-02 | | Linux (Debian) | `linux-arm` | `33.2.1` | 2025-02-16 | diff --git a/docz/docs/03-demos/19-desktop/02-nwjs.md b/docz/docs/03-demos/19-desktop/02-nwjs.md index bac96d8..1538ccb 100644 --- a/docz/docs/03-demos/19-desktop/02-nwjs.md +++ b/docz/docs/03-demos/19-desktop/02-nwjs.md @@ -124,7 +124,7 @@ This demo was tested in the following environments: | macOS 15.2 | `darwin-x64` | `0.94.0` | 2024-12-31 | | | macOS 14.5 | `darwin-arm` | `0.88.0` | 2024-05-28 | | | Windows 11 | `win11-x64` | `0.94.0` | 2024-12-19 | | -| Windows 11 | `win11-arm` | `0.88.0` | 2024-05-28 | | +| Windows 11 | `win11-arm` | `0.94.0` | 2025-02-23 | | | Linux (HoloOS) | `linux-x64` | `0.89.0` | 2025-01-10 | | | Linux (Debian) | `linux-arm` | `0.60.0` | 2025-02-16 | Unofficial build[^1] | @@ -225,7 +225,8 @@ testing, version `4.11.6` correctly generated the standalone application. | Architecture | Command | |:-------------|:--------------------------------------------------------------| | `darwin-x64` | `open ../out/sheetjs-nwjs.app` | -| `linux-x64` | `../out/sheetjs-nwjs` | | `win11-x64` | `..\out\sheetjs-nwjs.exe` | +| `win11-arm` | `..\out\sheetjs-nwjs.exe` | +| `linux-x64` | `../out/sheetjs-nwjs` | [^1]: The [`nw60-arm64_2022-01-08` release](https://github.com/LeonardLaszlo/nw.js-armv7-binaries/releases/tag/nw60-arm64_2022-01-08) included an ARM64 version of `nw`. \ No newline at end of file diff --git a/docz/docs/03-demos/19-desktop/03-wails.md b/docz/docs/03-demos/19-desktop/03-wails.md index 28c5b32..63cf5a7 100644 --- a/docz/docs/03-demos/19-desktop/03-wails.md +++ b/docz/docs/03-demos/19-desktop/03-wails.md @@ -300,7 +300,7 @@ This demo was tested in the following environments: | macOS 15.2 | `darwin-x64` | `v2.9.2` | 2024-12-31 | | macOS 14.5 | `darwin-arm` | `v2.8.2` | 2024-05-28 | | Windows 11 | `win11-x64` | `v2.9.2` | 2024-12-21 | -| Windows 11 | `win11-arm` | `v2.8.2` | 2024-05-28 | +| Windows 11 | `win11-arm` | `v2.10` | 2025-02-23 | | Linux (HoloOS) | `linux-x64` | `v2.9.2` | 2025-01-02 | | Linux (Debian) | `linux-arm` | `v2.10` | 2025-02-16 | diff --git a/docz/docs/03-demos/19-desktop/04-tauri.md b/docz/docs/03-demos/19-desktop/04-tauri.md index c2847b0..5edc4fa 100644 --- a/docz/docs/03-demos/19-desktop/04-tauri.md +++ b/docz/docs/03-demos/19-desktop/04-tauri.md @@ -356,7 +356,7 @@ This demo was tested in the following environments: | macOS 15.2 | `darwin-x64` | `v1.6.0` | 2024-12-31 | | macOS 14.5 | `darwin-arm` | `v1.5.14` | 2024-05-26 | | Windows 11 | `win11-x64` | `v1.6.0` | 2024-12-21 | -| Windows 11 | `win11-arm` | `v1.5.14` | 2024-05-28 | +| Windows 11 | `win11-arm` | `v1.6.0` | 2025-02-23 | | Linux (HoloOS) | `linux-x64` | `v1.6.0` | 2025-01-02 | | Linux (Debian) | `linux-arm` | `v1.6.0` | 2025-02-16 | @@ -480,6 +480,7 @@ npm add vite-plugin-kaioken -D --save In the same file, look for `"title"` and change the value to `SheetJS x Tauri`: ```json title="src-tauri/tauri.conf.json (edit highlighted line)" + "windows": [ { // highlight-next-line "title": "SheetJS x Tauri", diff --git a/docz/docs/03-demos/19-desktop/05-neutralino.md b/docz/docs/03-demos/19-desktop/05-neutralino.md index 8b14f31..33418e2 100644 --- a/docz/docs/03-demos/19-desktop/05-neutralino.md +++ b/docz/docs/03-demos/19-desktop/05-neutralino.md @@ -195,7 +195,7 @@ This demo was tested in the following environments: | macOS 15.2 | `darwin-x64` | `5.5.0` | `5.5.0` | 2024-12-31 | | macOS 14.5 | `darwin-arm` | `5.1.0` | `5.1.0` | 2024-05-25 | | Windows 11 | `win11-x64` | `5.5.0` | `5.5.0` | 2024-12-20 | -| Windows 11 | `win11-arm` | `5.1.0` | `5.1.1` | 2024-05-28 | +| Windows 11 | `win11-arm` | `5.6.0` | `5.6.0` | 2025-02-23 | | Linux (HoloOS) | `linux-x64` | `5.5.0` | `5.5.0` | 2025-01-02 | | Linux (Debian) | `linux-arm` | `5.6.0` | `5.6.0` | 2025-02-16 | diff --git a/docz/docs/03-demos/19-desktop/06-reactnative.md b/docz/docs/03-demos/19-desktop/06-reactnative.md index 21067c1..f9bcc2f 100644 --- a/docz/docs/03-demos/19-desktop/06-reactnative.md +++ b/docz/docs/03-demos/19-desktop/06-reactnative.md @@ -46,8 +46,10 @@ This demo was tested in the following environments: | OS and Version | Architecture | RN Platform | Date | |:---------------|:-------------|:------------|:-----------| -| Windows 11 | `win11-x64` | `v0.75.11` | 2024-12-22 | -| Windows 11 | `win11-arm` | `v0.74.5` | 2024-05-25 | +| Windows 11 C++ | `win11-x64` | `v0.75.11` | 2024-12-22 | +| Windows 11 C# | `win11-x64` | `v0.75.11` | 2024-12-22 | +| Windows 11 C++ | `win11-arm` | `v0.77.2` | 2025-02-23 | +| Windows 11 C# | `win11-arm` | `v0.77.2` | 2025-02-23 | | MacOS 14.7 | `darwin-x64` | `v0.75.13` | 2024-10-26 | | MacOS 14.5 | `darwin-arm` | `v0.75.16` | 2024-12-22 | @@ -430,11 +432,12 @@ not a requirement for this demo. ### Project Setup -1) Create a new project using React Native `0.75.4`: +1) Create a new project using React Native `0.77.1`: ```bash -npx -y @react-native-community/cli@14 init SheetJSWin --version="0.75.4" +npx -y @react-native-community/cli@16 init SheetJSWin --version="0.77.1" cd SheetJSWin +npm install --save react-native-windows@0.77.2 ``` :::info pass @@ -453,19 +456,31 @@ scheme is fundamentally different from `react-native`.[^5] ```bash -npx react-native-windows-init --no-telemetry --overwrite --language=cs +npx react-native init-windows --no-telemetry --overwrite --template old/uwp-cs-app ``` ```bash -npx react-native-windows-init --no-telemetry --overwrite +npx react-native init-windows --no-telemetry --overwrite --template old/uwp-cpp-app ``` +:::note pass + +Older versions of this demo used the `react-native-windows-init` package. This +package does not support React Native `0.77`. The official instructions now +recommend directly installing `react-native-windows`. + +When this demo was last tested, there was no template for a C# application using +the React Native "New Architecture". For consistency, both the C# and C++ demos +are tested using the "Old Architecture". + +::: + 3) Install the SheetJS library: {`\ @@ -614,7 +629,11 @@ curl -LO https://docs.sheetjs.com/reactnative/rnw/App.tsx +:::note pass +The `rm` command may fail if `App.js` does not exist. That error can be ignored. + +::: 8) Launch the app again: diff --git a/docz/docs/03-demos/20-cli/03-nexe.md b/docz/docs/03-demos/20-cli/03-nexe.md index c81386d..a354132 100644 --- a/docz/docs/03-demos/20-cli/03-nexe.md +++ b/docz/docs/03-demos/20-cli/03-nexe.md @@ -40,7 +40,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `4.0.0-rc.6` | `14.15.3` | Pre-built | 2025-01-19 | | `darwin-arm` | `4.0.0-rc.6` | `20.18.0` | Compiled | 2025-02-13 | | `win11-x64` | `4.0.0-rc.6` | `14.15.3` | Pre-built | 2024-12-19 | -| `win11-arm` | `4.0.0-rc.6` | `20.10.0` | Compiled | 2024-05-28 | +| `win11-arm` | `4.0.0-rc.6` | `22.14.0` | Compiled | 2025-02-23 | | `linux-x64` | `4.0.0-rc.6` | `14.15.3` | Pre-built | 2024-12-31 | | `linux-arm` | `4.0.0-rc.6` | `22.13.0` | Compiled | 2025-02-15 | @@ -121,10 +121,11 @@ On Windows x64, the `--build` flag suffices: npx -y nexe xlsx-cli.js --build --make="-j8" ``` -On Windows ARM, the target `windows-arm64-20.10.0` must be specified: +On Windows ARM, the target `windows-arm64-22.14.0` must be specified and the +command must be run in a "Native Tools Command Prompt": ```bash -npx -y nexe xlsx-cli.js --build --make="-j8" --target=windows-arm64-20.10.0 +npx -y nexe xlsx-cli.js --build --make="-j8" --target=windows-arm64-22.14.0 ``` **`vcbuild.bat` issues** @@ -135,8 +136,36 @@ The Windows ARM build may fail with a `vcbuild.bat` error: Error: vcbuild.bat nosign release arm64 exited with code: 1 ``` -Pass the `-v` flag for more details. In the most recent test, the error stemmed -from a Python version mismatch: +Pass the `--verbose` flag for more details: + +```bash +npx -y nexe xlsx-cli.js --build --make="-j8" --target=windows-arm64-22.14.0 --verbose +``` + +Common error messages: + +_"Python was not found"_ + +``` +Python was not found; run without arguments to install from the Microsoft Store, or disable this shortcut from Settings > Manage App Execution Aliases. +``` + +Out of the box, Windows 11 will alias `python`, redirecting unsuspecting users +to the App Installer. This redirect must be disabled: + +Type `alias` in the search bar and select "Manage app execution aliases", In the +settings pane, scroll down and turn off the alias for `python.exe`. + +_"Could not find Python"_ + +``` +Could not find Python. +``` + +After installing Python using the official installer, the command should be run +in a new terminal window. + +_Python version mismatch ("Please use")_ ``` Node.js configure: found Python 2.7.18 @@ -149,8 +178,8 @@ The resolved version of Python can be found with where python ``` -In the most recent test, a Python 2 version appeared first. This was fixed by -finding the Python 3 location and prepending it to `PATH`: +In some tests, a Python 2 version appeared first. This was fixed by finding the +Python 3 location and prepending it to `PATH`: ```cmd set PATH="C:\correct\path\to\python\three";%PATH% @@ -182,6 +211,16 @@ This generates `xlsx-cli` or `xlsx-cli.exe` depending on platform. +The program should display CSV contents from the first sheet: + +```text title="Expected Output" +Name,Index +Bill Clinton,42 +GeorgeW Bush,43 +Barack Obama,44 +Donald Trump,45 +Joseph Biden,46 +``` [^1]: The project does not have a website. The [source repository](https://github.com/nexe/nexe) is publicly available. [^2]: The NodeJS website hosts [prebuilt installers](https://nodejs.org/en/download/prebuilt-installer). \ No newline at end of file diff --git a/docz/docs/03-demos/20-cli/05-pkg.md b/docz/docs/03-demos/20-cli/05-pkg.md index f7b6c71..d5dad68 100644 --- a/docz/docs/03-demos/20-cli/05-pkg.md +++ b/docz/docs/03-demos/20-cli/05-pkg.md @@ -40,7 +40,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `5.8.1` | `18.5.0` | 2025-01-19 | | `darwin-arm` | `5.8.1` | `18.5.0` | 2025-02-13 | | `win11-x64` | `5.8.1` | `18.5.0` | 2024-12-19 | -| `win11-arm` | `5.8.1` | `18.5.0` | 2024-10-25 | +| `win11-arm` | `5.8.1` | `18.5.0` | 2025-02-23 | | `linux-x64` | `5.8.1` | `18.5.0` | 2024-12-31 | | `linux-arm` | `5.8.1` | `18.5.0` | 2025-02-15 | @@ -140,11 +140,30 @@ yarn add https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz exit-on-epi 4) Create the standalone program: ```bash -npx pkg xlsx-cli.js +npx -y pkg xlsx-cli.js ``` This generates `xlsx-cli-linux`, `xlsx-cli-macos`, and `xlsx-cli-win.exe` . +:::info pass + +If it is not possible to switch NodeJS versions, the `-t` flag can be used to +override the target detection: + +**X64** + +```bash +npx -y pkg -t 'node18-win-x64,node18-linux-x64,node18-macos-x64' xlsx-cli.js +``` + +**ARM64** + +```bash +npx -y pkg -t 'node18-win-arm64,node18-linux-arm64,node18-macos-arm64' xlsx-cli.js +``` + +::: + 5) Run the generated program, passing `pres.numbers` as the argument: diff --git a/docz/docs/03-demos/20-cli/11-nodesea.md b/docz/docs/03-demos/20-cli/11-nodesea.md index c84e774..8a64488 100644 --- a/docz/docs/03-demos/20-cli/11-nodesea.md +++ b/docz/docs/03-demos/20-cli/11-nodesea.md @@ -161,7 +161,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `22.13.0` | 2025-01-19 | | `darwin-arm` | `23.8.0` | 2025-02-16 | | `win11-x64` | `22.13.0` | 2025-01-19 | -| `win11-arm` | `20.14.0` | 2024-06-11 | +| `win11-arm` | `22.14.0` | 2025-02-23 | | `linux-x64` | `22.12.0` | 2025-01-02 | | `linux-arm` | `22.13.0` | 2025-02-16 | @@ -429,7 +429,7 @@ signtool verify sheet2csv.exe `signtool` is included in the Windows SDK[^4]. If the Windows SDK is installed but the command fails, run the comand in the -"x64 Native Tools Command Prompt" that ships with Visual Studio. +"Native Tools Command Prompt" that ships with Visual Studio. ::: diff --git a/docz/docs/03-demos/20-cli/12-bunsea.md b/docz/docs/03-demos/20-cli/12-bunsea.md index 4468482..390707b 100644 --- a/docz/docs/03-demos/20-cli/12-bunsea.md +++ b/docz/docs/03-demos/20-cli/12-bunsea.md @@ -82,7 +82,7 @@ This demo was last tested in the following deployments: | `darwin-x64` | `1.1.45` | 2025-01-19 | | `darwin-arm` | `1.2.2` | 2025-02-16 | | `win11-x64` | `1.1.40` | 2024-12-19 | -| `win11-arm` | `1.1.33` | 2024-10-25 | +| `win11-arm` | `1.2.3` | 2025-02-23 | | `linux-x64` | `1.1.43` | 2025-01-10 | | `linux-arm` | `1.2.2` | 2025-02-16 | diff --git a/docz/docs/03-demos/20-cli/13-denosea.md b/docz/docs/03-demos/20-cli/13-denosea.md index b108519..ffb7e2a 100644 --- a/docz/docs/03-demos/20-cli/13-denosea.md +++ b/docz/docs/03-demos/20-cli/13-denosea.md @@ -102,7 +102,7 @@ This demo was last tested in the following deployments: | `darwin-x64` | `2.1.6` | 2025-01-19 | | `darwin-arm` | `2.1.10` | 2025-02-13 | | `win11-x64` | `2.1.6` | 2025-01-19 | -| `win11-arm` | `2.0.3` | 2024-10-25 | +| `win11-arm` | `2.2.1` | 2025-02-23 | | `linux-x64` | `2.1.4` | 2025-01-02 | | `linux-arm` | `2.1.10` | 2025-02-15 | diff --git a/docz/docs/03-demos/32-extensions/10-stata.md b/docz/docs/03-demos/32-extensions/10-stata.md index 1916742..c4fd725 100644 --- a/docz/docs/03-demos/32-extensions/10-stata.md +++ b/docz/docs/03-demos/32-extensions/10-stata.md @@ -56,7 +56,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `18.5` (StataNow) | 2025-01-08 | | `darwin-arm` | `18.5` (StataNow) | 2024-12-15 | | `win11-x64` | `18.5` (StataNow) | 2024-12-19 | -| `win11-arm` | `18.5` (StataNow) | 2024-12-15 | +| `win11-arm` | `18.5` (StataNow) | 2025-02-23 | | `linux-x64` | `18.5` (StataNow) | 2025-01-09 | ::: @@ -234,6 +234,12 @@ mkdir sheetjs-stata cd sheetjs-stata ``` +:::info pass + +In Windows on ARM, the `x64` toolchain must be used to compile Stata plugins. + +::: + 2) Enter WSL: ```powershell diff --git a/docz/docs/03-demos/42-engines/01-duktape.md b/docz/docs/03-demos/42-engines/01-duktape.md index d849149..b350aeb 100644 --- a/docz/docs/03-demos/42-engines/01-duktape.md +++ b/docz/docs/03-demos/42-engines/01-duktape.md @@ -131,7 +131,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `2.7.0` | 2024-12-31 | | `darwin-arm` | `2.7.0` | 2025-02-13 | | `win11-x64` | `2.7.0` | 2024-12-20 | -| `win11-arm` | `2.7.0` | 2024-05-25 | +| `win11-arm` | `2.7.0` | 2025-02-23 | | `linux-x64` | `2.7.0` | 2024-12-31 | | `linux-arm` | `2.7.0` | 2025-02-15 | @@ -142,9 +142,10 @@ generates an XLSB file and writes to the filesystem. The [flow diagram is displayed after the example steps](#flow-diagram) -:::info pass +:::note pass -On Windows, the Visual Studio "Native Tools Command Prompt" must be used. +The Windows build requires Visual Studio with "Desktop development with C++". +Commands must be run in a "Native Tools Command Prompt" session. ::: @@ -786,7 +787,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `2.7.0` | `0.13.0` | 2024-12-31 | | `darwin-arm` | `2.7.0` | `0.13.0` | 2025-02-13 | | `win11-x64` | `2.7.0` | `0.13.0` | 2024-12-20 | -| `win11-arm` | `2.7.0` | `0.12.0` | 2024-05-25 | +| `win11-arm` | `2.7.0` | `0.13.0` | 2025-02-23 | | `linux-x64` | `2.7.0` | `0.13.0` | 2024-12-31 | | `linux-arm` | `2.7.0` | `0.13.0` | 2025-02-15 | diff --git a/docz/docs/03-demos/42-engines/02-v8.md b/docz/docs/03-demos/42-engines/02-v8.md index 6def59d..79727aa 100644 --- a/docz/docs/03-demos/42-engines/02-v8.md +++ b/docz/docs/03-demos/42-engines/02-v8.md @@ -1281,7 +1281,7 @@ This demo was last tested in the following deployments: | `darwin-x64` | `12.3.219.12` | 2024-07-16 | | `darwin-arm` | `12.3.219.12` | 2024-07-16 | | `win11-x64` | `12.3.219.12` | 2024-12-20 | -| `win11-arm` | `12.3.219.12` | 2024-07-16 | +| `win11-arm` | `12.3.219.12` | 2025-02-23 | | `linux-x64` | `12.3.219.12` | 2025-01-10 | | `linux-arm` | `12.3.219.12` | 2025-02-16 | diff --git a/docz/docs/03-demos/42-engines/05-jint.md b/docz/docs/03-demos/42-engines/05-jint.md index 4e3e220..b72b0e6 100644 --- a/docz/docs/03-demos/42-engines/05-jint.md +++ b/docz/docs/03-demos/42-engines/05-jint.md @@ -166,7 +166,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `4.1.0` | 2024-12-17 | | `darwin-arm` | `4.2.0` | 2025-02-13 | | `win11-x64` | `4.1.0` | 2024-12-20 | -| `win11-arm` | `3.1.2` | 2024-05-25 | +| `win11-arm` | `4.2.0` | 2025-02-23 | | `linux-x64` | `4.1.0` | 2025-01-09 | | `linux-arm` | `4.2.0` | 2025-02-15 | @@ -226,7 +226,7 @@ For Steam Deck Holo and other Arch Linux x64 distributions, the `dotnet-sdk` and sudo pacman -Syu dotnet-sdk dotnet-runtime ``` -https://dotnet.microsoft.com/en-us/download/dotnet/6.0 is the official source +https://dotnet.microsoft.com/en-us/download/dotnet/9.0 is the official source for Windows and ARM64 Linux versions. @@ -499,7 +499,7 @@ cp bin/Release/net*/linux-arm64/publish/SheetJSJint . For Windows 11 x64, the RID is `win-x64` and the command is: ```powershell -copy .\bin\Release\net6.0\win-x64\publish\SheetJSJint.exe . +copy .\bin\Release\net9.0\win-x64\publish\SheetJSJint.exe . ``` :::caution pass @@ -513,7 +513,7 @@ The system cannot find the path specified. The correct command was ```powershell -copy .\bin\x64\Release\net6.0\win-x64\publish\SheetJSJint.exe . +copy .\bin\x64\Release\net9.0\win-x64\publish\SheetJSJint.exe . ``` ::: @@ -524,7 +524,7 @@ copy .\bin\x64\Release\net6.0\win-x64\publish\SheetJSJint.exe . For Windows 11 ARM64, the RID is `win-arm64` and the command is: ```powershell -copy .\bin\Release\net6.0\win-arm64\publish\SheetJSJint.exe . +copy .\bin\Release\net9.0\win-arm64\publish\SheetJSJint.exe . ``` diff --git a/docz/docs/03-demos/42-engines/06-goja.md b/docz/docs/03-demos/42-engines/06-goja.md index 83099bb..09e4fc5 100644 --- a/docz/docs/03-demos/42-engines/06-goja.md +++ b/docz/docs/03-demos/42-engines/06-goja.md @@ -108,7 +108,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `79f3a7e` | `1.23.3` | 2024-12-17 | | `darwin-arm` | `5ef83b8` | `1.24.0` | 2025-02-13 | | `win11-x64` | `79f3a7e` | `1.23.4` | 2024-12-20 | -| `win11-arm` | `ccbae20` | `1.22.3` | 2024-05-25 | +| `win11-arm` | `5ef83b8` | `1.24.0` | 2025-02-23 | | `linux-x64` | `79f3a7e` | `1.22.0` | 2025-01-02 | | `linux-arm` | `5ef83b8` | `1.19.8` | 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 c7edeb9..5d26a11 100644 --- a/docz/docs/03-demos/42-engines/08-quickjs.md +++ b/docz/docs/03-demos/42-engines/08-quickjs.md @@ -266,7 +266,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `6e2e68f` | 2024-12-17 | | `darwin-arm` | `6e2e68f` | 2024-12-17 | | `win11-x64` | `6e2e68f` | 2024-12-19 | -| `win11-arm` | `d378a9f` | 2024-05-25 | +| `win11-arm` | `6e2e68f` | 2025-02-23 | | `linux-x64` | `6e2e68f` | 2025-01-09 | | `linux-arm` | `6e2e68f` | 2025-02-15 | @@ -291,6 +291,22 @@ make cd .. ``` +:::note pass + +In some tests, the build failed since `gcc` was not installed: + +``` +make: gcc: No such file or directory +``` + +The C compiler must be installed. WSL Ubuntu requires `build-essential`: + +```bash +sudo apt-get install build-essential +``` + +::: + 1) Copy `libquickjs.a` and `quickjs.h` into the working directory: ```bash @@ -349,18 +365,24 @@ When the demo was tested, `6e2e68f` was the HEAD commit on the `master` branch. ::: -0) Build the `qjs` command line utility from source: +0) If the ["Integration Example"](#integration-example) was not tested, clone +and build the `quickjs` project: ```bash git clone https://github.com/bellard/quickjs cd quickjs -git checkout d378a9f +git checkout 6e2e68f make cd .. +``` + +1) Copy the `qjs` compiled program to the current directory: + +```bash cp quickjs/qjs . ``` -1) Download the SheetJS Standalone script and the test file. Save both files in +2) Download the SheetJS Standalone script and the test file. Save both files in the project directory:
    @@ -373,13 +395,13 @@ curl -LO https://cdn.sheetjs.com/xlsx-${current}/package/dist/xlsx.full.min.js curl -LO https://docs.sheetjs.com/pres.numbers`} -2) Download [`SheetJSQuick.js`](pathname:///quickjs/SheetJSQuick.js) +3) Download [`SheetJSQuick.js`](pathname:///quickjs/SheetJSQuick.js) ```bash curl -LO https://docs.sheetjs.com/quickjs/SheetJSQuick.js ``` -3) Test the program: +4) Test the program: ```bash ./qjs SheetJSQuick.js diff --git a/docz/docs/03-demos/42-engines/09-hermes.md b/docz/docs/03-demos/42-engines/09-hermes.md index 6328c53..c3a4022 100644 --- a/docz/docs/03-demos/42-engines/09-hermes.md +++ b/docz/docs/03-demos/42-engines/09-hermes.md @@ -375,7 +375,7 @@ fork, which powers React Native for Windows, does have built-in support[^5] | Architecture | Git Commit | Date | |:-------------|:-----------|:-----------| | `win11-x64` | `4c64b05` | 2024-12-20 | -| `win11-arm` | `240573e` | 2024-06-20 | +| `win11-arm` | `4c64b05` | 2025-02-23 | The ["Windows Example"](#windows-example) covers `hermes-windows`. @@ -771,6 +771,22 @@ If `cl` is not found, run the command in the "Native Tools Command Prompt" ::: +:::info pass + +In some test runs, the build failed due to duplicate symbols: + +``` +hermesVMRuntimeLean.lib(Runtime.obj) : error LNK2005: "private: __cdecl hermes::vm::Runtime::Runtime(class std::shared_ptr,class hermes::vm::RuntimeConfig const &)" (??0Runtime@vm@hermes@@AEAA@V?$shared_ptr@VStorageProvider@vm@hermes@@@std@@AEBVRuntimeConfig@12@@Z) already defined in hermesVMRuntime.lib(Runtime.obj) +``` + +The lean libraries should be manually removed: + +```pwsh +del *ean.lib +``` + +::: + 9) Download the SheetJS Standalone script and the test file. Save both files in the project directory: @@ -803,6 +819,7 @@ This demo was tested in the following deployments: |:-------------|:---------|:-----------| | `darwin-x64` | `0.13.0` | 2024-12-17 | | `win11-x64` | `0.13.0` | 2024-12-20 | +| `win11-arm` | `0.13.0` | 2025-02-23 | | `linux-x64` | `0.13.0` | 2024-12-31 | ::: @@ -820,6 +837,14 @@ npx jsvu hermes@0.13.0 When prompted, select the appropriate operating system. +:::info pass + +`jsvu` on Windows on ARM uses the X64 compatibility layer. When the demo was +last tested, the engine binaries were not native ARM64 programs. + +::: + + 1) Inspect the output of the installer. Look for "Installing binary" lines: ```text pass diff --git a/docz/docs/03-demos/42-engines/15-rb.md b/docz/docs/03-demos/42-engines/15-rb.md index 721c1a7..57476cb 100644 --- a/docz/docs/03-demos/42-engines/15-rb.md +++ b/docz/docs/03-demos/42-engines/15-rb.md @@ -90,7 +90,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `2.6.10` | `2.10.0` | 2024-12-17 | | `darwin-arm` | `2.6.10` | `2.10.0` | 2025-02-13 | | `win11-x64` | `3.3.6` | `2.10.0` | 2024-12-20 | -| `win11-arm` | `3.0.2` | `2.9.1` | 2024-05-25 | +| `win11-arm` | `3.2.3` | `2.10.0` | 2025-02-23 | | `linux-x64` | `3.0.6` | `2.10.0` | 2024-12-31 | | `linux-arm` | `3.1.2` | `2.10.0` | 2025-02-15 | @@ -114,7 +114,13 @@ The command may need to be run as an administrator or root user: sudo gem install execjs ``` -:::note pass +--- + +In WSL and Ubuntu Linux, the `rubygems` package should be installed: + +```bash +sudo apt-get install rubygems +``` On Arch Linux-based platforms including the Steam Deck, `rubygems` must be installed through the package manager: @@ -129,8 +135,6 @@ In Debian, the `rubygems-integration` package should be installed: sudo apt-get install ruby rubygems-integration ``` -::: - 1) Create a new project folder: @@ -176,7 +180,7 @@ If a JavaScript runtime is not available, the script will throw an error: execjs/runtimes.rb:68:in `autodetect': Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable) ``` -ExecJS 2.9.1 supports the Bun runtime. Install the Bun runtime[^1], restart the +ExecJS 2.10.0 supports the Bun runtime. Install the Bun runtime[^1], restart the terminal, and re-run the script. ::: diff --git a/docz/docs/03-demos/42-engines/20-chakra.md b/docz/docs/03-demos/42-engines/20-chakra.md index 04a2def..e147f34 100644 --- a/docz/docs/03-demos/42-engines/20-chakra.md +++ b/docz/docs/03-demos/42-engines/20-chakra.md @@ -135,7 +135,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `e26c81f` | 2024-12-17 | | `darwin-arm` | `e26c81f` | 2025-01-13 | | `win11-x64` | `e26c81f` | 2024-12-19 | -| `win11-arm` | `13358c6` | 2024-07-14 | +| `win11-arm` | `e26c81f` | 2025-02-23 | | `linux-x64` | `e26c81f` | 2025-01-09 | ::: diff --git a/docz/docs/03-demos/42-engines/21-boa.md b/docz/docs/03-demos/42-engines/21-boa.md index d029eb6..1de36ee 100644 --- a/docz/docs/03-demos/42-engines/21-boa.md +++ b/docz/docs/03-demos/42-engines/21-boa.md @@ -123,7 +123,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `0.20.0` | 2024-12-17 | | `darwin-arm` | `0.20.0` | 2025-02-13 | | `win11-x64` | `0.20.0` | 2024-12-19 | -| `win11-arm` | `0.18.0` | 2024-05-25 | +| `win11-arm` | `0.20.0` | 2025-02-23 | | `linux-x64` | `0.20.0` | 2024-12-31 | | `linux-arm` | `0.20.0` | 2025-02-15 | diff --git a/docz/docs/03-demos/42-engines/23-jerryscript.md b/docz/docs/03-demos/42-engines/23-jerryscript.md index 9077f97..eee3b0f 100644 --- a/docz/docs/03-demos/42-engines/23-jerryscript.md +++ b/docz/docs/03-demos/42-engines/23-jerryscript.md @@ -39,7 +39,7 @@ This demo was tested in the following environments: | `darwin-x64` | `d2d30df` | 2024-12-17 | | `darwin-arm` | `d2d30df` | 2025-02-13 | | `win11-x64` | `d2d30df` | 2024-12-19 | -| `win11-arm` | `35465ed` | 2024-05-25 | +| `win11-arm` | `5020015` | 2025-02-23 | | `linux-x64` | `d2d30df` | 2024-12-31 | | `linux-arm` | `5020015` | 2025-02-15 | diff --git a/docz/docs/03-demos/42-engines/25-mujs.md b/docz/docs/03-demos/42-engines/25-mujs.md index 40a1b0c..1ed36d6 100644 --- a/docz/docs/03-demos/42-engines/25-mujs.md +++ b/docz/docs/03-demos/42-engines/25-mujs.md @@ -325,7 +325,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `1.3.5` | 2024-12-17 | | `darwin-arm` | `1.3.5` | 2025-02-13 | | `win11-x64` | `1.3.5` | 2024-12-19 | -| `win11-arm` | `1.3.4` | 2024-06-20 | +| `win11-arm` | `1.3.5` | 2025-02-23 | | `linux-x64` | `1.3.5` | 2025-01-09 | | `linux-arm` | `1.3.5` | 2025-02-15 | diff --git a/docz/docs/03-demos/42-engines/26-jurassic.md b/docz/docs/03-demos/42-engines/26-jurassic.md index abf6b58..9a88805 100644 --- a/docz/docs/03-demos/42-engines/26-jurassic.md +++ b/docz/docs/03-demos/42-engines/26-jurassic.md @@ -179,7 +179,7 @@ This demo was tested in the following deployments: | `darwin-x64` | `3.2.8` | 2024-12-17 | | `darwin-arm` | `3.2.7` | 2024-06-15 | | `win11-x64` | `3.2.8` | 2024-12-19 | -| `win11-arm` | `3.2.7` | 2024-07-14 | +| `win11-arm` | `3.2.9` | 2025-02-23 | | `linux-x64` | `3.2.8` | 2025-01-10 | | `linux-arm` | `3.2.9` | 2025-02-15 | @@ -295,6 +295,25 @@ curl -LO https://cdn.sheetjs.com/xlsx-${current}/package/dist/xlsx.mini.min.js curl -LO https://docs.sheetjs.com/pres.xlsx`} +:::note pass + +In PowerShell, the command may fail with a parameter error: + +``` +Invoke-WebRequest : A parameter cannot be found that matches parameter name 'LO'. +``` + +`curl.exe` must be invoked directly: + +{`\ +curl.exe -LO https://cdn.sheetjs.com/xlsx-${current}/package/dist/shim.min.js +curl.exe -LO https://cdn.sheetjs.com/xlsx-${current}/package/dist/xlsx.mini.min.js +curl.exe -LO https://docs.sheetjs.com/pres.xlsx`} + + + +::: + 6) Replace `Program.cs` with the following: ```csharp title="Program.cs" @@ -360,7 +379,7 @@ Running `dotnet run` without the filename argument will show an error: ``` Unhandled exception. System.IndexOutOfRangeException: Index was outside the bounds of the array. - at Program.
    $(String[] args) in C:\Users\Me\SheetJSJurassic\Program.cs:line 15 + at Program.
    $(String[] args) in C:\Users\SheetJS\SheetJSJurassic\Program.cs:line 12 ``` The command must be run with an argument specifying the name of the workbook: diff --git a/docz/docs/07-csf/03-sheet.md b/docz/docs/07-csf/03-sheet.md index 955a8b1..d40243a 100644 --- a/docz/docs/07-csf/03-sheet.md +++ b/docz/docs/07-csf/03-sheet.md @@ -89,7 +89,7 @@ _Addressing Cells_ ``` - + ```diff -var cell = sheet["B7"]; @@ -210,7 +210,7 @@ In addition to the aforementioned sheet keys, worksheets also add: merge object is a range object that represents the covered range. - `ws['!outline']`: configure how outlines should behave. Options default to - the default settings in Excel 2019: + the default settings in Excel 2024: | key | Excel feature | default | |:----------|:----------------------------------------------|:--------| diff --git a/docz/docs/07-csf/07-features/03-hyperlinks.md b/docz/docs/07-csf/07-features/03-hyperlinks.md index 2334fa6..cfeae17 100644 --- a/docz/docs/07-csf/07-features/03-hyperlinks.md +++ b/docz/docs/07-csf/07-features/03-hyperlinks.md @@ -177,8 +177,8 @@ ws["B4"].l = { Target: "../SheetJS.xlsm" }; /* Link to ../SheetJS.xlsm */ :::caution pass -Relative Paths have undefined behavior in the SpreadsheetML 2003 format. Excel -2019 will treat a `..\` parent mark as two levels up. +Relative Paths have undefined behavior in the SpreadsheetML 2003 format. Excel +2024 will treat a `..\` parent mark as two levels up. ::: diff --git a/docz/docs/07-csf/07-features/04-comments.md b/docz/docs/07-csf/07-features/04-comments.md index 8ddb1e3..ebffcaa 100644 --- a/docz/docs/07-csf/07-features/04-comments.md +++ b/docz/docs/07-csf/07-features/04-comments.md @@ -11,7 +11,7 @@ Comments and Notes have evolved over the years. Excel 2.0 - '95 "Notes" were displayed in a master list. -Excel '97 - 2019 "Comments" float over the sheet and support styling. +Excel '97 - 2024 "Comments" float over the sheet and support styling. Excel 365 introduced "Threaded Comments" which do not support rich text but do allow users to "reply". The original "Comments" were renamed to "Notes". diff --git a/docz/docs/07-csf/07-features/06-nf.md b/docz/docs/07-csf/07-features/06-nf.md index 00dbd4a..f441bbb 100644 --- a/docz/docs/07-csf/07-features/06-nf.md +++ b/docz/docs/07-csf/07-features/06-nf.md @@ -275,7 +275,7 @@ tend to use a continued fraction approach. The common algorithm produces unexpected results for "Up to one digit": -| Value | Mediant | Excel 2019 | +| Value | Mediant | Excel 2024 | |:------|--------:|-----------:| | `0.3` | `2/7` | `2/7` | | `1.3` | `1 2/7` | `1 1/3` | diff --git a/docz/docs/09-miscellany/05-contributing.md b/docz/docs/09-miscellany/05-contributing.md index 3f62383..f1eba1c 100644 --- a/docz/docs/09-miscellany/05-contributing.md +++ b/docz/docs/09-miscellany/05-contributing.md @@ -47,7 +47,7 @@ These instructions were tested on the following platforms: | MacOS 15.2 (ARM64) | `darwin-arm` | 2025-01-27 | | Windows 10 (x64) + WSL Ubuntu | `win10-x64` | 2024-07-12 | | Windows 11 (x64) + WSL Ubuntu | `win11-x64` | 2025-01-14 | -| Windows 11 (ARM) + WSL Ubuntu | `win11-arm` | 2024-05-23 | +| Windows 11 (ARM) + WSL Ubuntu | `win11-arm` | 2025-02-23 | With some additional dependencies, the unminified scripts are reproducible and tests will pass in Windows XP with NodeJS 5.10.0.