-
Notifications
You must be signed in to change notification settings - Fork 40
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 python wheels and upload to pypi #371
Conversation
👷 Deploy request for squawkhq pending review.Visit the deploys page to approve it
|
42cbc91
to
7e6c42a
Compare
7f8c91c
to
2bbfd13
Compare
Hi @ods, I came across your repository where you are already building Python packages: squawk-cli-python-package. Thank you for your work on this! What do you think about moving the build process to this repository, publishing it to your PyPI squawk-cli, and transferring the rights to @sbdchd and @chdsbd? |
Hi @ermakov-oleg,
It would be the best option! |
Great! Now we just need to figure out the build process for the Linux aarch64 package. |
867700b
to
8ecbb5f
Compare
I’m not very experienced in this, but as far as I understand, when selecting a target different from the current system, the entire necessary toolchain for the specific platform is downloaded, and bindgen sets the sysroot path to the header files of that platform from this toolchain |
A cold build under QEMU takes about 40 minutes, and with caching (sccache), around 20 minutes. I had to update the Rust version to start using the sparse index in Cargo, otherwise, the crates.io index update would hang indefinitely. |
I'm neither experienced. What I saw so far, this works perfectly for pure rust code, but not for FFI. Also, I saw maturin docs suggest to use zig for cross-compilation in such cases. |
Thanks for the idea! |
@sbdchd I’ve finished building the Python wheels for all major platforms. Could you please review this PR? |
I hope you’re doing well! I just wanted to kindly check in on the status of this pull request. I’ve finished the work on building the Python wheels and would love to hear your thoughts on the feature. Do you think there might be some time in the near future for a code review? Thank you in advance! |
Is the PR description still accurate, specifically:
otherwise looks good, thank you for doing this, lot of hard work!! |
Yes, I was able to resolve the issue with the aarch64 build. The package now builds correctly for all major platforms, including Linux aarch64. The description is outdated — everything is working fine now. |
Hi! When is the release planned? |
I'm pushed a new version but I think we need to figure out authentication |
@ods I think since you own squawk-cli, you'd need to either transfer the project, add @sbdchd and myself as collaborators, or configure https://docs.pypi.org/trusted-publishers/adding-a-publisher/ so we can publish via OpenID Connect |
@ermakov-oleg, is ermakov the correct user? I'm planning to also add you as a maintainer, so that you can help with setting it up. |
Yeah, it's me. |
@ods I use |
Added. Feel free removing me after successful publishing. |
I finally got publishing working, so 1.2.0 is on pypi |
Excellent! Is there a change this way of installation being mentioned in the docs? |
Hi @chdsbd,
I have started working on issue #261 and have successfully built Python packages for macOS, Windows, and Linux (x86_64).
However, I’m encountering issues building libpg_query-sys for Linux aarch64. Could you please assist me with this?
Thanks!