[Pkg-gnupg-commit] [gpgme] 87/103: python: Default whence argument for Data() to SEEK_SET.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Dec 14 18:53:07 UTC 2017


This is an automated email from the git hooks/post-receive script.

dkg pushed a commit to branch master
in repository gpgme.

commit 3cf9aedc92b6c65d2cb34037e52b9a299637d03b
Author: Tobias Mueller <muelli at cryptobitch.de>
Date:   Tue Aug 22 17:48:25 2017 +0200

    python: Default whence argument for Data() to SEEK_SET.
    
    * lang/python/gpgme.i: copied signature from gpgme.h and defaulted the
    value to SEEK_SET.
    * lang/python/tests/t-data.py: Added a test for no second argument
    --
    
    Having to import the os package when wanting to read a Data object is a
    slight annoyance. With SWIG, we can define default parameters. This
    change defaults the whence argument to SEEK_SET which is how StringIO
    and BytesIO behave.
    
    Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
---
 lang/python/gpgme.i         | 5 +++++
 lang/python/tests/t-data.py | 6 ++++++
 2 files changed, 11 insertions(+)

diff --git a/lang/python/gpgme.i b/lang/python/gpgme.i
index 610b3d9..492326b 100644
--- a/lang/python/gpgme.i
+++ b/lang/python/gpgme.i
@@ -557,6 +557,11 @@ gpgme_error_t gpgme_op_keylist_start (gpgme_ctx_t ctx,
                       const char *pattern="",
                       int secret_only=0);
 
+/* The whence argument is surprising in Python-land,
+   because BytesIO or StringIO objects do not require it.
+   It defaults to SEEK_SET. Let's do that for Data objects, too */
+off_t gpgme_data_seek (gpgme_data_t dh, off_t offset, int whence=SEEK_SET);
+
 /* Include the unmodified <gpgme.h> for cc, and the cleaned-up local
    version for SWIG.  We do, however, want to hide certain fields on
    some structs, which we provide prior to including the version for
diff --git a/lang/python/tests/t-data.py b/lang/python/tests/t-data.py
index 3301319..5cf074c 100755
--- a/lang/python/tests/t-data.py
+++ b/lang/python/tests/t-data.py
@@ -51,6 +51,12 @@ data.write(b'Hello world!')
 data.seek(0, os.SEEK_SET)
 assert data.read() == b'Hello world!'
 
+data = gpg.Data()
+data.write(b'Hello world!')
+# We expect the second argument to default to SEEK_SET
+data.seek(0)
+assert data.read() == b'Hello world!'
+
 binjunk = bytes(range(256))
 data = gpg.Data()
 data.write(binjunk)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gpgme.git



More information about the Pkg-gnupg-commit mailing list