* lang/python/pyme/core.py: Avoid races at interpreter shutdown. This
silences the most annoying occurrences, however this problem also
affects the SWIG generated code, which might indicate that the real
problem is somewhere else. If so, this change can be easily reverted.
Signed-off-by: Justus Winter <justus@gnupg.org>
* lang/python/gpgme.i: Adjust to Python3's string type being
'Unicode', not 'bytes'. Fix type checking.
* lang/python/core.py (Data.write): Add docstring mentioning the
expected type of parameter 'buffer'.
(Data.read): Adjust read loop. Also, use a saner chunk size, and join
all chunks at the end instead of adding them.
* lang/python/examples/simple.py: Adjust example.
Signed-off-by: Justus Winter <justus@gnupg.org>
* configure.ac: Make Python bindings configurable, add new Makefile.
* lang/python/Makefile.am: New file.
* lang/python/setup.py: Integrate into the build system.
* m4/ax_pkg_swig.m4: New file from the autoconf archive.
* m4/m4_ax_swig_python.m4: Likewise.
Signed-off-by: Justus Winter <justus@gnupg.org>
* GUI examples written with pygtk, which has not been ported to Python
3 and won't be as it is for GTK2 and GNOME is moving to GTK3.
* New GUI examples may be required in future using any of several GUI
frameworks (e.g. wxPython, PyQt, PySide, PyGObject, etc.).
* Port of PyME 0.9.0 for Python 2 to Python 3 along with most of the
example scripts.
* Intended to be developed in parallel with the original Python 2
version until such time as a rewrite of GPGME leads to developing an
IO API in Python 3 from scratch.
* Python 3 PyME and API maintainer has entered, stage left with current
GPG key ID 0x321E4E2373590E5D, primary fingerprint is "DB47 24E6 FA42
86C9 2B4E 55C4 321E 4E23 7359 0E5D" and signing subkey fingerprint is
"B7F0 FE75 9387 430D D0C5 8BDB 7FF2 D371 35C7 553C" for future
reference with git commit signatures.
* Some of them cannot be properly tested on OS X, especially with GTK in
the mix (it works on OS X, but is unlikely to be as easily accessible
as Cocoa or Qt).
* Most major functions are showcased and do work, albeit sometimes with
false positives of error messages, at least on OS X.
* exportimport works, but will still segfault for an as yet unknown
reason.
* genkey produces a traceback error, but does create the key as
intended.
* matched passphrase in signverify.
* Changed plaintext string to byte literal.
* Nested key selection in a try/except statement in case of
UnicodeEncodeError instances.
* Tested successfully on over 9,000 keys.
* The entirety of the Python 3 port of PyME up to commit
2145348ec54c6027f2ea20f695de0277e2871405
* The old commit log has been saved as
lang/py3-pyme/docs/old-commits.log
* Can be viewed as a normal (separate) git repository at
https://github.com/adversary-org/pyme3
* Utilising the submodule feature of git was deliberately skipped on
humanitarian grounds (in order to prevent pain and suffering on the
part of anyone having to manage this repository).
* build-aux/gitlog-to-changelog: New script. Taken from gnulib.
* build-aux/git-log-fix: New file.
* build-aux/git-log-footer: New file.
* build-aux/git-hook/commit-msg: New script.
* doc/HACKING: New file.
* ChangeLog: New file.
* Makefile.am (EXTRA_DIST): Add new files.
(gen-ChangeLog): New.
(dist-hook): Run gen-ChangeLog.
* autogen.sh: Install commit-msg hook for git.
Rename all ChangeLog files to ChangeLog-2011.