Convert pack wasm to ESM (#463)
* Convert pack wasm to ESM * Cleanup clean scripts * Adjust
This commit is contained in:
+1
-1
@@ -5,5 +5,5 @@
|
||||
|
||||
set -e
|
||||
|
||||
./scripts/clean-js.sh
|
||||
yarn polkadot-dev-clean-build
|
||||
yarn polkadot-dev-build-ts
|
||||
|
||||
@@ -32,7 +32,7 @@ echo "*** Optimising WASM output"
|
||||
|
||||
# convert wasm to base64 structure
|
||||
echo "*** Packing WASM into baseX"
|
||||
node ../scripts/pack-wasm-base.cjs
|
||||
node ../scripts/pack-wasm-base.mjs
|
||||
|
||||
# build asmjs version from the input (optimised) WASM
|
||||
echo "*** Building asm.js version"
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright 2019-2023 @polkadot/wasm authors & contributors
|
||||
# This software may be modified and distributed under the terms
|
||||
# of the Apache-2.0 license. See the LICENSE file for details.
|
||||
|
||||
set -e
|
||||
|
||||
# cleanup old
|
||||
echo "*** Cleaning old builds"
|
||||
rm -rf build packages/*/build*
|
||||
+1
-4
@@ -5,11 +5,8 @@
|
||||
|
||||
set -e
|
||||
|
||||
./scripts/clean-js.sh
|
||||
yarn polkadot-dev-clean-build
|
||||
|
||||
echo "*** Cleaning wasm"
|
||||
cd packages/wasm-crypto
|
||||
|
||||
cargo clean
|
||||
|
||||
cd ../..
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
// Copyright 2019-2023 @polkadot/wasm authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
const fflate = require('fflate/node');
|
||||
const fs = require('fs');
|
||||
const mkdirp = require('mkdirp');
|
||||
const { formatNumber } = require('@polkadot/util');
|
||||
import { zlibSync } from 'fflate/node';
|
||||
import fs from 'fs';
|
||||
|
||||
import { formatNumber } from '@polkadot/util';
|
||||
|
||||
const DIR_DENO = `./${process.env.PKG_NAME}-wasm/build-deno/deno`;
|
||||
const DIR_CJS = `./${process.env.PKG_NAME}-wasm/build/cjs`;
|
||||
const HDR = `// Copyright 2019-${new Date().getFullYear()} @polkadot/${process.env.PKG_NAME}-wasm authors & contributors\n// SPDX-License-Identifier: Apache-2.0\n\n// Generated as part of the build, do not edit\n`;
|
||||
|
||||
const data = fs.readFileSync(`./${process.env.PKG_NAME}/build-wasm/wasm_opt.wasm`);
|
||||
const compressed = Buffer.from(fflate.zlibSync(data, { level: 9 }));
|
||||
const compressed = Buffer.from(zlibSync(data, { level: 9 }));
|
||||
const base64 = compressed.toString('base64');
|
||||
|
||||
console.log(`*** Compressed WASM: in=${formatNumber(data.length)}, out=${formatNumber(compressed.length)}, opt=${(100 * compressed.length / data.length).toFixed(2)}%, base64=${formatNumber(base64.length)}`);
|
||||
|
||||
mkdirp.sync(DIR_DENO);
|
||||
fs.mkdirSync(DIR_DENO, { recursive: true });
|
||||
|
||||
fs.writeFileSync(`${DIR_CJS}/bytes.js`, `${HDR}
|
||||
const lenIn = ${compressed.length};
|
||||
Reference in New Issue
Block a user