chore: added pyproject.toml
I'm only just trying to understand these now, so not sure how to check this is correct. Feel free to edit/suggest changes.
My main aim here is to iteratively build repo foundations (both adept and lagradept) to make dev work smoother in particular linting with mandatory pre-commit hooks. I am doing this step by step to make review process simpler.
The only thing I'm not sure about is how to enforce that cpu/gpu is selected, it might be better to have jax in core dependencies and have the cpu requirements empty.
Also should we add validate-pyproject into CI?
The only thing I'm not sure about is how to enforce that
cpu/gpuis selected, it might be better to havejaxin core dependencies and have thecpurequirements empty.
I think the correct version is chosen if you do pip install adept[cpu] vs pip install .[gpu]. Does that answer your question? Either way, feel free to do what you think is best. There is no purpose for this file right now besides whatever it is you need it for!
Also should we add
validate-pyprojectinto CI?
I have no idea what this is! Your call
What I mean is should it throw an error when we run install pip install adept or should this just default to be the equivalent to pip install adept[cpu]. I think I'll go with the latter which is what Jax does.
yes that sounds reasonable
All good, feel free to hit squash and merge 🙂
Actually, need to update the file to match your new requirements will see if I have time tonight but feel free to do it on your side if you like.
Done, if we set up uv in the future, syncing all our various requirements files with pre-commit hooks becomes a lot simpler/actually possible!