linux-x64

This commit is contained in:
SheetJS 2023-10-12 04:39:38 -04:00
parent f57d38c58b
commit e1402a8424
20 changed files with 93 additions and 50 deletions

@ -188,7 +188,7 @@ This demo was tested in the following environments:
| macOS 13.5.1 | ARM | `26.1.0` | 2023-09-03 |
| Windows 10 | x64 | `26.1.0` | 2023-09-03 |
| Windows 10 | ARM | `26.1.0` | 2023-09-24 |
| Linux (HoloOS) | x64 | `26.1.0` | 2023-09-03 |
| Linux (HoloOS) | x64 | `27.0.0` | 2023-10-11 |
| Linux (Debian) | ARM | `26.1.0` | 2023-09-03 |
:::

@ -117,7 +117,7 @@ This demo was tested in the following environments:
| macOS 13.5.2 | ARM | `0.78.1` | 2023-09-27 |
| Windows 10 | x64 | `0.78.1` | 2023-09-27 |
| Windows 11 | ARM | `0.78.1` | 2023-09-27 |
| Linux (HoloOS) | x64 | `0.78.1` | 2023-09-27 |
| Linux (HoloOS) | x64 | `0.78.1` | 2023-10-11 |
There is no official Linux ARM64 release. The community release[^1] was tested
and verified on 2023-09-27.

