Merged
Conversation
14050eb to
e01e0b6
Compare
e01e0b6 to
8c2ae2a
Compare
bergundy
reviewed
Feb 13, 2023
| # a setup file, but we are using setuptools Rust manually in our build.py which | ||
| # needs a setup file. | ||
| # TODO(cretz): Find a way to not require a setup file since that is going away | ||
| # at some point in Poetry. Revisit Maturin or fine some other approach. |
Member
There was a problem hiding this comment.
Suggested change
| # at some point in Poetry. Revisit Maturin or fine some other approach. | |
| # at some point in Poetry. Revisit Maturin or find some other approach. |
bergundy
approved these changes
Feb 13, 2023
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What was changed
When originally developing Python SDK, we weren't able to lean on Maturin for our advanced use of PyO3 with Rust (details escape me currently) so we use setuptools-rust to build our wheels. In order to do this, we need to plugin to the traditional
setup.pyapproach that Python builds take which is why we told Poetry to use a build script that let us addsetup.pyextensions.Since the latest Poetry core release 3 weeks ago, this approach was turned off by default in python-poetry/poetry-core#318 and started failing our cibuildwheel binary builds because our Rust project wasn't being built anymore.
This PR opts back in to continued
setup.pygeneration. Unfortunately they'll probably remove this option altogether which means we'll either need to: 1) try to use Maturin, 2) find another way to use setuptools-rust, 3) add a build hook in Poetry to manually build extension, or 4) leave Poetry. But that decision is for a later time.