dydxprotocol / dydx-v3-python

Python client for dYdX (API v3)
Apache License 2.0
304 stars 174 forks source link

requirements.txt requiring a specific minor version prevents pip install #181

Closed unclemanifold closed 1 year ago

unclemanifold commented 1 year ago

I get this error when running pip install dydx-v3-python, on version 3.11, on a macbook pro m1:

Building wheels for collected packages: aiohttp Building wheel for aiohttp (pyproject.toml) ... error error: subprocess-exited-with-error

× Building wheel for aiohttp (pyproject.toml) did not run successfully. │ exit code: 1

  aiohttp/_websocket.c:198:12: fatal error: 'longintrepr.h' file not found
    #include "longintrepr.h"
             ^~~~~~~~~~~~~~~
  1 error generated.
  error: command '/usr/bin/clang' failed with exit code 1
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for aiohttp Failed to build aiohttp ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based projects

I looked up this issue and found: https://github.com/aio-libs/aiohttp/issues/6600

"Fails to build on Python 3.11 - longintrepr.h: No such file or directory"

some of the comments include:

"I don't believe this is happening with aiohttp 3.8.3+. You must update for Python 3.11+ support. The C-extension files in old sdists are generated with an older Cython version, there is no way to retroactively substitute those sdists on PyPI.3.8.3 solved the problem for us. Apologies."

Then when I looked in the requirements.txt file here, I found:

aiohttp==3.8.1

That's why it's failing. Can we update the requirements.txt to be aiohttp>=3.8.1 or similar? I want to install a later version of aiohttp to make this work

Thanks!