diff --git a/docz/data/cli.xls b/docz/data/cli.xls index 99fc077..47a8962 100644 --- a/docz/data/cli.xls +++ b/docz/data/cli.xls @@ -79,7 +79,7 @@ - + @@ -97,7 +97,7 @@ - + @@ -106,7 +106,7 @@ - + diff --git a/docz/docs/03-demos/20-cli/05-pkg.md b/docz/docs/03-demos/20-cli/05-pkg.md index 79c4d9b..bb434c9 100644 --- a/docz/docs/03-demos/20-cli/05-pkg.md +++ b/docz/docs/03-demos/20-cli/05-pkg.md @@ -40,12 +40,19 @@ This demo was tested in the following deployments: | `darwin-x64` | `5.8.1` | `18.5.0` | 2024-05-28 | | `darwin-arm` | `5.8.1` | `18.5.0` | 2024-05-25 | | `win10-x64` | `5.8.1` | `18.5.0` | 2024-04-18 | -| `win11-arm` | `5.8.1` | `18.5.0` | 2024-05-28 | +| `win11-arm` | `5.8.1` | `18.5.0` | 2024-10-25 | | `linux-x64` | `5.8.1` | `18.5.0` | 2024-03-21 | | `linux-arm` | `5.8.1` | `18.5.0` | 2024-05-26 | ::: +:::caution pass + +`pkg` on Windows on ARM uses the X64 compatibility layer. It does not generate +a native ARM64 binary! + +::: + ## Integration Details The [SheetJS NodeJS module](/docs/getting-started/installation/nodejs) can be diff --git a/docz/docs/03-demos/20-cli/12-bunsea.md b/docz/docs/03-demos/20-cli/12-bunsea.md index 7bb0d5e..1b6ba8b 100644 --- a/docz/docs/03-demos/20-cli/12-bunsea.md +++ b/docz/docs/03-demos/20-cli/12-bunsea.md @@ -82,11 +82,19 @@ This demo was last tested in the following deployments: | `darwin-x64` | `1.1.10` | 2024-05-28 | | `darwin-arm` | `1.1.10` | 2024-05-29 | | `win10-x64` | `1.1.12` | 2024-06-10 | +| `win11-arm` | `1.1.33` | 2024-10-25 | | `linux-x64` | `1.1.12` | 2024-06-09 | | `linux-arm` | `1.1.12` | 2024-06-10 | ::: +:::caution pass + +BunJS on Windows on ARM uses the X64 compatibility layer. It does not generate +a native ARM64 binary! + +::: + 0) Install or update BunJS.[^3] 1) Download the test file https://docs.sheetjs.com/pres.numbers: @@ -106,7 +114,7 @@ bun install https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`} :::caution pass -On Windows, the command failed with a `ENOTEMPTY` error: +In some test runs, the command failed with a `ENOTEMPTY` error: ``` error: InstallFailed extracting tarball for https://cdn.sheetjs.com/xlsx-0.20.1/xlsx-0.20.1.tgz diff --git a/docz/docs/03-demos/20-cli/13-denosea.md b/docz/docs/03-demos/20-cli/13-denosea.md index 26e9123..ebeacb5 100644 --- a/docz/docs/03-demos/20-cli/13-denosea.md +++ b/docz/docs/03-demos/20-cli/13-denosea.md @@ -103,12 +103,19 @@ This demo was last tested in the following deployments: | `darwin-arm` | `1.43.6` | 2024-05-23 | | `win10-x64` | `1.41.3` | 2024-03-24 | | `win11-x64` | `1.43.6` | 2024-05-25 | -| `win11-arm` | `1.43.6` | 2024-05-25 | +| `win11-arm` | `2.0.3` | 2024-10-25 | | `linux-x64` | `1.41.3` | 2024-03-18 | | `linux-arm` | `1.43.6` | 2024-05-25 | ::: +:::caution pass + +Deno on Windows on ARM uses the X64 compatibility layer. It does not generate +a native ARM64 binary! + +::: + 0) Install Deno.[^6] 1) Download the test file https://docs.sheetjs.com/pres.numbers: @@ -134,6 +141,16 @@ Donald Trump,45 Joseph Biden,46 ``` +:::info pass + +In newer versions of Deno, importing from a URL requires import permissions: + +```bash +deno run -r --allow-read --allow-import https://docs.sheetjs.com/cli/sheet2csv.ts pres.numbers +``` + +::: + 3) Compile and run `sheet2csv`: ```bash @@ -143,6 +160,17 @@ deno compile -r --allow-read https://docs.sheetjs.com/cli/sheet2csv.ts The program should display the same CSV contents as the script (from step 2) +:::info pass + +In newer versions of Deno, importing from a URL requires import permissions: + +```bash +deno compile -r --allow-read --allow-import https://docs.sheetjs.com/cli/sheet2csv.ts +./sheet2csv pres.numbers +``` + +::: + [^1]: See [`readFile` in "Reading Files"](/docs/api/parse-options) [^2]: See [`sheet_to_csv` in "CSV and Text"](/docs/api/utilities/csv#delimiter-separated-output) [^3]: See [`readFile` in "Reading Files"](/docs/api/parse-options) diff --git a/docz/docs/03-demos/20-cli/index.md b/docz/docs/03-demos/20-cli/index.md index f10a2ef..a8babab 100644 --- a/docz/docs/03-demos/20-cli/index.md +++ b/docz/docs/03-demos/20-cli/index.md @@ -54,6 +54,13 @@ The following frameworks have been tested on the following platforms: +:::note pass + +Asterisks (✱) in the Windows for ARM column mark tests that generated x64 +binaries. The CLI tools run under the x64 emulator integrated in Windows. + +::: + :::tip pass The [`xlsx-cli`](https://cdn.sheetjs.com/xlsx-cli/) NodeJS script is available diff --git a/docz/docs/03-demos/30-cloud/12-azure.md b/docz/docs/03-demos/30-cloud/12-azure.md index 10ea6e0..8a259f4 100644 --- a/docz/docs/03-demos/30-cloud/12-azure.md +++ b/docz/docs/03-demos/30-cloud/12-azure.md @@ -16,7 +16,7 @@ Functions" and cloud storage. [SheetJS](https://sheetjs.com) is a JavaScript library for reading and writing data from spreadsheets. -This demo explores two key AWS offerings: +This demo explores two key Azure offerings: - ["Azure Functions"](#azure-functions) ("Lambda") explores the serverless computing offering. The demo creates a JavaScript function that can process diff --git a/docz/docs/03-demos/32-extensions/01-extendscript.md b/docz/docs/03-demos/32-extensions/01-extendscript.md index b2d84da..7f41c78 100644 --- a/docz/docs/03-demos/32-extensions/01-extendscript.md +++ b/docz/docs/03-demos/32-extensions/01-extendscript.md @@ -54,8 +54,8 @@ This demo was verified in the following deployments: ## ExtendScript -[The "ExtendScript" build](/docs/getting-started/installation/extendscript) can -be included from a script in the same directory: +The [SheetJS ExtendScript build](/docs/getting-started/installation/extendscript) +can be included from a script in the same directory using `#include`: ```js #include "xlsx.extendscript.js" @@ -69,6 +69,9 @@ On the [SheetJS chat](https://sheetjs.com/chat), a user presented a workaround that uses [a precompiled command-line tool](/docs/demos/cli/) to process data and pass JSON data back to ExtendScript. +[The original conversation](https://discord.com/channels/1039771292859109436/1039788802220232744/1270850074024480972) +is accessible to members of the [SheetJS chat server](https://sheetjs.com/chat). + ::: ### Reading Files diff --git a/docz/docs/03-demos/37-bigdata/01-stream.md b/docz/docs/03-demos/37-bigdata/01-stream.md index fb37ba4..0eb065d 100644 --- a/docz/docs/03-demos/37-bigdata/01-stream.md +++ b/docz/docs/03-demos/37-bigdata/01-stream.md @@ -21,6 +21,14 @@ limits. The library offers alternate strategies to optimize for memory usage. of arrays, are designed to work around Google Chrome performance regressions. For backwards compatibility, dense mode worksheets are not created by default. +:::tip pass + +Dense worksheets were overhauled in version `0.19.0`. It is strongly recommended +to [upgrade to the latest version](/docs/getting-started/installation/). + +::: + + `read`, `readFile` and `aoa_to_sheet` accept the `dense` option. When enabled, the methods create worksheet objects that store cells in arrays of arrays: diff --git a/docz/docs/06-solutions/01-input.md b/docz/docs/06-solutions/01-input.md index ffc55bb..1fa673f 100644 --- a/docz/docs/06-solutions/01-input.md +++ b/docz/docs/06-solutions/01-input.md @@ -129,7 +129,7 @@ var thisFile = File.openDialog("Select a spreadsheet"); var workbook = XLSX.readFile(thisFile.absoluteURI); ``` -The [`extendscript` demo](/docs/demos/extensions/extendscript) includes complete +The ["ExtendScript" demo](/docs/demos/extensions/extendscript) includes complete examples for Photoshop and InDesign. diff --git a/docz/docs/06-solutions/05-output.md b/docz/docs/06-solutions/05-output.md index 2838604..bfba280 100644 --- a/docz/docs/06-solutions/05-output.md +++ b/docz/docs/06-solutions/05-output.md @@ -266,7 +266,7 @@ var thisFile = File.saveDialog("Select an output file", "*.xlsx;*.xls"); XLSX.writeFile(workbook, thisFile.absoluteURI); ``` -The [`extendscript` demo](/docs/demos/extensions/extendscript) includes complete +The ["ExtendScript" demo](/docs/demos/extensions/extendscript) includes complete examples for Photoshop and InDesign. diff --git a/docz/docs/07-csf/03-sheet.md b/docz/docs/07-csf/03-sheet.md index 1052ec0..955a8b1 100644 --- a/docz/docs/07-csf/03-sheet.md +++ b/docz/docs/07-csf/03-sheet.md @@ -52,6 +52,13 @@ corresponding cell object. #### Dense Mode +:::tip pass + +Dense worksheets were overhauled in version `0.19.0`. It is strongly recommended +to [upgrade to the latest version](/docs/getting-started/installation/). + +::: + When the option `dense: true` is passed, parsers will generate a "dense-mode" worksheet where cells are stored in an array of arrays. `sheet["!data"][R][C]` returns the cell object at row `R` and column `C` (zero-indexed values). diff --git a/docz/docs/index.md b/docz/docs/index.md index a516e2f..9630061 100644 --- a/docz/docs/index.md +++ b/docz/docs/index.md @@ -364,10 +364,38 @@ This,is,a,Test ### Browser Testing -[![Build Status](https://saucelabs.com/browser-matrix/sheetjs.svg)](https://saucelabs.com/u/sheetjs) +The test suite is regularly run against a number of modern and legacy browsers +using [Sauce Labs](https://saucelabs.com/). + +The following chart shows test results on 2024 October 20 for version 0.20.3: + +[![Build Status](pathname:///test/sheetjs.svg)](https://saucelabs.com/u/sheetjs) + +:::info pass + +In previous runs, tests passed in: + +- Internet Explorer 6 - 11 +- Chrome versions starting from 26 +- Safari iOS versions starting from 8 +- Android Browser versions starting from 5.1 +- Safari macOS versions starting from 6 +- Edge 13 - 18 and versions starting from 79 + +Sauce Labs has removed many legacy browser versions over the years. SheetJS LLC +maintains testing infrastructure for legacy deployments. For questions about +legacy browsers, please ask [in the SheetJS chat](https://sheetjs.com/chat). + +For continued support with relevant runtimes including Salesforce LWC, NetSuite +SuiteScripts, and Adobe ExtendScript, SheetJS libraries include fallbacks and +shims that help preserve support in legacy browser environments. + +::: ### Supported File Formats -![graph of format support](pathname:///formats.png) +["File Formats"](/docs/miscellany/formats) lists the supported file formats. + +[![graph of format support](pathname:///formats.png)](/docs/miscellany/formats) ![graph legend](pathname:///legend.png) diff --git a/docz/static/test/sheetjs.svg b/docz/static/test/sheetjs.svg new file mode 100644 index 0000000..5ecb2b6 --- /dev/null +++ b/docz/static/test/sheetjs.svg @@ -0,0 +1,529 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Android + + + + + 6.0 + + * + + + + + + + + + Firefox + + + + + 107 + + 7 + + + + + + + + 131 + + 10 + + + + + + + + + Chrome + + + + + 70 + + 7 + + + + + + + + 80 + + 7 + + + + + + + + 90 + + 7 + + + + + + + + 100 + + 7 + + + + + + + + 110 + + 10 + + + + + + + + 120 + + 10 + + + + + + + + 130 + + 10 + + + + + + + + + IE + + + + + 10 + + 7 + + + + + + + + 11 + + 7 + + + + + + + + + iPad + + + + + 11 + + 10.13 + + + + + + + + 13 + + 10.15 + + + + + + + + 15 + + 12 + + + + + + + + + iPhone + + + + + 10 + + 10.12 + + + + + + + + 12 + + 10.15 + + + + + + + + 14 + + 11 + + + + + + + + + Edge + + + + + 14 + + 10 + + + + + + + + 15 + + 10 + + + + + + + + 16 + + 10 + + + + + + + + 17 + + 10 + + + + + + + + 18 + + 10 + + + + + + + + 79 + + 10 + + + + + + + + 85 + + 10 + + + + + + + + 95 + + 10 + + + + + + + + 105 + + 10 + + + + + + + + 115 + + 10 + + + + + + + + 125 + + 10 + + + + + + + + 130 + + 10 + + + + + + + + + Safari + + + + + 8 + + 10.10 + + + + + + + + 9 + + 10.11 + + + + + + + + 10 + + 10.12 + + + + + + + + 11 + + 10.13 + + + + + + + + 12 + + 10.13 + + + + + + + + 13 + + 10.15 + + + + + + + + 14 + + 11 + + + + + + + + 15 + + 12 + + + + + + + + 16 + + 13 + + + + + + + + + + + + + \ No newline at end of file