docs: python bindings howto
authorBen McGinnes <ben@adversary.org>
Sat, 22 Sep 2018 19:37:40 +0000 (05:37 +1000)
committerBen McGinnes <ben@adversary.org>
Sat, 22 Sep 2018 19:37:40 +0000 (05:37 +1000)
* Confirmed that updates to the tests have significant'y improved that
  output.
* Updated some of the additional notes for the section on hkp4py.
** This is in anticipation adding at least import examples using that
   module as well.  It may also include adding examples of exporting a
   key and uploading it to the keyservers.

Tested-by: Ben McGinnes <ben@adversary.org>
Signed-off-by: Ben McGinnes <ben@adversary.org>
doc/gpgme-python-howto.texi
lang/python/docs/gpgme-python-howto.org

index 85a8dcf..e78c6f8 100644 (file)
@@ -2265,7 +2265,7 @@ support for Python 2.7 as well and is available via PyPI.
 
 Since it rewrites the @samp{hkp} protocol prefix as @samp{http} and @samp{hkps} as
 @samp{https}, the module is able to be used even with servers which do not
-support the full scope of keyserver functions.  It will work quite
+support the full scope of keyserver functions.  It also works quite
 readily when incorporated into a @ref{C plus Python plus SWIG plus Cython, , Cython} generated and compiled version
 of any code.
 
@@ -2281,6 +2281,23 @@ The hkp4py module returns key data via requests as string literals
 the retrurned key data must be encoded to UTF-8 when importing that
 key material using a @samp{gpg.Context().key_import()} method.
 
+For this reason an alternative method has been added to the @samp{search}
+function of @samp{hkp4py.KeyServer()} which returns the key in the correct
+format as expected by @samp{key_import}.  When importing using this module,
+it is now possible to import with this:
+
+@example
+for key in keys:
+    if key.revoked is False:
+        gpg.Context().key_import(key.key_blob)
+    else:
+        pass
+@end example
+
+Without that recent addition it would have been necessary to encode
+the contents of each @samp{hkp4py.KeyServer().search()[i].key} in
+@samp{hkp4py.KeyServer().search()} before trying to import it.
+
 @node Copyright and Licensing
 @chapter Copyright and Licensing
 
index 53ca3a5..4373e0f 100644 (file)
@@ -2169,7 +2169,7 @@ support for Python 2.7 as well and is available via PyPI.
 
 Since it rewrites the =hkp= protocol prefix as =http= and =hkps= as
 =https=, the module is able to be used even with servers which do not
-support the full scope of keyserver functions.  It will work quite
+support the full scope of keyserver functions.  It also works quite
 readily when incorporated into a [[#cython][Cython]] generated and compiled version
 of any code.
 
@@ -2184,6 +2184,24 @@ The hkp4py module returns key data via requests as string literals
 the retrurned key data must be encoded to UTF-8 when importing that
 key material using a =gpg.Context().key_import()= method.
 
+For this reason an alternative method has been added to the =search=
+function of =hkp4py.KeyServer()= which returns the key in the correct
+format as expected by =key_import=.  When importing using this module,
+it is now possible to import with this:
+
+#+BEGIN_SRC python -i
+for key in keys:
+    if key.revoked is False:
+        gpg.Context().key_import(key.key_blob)
+    else:
+        pass
+#+END_SRC
+
+Without that recent addition it would have been necessary to encode
+the contents of each =hkp4py.KeyServer().search()[i].key= in
+=hkp4py.KeyServer().search()= before trying to import it.
+
+
 
 * Copyright and Licensing
   :PROPERTIES: