-
Notifications
You must be signed in to change notification settings - Fork 8
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
Prefix and filter command line options with rapidsai.
#37
Prefix and filter command line options with rapidsai.
#37
Conversation
Some build backends, like scikit-build-core, get confused if you pass them options that they don't recognize. Filter out RAPIDS' config options from getting to the build backend, and prefix them with `rapidsai.` to make the filtering easier.
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 for the context, I support this general idea.
I've noticed that scikit-build-core
does not do this... at https://scikit-build-core.readthedocs.io/en/latest/configuration.html I see --config-settings=--config-settings=install.strip=false
.
But it makes sense to me that projects like rapids-build-backend
that sit in front of another build backend should namespace all their configuration this way... I like it!
Would you consider rapids.*
instead of rapidsai.*
? I think that's enough to pretty significantly reduce the risk of clashes with other build backends, and I don't think the "AI" is adding any information there. I hold that opinion very lightly, so if you don't find that convincing then I'm fine with leaving it as-is.
Happy to let James take point on reviewing, just dropping in to say that I definitely support this.
There isn't really any precedent for this kind of backend adapter yet. I've seen it discussed once or twice by implementers of other backends, but not really in any concrete way. So we should feel comfortable defining best practices and conventions in this space as needed. We won't get much from looking for parallels in well-known preexisting build backends when it comes to this kind of issue that's specific to wrapping. |
Interesting... at https://pypi.org/project/scikit-build-core/ I see:
And the |
I used |
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.
Ok thanks for considering the suggestions, I have no other comments.
And thanks for the links about scikit-build-core
, maybe the skbuild.*
prefix didn't make it all the way through their docs whenever it was added. They might like a PR unifying those.
Ah right, I forgot they added namespacing support. It's in scikit-build/scikit-build-core#556. Yeah, I'm sure Henry would be happy with a PR updating the docs if you'd like to make one. The namespace is optional, so the docs would need to reflect that. |
I've opened scikit-build/scikit-build-core#754. |
By the way, you can turn off checking for unused options with |
@henryiii Thanks for the advice. I think we'll stick with prefixing and filtering our options with |
Some build backends, like
scikit-build-core
, get confused if you pass them options that they don't recognize. Filter out RAPIDS' config options from getting to the build backend, and prefix them withrapidsai.
to make the filtering easier.