apache / apache/hamilton

chore: Remove numpy dependency

Open
#918 3 comments 2 reactions 0 assignees View on GitHub
plugin refactor
Dominant language
Jupyter Notebook
Stars
2.6k
Forks
213
PR merge metrics
No merged PRs in 30d

Description

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.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.