The current state is that python-gnupg will be removed from wheezy on
26th of October unless action is taken before that date.

I believe that the patch provided by Dmitry Shachnev is unsuitable for
wheezy, because it ships a new upstream version. The release team will
be very hesitant to approve such a change. Is there any reason to to
believe otherwise?

To just hack the --quick-random into python-gnupg an easier measure can
be taken.

mkdir debian/bin
cat >debian/bin/gpg
#!/bin/sh
GPG=`which -a gpg | uniq | tail -n+2 | head -n1`
exec "$GPG" --quick-random "$@"
<Ctrl-d>
chmod a+x debian/bin/gpg

Then invoke the testsuite with PATH=$(CURDIR)/debian/bin:$$PATH.

Unfortunately this is not enough. Some tests keep failing, because gpg
doesn't like --quick-random in all cases. This results in messages like
this:

DEBUG gnupg      Thread-31  [GNUPG:] GOOD_PASSPHRASE
DEBUG gnupg      Thread-31  gpg: key is not flagged as insecure - can't use it 
with the faked RNG!
DEBUG gnupg      Thread-31  gpg: no valid signators
DEBUG gnupg      Thread-31  gpg: [stdin]: sign+encrypt failed: no such user id

So we better only give --quick-random only when generating keys.

cat >debian/bin/gpg
#!/bin/sh
GPG=`which -a gpg | uniq | tail -n+2 | head -n1`
if echo "$*" | grep -q gen-key; then
        exec "$GPG" --quick-random "$@"
else
        exec "$GPG" "$@"
fi
<Ctrl-d>

And voila test suite works. This should be good enough for wheezy.

Please find my minimal .debdiff attached. I don't care which solution is
used, as long as some solution lands in wheezy. I will therefore try to
get my NMU .debdiff uploaded to some delayed queue. Please speak up asap
if you intend to fix this yourself.

Helmut
diff -Nru python-gnupg-0.3.0/debian/bin/gpg python-gnupg-0.3.0/debian/bin/gpg
--- python-gnupg-0.3.0/debian/bin/gpg   1970-01-01 01:00:00.000000000 +0100
+++ python-gnupg-0.3.0/debian/bin/gpg   2012-10-22 23:26:17.000000000 +0200
@@ -0,0 +1,7 @@
+#!/bin/sh
+GPG=`which -a gpg | uniq | tail -n+2 | head -n1`
+if echo "$*" | grep -q gen-key; then
+       exec "$GPG" --quick-random "$@"
+else
+       exec "$GPG" "$@"
+fi
diff -Nru python-gnupg-0.3.0/debian/changelog 
python-gnupg-0.3.0/debian/changelog
--- python-gnupg-0.3.0/debian/changelog 2012-05-18 12:04:19.000000000 +0200
+++ python-gnupg-0.3.0/debian/changelog 2012-10-22 23:30:49.000000000 +0200
@@ -1,3 +1,11 @@
+python-gnupg (0.3.0-1.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Work around test suite hangs by adding --quick-random when generating
+    keys. Closes: #682648
+
+ -- Helmut Grohne <hel...@subdivi.de>  Mon, 22 Oct 2012 23:30:19 +0200
+
 python-gnupg (0.3.0-1) unstable; urgency=low
 
   * New upstream release
diff -Nru python-gnupg-0.3.0/debian/rules python-gnupg-0.3.0/debian/rules
--- python-gnupg-0.3.0/debian/rules     2012-05-17 11:16:39.000000000 +0200
+++ python-gnupg-0.3.0/debian/rules     2012-10-22 23:30:14.000000000 +0200
@@ -18,12 +18,12 @@
 override_dh_auto_test:
 ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
        set -ex; for py in $(shell pyversions -r -v); do \
-               PYTHONPATH=$(CURDIR)/build/lib.*-$$py  python$$py test_gnupg.py 
;\
+               PATH=$(CURDIR)/debian/bin:$$PATH 
PYTHONPATH=$(CURDIR)/build/lib.*-$$py  python$$py test_gnupg.py ;\
        done
        set -ex; for python in $(shell py3versions -r); do \
                cp test_gnupg.py test_gnupg_3.py ;\
                2to3 -w test_gnupg_3.py ;\
-               PYTHONPATH=$(CURDIR)/build/lib $$python test_gnupg_3.py ;\
+               PATH=$(CURDIR)/debian/bin:$$PATH PYTHONPATH=$(CURDIR)/build/lib 
$$python test_gnupg_3.py ;\
                rm test_gnupg_3.py ;\
        done
 endif

Reply via email to