chore: Change dev workflow to use uv (and pixi) both for lock and install#4166
Merged
jeremyary merged 3 commits intofeast-dev:masterfrom May 8, 2024
Merged
chore: Change dev workflow to use uv (and pixi) both for lock and install#4166jeremyary merged 3 commits intofeast-dev:masterfrom
jeremyary merged 3 commits intofeast-dev:masterfrom
Conversation
| 7. (Optional) install pixi | ||
| pixi is necessary to run step 8 for all python versions at once. | ||
| ```sh | ||
| brew install mysql |
Collaborator
Author
There was a problem hiding this comment.
This was necessary for mysqlclient which was removed in #3925. pymysql doesn't require any native dependencies.
|
|
||
| This will allow the installed feast version to automatically reflect changes to your local development version of Feast without needing to reinstall everytime you make code changes. | ||
|
|
||
| 10. Compile the protubufs |
Member
There was a problem hiding this comment.
Do we no longer need the compile the protos? if someone makes a Message change we will, no?
Collaborator
Author
There was a problem hiding this comment.
We do, it's just part of the make install-python-ci-dependencies-uv already
| This will allow the installed feast version to automatically reflect changes to your local development version of Feast without needing to reinstall everytime you make code changes. | ||
|
|
||
| 10. Compile the protubufs | ||
| make lock-python-dependencies-all |
Signed-off-by: tokoko <[email protected]>
Signed-off-by: tokoko <[email protected]>
Signed-off-by: tokoko <[email protected]>
jeremyary
approved these changes
May 8, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
This PR makes a number of changes to the make commands and dev guide:
uvfor setting up local development. I changed env install step (step 9) to runmake install-python-ci-dependencies-uv, which differs from the current version in 2 ways: 1) It's using uv instead of pip 2) It's installing package versions from the lock file rather than resolving versions from pypi. This will make local env more predictable and comparable to ci environment which uses the same make command. (Let me know if you disagree with this...)lock-pythoncommands to use uv instead of pip-tools. dev guide now recommends the usage oflock-python-dependencies-allcommand to update lock files. This command relies on uv and pixi to update lock files for all python versions. (if you want to avoid pixi dependency, you can still run individual commands for each python env) Note that it's important that we all switch to using uv for lock file updates as lock files generated aren't 100% identical to pip-tools generates files in terms of formatting. (see diffs in this PR for an example, the biggest difference is that uv doesn't addfeast (setup.py)comment in the files) If some people still keep using pip-tools and others switch to uv for locking, we will generate unnecessary formatting diffs in lock files.