-
Notifications
You must be signed in to change notification settings - Fork 60
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
Do not depends on unused libraries for libtiff #785
Do not depends on unused libraries for libtiff #785
Conversation
3ac5a54
to
58f183a
Compare
Thanks Gigon! 🙏 Can we please drop these as well? cucim/conda/recipes/libcucim/meta.yaml Lines 77 to 78 in 6e3fd31
cucim/conda/recipes/libcucim/meta.yaml Lines 95 to 98 in 6e3fd31
cucim/conda/recipes/libcucim/meta.yaml Lines 81 to 83 in 6e3fd31
|
Thanks @jakirkham! |
58f183a
to
c108199
Compare
conda/recipes/libcucim/meta.yaml
Outdated
@@ -92,10 +87,6 @@ requirements: | |||
- libnvjpeg | |||
{% endif %} | |||
- {{ pin_compatible('libwebp-base', max_pin='x.x') }} |
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.
As we dropped libwebp-base
above, this can also be dropped
- {{ pin_compatible('libwebp-base', max_pin='x.x') }} |
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.
Thanks @jakirkham !
Also removed the other line containing libwebp-base
in the same file.
Signed-off-by: Gigon Bae <[email protected]>
c108199
to
303981a
Compare
Thanks Gigon! 🙏 Are we able to use the Conda |
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.
I found one reference in docs that should be updated (xz
and zlib
should be removed from it):
Line 126 in 6e3fd31
Otherwise, you may need to install dependencies (such as zlib, xz, yasm) through your OS's package manager (`apt`, `yum`, and so on). |
Otherwise, this looks good to me!
I won't merge this until you and @jakirkham come to some agreement on whether to go further and directly depend on conda-forge's libtiff
(#785 (comment)). My perspective on that... it should be documented in an issue as a potential follow-up and not done here. I expect it'd take some fairly-involved design work to answer questions like:
- what is the ongoing amount of effort to require the source build of libtiff?
- how do wheels get their libtiff dependency?
- does the set of codecs supported by the conda-forge package include everything cucim needs? Are we ok with it pulling in more, unnecessary things (for example, it does depend on libwebp, xz, and zstd)
Signed-off-by: Gigon Bae <[email protected]>
@jameslamb could you please take another look? 🙂 |
Discussed this point with Gigon earlier, we decided to leave this task for PR ( #753 ), which is already doing that work |
Thanks @jameslamb for your thoughtful comments! Removed the wording 'xz' and 'zlib' in CONTRIBUTING.md file. Regarding 'directly depend on conda-forge's
I will continue working on it to use conda-forge's libraries, including
In the current implementation, the source code of libtiff is built as a static library and linked to
I'm not entirely sure about that. Let me consider those aspects as I continue to work on #753. Thanks! |
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.
Re-reviewed, this looks good to me and I supported merging it. Thanks for considering my questions about libtiff
, I'm glad that won't be part of the scope for this PR.
/merge |
Thanks Gigon and James! 🙏 |
Libraries such as jbig, libwebp-base, and zlib are not used for the functionality of cuCIM.
These codec libraries are linked to libtiff only when available at build time.
This patch explicitly disables external codecs and removes unnecessary dependencies from the
dependencies.yaml
.With this patch, I can confirm that they are not requested at all.