[git] GPGME - branch, javascript-binding, updated. gpgme-1.11.1-111-g0036b9b

by Andre Heinecke cvs at cvs.gnupg.org
Tue Aug 21 13:58:55 CEST 2018


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GnuPG Made Easy".

The branch, javascript-binding has been updated
       via  0036b9bc493f0482cc7c4619867649481393163e (commit)
       via  738a8e6f950af08305c082d59a91d3d5d45800fa (commit)
       via  9608996d88549b60da490e5eeb41db023f97a038 (commit)
       via  605eb8a8bfcb12141d7cc5626e75af812cda6c75 (commit)
       via  fe3de5b86b4a25f5b23cf1af2fd1809ef6c087a0 (commit)
      from  8b8c009dee8ae5493e7f888ee518468dbfcf5375 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 0036b9bc493f0482cc7c4619867649481393163e
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Tue Aug 21 13:58:06 2018 +0200

    js: Fix library name mentioned in js Makefiles
    
    --

diff --git a/lang/js/BrowserTestExtension/Makefile.am b/lang/js/BrowserTestExtension/Makefile.am
index 6153f7d..8f0a4f9 100644
--- a/lang/js/BrowserTestExtension/Makefile.am
+++ b/lang/js/BrowserTestExtension/Makefile.am
@@ -1,14 +1,14 @@
-# Makefile.am for GPGME-JS.
+# Makefile.am for gpgme.js.
 # Copyright (C) 2018 Intevation GmbH
 #
 # This file is part of GPGME.
 #
-# GPGME-CL is free software; you can redistribute it and/or modify it
+# gpgme.js 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 2 of the License, or
 # (at your option) any later version.
 #
-# GPGME-CL is distributed in the hope that it will be useful,
+# gpgme.js 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 Lesser General Public License for more details.
diff --git a/lang/js/DemoExtension/Makefile.am b/lang/js/DemoExtension/Makefile.am
index e93d0f6..d6e87fd 100644
--- a/lang/js/DemoExtension/Makefile.am
+++ b/lang/js/DemoExtension/Makefile.am
@@ -1,14 +1,14 @@
-# Makefile.am for GPGME-JS.
+# Makefile.am for gpgme.js.
 # Copyright (C) 2018 Intevation GmbH
 #
-# This file is part of GPGME-CL.
+# This file is part of gpgme.js.
 #
-# GPGME-CL is free software; you can redistribute it and/or modify it
+# gpgme.js 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 2 of the License, or
 # (at your option) any later version.
 #
-# GPGME-CL is distributed in the hope that it will be useful,
+# gpgme.js 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 Lesser General Public License for more details.
diff --git a/lang/js/Makefile.am b/lang/js/Makefile.am
index daa3d1e..40a1c4f 100644
--- a/lang/js/Makefile.am
+++ b/lang/js/Makefile.am
@@ -1,14 +1,14 @@
-# Makefile.am for GPGME-JS.
-# Copyright (C) 2018 2018 Bundesamt für Sicherheit in der Informationstechnik
+# Makefile.am for gpgme.js.
+# Copyright (C) 2018 Bundesamt für Sicherheit in der Informationstechnik
 #
-# This file is part of GPGME-JS.
+# This file is part of gpgme.js.
 #
-# GPGME-JS is free software; you can redistribute it and/or modify it
+# gpgme.js 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 2 of the License, or
 # (at your option) any later version.
 #
-# GPGME-JS is distributed in the hope that it will be useful,
+# gpgme.js 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 Lesser General Public License for more details.
diff --git a/lang/js/src/Makefile.am b/lang/js/src/Makefile.am
index dd330d5..dc58fd3 100644
--- a/lang/js/src/Makefile.am
+++ b/lang/js/src/Makefile.am
@@ -1,14 +1,14 @@
-# Makefile.am for GPGME-JS.
+# Makefile.am for gpgme.js.
 # Copyright (C) 2018 Intevation GmbH
 #
 # This file is part of GPGME.
 #
-# GPGME-CL is free software; you can redistribute it and/or modify it
+# gpgme.js 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 2 of the License, or
 # (at your option) any later version.
 #
-# GPGME-CL is distributed in the hope that it will be useful,
+# gpgme.js 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 Lesser General Public License for more details.

commit 738a8e6f950af08305c082d59a91d3d5d45800fa
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Tue Aug 21 13:56:45 2018 +0200

    js: Update extra_dist files
    
    * lang/js/BrowserTestExtension/Makefile.am,
    lang/js/Makefile.am (EXTRA_DIST): Update.

