diff --git a/docz/data/engines.xls b/docz/data/engines.xls
index c86c89a..3a03736 100644
--- a/docz/data/engines.xls
+++ b/docz/data/engines.xls
@@ -143,7 +143,7 @@
✔ |
✔ |
✔ |
- |
+ ✔ |
✔ |
✔ |
@@ -202,8 +202,8 @@
C |
✔ |
✔ |
- |
- |
+ ✱ |
+ ✱ |
✔ |
✔ |
@@ -214,8 +214,8 @@
✔ |
|
|
- |
- |
+ ✔ |
+ ✔ |
@@ -293,7 +293,7 @@
✔ |
✔ |
✔ |
- |
+ ✔ |
✔ |
✔ |
@@ -324,8 +324,8 @@
✔ |
|
|
- |
- |
+ ✔ |
+ ✔ |
JSC |
diff --git a/docz/docs/03-demos/01-math/01-summary.md b/docz/docs/03-demos/01-math/01-summary.md
index 63f4a4b..c4240f0 100644
--- a/docz/docs/03-demos/01-math/01-summary.md
+++ b/docz/docs/03-demos/01-math/01-summary.md
@@ -41,6 +41,7 @@ This browser demo was tested in the following environments:
| Browser | Date |
|:------------|:-----------|
| Chrome 119 | 2024-01-06 |
+| Safari 17.4 | 2024-06-20 |
:::
@@ -183,9 +184,7 @@ function SheetJSAoOExtractColumn() {
return ( <>
First 5 Sepal Length Values
-
- {col.map(sw => ({sw} |
))}
-
+
>
);
}
diff --git a/docz/docs/03-demos/01-math/21-pandas.md b/docz/docs/03-demos/01-math/21-pandas.md
index 7b6bf64..ed56f92 100644
--- a/docz/docs/03-demos/01-math/21-pandas.md
+++ b/docz/docs/03-demos/01-math/21-pandas.md
@@ -43,7 +43,9 @@ This demo was tested in the following deployments:
| `darwin-x64` | Duktape `2.7.0` | 2.2.1 | 3.12.2 | 2024-03-15 |
| `darwin-arm` | Duktape `2.7.0` | 2.0.3 | 3.11.7 | 2024-02-13 |
| `win10-x64` | Duktape `2.7.0` | 2.2.1 | 3.12.2 | 2024-03-25 |
+| `win11-arm` | Duktape `2.7.0` | 2.2.2 | 3.11.5 | 2024-06-20 |
| `linux-x64` | Duktape `2.7.0` | 1.5.3 | 3.11.3 | 2024-03-21 |
+| `linux-arm` | Duktape `2.7.0` | 1.5.3 | 3.11.2 | 2024-06-20 |
:::
@@ -246,15 +248,21 @@ In some local tests, the install failed with the following error:
error: externally-managed-environment
```
-On Arch Linux-based platforms including the Steam Deck, Pandas must be installed
-through the package manager:
+Pandas must be installed through the package manager:
+
+- Debian and Ubuntu distributions:
+
+```bash
+sudo apt-get install python3-pandas
+```
+
+- Arch Linux-based platforms including the Steam Deck:
```bash
sudo pacman -Syu python-pandas
```
-On macOS systems with a Python version from Homebrew, Pandas should be installed
-using `pip` with the `--break-system-packages` option:
+- macOS systems with a Python version from Homebrew:
```bash
sudo python3 -m pip install pandas --break-system-packages
@@ -414,7 +422,7 @@ The name of the library is `libduktape.so.207.20700`:
```python title="sheetjs.py (change highlighted line)"
# highlight-next-line
-lib = "libduktape.so.207.20700"
+lib = "./libduktape.so.207.20700"
```
@@ -514,7 +522,9 @@ This demo was tested in the following deployments:
| `darwin-x64` | Duktape `2.7.0` | 0.20.15 | 3.12.2 | 2024-03-15 |
| `darwin-arm` | Duktape `2.7.0` | 0.20.7 | 3.11.7 | 2024-02-13 |
| `win10-x64` | Duktape `2.7.0` | 0.20.16 | 3.12.2 | 2024-03-25 |
+| `win10-arm` | Duktape `2.7.0` | 0.20.31 | 3.11.5 | 2024-06-20 |
| `linux-x64` | Duktape `2.7.0` | 0.20.16 | 3.11.3 | 2024-03-21 |
+| `linux-arm` | Duktape `2.7.0` | 0.20.31 | 3.11.2 | 2024-06-20 |
:::
@@ -575,6 +585,13 @@ sudo python3 -m pip install pandas
:::
+:::info pass
+
+On Windows, the `C++ Clang Compiler for Windows` component must be installed
+through the Visual Studio installer.
+
+:::
+
:::caution pass
On Arch Linux-based platforms including the Steam Deck, the install may fail:
@@ -583,7 +600,19 @@ On Arch Linux-based platforms including the Steam Deck, the install may fail:
error: externally-managed-environment
```
-It is recommended to use a virtual environment for Polars and copy :
+It is recommended to use a virtual environment for Polars.
+
+`venv` must be installed through the system package manager:
+
+- Debian and Ubuntu distributions:
+
+```bash
+sudo apt-get install python3.11-venv
+```
+
+- `venv` is included in the `python` package in Arch Linux-based platforms.
+
+After installing `venv`, the following commands set up the virtual environment:
```bash
mkdir sheetjs-polars
diff --git a/docz/docs/03-demos/17-mobile/01-reactnative.md b/docz/docs/03-demos/17-mobile/01-reactnative.md
index 130f631..3db3cde 100644
--- a/docz/docs/03-demos/17-mobile/01-reactnative.md
+++ b/docz/docs/03-demos/17-mobile/01-reactnative.md
@@ -231,12 +231,14 @@ This demo was tested in the following environments:
**Simulators**
-| OS | Device | RN | Dev Platform | Date |
-|:-----------|:------------------|:---------|:-------------|:-----------|
-| Android 34 | Pixel 3a | `0.73.6` | `darwin-x64` | 2024-03-13 |
-| iOS 17.4 | iPhone 15 Pro Max | `0.73.6` | `darwin-x64` | 2024-03-13 |
-| Android 34 | Pixel 3a | `0.73.5` | `win10-x64` | 2024-03-05 |
-| Android 34 | Pixel 3a | `0.73.7` | `linux-x64` | 2024-04-29 |
+| OS | Device | RN | Dev Platform | Date |
+|:-----------|:--------------------|:---------|:-------------|:-----------|
+| Android 34 | Pixel 3a | `0.73.6` | `darwin-x64` | 2024-03-13 |
+| iOS 17.4 | iPhone 15 Pro Max | `0.73.6` | `darwin-x64` | 2024-03-13 |
+| Android 34 | Pixel 3a | `0.74.2` | `darwin-arm` | 2024-06-20 |
+| iOS 17.5 | iPhone SE (3rd gen) | `0.74.2` | `darwin-arm` | 2024-06-20 |
+| Android 34 | Pixel 3a | `0.73.5` | `win10-x64` | 2024-03-05 |
+| Android 34 | Pixel 3a | `0.73.7` | `linux-x64` | 2024-04-29 |
:::
@@ -275,7 +277,7 @@ export JAVA_HOME=/usr/lib/jvm/java-17-openjdk
1) Create project:
```bash
-npx -y react-native@0.73.7 init SheetJSRNFetch --version="0.73.7"
+npx -y react-native@0.74.2 init SheetJSRNFetch --version="0.74.2"
```
2) Install shared dependencies:
@@ -284,7 +286,7 @@ npx -y react-native@0.73.7 init SheetJSRNFetch --version="0.73.7"
cd SheetJSRNFetch
curl -LO https://docs.sheetjs.com/logo.png
npm i -S https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz
-npm i -S react-native-table-component@1.2.0 @types/react-native-table-component`}
+npm i -S react-native-table-component@1.2.2 @types/react-native-table-component`}
3) Download [`App.tsx`](pathname:///reactnative/App.tsx) and replace:
@@ -297,18 +299,6 @@ curl -LO https://docs.sheetjs.com/reactnative/App.tsx
4) Install or switch to Java 17[^6]
-:::note pass
-
-When the demo was last tested on macOS, `java -version` displayed the following:
-
-```
-openjdk version "17.0.10" 2024-01-16
-OpenJDK Runtime Environment Temurin-17.0.10+7 (build 17.0.10+7)
-OpenJDK 64-Bit Server VM Temurin-17.0.10+7 (build 17.0.10+7, mixed mode)
-```
-
-:::
-
5) Start the Android emulator:
```bash
@@ -1049,7 +1039,7 @@ On macOS, if prompted to install `CocoaPods`, press `y`.
cd SheetJSRN
curl -LO https://docs.sheetjs.com/logo.png
npm i -S https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz
-npm i -S react-native-table-component@1.2.0 react-native-document-picker@9.1.1`}
+npm i -S react-native-table-component@1.2.2 react-native-document-picker@9.1.1`}
3) Download [`index.js`](pathname:///mobile/index.js) and replace:
diff --git a/docz/docs/03-demos/42-engines/02-v8.md b/docz/docs/03-demos/42-engines/02-v8.md
index a4d87d5..3cdb4b3 100644
--- a/docz/docs/03-demos/42-engines/02-v8.md
+++ b/docz/docs/03-demos/42-engines/02-v8.md
@@ -988,10 +988,12 @@ const u8 = new Uint8Array(i8.buffer, i8.byteOffset, i8.length);
This demo was last tested in the following deployments:
-| Architecture | V8 Version | Javet | Java | Date |
-|:-------------|:--------------|:--------|:--------|:-----------|
-| `darwin-x64` | `12.6.228.13` | `3.1.3` | 22 | 2024-06-19 |
-| `darwin-arm` | `12.6.228.13` | `3.1.3` | 11.0.23 | 2024-06-19 |
+| Architecture | V8 Version | Javet | Java | Date |
+|:-------------|:--------------|:--------|:----------|:-----------|
+| `darwin-x64` | `12.6.228.13` | `3.1.3` | `22` | 2024-06-19 |
+| `darwin-arm` | `12.6.228.13` | `3.1.3` | `11.0.23` | 2024-06-19 |
+| `linux-x64` | `12.6.228.13` | `3.1.3` | `17.0.7` | 2024-06-20 |
+| `linux-arm` | `12.6.228.13` | `3.1.3` | `17.0.11` | 2024-06-20 |
:::
@@ -1003,12 +1005,47 @@ cd sheetjs-javet
```
2) Download the Javet JAR. There are different archives for different platforms.
-The following command runs on `darwin-x64` and `darwin-arm`:
+
+
+
+
+
+
```bash
curl -LO https://repo1.maven.org/maven2/com/caoccao/javet/javet-macos/3.1.3/javet-macos-3.1.3.jar
```
+
+
+
+```bash
+curl -LO https://repo1.maven.org/maven2/com/caoccao/javet/javet-macos/3.1.3/javet-macos-3.1.3.jar
+```
+
+
+
+
+```bash
+curl -LO https://repo1.maven.org/maven2/com/caoccao/javet/javet/3.1.3/javet-3.1.3.jar
+```
+
+
+
+
+```bash
+curl -LO https://repo1.maven.org/maven2/com/caoccao/javet/javet-linux-arm64/3.1.3/javet-linux-arm64-3.1.3.jar
+```
+
+
+
+
+
+
+
+
+
+
3) Download the SheetJS Standalone script and test file. Save both files in the
project directory:
@@ -1030,11 +1067,50 @@ curl -LO https://docs.sheetjs.com/v8/SheetJSJavet.java
5) Build and run the Java application:
+
+
+
+
+
+
```bash
javac -cp ".:javet-macos-3.1.3.jar" SheetJSJavet.java
java -cp ".:javet-macos-3.1.3.jar" SheetJSJavet pres.xlsx
```
+
+
+
+```bash
+javac -cp ".:javet-macos-3.1.3.jar" SheetJSJavet.java
+java -cp ".:javet-macos-3.1.3.jar" SheetJSJavet pres.xlsx
+```
+
+
+
+
+```bash
+javac -cp ".:javet-3.1.3.jar" SheetJSJavet.java
+java -cp ".:javet-3.1.3.jar" SheetJSJavet pres.xlsx
+```
+
+
+
+
+```bash
+javac -cp ".:javet-linux-arm64-3.1.3.jar" SheetJSJavet.java
+java -cp ".:javet-linux-arm64-3.1.3.jar" SheetJSJavet pres.xlsx
+```
+
+
+
+
+
+
+
+
+
+
If the program succeeded, the CSV contents will be printed to console.
## Snapshots
diff --git a/docz/docs/03-demos/42-engines/09-hermes.md b/docz/docs/03-demos/42-engines/09-hermes.md
index d69cc8d..bb842fc 100644
--- a/docz/docs/03-demos/42-engines/09-hermes.md
+++ b/docz/docs/03-demos/42-engines/09-hermes.md
@@ -375,6 +375,7 @@ fork, which powers React Native for Windows, does have built-in support[^5]
| Architecture | Git Commit | Date |
|:-------------|:-----------|:-----------|
| `win10-x64` | `240573e` | 2024-03-24 |
+| `win11-arm` | `240573e` | 2024-06-20 |
The ["Windows Example"](#windows-example) covers `hermes-windows`.
@@ -547,6 +548,12 @@ contents of the first sheet as CSV rows.
### Windows Example
+:::info pass
+
+On ARM64, the commands must be run in a "ARM64 Native Tools Command Prompt".
+
+:::
+
0) Install dependencies.
@@ -635,6 +642,9 @@ git config --global http.sslVerify true
5) Build the library:
+
+
+
```bash
cd hermes-windows
.\.ado\scripts\cibuild.ps1 -AppPlatform win32 -Platform x64 -ToolsPlatform x64
@@ -673,13 +683,40 @@ embedding Hermes, so the error message can be safely ignored.
:::
+
+
+
+```bash
+cmake -S hermes-windows -B build -G "Visual Studio 17 2022" -A arm64
+cmake --build ./build
+```
+
+
+
+
6) Copy every generated `.lib` and `.dll` file into the main folder:
+
+
+
```powershell
dir -r -Path .\hermes-windows\workspace\build\win32-x64-debug\ -Filter "*.dll" | Copy-Item -Destination .\
dir -r -Path .\hermes-windows\workspace\build\win32-x64-debug\ -Filter "*.lib" | Copy-Item -Destination .\
```
+
+
+
+Run the following commands in a PowerShell session:
+
+```powershell
+dir -r -Path .\build -Filter "*.dll" | Copy-Item -Destination .\
+dir -r -Path .\build -Filter "*.lib" | Copy-Item -Destination .\
+```
+
+
+
+
7) Download [`sheetjs-hermes.cpp`](pathname:///hermes/sheetjs-hermesw.cpp):
```bash
diff --git a/docz/docs/03-demos/42-engines/25-mujs.md b/docz/docs/03-demos/42-engines/25-mujs.md
index 2e8c3a8..32b01a4 100644
--- a/docz/docs/03-demos/42-engines/25-mujs.md
+++ b/docz/docs/03-demos/42-engines/25-mujs.md
@@ -324,11 +324,26 @@ This demo was tested in the following deployments:
|:-------------|:--------|:-----------|
| `darwin-x64` | `1.3.4` | 2024-05-25 |
| `darwin-arm` | `1.3.4` | 2024-05-23 |
+| `win10-x64` | `1.3.4` | 2024-06-20 |
+| `win11-arm` | `1.3.4` | 2024-06-20 |
| `linux-x64` | `1.3.4` | 2024-04-21 |
| `linux-arm` | `1.3.4` | 2024-05-25 |
:::
+:::caution pass
+
+MuJS distributions do not include native Windows projects. The `win10-x64` and
+`win11-arm` tests were run entirely within Windows Subsystem for Linux.
+
+When building in WSL, `libreadline-dev` must be installed using `apt`:
+
+```bash
+sudo apt-get install libreadline-dev
+```
+
+:::
+
1) Make a project directory:
```bash
diff --git a/docz/docs/03-demos/42-engines/26-jurassic.md b/docz/docs/03-demos/42-engines/26-jurassic.md
index ade4d19..53d8c92 100644
--- a/docz/docs/03-demos/42-engines/26-jurassic.md
+++ b/docz/docs/03-demos/42-engines/26-jurassic.md
@@ -178,6 +178,8 @@ This demo was tested in the following deployments:
|:-------------|:---------|:-----------|
| `darwin-x64` | `3.2.7` | 2024-06-15 |
| `darwin-arm` | `3.2.7` | 2024-06-15 |
+| `linux-x64` | `3.2.7` | 2024-06-20 |
+| `linux-arm` | `3.2.7` | 2024-06-20 |
:::