USEPA / harmonize-wq

Standardize, clean, and wrangle Water Quality Portal data into more analytic-ready formats
https://usepa.github.io/harmonize-wq/
MIT License
12 stars 4 forks source link

Review RC [feature]: use automated tool for requirements #65

Closed rcaneill closed 1 week ago

rcaneill commented 2 months ago

I see that they are no automated tool that handles the requirements for installing a clean dev environment. Options that I am aware of are:

I can help with poetry if you wish so. If you never heard of these tools, I can also explain a little more what they do. I believe that using one of these tools would also make #63 easier to handle.

jbousquin commented 2 weeks ago

The current dev installation should be working w/ conda/pipenv. Handling or requiring envs of a certain flavor is outside the scope of this package.

rcaneill commented 1 week ago

This will not be an issue for the review, but I’ll be happy if you could elaborate on why you don’t think that using an environment manager is out of scope? Using e.g. poetry would only imply minor changes to the pyproject file, with the benefit of having also an environment for developers that is locked and controlled, and so is reproducible. This can be helpful for users who want to rerun the tests in the same environment they were tested.

jbousquin commented 1 week ago

We've used conda and pyenv without issue (sometimes requires an extra line of code, e.g., without the environment.yml). If someone wants to use an additional env management tool power to them - but to add support for one means adding maintenance burden. The suggested approach is to run tests via github actions, avoiding 'it ran on my computer' issues with tests and taking burden off contributors.

rcaneill commented 1 week ago

makes sense, thanks for answering