chorus-ai / chorus_waveform

CHoRUS waveform documentation and various waveform conversion scripts
MIT License
3 stars 3 forks source link

Unresolvable requirements file #103

Open tompollard opened 2 weeks ago

tompollard commented 2 weeks ago

Tests are currently failing because the dependencies in requirements.txt cannot be resolved. e.g. see: https://github.com/chorus-ai/chorus_waveform/actions/runs/11406512755/job/31740432168

 1 warning found (use docker --debug to expand):
 - FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 1)
Dockerfile:23
--------------------
  21 |                     flake8 \
  22 |                     pytest
  23 | >>> RUN pip install --no-cache-dir -r requirements.txt
  24 |     RUN pip install --no-cache-dir --no-deps -e .
  25 |     
--------------------
ERROR: failed to solve: process "/bin/sh -c pip install --no-cache-dir -r requirements.txt" did not complete successfully: exit code: 1
Error: buildx failed with: ERROR: failed to solve: process "/bin/sh -c pip install --no-cache-dir -r requirements.txt" did not complete successfully: exit code: 1

Most likely the cause is that wfdb-python is currently incompatible with Numpy V2 (see: https://github.com/MIT-LCP/wfdb-python/issues/493).

tompollard commented 2 weeks ago

I think I'm unfairly blaming WFDB. According to the error here, we are requiring a version of AtriumDB that doesn't exist:

https://github.com/chorus-ai/chorus_waveform/blob/426cbc82eae35270ab103f4efab6fee91c2803aa/requirements.txt#L1

> pip index versions atriumdb

atriumdb (2.3.0)
Available versions: 2.3.0, 2.2.3, 2.2.2, 2.2.1, 2.2.0, 2.1.1, 2.1.0, 2.0.0
briangow commented 2 weeks ago

@tompollard , yes, this is expected. @WilliamDixon provided an early version of 2.4 and the code that depends on that has been merged. I believe the new package should be released publicly very soon.

tompollard commented 2 weeks ago

I see, in this case the requirements should be updated to use the new version (e.g. to pip install from pip install git+https://github.com/LaussenLabs/atriumdb.git@e860b30cfb93a2a290ac120c1c09a2af7806fb2b).

WilliamDixon commented 1 week ago

@tompollard @briangow I have a new PR up that works with the newly release atriumdb 2.4.0 and have updated the requirements.txt to reflect that.

WilliamDixon commented 1 week ago

I see, in this case the requirements should be updated to use the new version (e.g. to pip install from pip install git+https://github.com/LaussenLabs/atriumdb.git@e860b30cfb93a2a290ac120c1c09a2af7806fb2b).

In the future if I make a PR that depends on pre-released features, I'll be sure to use syntax like this so its available for everyone automatically.

tompollard commented 1 week ago

thanks will!