estreams revised
authorBen McGinnes <ben@adversary.org>
Sat, 8 Sep 2018 04:45:37 +0000 (14:45 +1000)
committerBen McGinnes <ben@adversary.org>
Sat, 8 Sep 2018 04:45:37 +0000 (14:45 +1000)
commit2375959180aa8eb0d23cc3f8240c3f5b5262b819
treeec5a177198263f00ae96797fae5a9a6c68e1f590
parent53d69af01492873337a7b819e003a8f63698be1e
estreams revised

* Egon Spengler was right, crossing the streams is bad.
* Restored both src/gpgme.def and src/libgpgme.vers to use the
  estreams symbols without the leading underscore.
* The new_from_estream() function added to lang/python/src/core.py and
  set to alias the new_from_stream() function remains.
* Opted for the solution favouring Linux onthree main grounds:
  1. Andre reported major problems with Windows as well, so the number
     of potentially affected systems would vastly increase.
  2. All the BSDs and OS X have spent far more time and development
     work in order to accommodate the eccentricities of both Microsoft
     and the GNU Project (ref. GCC), so they're more likely to be able
     to cope with doing so again than the other way around.
  3. If I really have to I can write a custom installer for OS X to
     try this and, if it fails, to then patch the two symbol entries and
     recompile from scratch.  That said, I may not have to since it
     actually behaved during the most recent tests for this
     commit; into ten separate CPython installations and all five
     supported versions (standard source installs and OS X Framework
     installs for each version).

Tested-by: Ben McGinnes <ben@adversary.org>
Signed-off-by: Ben McGinnes <ben@adversary.org>
src/gpgme.def
src/libgpgme.vers