gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-wallet-core] branch master updated: taler-wallet-cli: experimenta


From: gnunet
Subject: [taler-wallet-core] branch master updated: taler-wallet-cli: experimental esbuild script for CLI
Date: Mon, 31 Oct 2022 12:04:20 +0100

This is an automated email from the git hooks/post-receive script.

dold pushed a commit to branch master
in repository wallet-core.

The following commit(s) were added to refs/heads/master by this push:
     new 321c1781d taler-wallet-cli: experimental esbuild script for CLI
321c1781d is described below

commit 321c1781d93ee0431feab34f749be2e51c11e326
Author: Florian Dold <florian@dold.me>
AuthorDate: Mon Oct 31 12:04:15 2022 +0100

    taler-wallet-cli: experimental esbuild script for CLI
---
 packages/taler-wallet-cli/build.mjs | 79 +++++++++++++++++++++++++++++++++++++
 1 file changed, 79 insertions(+)

diff --git a/packages/taler-wallet-cli/build.mjs 
b/packages/taler-wallet-cli/build.mjs
new file mode 100755
index 000000000..b6b3f4a16
--- /dev/null
+++ b/packages/taler-wallet-cli/build.mjs
@@ -0,0 +1,79 @@
+#!/usr/bin/env node
+/*
+ This file is part of GNU Taler
+ (C) 2022 Taler Systems S.A.
+
+ GNU Taler is free software; you can redistribute it and/or modify it under the
+ terms of the GNU General Public License as published by the Free Software
+ Foundation; either version 3, or (at your option) any later version.
+
+ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along with
+ GNU Taler; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+import esbuild from 'esbuild'
+import path from "path"
+import fs from "fs"
+
+const BASE = process.cwd()
+
+const preact = path.join(BASE, "node_modules", "preact", "compat", "dist", 
"compat.module.js");
+const preactCompatPlugin = {
+  name: "preact-compat",
+  setup(build) {
+    build.onResolve({ filter: /^(react-dom|react)$/ }, args => ({ path: preact 
}));
+  }
+}
+
+let GIT_ROOT = BASE
+while (!fs.existsSync(path.join(GIT_ROOT, '.git')) && GIT_ROOT !== '/') {
+  GIT_ROOT = path.join(GIT_ROOT, '../')
+}
+if (GIT_ROOT === '/') {
+  console.log("not found")
+  process.exit(1);
+}
+const GIT_HASH = GIT_ROOT === '/' ? undefined : git_hash()
+
+
+let _package = JSON.parse(fs.readFileSync(path.join(BASE, 'package.json')));
+
+function git_hash() {
+  const rev = fs.readFileSync(path.join(GIT_ROOT, '.git', 
'HEAD')).toString().trim().split(/.*[: ]/).slice(-1)[0];
+  if (rev.indexOf('/') === -1) {
+    return rev;
+  } else {
+    return fs.readFileSync(path.join(GIT_ROOT, '.git', rev)).toString().trim();
+  }
+}
+
+export const buildConfig = {
+  entryPoints: ["src/index.ts"],
+  outfile: "dist/taler-wallet-cli.cjs",
+  bundle: true,
+  minify: false,
+  target: [
+    'es6'
+  ],
+  format: 'cjs',
+  platform: 'node',
+  sourcemap: true,
+  jsxFactory: 'h',
+  jsxFragment: 'Fragment',
+  define: {
+    '__VERSION__': `"${_package.version}"`,
+    '__GIT_HASH__': `"${GIT_HASH}"`,
+  },
+}
+
+esbuild
+  .build(buildConfig)
+  .catch((e) => {
+    console.log(e)
+    process.exit(1)
+  });
+

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]