dolthub / doltpy

A Python API for Dolt
Apache License 2.0
55 stars 13 forks source link

Numpy version conflicts #175

Open CaptainStabs opened 2 years ago

CaptainStabs commented 2 years ago

On installing doltpy: opencv-python 4.5.5.62 requires numpy>=1.19.3; python_version >= "3.9", but you have numpy 1.19.0 which is incompatible.

Can the version be bumped?

pbronez commented 2 years ago

I ran into similar problems trying to install Doltpy with Poetry. The install failed on Numpy because the wheel wouldn't build. I got it to work by downgrading Python from 3.10 to 3.9. (Note: gotta kill the .venv folder and re-run poetry lock to make this work). Numpy is up to 1.22 now, so I figure Python 3.10 support was added after 1.19.

» poetry add doltpy
Using version ^2.0.11 for doltpy

Updating dependencies
Resolving dependencies... (62.9s)

Writing lock file

Package operations: 12 installs, 0 updates, 0 removals

  • Installing decorator (4.4.2)
  • Installing protobuf (3.12.2)
  • Installing python-dateutil (2.8.1)
  • Installing pytz (2021.3)
  • Installing doltcli (0.1.17)
  • Installing mysql-connector-python (8.0.29)
  • Installing numpy (1.19.0): Failed

  EnvCommandError

  Command ['/Users/pbronez/Library/Caches/pypoetry/virtualenvs/trolac-fBx7wvcv-py3.10/bin/pip', 'install', '--no-deps', 'file:///Users/pbronez/Library/Caches/pypoetry/artifacts/a1/c8/3e/093c4f85af6293815ee6594e018a532f7ed68d49d8235f634e46953984/numpy-1.19.0.zip'] errored with the following return code 1, and output:

(output truncated)

max-hoffman commented 2 years ago

@CaptainStabs this PR might help https://github.com/dolthub/doltpy/pull/178

@pbronez poetry environments might make the version switching easier.

pbronez commented 2 years ago

@max-hoffman thanks, yeah using poetry environments to manage between Python 3.9 and 3.10.

I'm poking around with something similar to #178. I found that allowing higher versions of NumPy was not sufficient to install doltpy on Python 3.10 with Poetry. I haven't got everything working smoothly yet, will keep at it.