From 1480a3e0213b0efb92c760c363726de065a52ad7 Mon Sep 17 00:00:00 2001 From: SheetJS Date: Sat, 16 Mar 2024 12:04:18 -0400 Subject: [PATCH] darwin-x64 refresh --- docz/docs/03-demos/01-math/21-pandas.md | 31 ++++++-- docz/docs/03-demos/03-net/08-headless.md | 2 +- docz/docs/03-demos/12-static/07-eleventy.md | 15 ++-- docz/docs/03-demos/19-desktop/01-electron.md | 2 +- docz/docs/03-demos/19-desktop/03-wails.md | 19 ++--- docz/docs/03-demos/19-desktop/04-tauri.md | 34 ++++----- .../docs/03-demos/19-desktop/05-neutralino.md | 16 ++--- .../03-demos/19-desktop/06-reactnative.md | 63 +++++++++++++++-- docz/docs/03-demos/19-desktop/09-cli.md | 14 ++-- docz/docs/03-demos/27-local/02-websql.md | 4 +- docz/docs/03-demos/42-engines/01-duktape.md | 33 +++++---- docz/docs/03-demos/42-engines/02-v8.md | 66 +++++++++++++++--- docz/docs/03-demos/42-engines/04-jsc.md | 2 +- docz/docs/03-demos/42-engines/05-jint.md | 16 ++--- docz/docs/03-demos/42-engines/06-goja.md | 2 +- docz/docs/03-demos/42-engines/08-quickjs.md | 6 +- docz/docs/03-demos/42-engines/09-hermes.md | 6 +- docz/docs/03-demos/42-engines/15-rb.md | 2 +- docz/docs/03-demos/42-engines/20-chakra.md | 14 ++-- docz/docs/03-demos/42-engines/21-boa.md | 20 +++--- .../03-demos/42-engines/23-jerryscript.md | 21 ++++-- docz/docs/09-miscellany/05-contributing.md | 10 +-- docz/static/boa/main.rs | 4 +- docz/static/cli/Cargo.toml | 2 +- docz/static/electron/package.json | 12 ++-- docz/static/hermes/Makefile | 4 +- docz/static/tauri/macos.png | Bin 209085 -> 191656 bytes docz/static/wails/macos.png | Bin 124582 -> 171744 bytes 28 files changed, 269 insertions(+), 151 deletions(-) diff --git a/docz/docs/03-demos/01-math/21-pandas.md b/docz/docs/03-demos/01-math/21-pandas.md index efe033b..ff21179 100644 --- a/docz/docs/03-demos/01-math/21-pandas.md +++ b/docz/docs/03-demos/01-math/21-pandas.md @@ -40,7 +40,7 @@ This demo was tested in the following deployments: | Architecture | JS Engine | Pandas | Python | Date | |:-------------|:----------------|:-------|:-------|:-----------| -| `darwin-x64` | Duktape `2.7.0` | 2.0.3 | 3.11.7 | 2024-01-29 | +| `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 | | `linux-x64` | Duktape `2.7.0` | 1.5.3 | 3.11.3 | 2024-01-29 | @@ -219,6 +219,23 @@ sudo pacman -Syu python-pandas ::: +:::caution pass + +On macOS systems with a Python version from Homebrew, the install will fail: + +``` +error: externally-managed-environment +``` + +When the demo was last tested, Homebrew did not have a pre-built Pandas formula. +Instead, Pandas should be installed with the `--break-system-packages` option: + +```bash +sudo python3 -m pip install pandas --break-system-packages +``` + +::: + 1) Build the Duktape shared library: ```bash @@ -356,11 +373,11 @@ The Pandas example requires a few slight changes to work with Polars: This demo was tested in the following deployments: -| Architecture | JS Engine | Polars | Python | Date | -|:-------------|:----------------|:-------|:-------|:-----------| -| `darwin-x64` | Duktape `2.7.0` | 0.20.6 | 3.11.7 | 2024-01-30 | -| `darwin-arm` | Duktape `2.7.0` | 0.20.7 | 3.11.7 | 2024-02-13 | -| `linux-x64` | Duktape `2.7.0` | 0.20.6 | 3.11.3 | 2024-01-30 | +| Architecture | JS Engine | Polars | Python | Date | +|:-------------|:----------------|:--------|:-------|:-----------| +| `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 | +| `linux-x64` | Duktape `2.7.0` | 0.20.6 | 3.11.3 | 2024-01-30 | ::: @@ -428,7 +445,7 @@ It is recommended to use a virtual environment for Polars: ```bash mkdir sheetjs-polars cd sheetjs-polars -python -m venv . +python3 -m venv . ./bin/pip install polars ``` diff --git a/docz/docs/03-demos/03-net/08-headless.md b/docz/docs/03-demos/03-net/08-headless.md index dd5fbc7..054f03e 100644 --- a/docz/docs/03-demos/03-net/08-headless.md +++ b/docz/docs/03-demos/03-net/08-headless.md @@ -404,7 +404,7 @@ This demo was tested in the following environments: | Architecture | PhantomJS | Date | |:-------------|:----------|:-----------| -| `darwin-x64` | `2.1.1` | 2024-02-23 | +| `darwin-x64` | `2.1.1` | 2024-03-15 | | `win10-x64` | `2.1.1` | 2024-02-23 | ::: diff --git a/docz/docs/03-demos/12-static/07-eleventy.md b/docz/docs/03-demos/12-static/07-eleventy.md index f9ee830..ffbf8f1 100644 --- a/docz/docs/03-demos/12-static/07-eleventy.md +++ b/docz/docs/03-demos/12-static/07-eleventy.md @@ -116,11 +116,8 @@ This demo was tested in the following environments: | Eleventy | Date | |:----------------|:-----------| -| `2.0.1` | 2023-10-08 | -| `3.0.0-alpha.1` | 2023-12-04 | - -At the time of writing, the `3.0.0-alpha.1` ("Alpha") release was only available -through the Git repository. Steps for `2.0.1` ("Stable") and Alpha are included. +| `2.0.1` | 2024-03-15 | +| `3.0.0-alpha.5` | 2024-03-15 | ::: @@ -140,14 +137,14 @@ npm init -y {`\ -npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz @11ty/eleventy`} +npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz @11ty/eleventy@2.0.1`} {`\ -npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz 11ty/eleventy`} +npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz @11ty/eleventy@3.0.0-alpha.5`} @@ -190,8 +187,8 @@ The server will generate `index.html` from `index.njk` and show the server URL: 6) Open the URL in a web browser. The page should include a table. -7) Open `_data/pres.xlsx` in a spreadsheet editor. Add a new row to the end -of the list and save the file. +7) Open `_data/pres.xlsx` in a spreadsheet editor. Add a row to the bottom of +the "Sheet1" sheet (set `A7` to "SheetJS Dev" and `B7` to `47`). Save the file. The server log will note that the file changed: diff --git a/docz/docs/03-demos/19-desktop/01-electron.md b/docz/docs/03-demos/19-desktop/01-electron.md index a10cd21..5e96dd4 100644 --- a/docz/docs/03-demos/19-desktop/01-electron.md +++ b/docz/docs/03-demos/19-desktop/01-electron.md @@ -188,7 +188,7 @@ This demo was tested in the following environments: | OS and Version | Architecture | Electron | Date | |:---------------|:-------------|:---------|:-----------| -| macOS 13.5.1 | `darwin-x64` | `27.1.3` | 2023-12-09 | +| macOS 14.4 | `darwin-x64` | `29.1.4` | 2024-03-15 | | macOS 14.1.2 | `darwin-arm` | `27.1.3` | 2023-12-01 | | Windows 10 | `win10-x64` | `28.2.0` | 2024-03-04 | | Windows 11 | `win11-arm` | `27.1.3` | 2023-12-01 | diff --git a/docz/docs/03-demos/19-desktop/03-wails.md b/docz/docs/03-demos/19-desktop/03-wails.md index 66344ba..5f7a8ff 100644 --- a/docz/docs/03-demos/19-desktop/03-wails.md +++ b/docz/docs/03-demos/19-desktop/03-wails.md @@ -297,7 +297,7 @@ This demo was tested in the following environments: | OS and Version | Architecture | Wails | Date | |:---------------|:-------------|:---------|:-----------| -| macOS 13.6 | `darwin-x64` | `v2.6.0` | 2023-11-05 | +| macOS 14.4 | `darwin-x64` | `v2.8.0` | 2024-03-15 | | macOS 14.1.2 | `darwin-arm` | `v2.6.0` | 2023-12-01 | | Windows 10 | `win10-x64` | `v2.8.0` | 2024-03-10 | | Windows 11 | `win11-arm` | `v2.6.0` | 2023-12-01 | @@ -368,15 +368,10 @@ sudo pacman -Syu base-devel gtk3 glib2 pango harfbuzz cairo gdk-pixbuf2 atk libs ```bash wails init -n sheetjs-wails -t svelte-ts -``` - -2) Enter the directory: - -```bash cd sheetjs-wails ``` -3) Install front-end dependencies: +2) Install front-end dependencies: {`\ cd frontend @@ -385,7 +380,7 @@ npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz cd ..`} -4) Download source files: +3) Download source files: - Download [`app.go`](pathname:///wails/app.go) and replace `app.go` - Download [`App.svelte`](pathname:///wails/App.svelte) and replace @@ -396,7 +391,7 @@ curl -o app.go https://docs.sheetjs.com/wails/app.go curl -o frontend/src/App.svelte https://docs.sheetjs.com/wails/App.svelte ``` -5) Build the app with +4) Build the app: ```bash wails build @@ -404,12 +399,12 @@ wails build It will print the path to the generated program (typically in `build/bin/`). -6) Run the generated application. +5) Run the generated application. **Testing** -When run, the program will download [`pres.xlsx`](https://sheetjs.com/pres.xlsx) -and display the contents of the first worksheet in a table. +The program will download [`pres.xlsx`](https://sheetjs.com/pres.xlsx) and +display the contents of the first worksheet in a table. To test export features, click "Export XLSX". The app will ask for a file name and location. After clicking Save, the app will export to XLSX. This file can be diff --git a/docz/docs/03-demos/19-desktop/04-tauri.md b/docz/docs/03-demos/19-desktop/04-tauri.md index 41439a7..4fbe5de 100644 --- a/docz/docs/03-demos/19-desktop/04-tauri.md +++ b/docz/docs/03-demos/19-desktop/04-tauri.md @@ -255,14 +255,14 @@ const save_button_callback = async() => { This demo was tested in the following environments: -| OS and Version | Architecture | Tauri | Date | -|:---------------|:-------------|:---------|:-----------| -| macOS 14.1.1 | `darwin-x64` | `v1.5.6` | 2023-11-17 | -| macOS 14.0 | `darwin-arm` | `v1.5.2` | 2023-10-18 | -| Windows 10 | `win10-x64` | `v1.5.0` | 2023-10-01 | -| Windows 11 | `win11-arm` | `v1.5.7` | 2023-12-01 | -| Linux (HoloOS) | `linux-x64` | `v1.5.9` | 2024-01-23 | -| Linux (Debian) | `linux-arm` | `v1.5.7` | 2023-12-01 | +| OS and Version | Architecture | Tauri | Date | +|:---------------|:-------------|:----------|:-----------| +| macOS 14.4 | `darwin-x64` | `v1.5.11` | 2024-03-15 | +| macOS 14.0 | `darwin-arm` | `v1.5.2` | 2023-10-18 | +| Windows 10 | `win10-x64` | `v1.5.0` | 2023-10-01 | +| Windows 11 | `win11-arm` | `v1.5.7` | 2023-12-01 | +| Linux (HoloOS) | `linux-x64` | `v1.5.9` | 2024-01-23 | +| Linux (Debian) | `linux-arm` | `v1.5.7` | 2023-12-01 | ::: @@ -287,15 +287,15 @@ If required dependencies are installed, the output will show a checkmark next to ``` [✔] Environment - - OS: Mac OS 14.1.1 X64 + - OS: Mac OS 14.4.0 X64 ✔ Xcode Command Line Tools: installed - ✔ rustc: 1.74.0 (79e9716c9 2023-11-13) - ✔ cargo: 1.74.0 (ecb9851af 2023-10-18) - ✔ rustup: 1.26.0+198 (393e187b7 2023-11-16) + ✔ rustc: 1.76.0 (07dca489a 2024-02-04) + ✔ cargo: 1.76.0 (c84b36747 2024-01-18) + ✔ rustup: 1.27.0 (bbb9276d2 2024-03-08) ✔ Rust toolchain: stable-x86_64-apple-darwin (default) - - node: 20.9.0 - - npm: 10.1.0 - - bun: 1.0.2 + - node: 20.11.1 + - npm: 10.2.4 + - bun: 1.0.31 ``` :::caution pass @@ -325,7 +325,7 @@ npm i --save-dev @tauri-apps/cli`} 3) Add the highlighted lines to `src-tauri/tauri.conf.json` in the `tauri.allowlist` section: -```json title="src-tauri/tauri.conf.json" +```json title="src-tauri/tauri.conf.json (add highlighted lines)" "tauri": { "allowlist": { // highlight-start @@ -345,7 +345,7 @@ npm i --save-dev @tauri-apps/cli`} In the same file, look for the `"identifier"` key and replace the value with `com.sheetjs.tauri`: -```json title="src-tauri/tauri.conf.json" +```json title="src-tauri/tauri.conf.json (edit highlighted line)" "icons/icon.ico" ], // highlight-next-line diff --git a/docz/docs/03-demos/19-desktop/05-neutralino.md b/docz/docs/03-demos/19-desktop/05-neutralino.md index 5a8e8e0..b6a09d9 100644 --- a/docz/docs/03-demos/19-desktop/05-neutralino.md +++ b/docz/docs/03-demos/19-desktop/05-neutralino.md @@ -190,14 +190,14 @@ const save_button_callback = async() => { This demo was tested in the following environments: -| OS and Version | Architecture | Server | Client | Date | -|:---------------|:-------------|:----------|:----------|:-----------| -| macOS 13.5.1 | `darwin-x64` | `v4.14.1` | `v3.12.0` | 2023-12-13 | -| macOS 14.0 | `darwin-arm` | `v4.14.1` | `v3.12.0` | 2023-10-18 | -| Windows 10 | `win10-x64` | `v4.14.1` | `v3.12.0` | 2023-12-09 | -| Windows 11 | `win11-arm` | `v4.14.1` | `v3.12.0` | 2023-12-01 | -| Linux (HoloOS) | `linux-x64` | `v4.14.1` | `v3.12.0` | 2024-01-26 | -| Linux (Debian) | `linux-arm` | `v4.14.1` | `v3.12.0` | 2023-12-01 | +| OS and Version | Architecture | Server | Client | Date | +|:---------------|:-------------|:---------|:---------|:-----------| +| macOS 14.4 | `darwin-x64` | `5.0.0` | `5.0.1` | 2024-03-15 | +| macOS 14.0 | `darwin-arm` | `4.14.1` | `3.12.0` | 2023-10-18 | +| Windows 10 | `win10-x64` | `4.14.1` | `3.12.0` | 2023-12-09 | +| Windows 11 | `win11-arm` | `4.14.1` | `3.12.0` | 2023-12-01 | +| Linux (HoloOS) | `linux-x64` | `4.14.1` | `3.12.0` | 2024-01-26 | +| Linux (Debian) | `linux-arm` | `4.14.1` | `3.12.0` | 2023-12-01 | ::: diff --git a/docz/docs/03-demos/19-desktop/06-reactnative.md b/docz/docs/03-demos/19-desktop/06-reactnative.md index a3fbdf2..296d55f 100644 --- a/docz/docs/03-demos/19-desktop/06-reactnative.md +++ b/docz/docs/03-demos/19-desktop/06-reactnative.md @@ -49,7 +49,7 @@ This demo was tested in the following environments: | Windows 10 | `win10-x64` | `v0.72.16` | 2023-10-27 | | Windows 11 | `win11-x64` | `v0.72.12` | 2023-10-14 | | Windows 11 | `win11-arm` | `v0.72.20` | 2023-12-01 | -| MacOS 14.1 | `darwin-x64` | `v0.72.5` | 2023-10-27 | +| MacOS 14.4 | `darwin-x64` | `v0.73.21` | 2024-03-15 | | MacOS 14.1.2 | `darwin-arm` | `v0.72.11` | 2023-12-01 | ::: @@ -643,7 +643,7 @@ Native for macOS required React Native `0.71`. **The official documentation is out of date.** -There exist official `react-native-macos` releases compatible with RN `0.72` +There exist official `react-native-macos` releases compatible with RN `0.73` ::: @@ -652,19 +652,38 @@ There exist official `react-native-macos` releases compatible with RN `0.72` ### Project Setup -1) Create a new React Native project using React Native `0.72`: +1) Create a new React Native project using React Native `0.73`: ```bash -npx -y react-native init SheetJSmacOS --template react-native@^0.72.0 +npx -y react-native init SheetJSmacOS --template react-native@^0.73.0 cd SheetJSmacOS ``` +If prompted to install CocoaPods, type `Y`. + 2) Create the MacOS part of the application: ```bash npx -y react-native-macos-init --no-telemetry ``` +:::caution pass + +In the most recent x64 test, the build failed due to `visionos` errors: + +``` +[!] Failed to load 'React-RCTFabric' podspec: +[!] Invalid `React-RCTFabric.podspec` file: undefined method `visionos' for #. +``` + +This error was resolved by upgrading CocoaPods to `1.15.2`: + +```bash +sudo gem install cocoapods +``` + +::: + 3) Install the SheetJS library: {`\ @@ -679,6 +698,19 @@ npx react-native run-macos Close the running app from the dock and close the Metro terminal window. +:::warning pass + +When the demo was last tested on x64, the app failed with a warning + +> No bundle URL present. + +**As this affects the default app, this is a bug in React Native macOS!** + +The production builds work as expected. If there are errors, the recommended +approach is to [make a release build](#production) every time. + +::: + ### Native Module 5) Create the file `macos/SheetJSmacOS-macOS/RCTDocumentPicker.h` with the @@ -884,6 +916,16 @@ curl -LO https://docs.sheetjs.com/reactnative/rnm/App.tsx #### Development +:::info pass + +In some test runs, the development mode app failed with a "bundle URL" error: + +> No bundle URL present. + +The ["Production" section](#production) section covers release builds and tests. + +::: + 11) Launch the app again: ```bash @@ -899,7 +941,14 @@ Close the running app from the dock and close the Metro terminal window. #### Production -13) Make a release build: +13) Remove all existing `SheetJSmacOS.app` release builds. They will be stored +in the `~/Library/Developer/Xcode/DerivedData` folder. + +```bash +find ~/Library/Developer/Xcode/DerivedData -name SheetJSmacOS.app | grep Release | while read x; do rm -rf "$x"; done +``` + +14) Make a release build: ```bash xcodebuild -workspace macos/SheetJSmacOS.xcworkspace -scheme SheetJSmacOS-macOS -config Release @@ -918,13 +967,13 @@ If there are no instances, the app path can be found in the `DerivedData` folder find ~/Library/Developer/Xcode/DerivedData -name SheetJSmacOS.app | grep Release ``` -14) Run the release app: +15) Run the release app: ```bash open -a "$(find ~/Library/Developer/Xcode/DerivedData -name SheetJSmacOS.app | grep Release | head -n 1)" ``` -15) Click "Click here to Open File!" and use the file picker to select +16) Click "Click here to Open File!" and use the file picker to select `pres.xlsx` from the Downloads folder. The app will refresh and display the data from the file. diff --git a/docz/docs/03-demos/19-desktop/09-cli.md b/docz/docs/03-demos/19-desktop/09-cli.md index b8404a6..9dee21c 100644 --- a/docz/docs/03-demos/19-desktop/09-cli.md +++ b/docz/docs/03-demos/19-desktop/09-cli.md @@ -51,7 +51,7 @@ This demo was tested in the following deployments: | Architecture | Version | NodeJS | Source | Date | |:-------------|:-------------|:----------|:----------|:-----------| -| `darwin-x64` | `4.0.0-rc.2` | `14.15.3` | Pre-built | 2023-10-10 | +| `darwin-x64` | `4.0.0-rc.4` | `14.15.3` | Pre-built | 2024-03-15 | | `darwin-arm` | `4.0.0-rc.2` | `18.18.0` | Compiled | 2023-12-01 | | `win10-x64` | `4.0.0-rc.4` | `14.15.3` | Pre-built | 2024-03-04 | | `win11-arm` | `4.0.0-rc.2` | `20.10.0` | Compiled | 2023-12-01 | @@ -63,7 +63,7 @@ This demo was tested in the following deployments: | Architecture | Version | NodeJS | Date | |:-------------|:--------|:---------|:-----------| -| `darwin-x64` | `5.8.1` | `18.5.0` | 2023-10-11 | +| `darwin-x64` | `5.8.1` | `18.5.0` | 2024-03-15 | | `darwin-arm` | `5.8.1` | `18.5.0` | 2023-12-01 | | `win10-x64` | `5.8.1` | `18.5.0` | 2023-10-09 | | `win11-arm` | `5.8.1` | `18.5.0` | 2023-12-01 | @@ -75,7 +75,7 @@ This demo was tested in the following deployments: | Architecture | Version | NodeJS | Date | |:-------------|:--------|:----------|:-----------| -| `darwin-x64` | `2.1.2` | `20.8.0` | 2023-10-12 | +| `darwin-x64` | `2.4.0` | `21.7.1` | 2024-03-15 | | `darwin-arm` | `2.3.0` | `21.3.0` | 2023-12-01 | | `win10-x64` | `2.1.2` | `16.20.2` | 2023-10-09 | | `linux-x64` | `2.3.0` | `21.6.1` | 2024-01-26 | @@ -228,14 +228,14 @@ Run `boxednode`: ```bash -npx boxednode@2.3.0 -s xlsx-cli.js -t xlsx-cli +npx boxednode@2.4.0 -s xlsx-cli.js -t xlsx-cli ``` ```bash -npx boxednode@2.1.2 -s xlsx-cli.js -t xlsx-cli.exe -n 16.20.2 +npx boxednode@2.4.0 -s xlsx-cli.js -t xlsx-cli.exe -n 16.20.2 ``` :::info pass @@ -305,7 +305,7 @@ This demo was last tested in the following deployments: | Architecture | V8 Version | Crate | Date | |:-------------|:--------------|:---------|:-----------| -| `darwin-x64` | `11.8.172.13` | `0.79.2` | 2023-10-12 | +| `darwin-x64` | `12.3.219.9` | `0.88.0` | 2024-03-15 | | `darwin-arm` | `11.8.172.13` | `0.79.2` | 2023-10-18 | | `win10-x64` | `11.8.172.13` | `0.79.2` | 2023-10-09 | | `win11-x64` | `11.8.172.13` | `0.79.2` | 2023-10-14 | @@ -416,7 +416,7 @@ This demo was last tested in the following deployments: | Architecture | Version | Date | |:-------------|:---------|:-----------| -| `darwin-x64` | `1.37.1` | 2023-10-12 | +| `darwin-x64` | `1.41.3` | 2024-03-15 | | `darwin-arm` | `1.37.2` | 2023-10-18 | | `win10-x64` | `1.37.1` | 2023-10-09 | | `win11-x64` | `1.37.2` | 2023-10-14 | diff --git a/docz/docs/03-demos/27-local/02-websql.md b/docz/docs/03-demos/27-local/02-websql.md index 08274ab..a6633ed 100644 --- a/docz/docs/03-demos/27-local/02-websql.md +++ b/docz/docs/03-demos/27-local/02-websql.md @@ -157,8 +157,8 @@ Browsers that do not support WebSQL will throw errors: | Browser | Date | Error Message | |:------------|:-----------|:------------------------------| | Chrome 120 | 2024-02-11 | `openDatabase is not defined` | -| Safari 17.3 | 2024-02-11 | `Web SQL is deprecated` | -| Firefox 118 | 2023-10-13 | `openDatabase is not defined` | +| Safari 17.4 | 2024-03-15 | `Web SQL is deprecated` | +| Firefox 122 | 2024-03-15 | `openDatabase is not defined` | ::: diff --git a/docz/docs/03-demos/42-engines/01-duktape.md b/docz/docs/03-demos/42-engines/01-duktape.md index a2114d1..f8573f4 100644 --- a/docz/docs/03-demos/42-engines/01-duktape.md +++ b/docz/docs/03-demos/42-engines/01-duktape.md @@ -130,7 +130,7 @@ This demo was tested in the following deployments: | Architecture | Version | Date | |:-------------|:--------|:-----------| -| `darwin-x64` | `2.7.0` | 2023-12-05 | +| `darwin-x64` | `2.7.0` | 2024-03-15 | | `darwin-arm` | `2.7.0` | 2023-10-18 | | `win10-x64` | `2.7.0` | 2023-10-27 | | `win11-arm` | `2.7.0` | 2023-12-01 | @@ -406,16 +406,21 @@ This demo was tested in the following deployments: | Architecture | Version | PHP Version | Date | |:-------------|:--------|:------------|:-----------| -| `darwin-x64` | `2.7.0` | `8.3.2` | 2024-01-26 | +| `darwin-x64` | `2.7.0` | `8.3.4` | 2024-03-15 | | `darwin-arm` | `2.7.0` | `8.3.2` | 2024-02-13 | | `linux-x64` | `2.7.0` | `8.2.7` | 2024-01-29 | ::: -0) Ensure `php` is installed and available on the system path. +0) Ensure `php` is installed and available on the system path -1) Inspect the `php.ini` configuration file. The location of the file can be -found by running `php --ini`. The following output is from the last macOS test: +1) Find the `php.ini` file: + +```bash +php --ini +``` + +The following output is from the last macOS test: ```text pass Configuration File (php.ini) Path: /usr/local/etc/php/8.3 @@ -425,6 +430,8 @@ Scan for additional .ini files in: /usr/local/etc/php/8.3/conf.d Additional .ini files parsed: /usr/local/etc/php/8.3/conf.d/ext-opcache.ini ``` +2) Edit the `php.ini` configuration file. + The following line should appear in the configuration: ```ini title="php.ini (add to end)" @@ -434,7 +441,7 @@ extension=ffi If this line is prefixed with a `;`, remove the semicolon. If this line does not appear in the file, add it to the end. -2) Build the Duktape shared library: +3) Build the Duktape shared library: ```bash curl -LO https://duktape.org/duktape-2.7.0.tar.xz @@ -444,7 +451,7 @@ make -f Makefile.sharedlibrary cd .. ``` -3) Copy the shared library to the current folder. When the demo was last tested, +4) Copy the shared library to the current folder. When the demo was last tested, the shared library file name differed by platform: | OS | name | @@ -456,7 +463,7 @@ the shared library file name differed by platform: cp duktape-*/libduktape.* . ``` -4) Download the SheetJS Standalone script, shim script and test file. Move all +5) Download the SheetJS Standalone script, shim script and test file. Move all three files to the project directory: