From 42b664deecf4f14a999bab374a3c719baf11b0b7 Mon Sep 17 00:00:00 2001 From: SheetJS Date: Mon, 4 Nov 2024 06:45:57 -0500 Subject: [PATCH] ViteJS 4.x workaround --- .../02-examples/06-loader.md | 12 ++++++--- .../02-frontend/19-bundler/03-vitejs.md | 26 ++++++++++++++++--- docz/docs/03-demos/03-net/09-dom.md | 2 +- docz/docs/index.md | 4 +-- tests/bundler-vite.sh | 3 +++ 5 files changed, 37 insertions(+), 10 deletions(-) diff --git a/docz/docs/02-getting-started/02-examples/06-loader.md b/docz/docs/02-getting-started/02-examples/06-loader.md index 67c9666..1d07295 100644 --- a/docz/docs/02-getting-started/02-examples/06-loader.md +++ b/docz/docs/02-getting-started/02-examples/06-loader.md @@ -39,7 +39,7 @@ This demo was tested in the following configurations: | NVIDIA RTX 4080 SUPER (16 GB VRAM) + i9-10910 (128 GB RAM) | `win10-x64` | 2024-08-09 | | AMD RX 7900 XTX (24 GB VRAM) + Ryzen Z1 Extreme (16 GB RAM) | `win11-x64` | 2024-09-21 | | AMD RX 6800 XT (16 GB VRAM) + Ryzen Z1 Extreme (16 GB RAM) | `win11-x64` | 2024-10-07 | -| Apple M2 Max 12-Core CPU + 30-Core GPU (32 GB unified memory) | `darwin-arm` | 2024-07-15 | +| Apple M2 Max 12-Core CPU + 30-Core GPU (32 GB unified memory) | `darwin-arm` | 2024-11-04 | SheetJS users have verified this demo in other configurations: @@ -791,13 +791,17 @@ npm i --save https://sheet.lol/balls/xlsx-${current}.tgz`} 4) Install dependencies: ```bash -npm i --save @langchain/community@0.2.18 @langchain/core@0.2.15 langchain@0.2.9 peggy@4.0.3 --force +npm i --save @langchain/community@0.3.11 @langchain/core@0.3.16 langchain@0.3.5 peggy@3.0.2 ``` :::note pass -When this demo was last tested, there were error messages relating to dependency -and peer dependency versions. The `--force` flag was required. +In some test runs, there were error messages relating to dependency and peer +dependency versions. The `--force` flag will suppress version mismatch errors: + +```bash +npm i --save @langchain/community@0.3.11 @langchain/core@0.3.16 langchain@0.3.5 peggy@3.0.2 --force +``` ::: diff --git a/docz/docs/03-demos/02-frontend/19-bundler/03-vitejs.md b/docz/docs/03-demos/02-frontend/19-bundler/03-vitejs.md index 4db5438..9c96eb6 100644 --- a/docz/docs/03-demos/02-frontend/19-bundler/03-vitejs.md +++ b/docz/docs/03-demos/02-frontend/19-bundler/03-vitejs.md @@ -41,9 +41,9 @@ This demo was tested in the following environments: | ViteJS | Date | |:---------|:-----------| -| `5.2.10` | 2024-04-27 | -| `4.5.3` | 2024-04-27 | -| `3.2.10` | 2024-04-27 | +| `5.4.10` | 2024-11-04 | +| `4.5.5` | 2024-11-04 | +| `3.2.11` | 2024-11-04 | ::: @@ -143,6 +143,24 @@ writeFileXLSX(workbook, "Presidents.xlsx"); npm run dev ``` +:::caution pass + +When this was last tested in ViteJS version 4, the process crashed with the error + +``` +Search string not found: "for (const existingRoot of buildInfoVersionMap.roots) {" +``` + +**This is a known issue with ViteJS 4 and its dependency tree!**[^1] + +The recommended workaround is to forcefully upgrade `vue-tsc`: + +```bash +npm i "vue-tsc@2" +``` + +::: + 5) Open a web browser to `http://localhost:5173/` and click the export button. 6) Build the production site: @@ -159,3 +177,5 @@ npx http-server dist 8) Access the displayed URL (typically `http://localhost:8080`) in a web browser and click the export button. + +[^1]: See [issue 4484 in the `vuejs/language-tools` repository on GitHub](https://github.com/vuejs/language-tools/issues/4484) for the issue triage and workaround. This issue does not affect other ViteJS major versions. \ No newline at end of file diff --git a/docz/docs/03-demos/03-net/09-dom.md b/docz/docs/03-demos/03-net/09-dom.md index 33c488f..e9f0f93 100644 --- a/docz/docs/03-demos/03-net/09-dom.md +++ b/docz/docs/03-demos/03-net/09-dom.md @@ -336,7 +336,7 @@ The script will create a file `SheetJSCheerio.xlsx` that can be opened. ### DenoDOM [DenoDOM](https://deno.land/x/deno_dom) provides a DOM framework for Deno. For -the tested version (`0.1.46`), the following patches were needed: +the tested version (`0.1.48`), the following patches were needed: - TABLE `rows` property (explained above) - TR `cells` property (explained above) diff --git a/docz/docs/index.md b/docz/docs/index.md index 9630061..c3cf43b 100644 --- a/docz/docs/index.md +++ b/docz/docs/index.md @@ -383,8 +383,8 @@ In previous runs, tests passed in: - 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). +still maintains testing infrastructure for legacy deployments. Questions about +legacy browsers should be asked [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 diff --git a/tests/bundler-vite.sh b/tests/bundler-vite.sh index cb07f66..50f6d07 100755 --- a/tests/bundler-vite.sh +++ b/tests/bundler-vite.sh @@ -14,6 +14,9 @@ npm i npm i --save https://cdn.sheetjs.com/xlsx-latest/xlsx-latest.tgz npm ls | grep vite +## See https://github.com/vuejs/language-tools/issues/4484#issuecomment-2182469459 +if [[ "$n" == "4" ]]; then npm i "vue-tsc@2"; fi + curl -O https://docs.sheetjs.com/vitejs/vite.config.ts mkdir -p data