I'm running a local server in Python with GAE, and importing a 3rd party library, which in turn imports pycrypto. I installed it locally using pip and included it in my app.yaml file, but when I run the server, I get the following error:
ImportError: cannot import name OSRNG
Here's what my app.yaml looks like:
runtime: python27
threadsafe: 1
handlers:
- url: /.*
script: main.app
libraries:
- name: pycrypto
version: "latest"
I'm running homebrew python 2.7.
Official documentation seems to suggest that
api_version
inapp.yaml
is required.The pycrypto library is built-in in the runtime environment, however you need to install it locally in order to run the local development server, as you did. It might just be a problem with versions, as the supported pycrypto versions are 2.3, 2.6 and 2.6.1.
Try installing the proper version with
pip install pycrypto==2.6.1
.Then, change your app.yaml file to the appropriate version: