-
Notifications
You must be signed in to change notification settings - Fork 4
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
Add plugin system and local wheels support #91
Conversation
@@ -113,8 +136,8 @@ def make_root(variant: rez.packages.Variant, path: str) -> None: | |||
pkg.pip = { | |||
"name": dist.name, | |||
"version": dist.version, | |||
"is_pure_python": metadata["is_pure_python"], | |||
"wheel_url": wheelURL, | |||
"is_pure_python": isPure, |
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 annoys me. I don't think we really need this...
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.
What is annoying about it?
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.
It's kind of useless and getting the value of "is pure" is annoying. Do you think I should keep it?
5163f94
to
c7edc67
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #91 +/- ##
==========================================
+ Coverage 81.14% 90.00% +8.85%
==========================================
Files 8 13 +5
Lines 716 1050 +334
Branches 133 202 +69
==========================================
+ Hits 581 945 +364
+ Misses 121 68 -53
- Partials 14 37 +23 ☔ View full report in Codecov by Sentry. |
178c63c
to
f9b6577
Compare
f9b6577
to
e57ce92
Compare
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.
Left a couple questions/comments.
packages: typing.List[str], | ||
) -> None: | ||
pyside6Seen = False | ||
variantsSeens = [] |
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.
Should this just be variantsSeen
?
@@ -113,8 +136,8 @@ def make_root(variant: rez.packages.Variant, path: str) -> None: | |||
pkg.pip = { | |||
"name": dist.name, | |||
"version": dist.version, | |||
"is_pure_python": metadata["is_pure_python"], | |||
"wheel_url": wheelURL, | |||
"is_pure_python": isPure, |
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.
What is annoying about it?
cd5f530
to
27b6a5c
Compare
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
…e arguments are immutable The code is also a little bit cleaner IMO Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
…force immutability at runtime. Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
… positional arguments instead of kwargs Signed-off-by: Jean-Christophe Morin <[email protected]>
58e81fd
to
32dff3b
Compare
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
3cf2620
to
3e8939d
Compare
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
… is responsible of performing the actions Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
18cf87d
to
9349997
Compare
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Signed-off-by: Jean-Christophe Morin <[email protected]>
Fixes #64.
Add a new generic plugins system and builtin plugins. The glugin system is based on pluggy and has 5 hooks:
prePipResolve
,postPipResolve
,groupPackages
,cleanup
,patches
andmetadata
.The 2 builtin plugins are the PySide6 and shiboken6 plugins for correctly installing PySide6>=6.3. The plugins take care of merging all the PySide6 related packages (PySide6, PySide6-Addons and PySide6-Essentials) into one rez package.
🎉
This only works on Linux and macOS. On Windows, it works with Python 3.7 but not 3.8 and above. PySide6 on Windows makes use ofos.add_dll_directory
...Additionally, add support for installing local wheels. Considering that PySide is a big package, I needed that functionality to speed up the development of the plugin system.
TODOs:
Test on WindowsWrite testsCleanup the codeWrite docs (and automatically generate docs for builtin plugins).