-
Notifications
You must be signed in to change notification settings - Fork 26
Description
We will not see this error in the default checkout when running on Tiger. However, because we are targeting a release for other people to use, including other developers, we need to take care about injecting dependencies deep in the code that are not consistent with high level structures, configuration and goals.
For instance, if user does not have one of our three nufft packages, it should not totally break the ability to even run our unit tests, no matter how strongly we feel about a particular package being "the one", or working for me. That is not the nature of usable software, which is what we are trying to work towards. This is particularly true when effort has been spent constructing working solutions to a problem. This point is also supported by the fact that the package it breaks on is not totally portable, and so we can not at this time assume it will work for users out of the box. This is why there are options and the class abstraction...
While I made this point during review process to no avail, I was very actually saddened to see such an error already within only two days.
For now I will workaround, but this change we smashed in the day before an event only adds to the complication of supporting users. I hope we can learn from it.
(aspire_scratch) ➜ ASPIRE-Python git:(hackathon_2020) pytest tests |& tee -a ../tests.log
============================= test session starts ==============================
platform linux -- Python 3.6.10, pytest-5.4.2, py-1.8.1, pluggy-0.13.1
rootdir: /gpfs/wolf/gen137/scratch/gwright/ASPIRE-Python, inifile: pytest.ini
plugins: cov-2.9.0
collected 181 items / 1 error / 1 deselected / 179 selected
==================================== ERRORS ====================================
_________________ ERROR collecting tests/test_PolarBasis2D.py __________________
ImportError while importing test module '/gpfs/wolf/gen137/scratch/gwright/ASPIRE-Python/tests/test_PolarBasis2D.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
tests/test_PolarBasis2D.py:4: in <module>
from aspire.basis.polar_2d import PolarBasis2D
src/aspire/basis/polar_2d.py:3: in <module>
import finufftpy
E ModuleNotFoundError: No module named 'finufftpy'
=========================== short test summary info ============================
ERROR tests/test_PolarBasis2D.py
!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!
======================== 1 deselected, 1 error in 4.24s ========================