-
-
Notifications
You must be signed in to change notification settings - Fork 631
fix(toolchains): add musl list of freethreaded runtimes (workspace) #3310
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
Conversation
Summary of ChangesHello @rickeylev, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses a regression where the 'musl' platform was no longer correctly identified for generating freethreaded Python runtimes with specific optimization flags. By reintroducing the 'musl' entry, it restores proper build configurations for 'musl'-based Linux systems, ensuring compatibility and optimized performance. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
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.
Code Review
This pull request addresses an issue where the musl
entry was missing for freethreaded runtimes. The change correctly adds x86_64-unknown-linux-musl
to the platform dictionary. The placement of the new entry maintains the existing alphabetical order of the keys. The fix is straightforward and appears correct. I have no further suggestions.
While creating tests for this, I noticed some weird things with toolchain registration. I think there's a bug in the order that python_register_toolchains() registers things for workspace and in the toolchain constraints, the net effect being you can never match the musl or freethreaded toolchains (I think Yulia filed a bug for this, too). I think this fix also only affects workspace -- bzlmod is using what's in MODULE.bazel, which I think is also omitting musl. I don't see a musl-freethreaded toolchain showing up there |
Ahh, I think I see -- we don't have a musl-freethreaded build built into our versions.bzl file. There are such builds available. JAX must be patching versions.bzl and adding such an entry themselves (or equivalent). Ugh, versions.bzl is such a mess. |
The musl entry got lost as part of a refactoring. Add it back to the platforms
that generate freethreaded variants.
Fixes #3286