Open dlyongemallo opened 1 year ago
sympy
can be removed from the requirements, since we elected to use a custom lightweight framework to handle variables in expressions.
Can we specify in pyproject.toml
requirements for both deployment and development?
Can we specify in
pyproject.toml
requirements for both deployment and development?
I believe the answer is "yes", but it depends on how you want to deploy the library and/or app.
Because PyPI doesn't allow any requirements that have to refer to github, we can only have pyproject.toml contain the requirements for deployment. Requirements for development will be specified in requirements.txt
I think the spec for the executable relies on requirements.txt
though, unless that's changed since I last looked at it.
Right now, there are two sets of requirements, one in
requirements.txt
and one inpyproject.toml
. I think probably the former should be deprecated in favour of the latter, which is more expressive. Either way, they should be merged.The requirements as currently stated are development requirements (as they include required packages for testing, linting, and typing). For creating an executable (see #158), it's necessary to identify the minimum set of deployment requirements, to make the resulting executable as small as possible. There's obviously no reason to include typing stubs or testing frameworks into the deployed executable.
(Also, I noticed that
sympy
is stated as a requirement but isn't used anywhere. Is it intended to be used in the future, or can it be removed from the requirements?)