hamilton icon indicating copy to clipboard operation
hamilton copied to clipboard

chore: Remove numpy dependency

Open zilto opened this issue 8 months ago • 2 comments

You can use Hamilton without numpy so there's no reason to have it as a dependency.

By searching numpy in hamilton/**.py, there are 3 results:

  • hamilton/base.py where NumpyMatrixResult is defined. This could be moved to the hamilton/plugins/h_numpy.py. We would need to solve the import pattern.
  • hamilton/telemetry.py there's a check for the base.NumpyMatrixBuilder. We can probably just remove or stitch with the above change?
  • hamilton/log_setup.py where np.seterr is used to ignore some numpy error. This should be safe to delete?

By searchin numpy in tests/**.py there are more results. Numpy is used to test the 3 previous elements, but also as an input for certain tests and for @check_output stuff.

  • The easy fix is to keep numpy in the test dependencies.
  • We could move certain tests to tests/plugins/test_h_numpy.py

Also, we would have to make sure that the examples have an explicit dependency on numpy if they are using it.

zilto avatar May 27 '24 00:05 zilto