Conversation
Use uv to pip compile (freeze) dependencies. Fixes: google#266
Summary of ChangesHello @wsxrdv, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly refactors the project's Python dependency management system. It replaces the previous Highlights
Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request transitions the project's dependency management from pip-tools to uv, and introduces platform-specific requirement files. This is a great improvement for managing dependencies across different operating systems. The changes are well-structured, including updates to documentation and CI configuration. I have a few suggestions to improve the new scripts for better maintainability and robustness.
reyammer
left a comment
There was a problem hiding this comment.
It seems that uv would solve many of the problems you are dealing with here. But if you really need to play with pip requirements for some reason, LGTM, I don't know better ways...
| # requirements.txt changes. The pinned versions in requirements.txt are | ||
| # tested by coverage since that is running on ubuntu which is also used | ||
| # to produce the main requirements.txt file. | ||
| - name: Find out Python version |
There was a problem hiding this comment.
all this seems a reimplementation of what uv (or pip itself) should do. uv.lock (same for poetry) already contains all pins for all requirements for all supported architectures / python versions. I guess you need to keep all the requirements for all the combinations of OS/python version because of limitations of the pip requirements format... I'd take this opportunity to ditch pip, this seems a nightmare to properly maintain :-)
Use uv to pip compile (freeze) dependencies.
Fixes: #266