-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Remove import-path guessing from ProtoCompileActionBuilder #10939
Closed
Closed
Changes from 16 commits
Commits
Show all changes
19 commits
Select commit
Hold shift + click to select a range
7ab5bd3
Remove import-path guessing from ProtoCompileActionBuilder
Yannic 5b175d8
Revert "Remove import-path guessing from ProtoCompileActionBuilder"
Yannic 3815f44
Merge remote-tracking branch 'origin/master' into proto_deterministic…
Yannic 6b645cf
Force creating generated protos in virtual source root
Yannic c5ab34b
Merge branch 'master' into proto_deterministic_import_path
Yannic fa18400
Revert "Force creating generated protos in virtual source root"
Yannic b457385
ProtoSource-based implementation
Yannic 55d949d
Merge remote-tracking branch 'origin/master' into proto_deterministic…
Yannic 2c15f77
Format
Yannic b102c2e
Minor fixes
Yannic 2545e97
Fix exetrnal deps
Yannic 13f0d78
Reduce RAM usage -> intern proto_source_root
Yannic 8cf24c3
Reduce RAM usage -> Always derive import path from artifact and (real…
Yannic c47521c
Merge branch 'master' into proto_deterministic_import_path
Yannic df72c3c
Merge branch 'master' into proto_deterministic_import_path
Yannic 80825ef
Fix build
Yannic 7c50be0
Reorder fields and resolve conflicts
Yannic b70d41c
Extract mapping func into static field
Yannic 4a2415c
Merge SharedProtoLibraryTest into BazelProtoLibraryTest
Yannic File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
353 changes: 150 additions & 203 deletions
353
src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCommon.java
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains 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
Oops, something went wrong.
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.
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.
A test case in our internal test battery fails. I can't export it at the moment, but the BUILD file it uses is as follows:
then verifies that its proto compile action has
--allowed_public_imports=
. This fails, and instead, it has--allowed_public_imports test/myProto.proto
. I think I know why (see the other comment)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, I think you're right about the culprit of the failure which would allow public imports of
srcs
while they aren't allowed with the current behavior.I had to update
BazelProtoLibraryTest#testExportedStrippedImportPrefixes
though because it checked that the direct proto source root was part of the exported source roots (but we don't rely on a set of proto source roots anymore for computing public imports, so it's not a behavioral change). You may have to do the same for internal tests :(.