@ -301,7 +301,7 @@ This demo was tested in the following environments:
| macOS 13.5.1 | ARM | `v2.5.1` | 2023-08-24 |
| Windows 10 | x64 | `v2.5.1` | 2023-08-25 |
| Windows 11 | ARM | `v2.6.0` | 2023-09-25 |
| Linux (HoloOS) | x64 | `v2.5.1` | 2023-08-25 |
| Linux (HoloOS) | x64 | `v2.6.0` | 2023-10-11 |
| Linux (Debian) | ARM | `v2.6.0` | 2023-09-25 |
:::
@ -348,7 +348,7 @@ None of the optional packages are required for building and running this demo.
On the Steam Deck (HoloOS), some dependencies must be reinstalled:
```bash
sudo pacman -Syu base-devel gtk glib2 pango harfbuzz cairo gdk-pixbuf2 atk libsoup
sudo pacman -Syu base-devel gtk3 glib2 pango harfbuzz cairo gdk-pixbuf2 atk libsoup
```
:::
@ -393,7 +393,9 @@ curl -o frontend/src/App.svelte https://docs.sheetjs.com/wails/App.svelte
wails build
```
At the end, it will print the path to the generated program. Run the program!
At the end, it will print the path to the generated program.
6) Run the generated application.
**Testing**

@ -261,7 +261,7 @@ This demo was tested in the following environments:
| macOS 13.4.1 | ARM | `v1.4.0` | 2023-06-29 |
| Windows 10 | x64 | `v1.5.0` | 2023-10-01 |
| Windows 11 | ARM | `v1.4.1` | 2023-09-26 |
| Linux (HoloOS) | x64 | `v1.4.1` | 2023-07-30 |
| Linux (HoloOS) | x64 | `v1.5.2` | 2023-10-11 |
| Linux (Debian) | ARM | `v1.4.1` | 2023-09-26 |
:::
@ -397,8 +397,16 @@ sudo pacman -S openssl
<Tabs groupId="os">
<TabItem value="unix" label="Linux/MacOS">
Depending on the version of Tauri, the command may be
```bash
./src-tauri/target/release/SheetJSTauri
```
or
```bash
./src-tauri/target/release/sheet-js-tauri
```
</TabItem>

@ -198,7 +198,7 @@ This demo was tested in the following environments:
| macOS 13.4.1 | ARM | `v4.10.0` | `v3.8.2` | 2023-06-28 |
| Windows 10 | x64 | `v4.13.0` | `v3.11.0` | 2023-08-26 |
| Windows 11 | ARM | `v4.13.0` | `v3.11.0` | 2023-09-21 |
| Linux (HoloOS) | x64 | `v4.13.0` | `v3.11.0` | 2023-08-26 |
| Linux (HoloOS) | x64 | `v4.14.1` | `v3.12.0` | 2023-10-11 |
| Linux (Debian) | ARM | `v4.13.0` | `v3.11.0` | 2023-09-25 |
:::

@ -54,7 +54,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | `5.8.1` | `18.5.0` | 2023-09-25 |
| `win10-x64` | `5.8.1` | `18.5.0` | 2023-10-09 |
| `win11-arm` | `5.8.1` | `18.5.0` | 2023-09-25 |
| `linux-x64` | `5.8.1` | `18.5.0` | 2023-05-08 |
| `linux-x64` | `5.8.1` | `18.5.0` | 2023-10-11 |
| `linux-arm` | `5.8.1` | `18.5.0` | 2023-09-25 |
**`nexe`**
@ -65,7 +65,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | `4.0.0-rc.2` | `20.7.0` | 2023-09-25 |
| `win10-x64` | `4.0.0-rc.2` | `14.15.3` | 2023-10-09 |
| `win11-arm` | `4.0.0-rc.2` | `18.17.1` | 2023-09-25 |
| `linux-x64` | `4.0.0-rc.2` | `14.15.3` | 2023-05-08 |
| `linux-x64` | `4.0.0-rc.2` | `14.15.3` | 2023-10-11 |
| `linux-arm` | `4.0.0-rc.2` | `20.7.0` | 2023-09-25 |
**`boxednode`**
@ -75,7 +75,7 @@ This demo was tested in the following deployments:
| `darwin-x64` | `2.0.1` | `20.1.0` | 2023-05-08 |
| `darwin-arm` | `2.1.1` | `20.7.0` | 2023-09-25 |
| `win10-x64` | `2.1.2` | `16.20.2` | 2023-10-09 |
| `linux-x64` | `2.0.1` | `20.1.0` | 2023-05-08 |
| `linux-x64` | `2.1.2` | `20.8.0` | 2023-10-11 |
| `linux-arm` | `2.1.1` | `20.7.0` | 2023-09-25 |
</details>
@ -162,7 +162,7 @@ Run `boxednode`:
<TabItem value="unix" label="Linux/MacOS">
```bash
npx boxednode@2.1.1 -s xlsx-cli.js -t xlsx-cli
npx boxednode@2.1.2 -s xlsx-cli.js -t xlsx-cli
```
</TabItem>
@ -243,7 +243,7 @@ This demo was last tested in the following deployments:
| `darwin-arm` | `11.4.183.2` | `0.71.2` | 2023-05-22 |
| `win10-x64` | `11.8.172.13` | `0.79.2` | 2023-10-09 |
| `win11-x64` | `11.7.439.6` | `0.75.1` | 2023-08-31 |
| `linux-x64` | `11.4.183.2` | `0.71.2` | 2023-05-23 |
| `linux-x64` | `11.8.172.13` | `0.79.2` | 2023-10-11 |
| `linux-arm` | `11.7.439.6` | `0.75.1` | 2023-08-30 |
:::caution pass
@ -354,7 +354,7 @@ This demo was last tested in the following deployments:
| `darwin-arm` | `1.34.1` | 2023-06-05 |
| `win10-x64` | `1.37.1` | 2023-10-09 |
| `win11-arm` | `1.37.0` | 2023-09-26 |
| `linux-x64` | `1.33.2` | 2023-05-08 |
| `linux-x64` | `1.37.1` | 2023-10-11 |
| `linux-arm` | `1.36.3` | 2023-08-30 |
</details>

@ -68,7 +68,18 @@ db.readTransaction(tx =>
:::note
This demo was last tested on 2023 May 28 in Chromium 113
This browser demo was tested in the following environments:
| Browser | Date |
|:------------|:-----------|
| Chrome 117 | 2023-10-11 |
Some lesser-used browsers do not support WebSQL:
| Browser | Date | Support |
|:------------|:-----------|:------------------------------------|
| Safari 17.0 | 2023-10-11 | Error `Web SQL is deprecated` |
| Firefox 118 | 2023-10-11 | Error `openDatabase is not defined` |
:::

@ -123,7 +123,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | `2.7.0` | 2023-06-05 |
| `win10-x64` | `2.7.0` | 2023-07-24 |
| `win11-arm` | `2.7.0` | 2023-09-26 |
| `linux-x64` | `2.7.0` | 2023-09-22 |
| `linux-x64` | `2.7.0` | 2023-10-11 |
| `linux-arm` | `2.7.0` | 2023-08-30 |
:::

@ -122,13 +122,13 @@ The resulting `buf` can be written to file with `fwrite`.
This demo was tested in the following deployments:
| V8 Version | Platform | OS Version | Compiler | Date |
|:--------------|:-------------|:-------------|:-----------------|:-----------|
| `11.8.82` | `darwin-x64` | macOS 13.5.1 | `clang 14.0.3` | 2023-08-26 |
| `11.8.82` | `darwin-arm` | macOS 13.5.1 | `clang 14.0.3` | 2023-08-26 |
| `11.8.82` | `win10-x64` | Windows 10 | `CL 19.37.32822` | 2023-08-26 |
| `11.8.82` | `linux-x64` | HoloOS 3.4.8 | `gcc 12.2.0` | 2023-08-26 |
| `11.8.82` | `linux-arm` | Debian 11 | `gcc 10.2.1` | 2023-09-26 |
| V8 Version | Platform | OS Version | Compiler | Date |
|:--------------|:-------------|:--------------|:-----------------|:-----------|
| `11.8.82` | `darwin-x64` | macOS 13.5.1 | `clang 14.0.3` | 2023-08-26 |
| `11.8.82` | `darwin-arm` | macOS 13.5.1 | `clang 14.0.3` | 2023-08-26 |
| `11.8.82` | `win10-x64` | Windows 10 | `CL 19.37.32822` | 2023-08-26 |
| `12.0.72` | `linux-x64` | HoloOS 3.4.11 | `gcc 12.2.0` | 2023-10-11 |
| `11.8.82` | `linux-arm` | Debian 11 | `gcc 10.2.1` | 2023-09-26 |
:::
@ -395,20 +395,20 @@ The recommended fix is to delete the referenced folder and re-run `gclient sync`
</Tabs>
5) Checkout the desired version. The following command pulls `11.8.82`:
5) Checkout the desired version. The following command pulls `12.0.72`:
<Tabs groupId="os">
<TabItem value="unix" label="Linux/MacOS">
```bash
git checkout refs/tags/11.8.82 -b sample -t
git checkout refs/tags/12.0.72 -b sample -t
```
</TabItem>
<TabItem value="win" label="Windows">
```bash
git checkout tags/11.8.82 -b sample
git checkout tags/12.0.72 -b sample
```
:::caution pass
@ -416,14 +416,14 @@ git checkout tags/11.8.82 -b sample
The official documentation recommends:
```bash
git checkout refs/tags/11.8.82 -b sample -t
git checkout refs/tags/12.0.72 -b sample -t
```
This command failed in local testing:
```
E:\v8\v8>git checkout refs/tags/11.8.82 -b sample -t
fatal: cannot set up tracking information; starting point 'refs/tags/11.8.82' is not a branch
E:\v8\v8>git checkout refs/tags/12.0.72 -b sample -t
fatal: cannot set up tracking information; starting point 'refs/tags/12.0.72' is not a branch
```
:::
@ -459,6 +459,28 @@ tools/dev/v8gen.py x64.release.sample
ninja -C out.gn/x64.release.sample v8_monolith
```
:::caution pass
In the most recent Linux x64 test, there were build errors:
```
../../src/compiler/turboshaft/wasm-gc-type-reducer.cc:212:18: error: 'back_insert_iterator' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported]
212 | std::back_insert_iterator(snapshots), [this](Block* pred) {
| ^
../../build/linux/debian_bullseye_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_iterator.h:596:11: note: add a deduction guide to suppress this warning
596 | class back_insert_iterator
| ^
1 error generated.
```
This was resolved by manually editing `out.gn/x64.release.sample/args.gn`:
```ninja title="out.gn/x64.release.sample/args.gn (add to file)"
treat_warnings_as_errors = false
```
:::
</TabItem>
<TabItem value="linux-arm" label="Linux ARM">
@ -788,7 +810,7 @@ This demo was last tested in the following deployments:
| `darwin-x64` | `0.75.1` | 2023-08-26 |
| `darwin-arm` | `0.73.0` | 2023-06-05 |
| `win10-x64` | `0.79.2` | 2023-10-09 |
| `linux-x64` | `0.71.2` | 2023-05-23 |
| `linux-x64` | `0.79.2` | 2023-10-11 |
| `linux-arm` | `0.75.1` | 2023-08-30 |
:::

