pypy installs don't seem to pick up OpenSSL libs #2275

Closed
dhermes opened this Issue Aug 13, 2015 · 6 comments

Projects

None yet

3 participants

@dhermes
dhermes commented Aug 13, 2015

After the >=1.0 upgrade, our PyPy builds on Travis started to fail:
https://travis-ci.org/google/oauth2client/jobs/75439836
https://travis-ci.org/google/oauth2client/jobs/75439618
https://travis-ci.org/google/oauth2client/jobs/75349545

...
    from OpenSSL import crypto
  File "/home/travis/build/google/oauth2client/.tox/pypy/site-packages/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import rand, crypto, SSL
  File "/home/travis/build/google/oauth2client/.tox/pypy/site-packages/OpenSSL/rand.py", line 11, in <module>
    from OpenSSL._util import (
  File "/home/travis/build/google/oauth2client/.tox/pypy/site-packages/OpenSSL/_util.py", line 3, in <module>
    from cryptography.hazmat.bindings.openssl.binding import Binding
  File "/home/travis/build/google/oauth2client/.tox/pypy/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 11, in <module>
    from cryptography.hazmat.bindings._openssl import ffi, lib
ImportError: No module named cryptography.hazmat.bindings._openssl

ISTM this could be caused by the system headers being ignored / missed during install, but I haven't dove deeply into your setup.py or other parts of your install process.

@alex
Member
alex commented Aug 13, 2015

Cryptography 1.0 requires pypy 2.6 or newer; you appear to be using 2.5 or so. (Unfortunately that's teh version of pypy that travis ships :-()

@alex alex closed this Aug 13, 2015
@dhermes
dhermes commented Aug 13, 2015

Ahhh! Thanks for the quick reply.

@dhermes dhermes referenced this issue in google/oauth2client Aug 13, 2015
Closed

Track down pypy test failures #261

@alex
Member
alex commented Aug 13, 2015

Yeah. It's a shitty situation :-( I'm sorry about that. I'm going to ping
the travis-ci folks about getting a new pypy deployed, they have the
changes to their config, they just need to update their dev environment.

For now I think your best bet would be to pin cryptography to <1.0 on your
CI. (On a personal note, thanks for testing with PyPy!)

On Thu, Aug 13, 2015 at 10:43 AM, Danny Hermes notifications@github.com
wrote:

Ahhh! Thanks for the quick reply.


Reply to this email directly or view it on GitHub
#2275 (comment).

"I disapprove of what you say, but I will defend to the death your right to
say it." -- Evelyn Beatrice Hall (summarizing Voltaire)
"The people's good is the highest law." -- Cicero
GPG Key fingerprint: 125F 5C67 DFE9 4084

@dhermes
dhermes commented Aug 13, 2015

@alex Sure thing! Is it worth trying to support pypy 2.5 or less or should we suggest to users that they upgrade? (FWIW I've never heard from anyone using oauth2client on pypy.)

@reaperhulk
Member

@dhermes The changes we made to switch to the out-of-line API mode supported in cffi 1.0+ are pretty substantial (#1986). We discussed trying to support both but decided we'd prefer to encourage users to upgrade (which we know isn't ideal, sorry!). The advantages of the new approach are just too big to ignore though.

@dhermes
dhermes commented Aug 13, 2015

It seems like the right move. I had forgotten about the nightmare of pyca/pyopenssl#137 until you closed it.

Asking pypy users to upgrade doesn't seem to be a drastic thing, as they are already early adopter types.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment