Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

differentiate between deployment and development requirements #163

Open
dlyongemallo opened this issue Nov 2, 2023 · 4 comments
Open

differentiate between deployment and development requirements #163

dlyongemallo opened this issue Nov 2, 2023 · 4 comments
Labels
Priority: Low Type: code organisation and standards Issue deals with how the code is structured or written

Comments

@dlyongemallo
Copy link
Contributor

Right now, there are two sets of requirements, one in requirements.txt and one in pyproject.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?)

@jvdwetering
Copy link
Collaborator

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?

dlyongemallo added a commit to dlyongemallo/zxlive that referenced this issue Nov 9, 2023
@dlyongemallo
Copy link
Contributor Author

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.

@jvdwetering jvdwetering added the Type: code organisation and standards Issue deals with how the code is structured or written label Nov 27, 2023
@jvdwetering
Copy link
Collaborator

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

@dlyongemallo
Copy link
Contributor Author

I think the spec for the executable relies on requirements.txt though, unless that's changed since I last looked at it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority: Low Type: code organisation and standards Issue deals with how the code is structured or written
Projects
None yet
Development

No branches or pull requests

3 participants