-
Notifications
You must be signed in to change notification settings - Fork 10
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 wheels for 7.7.0 #7
Conversation
@fpq473 Is this going to run into the same glibc versioning problem that we have with 7.6.*? |
And just FTR, here are the 7.6.3a0 wheels released last October: https://pypi.org/project/cadquery-ocp/7.6.3a0/#files It's an alpha release (matching the conda package), so the PyPI page still says 7.5.3.0. |
I've tried building a final 7.6.3.0 release before merging this, but things aren't working again. https://github.com/CadQuery/ocp-build-system/actions/runs/3884118392/jobs/6626257305#step:8:98879 |
I committed some fixes to try to get 7.6.3.0 to build. But there is still one problem which you might know how to fix: the conda install command is installing 7.6.3.alpha from the cadquery channel instead of 7.6.3.0 from conda-forge. I already tried 2102e5d but it seemingly had no effect. |
Okay, I managed to get 7.6.3.0 to install. But now there are glibc versioning problems like you noted. I'll think about it. |
@fpq473 Thanks. I think the proper way to fix this kind of problem and to support other platforms like ARM properly, is to do from-scratch compilation of the toolchain (VTK, OCCT, OCP, etc) so we have more control over the glibc version. It's very involved to build everything from scratch though. |
I did some debugging. The workflow logs say:
This requirement is coming from
This is specific to the 7.6.3.0 package on conda-forge. The 7.6.3.alpha and 7.7.0.alpha packages on the cadquery channel do not have this problem. So there is some difference in how these packages are compiled (but not sure how/where these builds are done). Should we (1) try to identify the differences, or (2) just build and release 7.7.0.alpha, or (3) throw in the towel? |
Fourth option: release 7.6.3.0 as a manylinux_2_34 wheel. This requires newer distros, e.g. fedora 35, ubuntu 21.10, debian testing. |
It looks like all the OCP builds, even the OCCT 7.7 ones are using Ubuntu 18.04, so the system's glibc version shouldn't be the problem. It must be something with how conda is solving and setting up the environments. https://dev.azure.com/cadquery/OCP/_build/results?buildId=2552&view=results Maybe the best thing to do is your option #4 first, followed by a build and release of 7.7 alpha. What do you think @fpq473 ? |
We can do (4) but after additional reflection, it seems like a potential pain point to support -- when users are unable to install cadquery-ocp, it may be because they didn't say I can try to test your theory by comparing build logs, but I can't find the 7.6.3.0 build log. Can you? The 7.6.3.0 files were uploaded to conda-forge around Dec 30. The Azure pipeline runs you linked to go back to September, but none of them appear to be for 7.6.3.0 -- all the December runs are titled "Start with 7.7.0". |
The latest commit I see on master for 7.6.3 is Sept. https://github.com/CadQuery/OCP/commits/master The latest release is the 7.6.3.0 tag on Nov 23rd. I don't see any Azure logs for that tag, but that tag points back to the September commit for 7.6.3, which does have logs. |
@jmwright Are you still referring to the Azure builds? None of them are for 7.6.3.0, as far as I can tell. The log output indicates that 7.7.0.alpha or 7.6.3.alpha are being built. Also I see that this line https://github.com/CadQuery/OCP/blame/2cb2dba8674c58d6ede38fd27619a09e850856e8/conda/meta.yaml#L2 Is it possible the upload was done as a one-off elsewhere? |
@fpq473 Unless you object, I'm going to do the following.
|
@jmwright Sounds like a plan! |
I see 7.6.3 on pypi, awesome, nicely done. Do you want to release 7.7.0.alpha now, or just a straight up 7.7.0? |
Let's do an alpha first just to be safe. |
- VTK manylinux wheels are now available on PyPI for 3.10, so remove use of third-party wheel. - Move version wrangling into setup.py to prepare for "7.7.0" release
@jmwright I updated this PR for 7.7.0.alpha. Also tried to centralize the version wrangling. Tested on 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.
Thanks @fpq473 ! Let's see how it works.
@fpq473 Looks like there's a version conflict. https://github.com/CadQuery/ocp-build-system/actions/runs/3954442641/jobs/6771785613#step:5:56 |
Match latest versions of
ocp
andvtk
conda packages.VTK manylinux wheels are now available on PyPI for
3.10, so remove use of third-party wheel.