commit d41b439a8049e9b9e2f1676a87674dc0edc874b1
parent a3687d84ba011639f6bd1b25ea8ea906fcc5b1f3
Author: Florian Dold <florian@dold.me>
Date: Fri, 20 Aug 2021 13:06:59 +0200
fast build
Signed-off-by: Florian Dold <florian@dold.me>
Diffstat:
4 files changed, 80 insertions(+), 3 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -5,6 +5,7 @@ lib/
node_modules/
tsconfig.tsbuildinfo
.pnpm-store/
+build/
# GNU-style build system
/configure
diff --git a/contrib/build-fast.sh b/contrib/build-fast.sh
@@ -0,0 +1,70 @@
+#!/usr/bin/env bash
+
+set -eu
+set -x
+
+export NODE_PATH=vendor:build/node_modules:build
+
+function build_idb() {
+ rm -rf packages/idb-bridge/node_modules
+ idb_dir=build/@gnu-taler/idb-bridge
+ mkdir -p $idb_dir
+ esbuild --platform=node --bundle packages/idb-bridge/src/index.ts > $idb_dir/index.js
+}
+
+function build_taler_util() {
+ taler_util_dir=build/@gnu-taler/taler-util
+ mkdir -p $taler_util_dir
+ esbuild --platform=node --bundle packages/taler-util/src/index.node.ts > $taler_util_dir/index.js
+}
+
+function build_fflate() {
+ fflate_dir=build/fflate
+ mkdir -p $fflate_dir
+ esbuild --platform=node --bundle vendor/fflate/src/index.ts > $fflate_dir/index.js
+}
+
+function build_ct() {
+ ct_dir=build/cancellationtoken
+ mkdir -p $ct_dir
+ esbuild --target=es6 --platform=node --bundle vendor/cancellationtoken/src/index.ts > $ct_dir/index.js
+}
+
+function build_wallet_core() {
+ taler_wallet_core_dir=build/@gnu-taler/taler-wallet-core
+
+ rm -rf packages/taler-wallet-core/node_modules
+ rm -rf packages/taler-wallet-core/lib
+ rm -rf packages/taler-wallet-core/dist
+
+ mkdir -p $taler_wallet_core_dir
+ esbuild --platform=node --bundle packages/taler-wallet-core/src/index.node.ts > $taler_wallet_core_dir/index.js
+}
+
+function build_wallet_embedded() {
+ taler_wallet_embedded_dir=build/@gnu-taler/taler-wallet-embedded
+
+ mkdir -p $taler_wallet_embedded_dir
+ esbuild --platform=node --bundle packages/taler-wallet-embedded/src/index.ts > $taler_wallet_embedded_dir/taler-wallet-embedded.js
+}
+
+function build_wallet_cli() {
+ taler_wallet_cli_dir=build/@gnu-taler/taler-wallet-cli
+ mkdir -p $taler_wallet_cli_dir
+
+ rm -rf packages/taler-wallet-cli/node_modules
+ rm -rf packages/taler-wallet-cli/lib
+ rm -rf packages/taler-wallet-cli/dist
+
+ esbuild --platform=node --bundle packages/taler-wallet-cli/src/index.ts > $taler_wallet_cli_dir/index.js
+ cp $taler_wallet_cli_dir/index.js $taler_wallet_cli_dir/taler-wallet-cli.js
+}
+
+
+build_idb
+build_taler_util
+build_fflate
+build_wallet_core
+build_wallet_embedded
+build_ct
+build_wallet_cli
diff --git a/packages/taler-wallet-embedded/src/index.ts b/packages/taler-wallet-embedded/src/index.ts
@@ -36,13 +36,13 @@ import {
} from "@gnu-taler/taler-wallet-core";
import fs from "fs";
-import { WalletNotification } from "../../taler-wallet-core/node_modules/@gnu-taler/taler-util/lib/notifications.js";
-import { TalerErrorCode } from "../../taler-wallet-core/node_modules/@gnu-taler/taler-util/lib/taler-error-codes.js";
import {
CoreApiEnvelope,
CoreApiResponse,
CoreApiResponseSuccess,
-} from "../../taler-wallet-core/node_modules/@gnu-taler/taler-util/lib/walletTypes.js";
+ WalletNotification,
+ TalerErrorCode,
+} from "@gnu-taler/taler-util";
export { handleWorkerError, handleWorkerMessage };
diff --git a/vendor/README b/vendor/README
@@ -0,0 +1,6 @@
+The third-party packages in this directory are managed
+via git subtrees.
+
+They are added like this:
+
+$ git subtree -P vendor/jed add --squash https://github.com/messageformat/Jed master