This PR aims to get the lint, ci, and codeql workflows working properly. To do so, it was necessary to introduce logic into devtools/conda-envs/test_env.yaml that says if python 3.9 is being used, enforce jax and jaxlib <= 0.4.28. This is because jax above that version contains str | None type operations, which aren't supported below python 3.10.
Python 3.8 doesn't encounter this issue because it defaults to a jax version way older (~0.4.14) which doesn't contain those type operations (Instead, depending on the version, it will use Optional[str] or simply None as the type hint).
@slochower @jeff231li if either of you have time in the near future, could you please review this PR? I want to get tests up and running before I make a new release.
This PR aims to get the lint, ci, and codeql workflows working properly. To do so, it was necessary to introduce logic into
devtools/conda-envs/test_env.yaml
that says if python 3.9 is being used, enforce jax and jaxlib <= 0.4.28. This is because jax above that version containsstr | None
type operations, which aren't supported below python 3.10.Python 3.8 doesn't encounter this issue because it defaults to a jax version way older (~0.4.14) which doesn't contain those type operations (Instead, depending on the version, it will use
Optional[str]
or simplyNone
as the type hint).One small thing I noticed while making these changes: https://github.com/GilsonLabUCSD/pAPRika/blob/688cc2c19bb88070e4e9f98aa8e23c92817afb57/setup.py#L37 Is including numpy here necessary? Commenting out this line doesn't cause errors for me.