Subject: Re: [ANNOUNCE] Git v2.2.0

From: Michael J Gruber <[email-masked]>
Date: Fri, 28 Nov 2014 10:48:51 +0100

Steven Noonan schrieb am 27.11.2014 um 22:32:

> 
> I'm sad to report that I'm getting test failures with this release.
> Built from git and did 'make -C t prove NO_SVN_TESTS=1' and got this
> result:
> 
> $ make -j8
> $ make -C t prove NO_SVN_TESTS=1 PROVE="prove -j8"
> [...]
> Test Summary Report
> -------------------
> t4202-log.sh                                     (Wstat: 256 Tests: 42 Failed: 2)
>   Failed tests:  41-42
>   Non-zero exit status: 1
> t5534-push-signed.sh                             (Wstat: 256 Tests: 7 Failed: 2)
>   Failed tests:  6-7
>   Non-zero exit status: 1
> t5801-remote-helpers.sh                          (Wstat: 256 Tests: 28 Failed: 2)
>   Failed tests:  21-22
>   Non-zero exit status: 1
> t6050-replace.sh                                 (Wstat: 256 Tests: 33 Failed: 4)
>   Failed tests:  30-33
>   Non-zero exit status: 1
> t6300-for-each-ref.sh                            (Wstat: 256 Tests: 134 Failed: 19)
>   Failed tests:  115-133
>   Non-zero exit status: 1
> t7510-signed-commit.sh                           (Wstat: 256 Tests: 10 Failed: 10)
>   Failed tests:  1-10
>   Non-zero exit status: 1
> t7612-merge-verify-signatures.sh                 (Wstat: 256 Tests: 6 Failed: 5)
>   Failed tests:  2-6
>   Non-zero exit status: 1
> t7600-merge.sh                                   (Wstat: 256 Tests: 49 Failed: 2)
>   Failed tests:  48-49
>   Non-zero exit status: 1
> t7004-tag.sh                                     (Wstat: 256 Tests: 136 Failed: 32)
>   Failed tests:  65-66, 69-72, 74-75, 77-100
>   Non-zero exit status: 1
> Files=685, Tests=11975, 88 wallclock secs ( 3.97 usr  0.70 sys + 73.84 cusr 22.10 csys = 100.61 CPU)
> Result: FAIL
> 
> 
> I suspect that gnupg v2.1 is to blame somehow (I've had similar bad behavior
> with my own projects using GPG in automation). Running through several of the
> git tests shows that gpg is failing to sign:
> 
> 
> $ make -C t t7510-signed-commit GIT_TEST_OPTS="--verbose --debug"
> make: Entering directory '/home/snoonan/Development/git/t'
> *** t7510-signed-commit.sh ***
> Initialized empty Git repository in /home/snoonan/Development/git/t/trash directory.t7510-signed-commit/.git/
> expecting success:
> [...]
> gpg: starting migration from earlier GnuPG versions
> gpg: porting secret keys from '/home/snoonan/Development/git/t/trash directory.t7510-signed-commit/gpghome/secring.gpg' to gpg-agent
> gpg: key CDDE430D: secret key imported
> gpg: key B7227189: secret key imported
> gpg: migration succeeded
> gpg: signing failed: Operation cancelled
> gpg: signing failed: Operation cancelled
> error: gpg failed to sign the data
> fatal: failed to write commit object
> gpg: signing failed: Operation cancelled
> gpg: signing failed: Operation cancelled
> error: gpg failed to sign the data
> fatal: failed to write commit object
> not ok 1 - create signed commits
> 
> 
> If I build and install the old gnupg v2.0.26 package, things are
> happier:
> 
> 
> $ make -C t prove NO_SVN_TESTS=1 PROVE="prove -j8"
> [...]
> All tests successful.
> Files=685, Tests=11975, 87 wallclock secs ( 4.02 usr  0.69 sys + 76.41 cusr 21.96 csys = 103.08 CPU)
> Result: PASS
> 
> 
> Using Arch Linux on x86_64. Anyone else able to repro?
> 

Are you running gnome_keyring_deamon by any chance? It think it runs by
default in Gnome, claims to offer gpg_agent functionality but does not
seem to do so fully. I.e., its presence may keep gpg2.1 from starting
its own gpg-agent. But gpg2.1 ("gnupg modern branch") needs a new
gpg-agent which knows how to handle secret keys for gpg2.1.

(I may take a shot at trying, but I'm on Fedora - they're slow and
special in all things gpg/crypto. And compiling gpg2.1 means compiling
all the bits and pieces that monster consists of these days...)

Michael