-
-
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
Freud 2.10.0 release with macos-arm64
builds.
#48
Freud 2.10.0 release with macos-arm64
builds.
#48
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 ( |
ppc64le builds are failing without any log. |
…nda-forge-pinning 2022.05.18.07.20.58
macos-arm64
builds.
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 @joaander for your hard work on this!
# Filter CMAKE_PREFIX_PATH out of CMAKE_ARGS because scikit-build needs to set it | ||
export SKBUILD_CONFIGURE_OPTIONS=$(echo $CMAKE_ARGS | sed -e 's/\-DCMAKE_INSTALL_PREFIX\=[^ ]* //g') | ||
|
||
# work around a bug in conda-forge where the installed cython gets an invalid #! line: "#!$BUILD_PREFIX/bin/python" |
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 this a bug that needs to be filed to the conda-forge Cython feedstock, or the upstream Cython? If so, can we file that and cross-link it here?
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 find it very challenging to debug issues with prefixes in the conda-forge build as there appears to be some sort of output processor that converts /path/to/conda-env/placeholder/placeholder/...
to $PREFIX in the display. For example, echo $PREFIX
always outputs $PREFIX
. Thus, in tests that cat cython
for example, I can't tell whether there is really a literal $PREFIX
in the file, or the actual absolute path.
In the case of cython, the behavior I get without the patch is consistent with a literal $PREFIX
existing in the file. I do not know what stage of the conda build and/or install process puts this here, so I wouldn't know where to submit an upstream bug.
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.
Specifically, I don't know whether this is caused in upstream cython, in the cython conda-forge feedstock, in conda's installation relocation mechanism, in the conda-forge docker build scripts, or in some combination of the above.
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.
Yeah this process is difficult to debug. I don't think the problem can be in upstream Cython, and I think the relocation is the most likely culprit, but I don't know how to verify that it's not any other part of the conda process without spending a lot more time searching. The feedstock looks correct to me, and when I download builds the directory is set correctly in the console entry point script, but that just means that there are lots of situations where they aren't currently running into this problem. If we get a chance later we can try to follow up, but I'm fine with getting this merged to unblock freud wheels.
For reference, the pip bug is discussed in pypa/pip#11116 and conda-forge/mdanalysis-feedstock#42. Once pip releases a fix we can update the version specification accordingly. Vyas, I had to remove the tests because they are not included in the source tarball provided on pypi and there is no alternate source tarball. When such tests are added, we can uncomment the pytest line again. But for the moment we will be publishing untested binaries. |
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.
Looks good!
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 looks good to me, though this is outside my general software knowledge.
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'm good with moving forward here. We can do cleanup and add tests later if we're able to resolve the underlying Cython issues and get tests into our tarballs.
@@ -0,0 +1,28 @@ | |||
export VERBOSE=1 |
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 want compilation to always be verbose?
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 adds a moderate amount to the log size, but provides useful debugging information if the builds ever break in the future. That makes one less step to debugging a broken build.
Checklist
0
(if the version changed)conda-smithy
(Use the phrase@conda-forge-admin, please rerender
in a comment in this PR for automated rerendering)This is another attempt to see if the scikit-build cross-compilation for macos-arm64 works any better.