-
Notifications
You must be signed in to change notification settings - Fork 4k
Migrate to pip only and drop pipenv #6265
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
keras<2.5.0 is resolved to keras==2.4.3 and tensorflow==2.6.0 requires keras~=2.6 so this requirement is invalid and always causes conflicts. We should add support for new versions of libraries, but this is only used by the st.cache decorator, which is deprecated and we have no plans to update it.
Previously this worked because we used the legacy resolver in pip, but it's not a good practice to use this as it may break other dependencies as well.
In other words, the command pip install 'keras<2.5.0' 'tensorflow>=2.6.0, <2.8.0' always fails now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should get rid of the old cache decorator, point users to the new one instead and fix our dependencies 👍
03d2607 to
b1ad481
Compare
6632dcb to
8963237
Compare
022a3b7 to
8b5ea08
Compare
8963237 to
ea326a9
Compare
8e57404 to
69381b8
Compare
ea326a9 to
f8415bb
Compare
tconkling
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great, thanks @sfc-gh-kbregula!
Makefile
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: can we name this something like "INSTALL_DEV_REQS" and "INSTALL_TEST_REQS", for clarity?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
kmcgrady
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving this based on @tconkling's approval.
Next steps would be to update the Contributing Wiki Page
|
@kmcgrady Docs updated. |
9e3388d to
7a642c4
Compare
978dcfb to
0d9e250
Compare
|
I've managed to convince |
|
Cool. It's okay to merge. |
📚 Context
Continuation of work:
#6234
I previously dealt with generating constraints files on our CI. This is blocked for now as we wait for the security team to confirm that we can keep the files in the repository.
I have already started working further and see that these files do not work properly with the latest version of pip because there are dependency conflicts, as we install some dependencies using the old unsupported pip resolver, other dependencies are installed through the new resolver, and some other dependencies are installed through
pipenv.To solve this problem, I unified the installation of our dependencies. Now we only use
pipwith new resolver.This will unlock my next contribution to install dependencies with constraints files in the PR build.
Please describe the project or issue background here
What kind of change does this PR introduce?
🧠 Description of Changes
Add bullet points summarizing your changes here
Revised:
Insert screenshot of your updated UI/code here
Current:
Insert screenshot of existing UI/code here
🧪 Testing Done
🌐 References
Does this depend on other work, documents, or tickets?
Contribution License Agreement
By submitting this pull request you agree that all contributions to this project are made under the Apache 2.0 license.