diff --git a/lang/js/BrowserTestExtension/Makefile.am b/lang/js/BrowserTestExtension/Makefile.am
index 340d7ad..6153f7d 100644
--- a/lang/js/BrowserTestExtension/Makefile.am
+++ b/lang/js/BrowserTestExtension/Makefile.am
@@ -32,11 +32,14 @@ EXTRA_DIST = browsertest.html \
              testkey2.pub \
              testkey.pub \
              testkey.sec \
+             tests/decryptTest.js \
              tests/encryptDecryptTest.js \
              tests/encryptTest.js \
              tests/inputvalues.js \
              tests/KeyImportExport.js \
+             tests/KeyInfos.js \
              tests/longRunningTests.js \
              tests/signTest.js \
              tests/startup.js \
+             tests/verifyTest.js \
              unittests.html
diff --git a/lang/js/Makefile.am b/lang/js/Makefile.am
index 4b5c717..daa3d1e 100644
--- a/lang/js/Makefile.am
+++ b/lang/js/Makefile.am
@@ -23,11 +23,10 @@ SUBDIRS = src BrowserTestExtension DemoExtension
 EXTRA_DIST = build_extensions.sh \
              CHECKLIST \
              CHECKLIST_build \
+             jsdoc.conf \
              .eslintrc.json \
-             Makefile.am \
              package.json \
              README \
-             README_testing \
              unittest_inputvalues.js \
              unittests.js \
              webpack.conf.js \

commit 9608996d88549b60da490e5eeb41db023f97a038
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Tue Aug 21 13:24:08 2018 +0200

    Add example manifests for gpgme-json
    
    * doc/examples/gpgme-chrome.json, doc/examples/gpgme-mozilla.json: New.
    * doc/Makefile.am (EXTRA_DIST): Include them.
    
    --
    The id contained in the examples is the ID of Mailvelope.

diff --git a/doc/Makefile.am b/doc/Makefile.am
index 905f953..a592f79 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -23,7 +23,8 @@ DISTCLEANFILES = gpgme.tmp
 CLEANFILES = mkdefsinc defs.inc
 
 EXTRA_DIST = module-overview.sk HACKING DCO ChangeLog-2011 \
-             mkdefsinc.c defsincdate
+             mkdefsinc.c defsincdate \
+             examples/gpgme-mozilla.json examples/gpgme-chrome.json
 
 BUILT_SOURCES = defsincdate defs.inc
 
diff --git a/doc/examples/gpgme-chrome.json b/doc/examples/gpgme-chrome.json
new file mode 100644
index 0000000..d250ecb
--- /dev/null
+++ b/doc/examples/gpgme-chrome.json
@@ -0,0 +1,9 @@
+{
+    "name": "gpgmejson",
+    "description": "Integration with GnuPG",
+    "path": "/usr/bin/gpgme-json",
+    "type": "stdio",
+    "allowed_origins": [
+        "chrome-extension://kajibbejlbohfaggdiogboambcijhkke/"
+    ]
+}
diff --git a/doc/examples/gpgme-mozilla.json b/doc/examples/gpgme-mozilla.json
new file mode 100644
index 0000000..493b398
--- /dev/null
+++ b/doc/examples/gpgme-mozilla.json
@@ -0,0 +1,9 @@
+{
+    "name": "gpgmejson",
+    "description": "Integration with GnuPG",
+    "path": "/usr/bin/gpgme-json",
+    "type": "stdio",
+    "allowed_extensions": [
+        "jid1-AQqSMBYb0a8ADg at jetpack"
+    ]
+}

commit 605eb8a8bfcb12141d7cc5626e75af812cda6c75
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Tue Aug 21 13:26:01 2018 +0200

    js: Improve README
    
    * lang/js/README: Clarify structure at the beginning.

diff --git a/lang/js/README b/lang/js/README
index b7cd3d7..fd95cc4 100644
--- a/lang/js/README
+++ b/lang/js/README
@@ -1,16 +1,41 @@
-gpgme.js, as contained in this directory, is a javascript library for direct use
-of gnupg in browsers, with the help of nativeMessaging.
+gpgme.js - JavaScript for GPGME
+-------------------------------
+Initially developed for integration with the Mailvelope Web Extension.
+
+Overview
+--------
+
+gpgme.js is a javascript library for direct use of GnuPG in browsers.
+It interacts with GPGME through nativeMessaging and gpgme-json.
+
+It is meant to be distributed directly by its downstream users in
+their extension package. As such it is not integrated in the
+autotools build system. See build instructions below.
+
+
+gpgme-json
+----------
+
+gpgme-json (see core src/gpgme-json.c) the json to GPGME bridge is
+required as native messaging backend for gpgme.js to work.
+It needs to be installed and registered as native messaging
+backend with the browser.
+
+See gpgme-mozilla.json and gpgme-chrome.json examples in
+the top level doc/examples as example manifests.
+
+Any web extension using gpgme.js will need to be whitelisted in the manifest
+file by its id.
+
+Distributors are encouraged to create manifest packages for their
+distributions.
 
