installing dm-tree requires bazel on py3.8
joaogui1 opened this issue · 8 comments
Right now it seems one needs bazel to install haiku (even using pip)
tycai:~/src$ python3 -m venv tmp && cd tmp/ && source bin/activate
tycai:~/src/tmp$ which bazel
tycai:~/src/tmp$ pip install --upgrade pip
# some output
tycai:~/src/tmp$ pip install jax jaxlib git+https://github.com/deepmind/dm-haiku
# more output
tycai:~/src/tmp$ python
Python 3.7.7 (default, Mar 10 2020, 13:18:53)
[GCC 9.2.1 20191109] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import haiku as hk
>>> import jax
>>> import numpy as np
>>> hk.transform(lambda x: hk.Linear(2)(x)).init(jax.random.PRNGKey(428), np.ones((8, 3)))
# some warnings
frozendict({
'linear': frozendict({
'b': DeviceArray([0., 0.], dtype=float32),
'w': DeviceArray([[-0.74963224, 0.05108356],
[-0.64863616, -0.96099967],
[ 0.69329786, 0.10406391]], dtype=float32),
}),
})
This looks fine to me. More generally, Haiku is pure-Python, so I'm skeptical that bazel is required if you can install JAX. Can you provide more details?
Frankly, yesterday it told me to download bazel and after doing that it installed, but today it doesn't seem to be asking for that. I'm not sure what happened and I'm sorry for opening an issue without more investigation
@trevorcai I am also running into an issue with bazel
dependency related to the dm-tree
requirement.
Okay so this installs fine on python 3.7 but on python 3.8 fails with the bazel
dependency installing dm-tree
@superbobry Mind taking a look at dm-tree on py3.8?
Thanks @jessebett for getting more info on the issue
I see the issue, we're not providing prebuilt wheels for Py3.8+ to PyPI so they're running setup.py on your machine. I'll raise internally to add Py3.8 wheels to Haiku/Sonnet/dm-tree/...