Allow rules_rs to use cc_common.link#705
Open
dzbarsky wants to merge 1 commit intobazelbuild:mainfrom
Open
Conversation
803d44e to
3ac207c
Compare
Member
|
FWIW for specific API that feel very stable I think we should remove them from the check. But I ofc also agree that this list is pretty aggressive. especially now that you can easily patch them out |
Contributor
Author
Yes, I'm also +1 on stabilizing APIs, but for the benefit of Google folks who may not be super familiar with open-source Bazel I want to point out that only end users can patch this list, anyone publishing code consumed by others is unable to apply patches transparently, which is a huge pain point for other language rulesets, toolchains, etc :) |
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.
rules_rs is an alternative Rust ruleset that is gaining adoption within the OS community. This change allows it to link against a cc_library using
linkstamp, just likerules_rustis allowed to.As an aside, this allowlist mechanism feels pretty unfortunate. It explicitly privileges Google rulesets and is mostly internal-only. I suspect the compile actions list may not even work if crubit is consumed as a bazel module instead of vendored into the repo like Google does? In addition, the entire open-source world pays the cost for these allowlist checks. Even after @fmeum 's optimizations in bazelbuild/bazel#28173 and bazelbuild/bazel#28178 they are non-0 cost. Perhaps these can be implemented as static analysis checks within Google instead of the entire world paying runtime cost?