-Prerequisites:
---------------
-gpgme.js will make use of the application gpgme-json, which is distributed with
-gpgme. Gpgme-json needs to be installed; it will further need to accept the
-browser extension in the manifest file.
 
 Building gpgme.js
 -----------------
-gpgme.js uses webpack, and thus depends on nodejs for building. All
-dependencies will be installed (in a local subdirectory) with the command
+
+gpgme.js uses webpack, and thus depends on Node.js for building.
+All dependencies will be installed (in a local subdirectory) with the command
 `npm install`.
 
 To create a current version of the package, the command is
@@ -18,6 +43,7 @@ To create a current version of the package, the command is
 If you want a more debuggable (i.e. not minified) build, just change the mode
 in webpack.conf.js.
 
+
 Demo and Test WebExtension:
 ---------------------------
 
@@ -82,6 +108,7 @@ is needed, with the following content:
   The manifest for linux is usually placed at:
     `~/.mozilla/native-messaging-hosts/gpgmejson.json`
 
+
 Documentation
 -------------
 

commit fe3de5b86b4a25f5b23cf1af2fd1809ef6c087a0
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Tue Aug 21 12:49:22 2018 +0200

    Remove js as language from configure.ac
    
    * configure.ac: Remove js language.
    
    --
    It does not make much sense to integrate gpgme-js into the
    GPGME build system. gpgme-js will be distrbuted by it's users
    as part of the web extensions / their distribution as that
    is the JavaScript way.
    
    So they can use their tools etc. to compile gpgme-js JavaScript
    style, which is documented in the lang/js folder.

diff --git a/configure.ac b/configure.ac
index 69d7132..65f1ef9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -187,7 +187,7 @@ have_w64_system=no
 have_macos_system=no
 build_w32_glib=no
 build_w32_qt=no
-available_languages="cl cpp python python2 python3 qt js"
+available_languages="cl cpp python python2 python3 qt"
 default_languages="cl cpp python qt"
 case "${host}" in
     x86_64-*mingw32*)
@@ -479,28 +479,6 @@ fi
 
 AC_SUBST(ENABLED_LANGUAGES, $enabled_languages)
 
-# The javascript bindings
-LIST_MEMBER("js", $enabled_languages)
-if test "$found" = "1"; then
-    AC_CHECK_PROGS([NPX], [npx])
-    if test -z "$NPX"; then
-        if test "$explicit_languages" = "1"; then
-            AC_MSG_ERROR([[
-***
-*** Node.js (npx) is required for the JavaScript binding.
-***]])
-        else
-            AC_MSG_WARN([
-***
-*** Node.js (npx) not found - JavaScript binding will not be built.
-***])
-            enabled_languages=$(echo $enabled_languages | sed 's/js//')
-        fi
-    fi
-fi
-AM_CONDITIONAL([BUILD_JS_BINDINGS],
-               [test -n "$NPX"])
-
 #
 # Provide information about the build.
 #

-----------------------------------------------------------------------

Summary of changes:
 configure.ac                             | 24 +----------------
 doc/Makefile.am                          |  3 ++-
 doc/examples/gpgme-chrome.json           |  9 +++++++
 doc/examples/gpgme-mozilla.json          |  9 +++++++
 lang/js/BrowserTestExtension/Makefile.am |  9 ++++---
 lang/js/DemoExtension/Makefile.am        |  8 +++---
 lang/js/Makefile.am                      | 13 +++++----
 lang/js/README                           | 45 +++++++++++++++++++++++++-------
 lang/js/src/Makefile.am                  |  6 ++---
 9 files changed, 76 insertions(+), 50 deletions(-)
 create mode 100644 doc/examples/gpgme-chrome.json
 create mode 100644 doc/examples/gpgme-mozilla.json


hooks/post-receive
-- 
GnuPG Made Easy
http://git.gnupg.org




More information about the Gnupg-commits mailing list