@ -167,7 +167,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | `3.0.0-beta-2051` | 2023-09-26 |
| `win10-x64` | `3.0.0-beta-2051` | 2023-09-16 |
| `win11-arm` | `3.0.0-beta-2051` | 2023-09-26 |
| `linux-x64` | `3.0.0-beta-2051` | 2023-09-22 |
| `linux-x64` | `3.0.0-beta-2052` | 2023-10-11 |
| `linux-arm` | `3.0.0-beta-2051` | 2023-09-26 |
:::
@ -238,7 +238,7 @@ dotnet run
```bash
dotnet nuget add source https://www.myget.org/F/jint/api/v3/index.json
dotnet add package Jint --version 3.0.0-beta-2051
dotnet add package Jint --version 3.0.0-beta-2052
```
To verify Jint is installed, replace `Program.cs` with the following:

@ -98,7 +98,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | `28ee0ee` | `1.20.4` | 2023-06-05 |
| `win10-x64` | `81d7606` | `1.20.2` | 2023-08-27 |
| `win11-arm` | `fc55792` | `1.21.1` | 2023-09-25 |
| `linux-x64` | `81d7606` | `1.21.0` | 2023-08-27 |
| `linux-x64` | `fc55792` | `1.21.3` | 2023-10-11 |
| `linux-arm` | `3dbe69d` | `1.21.1` | 2023-08-30 |
At the time of writing, Goja did not have proper version numbers. Versions are

@ -266,7 +266,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | `2788d71` | 2023-06-05 |
| `win10-x64` | `2788d71` | 2023-10-09 |
| `win11-arm` | `2788d71` | 2023-09-25 |
| `linux-x64` | `2788d71` | 2023-06-02 |
| `linux-x64` | `2788d71` | 2023-10-11 |
| `linux-arm` | `2788d71` | 2023-08-29 |
When the demo was tested, commit `2788d71` corresponded to the latest release.
@ -338,11 +338,11 @@ first worksheet name, and the contents of the first sheet as CSV rows.
:::note
This demo was last tested on 2023 August 26 against QuickJS commit `2788d71`.
This demo was last tested on 2023 October 11 against QuickJS commit `2788d71`.
:::
0) Ensure `quickjs` command line utility is installed
0) Ensure `qjs` command line utility is installed
1) Download the SheetJS Standalone script and the test file. Save both files in
the project directory:
@ -366,7 +366,7 @@ curl -LO https://docs.sheetjs.com/quickjs/SheetJSQuick.js
3) Test the program:
```bash
quickjs SheetJSQuick.js
qjs SheetJSQuick.js
```
If successful, the script will generate `SheetJSQuick.xlsx`.

@ -364,7 +364,7 @@ This demo was tested in the following deployments:
|:-------------|:-----------|:-----------|
| `darwin-x64` | `70af78b` | 2023-08-27 |
| `darwin-arm` | `869312f` | 2023-06-05 |
| `linux-x64` | `49e1930` | 2023-09-22 |
| `linux-x64` | `2b4f949` | 2023-10-11 |
| `linux-arm` | `70af78b` | 2023-08-27 |
The main Hermes source tree does not have Windows support. The `hermes-windows`

