forked from sheetjs/docs.sheetjs.com
win-arm
This commit is contained in:
parent
8914e8f714
commit
7a1b75d50b
@ -57,7 +57,9 @@ new versions are released!
|
||||
|
||||
:::
|
||||
|
||||
:::warning
|
||||
### Legacy Endpoints
|
||||
|
||||
:::warning pass
|
||||
|
||||
Older releases are technically available on the public npm registry as `xlsx`,
|
||||
but the registry is out of date. The latest version on that registry is 0.18.5
|
||||
@ -130,7 +132,7 @@ pnpm install file:vendor/xlsx-${current}.tgz`}
|
||||
</TabItem>
|
||||
<TabItem value="yarn" label="Yarn" default>
|
||||
<CodeBlock language="bash">{`\
|
||||
yarn add file:vendor/xlsx-${current}.tgz`}
|
||||
yarn add file:vendor/xlsx-${current}.tgz`}
|
||||
</CodeBlock>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
@ -13,7 +13,7 @@ import CodeBlock from '@theme/CodeBlock';
|
||||
|
||||
# NodeJS
|
||||
|
||||
Tarballs are available on <https://cdn.sheetjs.com>.
|
||||
Package tarballs are available on <https://cdn.sheetjs.com>.
|
||||
|
||||
<p><a href={`https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}>https://cdn.sheetjs.com/xlsx-{current}/xlsx-{current}.tgz</a> is the URL for version {current}</p>
|
||||
|
||||
@ -49,7 +49,7 @@ new versions are released!
|
||||
|
||||
### Legacy Endpoints
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
Older releases are technically available on the public npm registry as `xlsx`,
|
||||
but the registry is out of date. The latest version on that registry is 0.18.5
|
||||
@ -122,7 +122,7 @@ pnpm install file:vendor/xlsx-${current}.tgz`}
|
||||
</TabItem>
|
||||
<TabItem value="yarn" label="Yarn" default>
|
||||
<CodeBlock language="bash">{`\
|
||||
yarn add file:vendor/xlsx-${current}.tgz`}
|
||||
yarn add file:vendor/xlsx-${current}.tgz`}
|
||||
</CodeBlock>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
@ -131,6 +131,14 @@ The package will be installed and accessible as `xlsx`.
|
||||
|
||||
## Usage
|
||||
|
||||
The package supports CommonJS `require` and ESM `import` module systems.
|
||||
|
||||
:::info pass
|
||||
|
||||
**It is strongly recommended to use CommonJS in NodeJS.**
|
||||
|
||||
:::
|
||||
|
||||
#### CommonJS `require`
|
||||
|
||||
By default, the module supports `require` and it will automatically add support
|
||||
@ -163,7 +171,7 @@ XLSX.set_cptable(cpexcel);
|
||||
|
||||
#### NextJS
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
`fs` cannot be imported from the top level in NextJS pages. This will not work:
|
||||
|
||||
|
@ -699,7 +699,7 @@ node SheetJSNodeJS.js
|
||||
|
||||
This script will write a new file `Presidents.xlsx` in the same folder.
|
||||
|
||||
:::caution
|
||||
:::caution pass
|
||||
|
||||
Native `fetch` support was added in NodeJS 18. For older versions of NodeJS,
|
||||
the script will throw an error `fetch is not defined`. A third-party library
|
||||
@ -1102,7 +1102,7 @@ in the Files app and can be opened with the Google Sheets app.
|
||||
</TabItem>
|
||||
<TabItem value="ios" label="iOS">
|
||||
|
||||
:::caution
|
||||
:::caution pass
|
||||
|
||||
This demo runs in iOS and requires a Macintosh computer with Xcode installed.
|
||||
|
||||
|
@ -1018,7 +1018,7 @@ the Android device can be connected to the computer with a USB cable.
|
||||
</TabItem>
|
||||
<TabItem value="ios" label="iOS">
|
||||
|
||||
:::caution
|
||||
:::caution pass
|
||||
|
||||
This demo runs in iOS and requires a Macintosh computer with Xcode installed.
|
||||
|
||||
|
@ -22,7 +22,7 @@ Other demos cover general Angular deployments, including:
|
||||
- [iOS and Android applications powered by NativeScript](/docs/demos/mobile/nativescript)
|
||||
- [iOS and Android applications powered by Ionic](/docs/demos/mobile/ionic)
|
||||
|
||||
:::warning
|
||||
:::caution pass
|
||||
|
||||
Angular tooling uses native NodeJS modules. There are a number of issues when
|
||||
trying to run Angular projects with different NodeJS versions. These issues
|
||||
@ -30,7 +30,7 @@ should be directed to the Angular project.
|
||||
|
||||
:::
|
||||
|
||||
:::caution
|
||||
:::warning Telemetry
|
||||
|
||||
Angular CLI enables telemetry by default. When using a recent version, disable
|
||||
analytics globally through the CLI tool before creating a new project:
|
||||
@ -340,7 +340,7 @@ this.columns = Array.from({ length: range.e.c + 1 }, (_, i) => ({
|
||||
|
||||
## Older Versions
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
This demo is included for legacy deployments. There are incompatibilities with
|
||||
different NodeJS and other ecosystem versions. Issues should be raised with
|
||||
|
@ -850,7 +850,7 @@ Click on "Click here to export" to generate a file.
|
||||
|
||||
SWC provides `spack` for bundling scripts.
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
When this demo was last tested, there was a bug affecting 1.2.247 and 1.3 . It
|
||||
is strongly recommended to use `@swc/core@1.2.245` until the bug is fixed.
|
||||
|
@ -56,7 +56,7 @@ through a special Export button. It handles the SheetJS operations internally.
|
||||
|
||||
### Angular UI Grid
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
This UI Grid is for AngularJS, not the modern Angular. New projects should not
|
||||
use AngularJS. This demo is included for legacy applications.
|
||||
@ -124,7 +124,7 @@ function export_html_table(table) {
|
||||
} // yes, it's that easy!
|
||||
```
|
||||
|
||||
:::info
|
||||
:::info pass
|
||||
|
||||
SheetJS CE is focused on data preservation and will extract values from tables.
|
||||
|
||||
|
@ -665,7 +665,7 @@ was added to the platform, third party modules wrapped the native APIs.
|
||||
|
||||
#### request
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
`request` has been deprecated and should only be used in legacy deployments.
|
||||
|
||||
|
@ -22,7 +22,7 @@ This demo covers three workflows:
|
||||
- [Reading mail](#reading-mail) covers libraries for reading messages
|
||||
- [Data files](#data-files) covers mailbox file formats
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
There are a number of caveats when dealing with live mail servers. It is advised
|
||||
to follow connector module documentation carefully and test with new accounts
|
||||
@ -32,7 +32,7 @@ before integrating with important inboxes or accounts.
|
||||
|
||||
## Live Servers
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
It is strongly advised to use a test email address before using an important
|
||||
address. One small mistake could erase decades of messages or result in a block
|
||||
|
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: React Native
|
||||
title: Sheets on the Desktop with React Native
|
||||
sidebar_label: React Native
|
||||
description: Build data-intensive desktop apps with React Native. Seamlessly integrate spreadsheets into your app using SheetJS. Securely process and generate Excel files at the desk.
|
||||
pagination_prev: demos/mobile/index
|
||||
@ -9,8 +9,6 @@ sidebar_custom_props:
|
||||
summary: Native Components with React
|
||||
---
|
||||
|
||||
# Sheets on the Desktop with React Native
|
||||
|
||||
import current from '/version.js';
|
||||
import Tabs from '@theme/Tabs';
|
||||
import TabItem from '@theme/TabItem';
|
||||
@ -50,8 +48,9 @@ This demo was tested in the following environments:
|
||||
|:---------------|:-----|:------------|:-----------|
|
||||
| Windows 10 | x64 | `v0.71.25` | 2023-07-24 |
|
||||
| Windows 11 | x64 | `v0.71.11` | 2023-05-11 |
|
||||
| Windows 11 | ARM | `v0.72.9` | 2023-09-18 |
|
||||
| MacOS 12.6 | x64 | `v0.71.26` | 2023-07-23 |
|
||||
| MacOS 13.4 | ARM | `v0.71.18` | 2023-07-06 |
|
||||
| MacOS 13.5.2 | ARM | `v0.72.4` | 2023-09-18 |
|
||||
|
||||
:::
|
||||
|
||||
@ -62,6 +61,20 @@ applications, [check the mobile demo](/docs/demos/mobile/reactnative)
|
||||
|
||||
:::
|
||||
|
||||
:::warning Telemetry
|
||||
|
||||
**React Native for Windows + macOS commands include telemetry without proper**
|
||||
**disclaimer or global opt-out.**
|
||||
|
||||
The recommended approach for suppressing telemetry is explicitly passing the
|
||||
`--no-telemetry` flag. The following commands are known to support the flag:
|
||||
|
||||
- Initializing a macOS project with `react-native-macos-init`
|
||||
- Initializing a Windows project with `react-native-windows-init`
|
||||
- Running Windows apps with `react-native run-windows`
|
||||
|
||||
:::
|
||||
|
||||
## Integration Details
|
||||
|
||||
The [SheetJS NodeJS Module](/docs/getting-started/installation/nodejs) can be
|
||||
@ -366,7 +379,7 @@ RCT_EXPORT_METHOD(PickAndRead:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromi
|
||||
|
||||
## Windows Demo
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
There is no simple standalone executable file at the end of the process.
|
||||
|
||||
@ -393,10 +406,10 @@ used to switch the NodeJS version.
|
||||
|
||||
### Project Setup
|
||||
|
||||
1) Create a new project using React Native `0.71`:
|
||||
1) Create a new project using React Native `0.72`:
|
||||
|
||||
```bash
|
||||
npx react-native init SheetJSWin --template react-native@^0.71.0
|
||||
npx react-native init SheetJSWin --template react-native@^0.72.0
|
||||
cd SheetJSWin
|
||||
```
|
||||
|
||||
@ -427,6 +440,9 @@ npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
|
||||
|
||||
4) To ensure that the app works, launch the app:
|
||||
|
||||
<Tabs groupId="arch">
|
||||
<TabItem value="x64" label="x64 (64-bit Windows)">
|
||||
|
||||
```bash
|
||||
npx react-native run-windows --no-telemetry
|
||||
```
|
||||
@ -441,6 +457,30 @@ Specific Windows SDK versions can be installed through Visual Studio Installer.
|
||||
|
||||
:::
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="arm" label="ARM64">
|
||||
|
||||
```bash
|
||||
npx react-native run-windows --no-telemetry --arch=X86
|
||||
```
|
||||
|
||||
:::warning pass
|
||||
|
||||
The ARM64 binary is normally built with
|
||||
|
||||
```bash
|
||||
npx react-native run-windows --no-telemetry --arch=ARM64
|
||||
```
|
||||
|
||||
When this demo was last tested on Windows 11 ARM, the build failed.
|
||||
|
||||
**As it affects the starter project, it is a bug in ARM64 React Native Windows**
|
||||
|
||||
:::
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### Native Module
|
||||
|
||||
<Tabs groupId="rnwlang">
|
||||
@ -540,10 +580,37 @@ curl -LO https://docs.sheetjs.com/reactnative/rnw/App.tsx
|
||||
|
||||
8) Test the app again:
|
||||
|
||||
<Tabs groupId="arch">
|
||||
<TabItem value="x64" label="x64 (64-bit Windows)">
|
||||
|
||||
```bash
|
||||
npx react-native run-windows --no-telemetry
|
||||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="arm" label="ARM64">
|
||||
|
||||
```bash
|
||||
npx react-native run-windows --no-telemetry --arch=X86
|
||||
```
|
||||
|
||||
:::warning pass
|
||||
|
||||
The ARM64 binary is normally built with
|
||||
|
||||
```bash
|
||||
npx react-native run-windows --no-telemetry --arch=ARM64
|
||||
```
|
||||
|
||||
When this demo was last tested on Windows 11 ARM, the build failed.
|
||||
|
||||
**As it affects the starter project, it is a bug in ARM64 React Native Windows**
|
||||
|
||||
:::
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
Download <https://sheetjs.com/pres.xlsx>.
|
||||
|
||||
Click "Click here to Open File!" and use the file picker to select `pres.xlsx` .
|
||||
@ -556,10 +623,10 @@ The app will refresh and display the data from the file.
|
||||
|
||||
### Project Setup
|
||||
|
||||
1) Create a new React Native project using React Native `0.71`:
|
||||
1) Create a new React Native project using React Native `0.72`:
|
||||
|
||||
```bash
|
||||
npx -y react-native init SheetJSmacOS --template react-native@^0.71.0
|
||||
npx -y react-native init SheetJSmacOS --template react-native@^0.72.0
|
||||
cd SheetJSmacOS
|
||||
```
|
||||
|
||||
|
@ -215,7 +215,7 @@ module 4.6.7 and NodeJS 20.5.1.
|
||||
|
||||
:::
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
The most recent version of the `redis` node module does not work with most
|
||||
versions of NodeJS. It is "ESM-only", requiring NodeJS 18 or later. As a result,
|
||||
|
@ -11,7 +11,7 @@ sidebar_custom_props:
|
||||
<script type="text/javascript" src="https://unpkg.com/dexie@3.2.4/dist/dexie.js"></script>
|
||||
</head>
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
IndexedDB is a very low-level API.
|
||||
|
||||
|
@ -123,7 +123,7 @@ to be renamed to `sheetjs.js` when adding the static resource.
|
||||
|
||||
<p>1) Download <a href={`https://cdn.sheetjs.com/xlsx-${current}/package/dist/xlsx.full.min.js`}>https://cdn.sheetjs.com/xlsx-{current}/package/dist/xlsx.full.min.js</a></p>
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
**DO NOT "COPY AND PASTE"!** The file should be explicitly downloaded. Copying
|
||||
and pasting corrupts the source code and the component will fail in subtle ways.
|
||||
|
@ -30,7 +30,7 @@ This was tested on 2023 April 29.
|
||||
|
||||
This discussion focuses on the "HTTP Trigger" function type.
|
||||
|
||||
:::info
|
||||
:::info pass
|
||||
|
||||
To enable binary data processing, a setting must be changed in `function.json`:
|
||||
|
||||
|
@ -104,7 +104,7 @@ the source data or artifacts from the `postprocess` script changed.
|
||||
|
||||
### Post-Processing Data
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
The `flat-postprocessing` library includes a number of utilities for different
|
||||
data formats. The `readXLSX` helper uses SheetJS under the hood.
|
||||
|
@ -12,7 +12,7 @@ Deno Deploy offers "Serverless Functions" powered by Deno.
|
||||
The [Deno installation](/docs/getting-started/installation/deno) instructions
|
||||
apply to Deno Deploy scripts.
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
Deno Deploy does not offer any sort of temporary file access in functions.
|
||||
|
||||
|
@ -692,7 +692,7 @@ JSON file in step 27. The `./` prefix is required!
|
||||
39) Run the script:
|
||||
|
||||
```bash
|
||||
node load.mjs
|
||||
node dump.mjs
|
||||
```
|
||||
|
||||
The script should create a file `SheetJS.xlsb` in the project folder. This file
|
||||
|
@ -204,7 +204,7 @@ var button = Dropbox.createSaveButton( url, "SheetJSDropbox.xls", {
|
||||
document.appendChild(button);
|
||||
```
|
||||
|
||||
:::info
|
||||
:::info pass
|
||||
|
||||
The file must be written before the Save button is created.
|
||||
|
||||
|
@ -25,6 +25,17 @@ The ["Integration Example"](#integration-example) section includes a complete
|
||||
command-line tool for reading arbitrary workbooks and writing data to XLSB
|
||||
(Excel 2007+ Binary Format) workbooks.
|
||||
|
||||
:::warning Telemetry
|
||||
|
||||
**The `dotnet` command embeds telemetry.**
|
||||
|
||||
The `DOTNET_CLI_TELEMETRY_OPTOUT` environment variable should be set to `1`.
|
||||
|
||||
["Platform Configuration"](#platform-configuration) includes instructions for
|
||||
setting the environment variable on supported platforms.
|
||||
|
||||
:::
|
||||
|
||||
## Integration Details
|
||||
|
||||
:::note pass
|
||||
|
@ -203,7 +203,7 @@ cd ..
|
||||
</TabItem>
|
||||
<TabItem value="darwin-arm" label="Apple Silicon">
|
||||
|
||||
:::info
|
||||
:::info pass
|
||||
|
||||
When the demo was last tested, ChakraCore JIT was not supported.
|
||||
|
||||
|
@ -7,7 +7,7 @@ pagination_next: solutions/input
|
||||
import current from '/version.js';
|
||||
import CodeBlock from '@theme/CodeBlock';
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
In a production application, it is strongly recommended to use a binding for a
|
||||
C engine like [`JavaScript::Duktape`](/docs/demos/engines/duktape#perl)
|
||||
|
@ -42,7 +42,7 @@ The `readFile` method attempts to read a spreadsheet file at the supplied path.
|
||||
The second `opts` argument is optional. ["Parsing Options"](/docs/api/parse-options)
|
||||
covers the supported properties and behaviors.
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
Browsers generally do not allow reading files by specifying filename (it is a
|
||||
security risk), and running `XLSX.readFile` in the browser will throw an error.
|
||||
|
@ -136,7 +136,7 @@ worker.addEventListener('message', function(e) {
|
||||
<details>
|
||||
<summary><b>SWF workaround for Windows 95+</b> (click to show)</summary>
|
||||
|
||||
:::warning
|
||||
:::warning pass
|
||||
|
||||
Each moving part in this solution has been deprecated years ago:
|
||||
|
||||
|
@ -338,7 +338,7 @@ function SheetJSExportAOO() {
|
||||
```
|
||||
|
||||
|
||||
:::info
|
||||
:::info pass
|
||||
|
||||
The [example sheet](#example-sheet) cannot be reproduced using plain objects
|
||||
since JS object keys must be unique.
|
||||
|
@ -45,6 +45,7 @@ These instructions were tested on the following platforms:
|
||||
| MacOS 13.0 (ARM64) | 2023-04-13 |
|
||||
| Windows 10 (x64) + WSL Ubuntu | 2023-07-23 |
|
||||
| Windows 11 (x64) + WSL Ubuntu | 2023-08-31 |
|
||||
| Windows 11 (ARM) + WSL Ubuntu | 2023-09-18 |
|
||||
|
||||
With some additional dependencies, the unminified scripts are reproducible and
|
||||
tests will pass in Windows XP with NodeJS 5.10.0.
|
||||
@ -63,7 +64,17 @@ import TabItem from '@theme/TabItem';
|
||||
|
||||
A) Ensure WSL ("WSL 2" in Windows 10) and the Ubuntu distribution are installed.
|
||||
|
||||
B) Install mercurial and subversion.
|
||||
B) Install mercurial and subversion:
|
||||
|
||||
```bash
|
||||
sudo apt-get update
|
||||
sudo apt-get install mercurial subversion
|
||||
```
|
||||
|
||||
:::note pass
|
||||
|
||||
In some Windows 10 runs, `mercurial` and `subversion` were not available in the
|
||||
default Ubuntu distro. A separate repository is available:
|
||||
|
||||
```bash
|
||||
# Install support programs for the build and test commands
|
||||
@ -73,6 +84,15 @@ sudo apt-get install mercurial subversion
|
||||
sudo add-apt-repository --remove ppa:mercurial-ppa/releases
|
||||
```
|
||||
|
||||
If the first command displays an error involving a missing release file, remove
|
||||
the repo before proceeding:
|
||||
|
||||
```bash
|
||||
sudo add-apt-repository --remove ppa:mercurial-ppa/releases
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
C) Install NodeJS
|
||||
|
||||
:::info pass
|
||||
@ -110,17 +130,25 @@ sudo apt-get install -y npm
|
||||
|
||||
:::
|
||||
|
||||
D) Build and install a version of Git with proper SSL support:
|
||||
D) Test clone the [`js-crc32` repo](https://git.sheetjs.com/sheetjs/js-crc32)
|
||||
|
||||
```bash
|
||||
git clone https://git.sheetjs.com/sheetjs/js-crc32
|
||||
```
|
||||
|
||||
If this clone fails with an error message that mentions SSL or secure connection
|
||||
or certificates, build and install a version of Git with proper SSL support:
|
||||
|
||||
```bash
|
||||
# Git does not support OpenSSL out of the box, must do this
|
||||
curl -LO https://github.com/paul-nelson-baker/git-openssl-shellscript/raw/main/compile-git-with-openssl.sh
|
||||
curl -LO https://github.com/niko-dunixi/git-openssl-shellscript/raw/main/compile-git-with-openssl.sh
|
||||
chmod +x compile-git-with-openssl.sh
|
||||
./compile-git-with-openssl.sh
|
||||
```
|
||||
|
||||
E) Set `git` config `core.autocrlf` setting to `false`. The following commands
|
||||
should be run twice, once within PowerShell and once within WSL bash:
|
||||
should be run twice, once within PowerShell (if Git for Windows is installed)
|
||||
and once within WSL bash:
|
||||
|
||||
```bash
|
||||
git config --global --add core.autocrlf false
|
||||
@ -167,7 +195,7 @@ brew install mercurial subversion
|
||||
|
||||
E) Install NodeJS
|
||||
|
||||
:::note
|
||||
:::note pass
|
||||
|
||||
[The official NodeJS site](https://nodejs.org/en/download/) provides installers
|
||||
for "LTS" and "Current" releases. The "LTS" version should be installed.
|
||||
@ -221,7 +249,7 @@ sudo pacman-key --refresh-keys
|
||||
sudo pacman -S base-devel mercurial subversion
|
||||
```
|
||||
|
||||
:::note
|
||||
:::note pass
|
||||
|
||||
In local testing on the Steam Deck, some of the C / C++ demos failed to build.
|
||||
This issue was resolved by manually installing `glibc` and `linux-api-headers`:
|
||||
@ -238,7 +266,7 @@ This is *not required* for building or testing the library.
|
||||
|
||||
After installing mercurial and subversion, install NodeJS.
|
||||
|
||||
:::note
|
||||
:::note pass
|
||||
|
||||
[The official NodeJS site](https://nodejs.org/en/download/) provides installers
|
||||
for "LTS" and "Current" releases. The "LTS" version should be installed.
|
||||
@ -285,7 +313,13 @@ make init
|
||||
|
||||
This step may take a while as it will be downloading a number of test files.
|
||||
|
||||
3) Run a build and verify with a short test:
|
||||
3) Run the `esbuild` tool once:
|
||||
|
||||
```bash
|
||||
npx -y esbuild@0.14.14
|
||||
```
|
||||
|
||||
4) Run a build and verify with a short test:
|
||||
|
||||
```bash
|
||||
# Full Build
|
||||
@ -302,7 +336,7 @@ git checkout -- .
|
||||
|
||||
### Reproduce official builds
|
||||
|
||||
4) Run `git log` and search for the commit that matches a particular release
|
||||
5) Run `git log` and search for the commit that matches a particular release
|
||||
version. For example, version `0.20.0` can be found with:
|
||||
|
||||
```bash
|
||||
@ -321,13 +355,13 @@ Date: Fri Jun 23 05:48:47 2023 -0400
|
||||
version bump 0.20.0
|
||||
```
|
||||
|
||||
5) Switch to that commit:
|
||||
6) Switch to that commit:
|
||||
|
||||
```bash
|
||||
git checkout 955543147dac0274d20307057c5a9f3e3e5d5307
|
||||
```
|
||||
|
||||
6) Run the full build sequence
|
||||
7) Run the full build sequence
|
||||
|
||||
```bash
|
||||
make clean; make
|
||||
@ -336,7 +370,7 @@ make
|
||||
make dist
|
||||
```
|
||||
|
||||
7) To verify that the files are intact, use `md5sum` (`md5` on MacOS).
|
||||
8) To verify that the files are intact, use `md5sum` (`md5` on MacOS).
|
||||
|
||||
The local checksum for the browser script can be computed with:
|
||||
|
||||
@ -354,7 +388,7 @@ $ curl -L https://cdn.sheetjs.com/xlsx-0.20.0/package/dist/xlsx.full.min.js | md
|
||||
|
||||
The two hashes should match.
|
||||
|
||||
8) To return to the HEAD commit, run
|
||||
9) To return to the HEAD commit, run
|
||||
|
||||
```bash
|
||||
git checkout master
|
||||
@ -362,7 +396,7 @@ git checkout master
|
||||
|
||||
### Test in web browsers
|
||||
|
||||
9) Start local server:
|
||||
10) Start local server:
|
||||
|
||||
```bash
|
||||
make ctestserv
|
||||
@ -374,7 +408,7 @@ The terminal will display a port number. For example:
|
||||
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)
|
||||
```
|
||||
|
||||
10) Open a browser window and access `http://localhost:8000`, replacing `8000`
|
||||
11) Open a browser window and access `http://localhost:8000`, replacing `8000`
|
||||
with the port number from the terminal window.
|
||||
|
||||
## Development
|
||||
|
Loading…
Reference in New Issue
Block a user