-
-
Notifications
You must be signed in to change notification settings - Fork 43
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
Build with pinned llvm-openmp #265
Conversation
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( |
- llvm-openmp # [osx] | ||
- libgomp # [linux] |
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.
The same specifications are present in the build
section.
Should it be removed for the current on that you propose?
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.
@xhochy: why mustn't the specification line 28 and line 29 be removed?
Edit: they must be present in this section, see the reasons in the documentation.
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.
Yes! In the perfect world, they would suffice.
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.
Could we just add the desired pin in build
?
Should add I'm confused as to why the requirement in build
is not already aligned with the compiler, which it is installed next to
Edit: Maybe an example of the issue encountered would help. Is there one somewhere we can look at?
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 outlined the issue in conda-forge/openmp-feedstock#126 We actually install the desired pin in build
but due to conda-builds internal behaviour, the run_exports is still taken from host. Thus, I don't see a solution where we don't add anything to host.
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.
Ah ok. Thank you Uwe! Very helpful 🙂
Wrote up a reply there on what we could consider next: conda-forge/openmp-feedstock#126 (comment)
Agree this is the best we can do for now
in #241, we dropped these specifications in host because it should happen automatically. Has anything changed since then ? |
At least the outcome is that |
Something with the |
Running
|
It is either a |
I did remember this is not the first time I saw this issue on this feedstock: #177 |
Would you be OK with merging this? I hope I have sufficiently documented the reasoning/bugs. |
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.
LGTM. Thank you, @xhochy.
This documented workaround is sufficient to me.
I do not think we need to rebuild the previous versions.
I would wait for someone else's opinion before merging.
No, they are mostly open as the change was only recently reverted. FYI @jakirkham |
# See https://github.com/conda-forge/openmp-feedstock/issues/126 | ||
- llvm-openmp # [osx] | ||
- libgomp # [linux] |
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.
Do we need to do something like this (though maybe with tweaks) to better explicitly align versions between build
& host
?
# See https://github.com/conda-forge/openmp-feedstock/issues/126 | |
- llvm-openmp # [osx] | |
- libgomp # [linux] | |
# See https://github.com/conda-forge/openmp-feedstock/issues/126 | |
- llvm-openmp {{ llvm_openmp }} # [osx] | |
- libgomp {{ libgomp }} # [linux] |
Edit: This may need to be done with the compiler versions themselves
# See https://github.com/conda-forge/openmp-feedstock/issues/126 | |
- llvm-openmp # [osx] | |
- libgomp # [linux] | |
# See https://github.com/conda-forge/openmp-feedstock/issues/126 | |
- llvm-openmp {{ c_compiler_version }} # [osx] | |
- libgomp {{ c_compiler_version }} # [linux] |
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.
No, they are already pinned in .ci_support
:
scikit-learn-feedstock/.ci_support/osx_64_numpy2.0python3.11.____cpython.yaml
Lines 21 to 22 in 8bb0be3
llvm_openmp: | |
- '16' |
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.
Is that sufficiently pinned for our needs?
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.
Yes!
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.
Sorry. Asking because this is only the major version and wasn't sure if that is enough for the use case that you asked about. If it is, great!
Thanks Uwe and Julien! 🙏 |
This will allow people to use
scikit-learn
withllvm-openmp
versions as old as the compiler. This is useful in other conda-builds wherellvm-openmp
is pinned to the clang version.I did rerender locally, but no changes were produced.