Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why is "cp35-win32" in the name of the .pyd files in the cryptography wheel package

On my Windows machine, when I build the cryptography package using the instructions on this page, I end up with these .pyd files in the wheel:

  • _openssl.cp35-win32.pyd
  • _constant_time.cp35-win32.pyd
  • _padding.cp35-win32.pyd

Based on already built wheels on PyPI, I was expecting these names for the files instead:

  • _openssl.pyd
  • _constant_time.pyd
  • _padding.pyd

Do you know why I end up with cp35-win32 in the file names? It is currently a problem because I have import errors inside the cryptography code which are related to this name difference:

  File "c:\long_path_prefix\.tox\lt\lib\site-packages\cryptography\hazmat\backends\openssl\__init__.py", line 7, in <module>
    from cryptography.hazmat.backends.openssl.backend import backend
  File "c:\long_path_prefix\.tox\lt\lib\site-packages\cryptography\hazmat\backends\openssl\backend.py", line 51, in <module>
    from cryptography.hazmat.bindings._openssl import ffi as _ffi
ImportError: DLL load failed: The specified module could not be found.

Have a good day!

like image 667
GDICommander Avatar asked Sep 02 '25 02:09

GDICommander


1 Answers

These tags are based on pep 427.

They are added by default depending on the platform the wheel was built on.

In your case, you built your wheel on win32 and it is compatible with CPython3.5.

like image 104
David Avatar answered Sep 04 '25 15:09

David