gnunet-svn
[Top][All Lists]
Advanced

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

[taler-wallet-core] branch master updated: towards webextension working


From: gnunet
Subject: [taler-wallet-core] branch master updated: towards webextension working again
Date: Mon, 10 Aug 2020 18:49:29 +0200

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 172a51a4 towards webextension working again
172a51a4 is described below

commit 172a51a43a5cfebd06876206ec3a0cd75ad86e43
Author: Florian Dold <florian.dold@gmail.com>
AuthorDate: Mon Aug 10 22:19:23 2020 +0530

    towards webextension working again
---
 packages/taler-wallet-webextension/.gitignore      |   1 +
 .../{webextension => }/manifest.json               |  10 +-
 packages/taler-wallet-webextension/pack.sh         |  15 ++
 packages/taler-wallet-webextension/package.json    |   5 +-
 .../taler-wallet-webextension/rollup.config.js     | 166 ++++-----------------
 .../src/browserCryptoWorkerFactory.ts              |   2 +-
 .../taler-wallet-webextension/src/wxBackend.ts     |  15 +-
 .../{webextension => }/static/add-auditor.html     |   0
 .../{webextension => }/static/auditors.html        |   0
 .../{webextension => }/static/background.html      |   4 +-
 .../{webextension => }/static/benchmark.html       |   0
 .../{webextension => }/static/img/icon.png         | Bin
 .../static/img/logo-2015-medium.png                | Bin
 .../{webextension => }/static/img/logo.png         |   0
 .../{webextension => }/static/img/spinner-bars.svg |   0
 .../{webextension => }/static/pay.html             |   0
 .../{webextension => }/static/payback.html         |   0
 .../{webextension => }/static/popup.html           |   0
 .../{webextension => }/static/refund.html          |   0
 .../{webextension => }/static/reset-required.html  |   0
 .../{webextension => }/static/return-coins.html    |   0
 .../{webextension => }/static/style/popup.css      |   0
 .../{webextension => }/static/style/pure.css       |   0
 .../{webextension => }/static/style/wallet.css     |   0
 .../{webextension => }/static/tip.html             |   0
 .../{webextension => }/static/welcome.html         |   0
 .../{webextension => }/static/withdraw.html        |   0
 packages/taler-wallet-webextension/tsconfig.json   |  11 +-
 .../taler-wallet-webextension/webextension/pack.sh |  23 ---
 pnpm-lock.yaml                                     |   8 +
 30 files changed, 78 insertions(+), 182 deletions(-)

diff --git a/packages/taler-wallet-webextension/.gitignore 
b/packages/taler-wallet-webextension/.gitignore
new file mode 100644
index 00000000..a6178770
--- /dev/null
+++ b/packages/taler-wallet-webextension/.gitignore
@@ -0,0 +1 @@
+taler-wallet-*.zip
diff --git a/packages/taler-wallet-webextension/webextension/manifest.json 
b/packages/taler-wallet-webextension/manifest.json
similarity index 80%
rename from packages/taler-wallet-webextension/webextension/manifest.json
rename to packages/taler-wallet-webextension/manifest.json
index b09e3ecb..5858d208 100644
--- a/packages/taler-wallet-webextension/webextension/manifest.json
+++ b/packages/taler-wallet-webextension/manifest.json
@@ -18,8 +18,8 @@
   },
 
   "icons": {
-    "32": "img/icon.png",
-    "128": "img/logo.png"
+    "32": "static/img/icon.png",
+    "128": "static/img/logo.png"
   },
 
   "permissions": [
@@ -36,14 +36,14 @@
 
   "browser_action": {
     "default_icon": {
-      "32": "img/icon.png"
+      "32": "static/img/icon.png"
     },
     "default_title": "Taler",
-    "default_popup": "popup.html"
+    "default_popup": "static/popup.html"
   },
 
   "background": {
-    "page": "background.html",
+    "page": "static/background.html",
     "persistent": true
   }
 }