@ -74,7 +74,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | `2.7.4` | `2.9.1` | 2023-09-24 |
| `win10-x64` | `3.2.2` | `2.9.1` | 2023-09-24 |
| `win11-arm` | `3.0.2` | `2.9.1` | 2023-09-24 |
| `linux-x64` | `3.0.4` | `2.9.1` | 2023-09-24 |
| `linux-x64` | `3.0.4` | `2.9.1` | 2023-10-11 |
| `linux-arm` | `2.7.4` | `2.9.1` | 2023-09-24 |
Note: The Windows 11 ARM64 test used the Ruby version that ships with WSL.

@ -123,7 +123,7 @@ This demo was tested in the following deployments:
| `darwin-x64` | `c3ead3f` | 2023-08-26 |
| `darwin-arm` | `c3ead3f` | 2023-08-26 |
| `win10-x64` | `c3ead3f` | 2023-08-26 |
| `linux-x64` | `c3ead3f` | 2023-08-27 |
| `linux-x64` | `c3ead3f` | 2023-10-11 |
:::

@ -118,7 +118,7 @@ This demo was tested in the following deployments:
| `darwin-arm` | 2023-07-05 |
| `win10-x64` | 2023-08-31 |
| `win11-arm` | 2023-09-26 |
| `linux-x64` | 2023-07-05 |
| `linux-x64` | 2023-10-11 |
| `linux-arm` | 2023-08-30 |
:::

@ -132,7 +132,7 @@ This demo was tested in the following deployments:
| Architecture | Commit | Date |
|:-------------|:----------|:-----------|
| `darwin-x64` | `a588e49` | 2023-09-22 |
| `linux-x64` | `a588e49` | 2023-09-22 |
| `linux-x64` | `a588e49` | 2023-10-11 |
:::note pass

@ -39,7 +39,7 @@ These instructions were tested on the following platforms:
| Platform | Test Date |
|:------------------------------|:-----------|
| Linux (Steam Deck Holo x64) | 2023-09-22 |
| Linux (Steam Deck Holo x64) | 2023-10-11 |
| Linux (Ubuntu 18 AArch64) | 2023-09-07 |
| MacOS 10.13.6 (x64) | 2023-09-30 |
| MacOS 13.6 (ARM64) | 2023-09-30 |

@ -15,12 +15,12 @@
"make": "electron-forge make"
},
"devDependencies": {
"@electron-forge/cli": "6.4.1",
"@electron-forge/maker-deb": "6.4.1",
"@electron-forge/maker-rpm": "6.4.1",
"@electron-forge/maker-squirrel": "6.4.1",
"@electron-forge/maker-zip": "6.4.1",
"electron": "26.1.0"
"@electron-forge/cli": "6.4.2",
"@electron-forge/maker-deb": "6.4.2",
"@electron-forge/maker-rpm": "6.4.2",
"@electron-forge/maker-squirrel": "6.4.2",
"@electron-forge/maker-zip": "6.4.2",
"electron": "27.0.0"
},
"config": {
"forge": {

@ -1,5 +1,5 @@
# Note: The official Hermes documentation includes zero guidance on embedding.
# Tested against commit 49e1930dbab6f4c6444d61ca9674cbd5795253fb
# Tested against commit 2b4f949f6ff4d1de03fbad0dbef9b744153e0adb
MYCC=llvm-g++
POSTAMBLE=-framework CoreFoundation
@ -64,5 +64,5 @@ sheetjs-hermes: sheetjs-hermes.cpp init
.PHONY: init
init:
if [ ! -e hermes ]; then git clone https://github.com/facebook/hermes.git; cd hermes; git checkout 49e1930dbab6f4c6444d61ca9674cbd5795253fb; cd ..; fi
if [ ! -e hermes ]; then git clone https://github.com/facebook/hermes.git; cd hermes; git checkout 2b4f949f6ff4d1de03fbad0dbef9b744153e0adb; cd ..; fi
if [ ! -e build_release ]; then cmake -S hermes -B build_release -G Ninja -DCMAKE_BUILD_TYPE=Release; cmake --build ./build_release; fi