Pip install cryptography fails on py36

Dear builders,

I’m trying to pip install cryptography, essentially, and it works just great on py37 and py38. For py36 I get an error that I’m missing a Rust compiler. It seems py36 tries to build from source whereas on pypi I find wheels for py36, py37, py38. Why does it try to build from source on py36, or am I not understanding the issue here? Is the environment py36 somehow different from the others?

PR, for context

Build success/failure here (depending on python version)
https://travis-ci.org/github/SAP/cloud-pysec/builds/760937377

Pypi wheel seems to be py36+ compatible?

Thanks in advance.
Paul

Your pip version is probably old and doesn’t understand ABI3 tags in wheels. Upgrade it first.

In the .travis.yml file (it’s in the PR), there’s already this command:

   - pip install -U tox pip

That should do it, right?

Tox creates separate virtualenvs, you probably want newer pip there. So upgrade virtualenv because it has a specific version of pip bundled.

1 Like

@webknjaz thanks, very helpful of you! This resolved the issue.

@pletnes I am facing the same issue and tried to update pip and virtualenv, however my error hasn’t been resolved. Could you share, where you updated what? Thank you

Have a look at the blame. Did this help? It boils down to

before_install:
  - python -m pip install --upgrade virtualenv