diff --git a/packages/taler-wallet-webextension/pack.sh 
b/packages/taler-wallet-webextension/pack.sh
new file mode 100755
index 00000000..65837f49
--- /dev/null
+++ b/packages/taler-wallet-webextension/pack.sh
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+
+set -eu
+
+if [[ ! -e package.json ]]; then
+  echo "Please run this from the root of the repo.">&2
+  exit 1
+fi
+
+vers_manifest=$(jq -r '.version' manifest.json)
+
+zipfile="taler-wallet-${vers_manifest}.zip"
+
+rm -f -- "$zipfile"
+zip -r "$zipfile" dist static manifest.json
diff --git a/packages/taler-wallet-webextension/package.json 
b/packages/taler-wallet-webextension/package.json
index b60d4ea9..3702f224 100644
--- a/packages/taler-wallet-webextension/package.json
+++ b/packages/taler-wallet-webextension/package.json
@@ -9,7 +9,8 @@
   "private": false,
   "scripts": {
     "test": "tsc && ava",
-    "compile": "tsc"
+    "clean": "rimraf dist lib tsconfig.tsbuildinfo",
+    "compile": "tsc && rollup -c"
   },
   "dependencies": {
     "moment": "^2.27.0",
@@ -33,7 +34,9 @@
     "enzyme-adapter-react-16": "^1.15.2",
     "react": "^16.13.1",
     "react-dom": "^16.13.1",
+    "rimraf": "^3.0.2",
     "rollup": "^2.23.0",
+    "rollup-plugin-ignore": "^1.0.9",
     "rollup-plugin-sourcemaps": "^0.6.2",
     "rollup-plugin-terser": "^6.1.0",
     "typescript": "^3.9.7"
diff --git a/packages/taler-wallet-webextension/rollup.config.js 
b/packages/taler-wallet-webextension/rollup.config.js
index 25ce768b..6f2d8450 100644
--- a/packages/taler-wallet-webextension/rollup.config.js
+++ b/packages/taler-wallet-webextension/rollup.config.js
@@ -2,210 +2,96 @@
 import commonjs from "@rollup/plugin-commonjs";
 import nodeResolve from "@rollup/plugin-node-resolve";
 import json from "@rollup/plugin-json";
-import replace from "@rollup/plugin-replace";
 import builtins from "builtin-modules";
-import { terser } from "rollup-plugin-terser";
-import typescript from "@rollup/plugin-typescript";
-
-// Base settings to use
-const baseTypescriptCompilerSettings = {
-  target: "ES6",
-  jsx: "react",
-  reactNamespace: "React",
-  moduleResolution: "node",
-  sourceMap: true,
-  lib: ["es6", "dom"],
-  noImplicitReturns: true,
-  noFallthroughCasesInSwitch: true,
-  strict: true,
-  strictPropertyInitialization: false,
-  noImplicitAny: true,
-  noImplicitThis: true,
-  allowJs: true,
-  checkJs: true,
-  incremental: false,
-  esModuleInterop: true,
-  importHelpers: true,
-  module: "ESNext",
-  include: ["src/**/*.+(ts|tsx)"],
-  rootDir: "./src",
-};
-
-const walletCli = {
-  input: "src/headless/taler-wallet-cli.ts",
-  output: {
-    file: "dist/standalone/taler-wallet-cli.js",
-    format: "cjs",
-  },
-  external: builtins,
-  plugins: [
-    nodeResolve({
-      preferBuiltins: true,
-    }),
-
-    commonjs({
-      include: ["node_modules/**", "dist/node/**"],
-      extensions: [".js", ".ts"],
-      ignoreGlobal: false, // Default: false
-      sourceMap: false,
-      ignore: ["taler-wallet"],
-    }),
-
-    json(),
-    
-    typescript({
-      tsconfig: false,
-      ...baseTypescriptCompilerSettings,
-      sourceMap: false,
-    }),
-  ],
-};
-
-const walletAndroid = {
-  input: "src/android/index.ts",
-  output: {
-    //dir: "dist/standalone",
-    file: "dist/standalone/taler-wallet-android.js",
-    format: "cjs",
-    exports: "named",
-  },
-  external: builtins,
-  plugins: [
-    json(),
-
-    nodeResolve({
-      preferBuiltins: true,
-    }),
-
-    commonjs({
-      include: ["node_modules/**"],
-      extensions: [".js"],
-      sourceMap: false,
-      ignore: ["taler-wallet"],
-    }),
+import replace from "@rollup/plugin-replace";
+import ignore from "rollup-plugin-ignore"
 
-    typescript({
-      tsconfig: false,
-      ...baseTypescriptCompilerSettings,
-      sourceMap: false,
-    }),
-  ],
-};
 
 const webExtensionPageEntryPoint = {
-  input: "src/webex/pageEntryPoint.ts",
+  input: "lib/pageEntryPoint.js",
   output: {
-    file: "dist/webextension/pageEntryPoint.js",
+    file: "dist/pageEntryPoint.js",
     format: "iife",
     exports: "none",
     name: "webExtensionPageEntry",
   },
-  external: builtins,
   plugins: [
     json(),
 
+    ignore(builtins),
+
     nodeResolve({
-      preferBuiltins: true,
+      browser: true,
     }),
 
-    terser(),
+    //terser(),
 
     replace({
       "process.env.NODE_ENV": JSON.stringify("production"),
+      "__filename": "'__webextension__'",
     }),
 
-    commonjs({
-      include: ["node_modules/**", "dist/node/**"],
-      extensions: [".js"],
-      sourceMap: false,
-      ignore: ["taler-wallet"],
-    }),
-
-    typescript({
-      tsconfig: false,
-      ...baseTypescriptCompilerSettings,
-      sourceMap: false,
-    }),
+    commonjs(),
   ],
 };
 
 const webExtensionBackgroundPageScript = {
-  input: "src/webex/background.ts",
+  input: "lib/background.js",
   output: {
-    file: "dist/webextension/background.js",
+    file: "dist/background.js",
     format: "iife",
     exports: "none",
     name: "webExtensionBackgroundScript",
   },
-  external: builtins,
   plugins: [
     json(),
 
+    ignore(builtins),
+
     nodeResolve({
-      preferBuiltins: true,
+      browser: true,
     }),
 
-    terser(),
+    //terser(),
 
     replace({
       "process.env.NODE_ENV": JSON.stringify("production"),
+      "__filename": "'__webextension__'",
     }),
 
-    commonjs({
-      include: ["node_modules/**", "dist/node/**"],
-      extensions: [".js"],
-      sourceMap: false,
-      ignore: ["taler-wallet", "crypto"],
-    }),
-
-    typescript({
-      tsconfig: false,
-      ...baseTypescriptCompilerSettings,
-      sourceMap: false,
-    }),
+    commonjs()
   ],
 };
 
 const webExtensionCryptoWorker = {
-  input: "src/crypto/workers/browserWorkerEntry.ts",
+  input: "lib/browserWorkerEntry.js",
   output: {
-    file: "dist/webextension/browserWorkerEntry.js",
+    file: "dist/browserWorkerEntry.js",
     format: "iife",
     exports: "none",
     name: "webExtensionCryptoWorker",
   },
-  external: builtins,
   plugins: [
     json(),
 
+    ignore(builtins),
+
     nodeResolve({
-      preferBuiltins: true,
+      browser: true,
     }),
 
-    terser(),
+    //terser(),
 
     replace({
       "process.env.NODE_ENV": JSON.stringify("production"),
+      "__filename": "'__webextension__'",
     }),
 
-    commonjs({
-      include: ["node_modules/**", "dist/node/**"],
-      extensions: [".js"],
-      sourceMap: false,
-      ignore: ["taler-wallet", "crypto"],
-    }),
-
-    typescript({
-      tsconfig: false,
-      ...baseTypescriptCompilerSettings,
-      sourceMap: false,
-    }),
+    commonjs(),
   ],
 };
 
 export default [
-  walletCli,
-  walletAndroid,
   webExtensionPageEntryPoint,
   webExtensionBackgroundPageScript,
   webExtensionCryptoWorker,
diff --git 
a/packages/taler-wallet-webextension/src/browserCryptoWorkerFactory.ts 
b/packages/taler-wallet-webextension/src/browserCryptoWorkerFactory.ts
index b91f49f1..a0a44057 100644
--- a/packages/taler-wallet-webextension/src/browserCryptoWorkerFactory.ts
+++ b/packages/taler-wallet-webextension/src/browserCryptoWorkerFactory.ts
@@ -24,7 +24,7 @@ import type { CryptoWorker, CryptoWorkerFactory } from 
"taler-wallet-core";
 export class BrowserCryptoWorkerFactory implements CryptoWorkerFactory {
   startWorker(): CryptoWorker {
     const workerCtor = Worker;
-    const workerPath = "/browserWorkerEntry.js";
+    const workerPath = "/dist/browserWorkerEntry.js";
     return new workerCtor(workerPath) as CryptoWorker;
   }
 
diff --git a/packages/taler-wallet-webextension/src/wxBackend.ts 
b/packages/taler-wallet-webextension/src/wxBackend.ts
index 3adc9a82..8575c150 100644
--- a/packages/taler-wallet-webextension/src/wxBackend.ts
+++ b/packages/taler-wallet-webextension/src/wxBackend.ts
@@ -496,7 +496,8 @@ function setupHeaderListener(): void {
   // Handlers for catching HTTP requests
   getPermissionsApi().contains(extendedPermissions, (result: boolean) => {
     if (
-      chrome.webRequest.onHeadersReceived &&
+      "webRequest" in chrome &&
+      "onHeadersReceived" in chrome.webRequest &&
       chrome.webRequest.onHeadersReceived.hasListener(headerListener)
     ) {
       chrome.webRequest.onHeadersReceived.removeListener(headerListener);
@@ -509,11 +510,13 @@ function setupHeaderListener(): void {
         ["responseHeaders", "blocking"],
       );
     }
-    chrome.webRequest.handlerBehaviorChanged(() => {
-      if (chrome.runtime.lastError) {
-        console.error(chrome.runtime.lastError);
-      }
-    });
+    if ("webRequest" in chrome) {
+      chrome.webRequest.handlerBehaviorChanged(() => {
+        if (chrome.runtime.lastError) {
+          console.error(chrome.runtime.lastError);
+        }
+      });
+    }
   });
 }
 
diff --git 
a/packages/taler-wallet-webextension/webextension/static/add-auditor.html 
b/packages/taler-wallet-webextension/static/add-auditor.html
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/add-auditor.html
rename to packages/taler-wallet-webextension/static/add-auditor.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/auditors.html 
b/packages/taler-wallet-webextension/static/auditors.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/auditors.html
rename to packages/taler-wallet-webextension/static/auditors.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/background.html 
b/packages/taler-wallet-webextension/static/background.html
similarity index 58%
rename from 
packages/taler-wallet-webextension/webextension/static/background.html
rename to packages/taler-wallet-webextension/static/background.html
index b89c0558..4cd14479 100644
--- a/packages/taler-wallet-webextension/webextension/static/background.html
+++ b/packages/taler-wallet-webextension/static/background.html
@@ -2,10 +2,10 @@
 <html lang="en">
   <head>
     <meta charset="UTF-8" />
-    <script src="/background.js"></script>
+    <script src="/dist/background.js"></script>
     <title>(wallet bg page)</title>
   </head>
   <body>
-    <img id="taler-logo" src="/img/icon.png" />
+    <img id="taler-logo" src="/static/img/icon.png" />
   </body>
 </html>
diff --git 
a/packages/taler-wallet-webextension/webextension/static/benchmark.html 
b/packages/taler-wallet-webextension/static/benchmark.html
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/benchmark.html
rename to packages/taler-wallet-webextension/static/benchmark.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/img/icon.png 
b/packages/taler-wallet-webextension/static/img/icon.png
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/img/icon.png
rename to packages/taler-wallet-webextension/static/img/icon.png
diff --git 
a/packages/taler-wallet-webextension/webextension/static/img/logo-2015-medium.png
 b/packages/taler-wallet-webextension/static/img/logo-2015-medium.png
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/img/logo-2015-medium.png
rename to packages/taler-wallet-webextension/static/img/logo-2015-medium.png
diff --git 
a/packages/taler-wallet-webextension/webextension/static/img/logo.png 
b/packages/taler-wallet-webextension/static/img/logo.png
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/img/logo.png
rename to packages/taler-wallet-webextension/static/img/logo.png
diff --git 
a/packages/taler-wallet-webextension/webextension/static/img/spinner-bars.svg 
b/packages/taler-wallet-webextension/static/img/spinner-bars.svg
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/img/spinner-bars.svg
rename to packages/taler-wallet-webextension/static/img/spinner-bars.svg
diff --git a/packages/taler-wallet-webextension/webextension/static/pay.html 
b/packages/taler-wallet-webextension/static/pay.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/pay.html
rename to packages/taler-wallet-webextension/static/pay.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/payback.html 
b/packages/taler-wallet-webextension/static/payback.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/payback.html
rename to packages/taler-wallet-webextension/static/payback.html
diff --git a/packages/taler-wallet-webextension/webextension/static/popup.html 
b/packages/taler-wallet-webextension/static/popup.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/popup.html
rename to packages/taler-wallet-webextension/static/popup.html
diff --git a/packages/taler-wallet-webextension/webextension/static/refund.html 
b/packages/taler-wallet-webextension/static/refund.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/refund.html
rename to packages/taler-wallet-webextension/static/refund.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/reset-required.html 
b/packages/taler-wallet-webextension/static/reset-required.html
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/reset-required.html
rename to packages/taler-wallet-webextension/static/reset-required.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/return-coins.html 
b/packages/taler-wallet-webextension/static/return-coins.html
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/return-coins.html
rename to packages/taler-wallet-webextension/static/return-coins.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/style/popup.css 
b/packages/taler-wallet-webextension/static/style/popup.css
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/style/popup.css
rename to packages/taler-wallet-webextension/static/style/popup.css
diff --git 
a/packages/taler-wallet-webextension/webextension/static/style/pure.css 
b/packages/taler-wallet-webextension/static/style/pure.css
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/style/pure.css
rename to packages/taler-wallet-webextension/static/style/pure.css
diff --git 
a/packages/taler-wallet-webextension/webextension/static/style/wallet.css 
b/packages/taler-wallet-webextension/static/style/wallet.css
similarity index 100%
rename from 
packages/taler-wallet-webextension/webextension/static/style/wallet.css
rename to packages/taler-wallet-webextension/static/style/wallet.css
diff --git a/packages/taler-wallet-webextension/webextension/static/tip.html 
b/packages/taler-wallet-webextension/static/tip.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/tip.html
rename to packages/taler-wallet-webextension/static/tip.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/welcome.html 
b/packages/taler-wallet-webextension/static/welcome.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/welcome.html
rename to packages/taler-wallet-webextension/static/welcome.html
diff --git 
a/packages/taler-wallet-webextension/webextension/static/withdraw.html 
b/packages/taler-wallet-webextension/static/withdraw.html
similarity index 100%
rename from packages/taler-wallet-webextension/webextension/static/withdraw.html
rename to packages/taler-wallet-webextension/static/withdraw.html
diff --git a/packages/taler-wallet-webextension/tsconfig.json 
b/packages/taler-wallet-webextension/tsconfig.json
index c3c4144b..4b1bb19b 100644
--- a/packages/taler-wallet-webextension/tsconfig.json
+++ b/packages/taler-wallet-webextension/tsconfig.json
@@ -3,17 +3,20 @@
         "composite": true,
         "lib": ["es6", "DOM"],
         "jsx": "react",
+        "moduleResolution": "Node",
         "reactNamespace": "React",
-        "module": "commonjs",
-        "target": "es5",
+        "module": "ESNext",
+        "target": "ES6",
         "noImplicitAny": true,
         "outDir": "lib",
-        "declaration": true,
         "noEmitOnError": true,
         "strict": true,
         "incremental": true,
         "sourceMap": true,
-        "esModuleInterop": true
+        "esModuleInterop": true,
+        "importHelpers": true,
+        "rootDir": "./src",
+        "typeRoots": ["./node_modules/@types"]
     },
     "include": ["src/**/*"]
 }
diff --git a/packages/taler-wallet-webextension/webextension/pack.sh 
b/packages/taler-wallet-webextension/webextension/pack.sh
deleted file mode 100755
index ef005014..00000000
--- a/packages/taler-wallet-webextension/webextension/pack.sh
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/usr/bin/env bash
-
-set -eu
-
-if [[ ! -e package.json ]]; then
-  echo "Please run this from the root of the repo.">&2
-  exit 1
-fi
-
-vers_manifest=$(jq -r '.version' webextension/manifest.json)
-
-rm -rf dist/wx
-mkdir -p dist/wx
-cp webextension/manifest.json dist/wx/
-cp -r webextension/static/* dist/wx/
-cp -r dist/webextension/* dist/wx/
-
-cd dist/wx
-
-zipfile="../taler-wallet-${vers_manifest}.zip"
-
-rm -f -- "$zipfile"
-zip -r "$zipfile" ./*
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 16143c47..7ad4d642 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -199,7 +199,9 @@ importers:
       enzyme-adapter-react-16: 1.15.2_df2dc313d8031f8c2dbd009d86ca7fc7
       react: 16.13.1
       react-dom: 16.13.1_react@16.13.1
+      rimraf: 3.0.2
       rollup: 2.23.0
+      rollup-plugin-ignore: 1.0.9
       rollup-plugin-sourcemaps: 0.6.2_1bb4f16ce5b550396581a296af208cfa
       rollup-plugin-terser: 6.1.0_rollup@2.23.0
       typescript: 3.9.7
@@ -221,7 +223,9 @@ importers:
       moment: ^2.27.0
       react: ^16.13.1
       react-dom: ^16.13.1
+      rimraf: ^3.0.2
       rollup: ^2.23.0
+      rollup-plugin-ignore: ^1.0.9
       rollup-plugin-sourcemaps: ^0.6.2
       rollup-plugin-terser: ^6.1.0
       taler-wallet-core: 'workspace:*'
@@ -4109,6 +4113,10 @@ packages:
     hasBin: true
     resolution:
       integrity: 
sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
+  /rollup-plugin-ignore/1.0.9:
+    dev: true
+    resolution:
+      integrity: 
sha512-+Q2jmD4gbO3ByFuljkDEfpEcYvll7J5+ZadUuk/Pu35x2KGrbHxKtt3+s+dPIgXX1mG7zCxG4s/NdRqztR5Ruw==
   /rollup-plugin-sourcemaps/0.6.2_1bb4f16ce5b550396581a296af208cfa:
     dependencies:
       '@rollup/pluginutils': 3.1.0_rollup@2.23.0

-- 
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]