Skip to content
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 #171

Merged
merged 14 commits into from
Feb 4, 2025
Merged

Build python wheels #171

merged 14 commits into from
Feb 4, 2025

Conversation

amacneil
Copy link
Contributor

@amacneil amacneil commented Feb 2, 2025

Changelog

None

Docs

None

Description

Our upcoming python sdk uses maturin to depend on rust code. Most python users will want to install from wheels, containing the precompiled rust binaries.

This PR adds support for compiling wheels on 86 different operating systems and architectures.

Python jobs are moved to a separate workflow because ci.yml was getting out of hand. We could potentially separate the remaining ROS + Rust + TypeScript workflows into separate files in the future too.

@amacneil amacneil force-pushed the adrian/python-sdk-wheels branch from 4d7eeb8 to a7b50cb Compare February 2, 2025 22:29
@amacneil amacneil force-pushed the adrian/python-sdk-wheels branch from 1b3def0 to c5e8ebb Compare February 2, 2025 23:15
@amacneil amacneil force-pushed the adrian/python-sdk-wheels branch from ed91636 to 062178d Compare February 2, 2025 23:31
@amacneil amacneil force-pushed the adrian/python-sdk-wheels branch from 209c798 to 8211be3 Compare February 2, 2025 23:43
@amacneil amacneil changed the title Build wheels for Python SDK Build python wheels Feb 2, 2025
@amacneil amacneil force-pushed the adrian/python-sdk-wheels branch from 8211be3 to ce82c25 Compare February 2, 2025 23:45
@amacneil amacneil marked this pull request as ready for review February 3, 2025 00:09
@amacneil amacneil requested review from eloff, bryfox and gasmith February 3, 2025 16:14
@@ -30,6 +30,7 @@ fn compile_protos() {
));
}

/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this broken under CI?

Copy link
Contributor Author

@amacneil amacneil Feb 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TLDR yes - for examplearduino/setup-protoc doesn't support windows and official protoc binaries for windows are not available.

IMO we should remove protoc from the build step, but I didn't want to do that here. We can either commit the compiled protos to git (like we're doing with all other libraries in this repo), or even better we can remove proto serialization from the python sdk entirely and let rust handle it.

https://linear.app/foxglove/issue/FG-10358/spike-python-protobuf-serialization-in-rust

@amacneil amacneil merged commit 664a51b into main Feb 4, 2025
27 checks passed
@amacneil amacneil deleted the adrian/python-sdk-wheels branch February 4, 2025 00:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants