Tweaks to better support use of uv#1705
Conversation
- Change how license details are given (previous way was deprecated) - Use version_file instead of write_to for setuptools_scm (write_to is deprecated) - Move the test, docs, and dev optional dependencies to be dependency groups instead (assuming that those dependencies are not intended for users to install) - Added matplotlib to the test dependency group (it's used in some of the tests)
…t let one specify dependency groups to include
There was a problem hiding this comment.
Hi @gavinmacaulay, that’s great, thank you! I tested it and managed to create my environment, and it was quicker than using conda, so i think we’re ready to merge! The only thing is that it would be nice to update the development installation documentation (https://github.com/echostack-org/echopype/blob/main/docs/source/contrib_setup.md) to reflect the changes to pyproject.toml and add the uv setup? could you add that to this PR?
EDIT: after running uv sync i had an untracked uv.lock. Should we commit it or add to .gitignore if we don’t intend to track it?
should we also put forward uv as the recommended installation method for development? @leewujung what do you think? We would still leave Conda as an option ofc, as it still works with the changes to pyproject.toml. cheers!
|
Closes #1449 |
|
I'll add uv instructions to the docs in the next day or so. I think the |
|
Forgot to reply to your uv.lock question - yes, that should be in git. I left it out because it sets the versions of all the dependencies to use in the virtual environment that uv creates and hence what people end up using when developing echopype and that wasn't a choice I should be making 😄 |
|
ok nice! we'll be sitting down with @leewujung and @ctuguinay on Tuesday, and we can discuss those points then! cheers! :) |
|
Uv-specific docs added in f1090c6. Having the docs explain both conda and uv makes it a bit complicated to follow without doing a larger reorganisation of the relevant doc pages. I'm also a little unclear on whether the testing scripts in .ci_helpers are necessary or if everything can be made to work just by running pytest. |
Minor adjustments that help when using uv instead of conda/pip:
uv build, there are otherwise extras in the package for test, docs, and dev)uv run --group test pytest, pytest wasn't finding matplotlib because it's not an echopype dependency)