You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implicit output patterns defined in Skylark are artificially restricted to expand to at most one file. No such restriction exists for native rules such as proto_library. Consider:
Notice that the native proto_library's outputs expand to [a.pb.h b.pb.h], but Blaze reports an error when my_proto_library tries to do the same thing using the "%{srcs}.pb.go" rule. I don't know why this restriction exists, but clearly it is an obstacle to Skylark rules achieving parity with native rules.
Changing my_proto_library to use a dict {"": "%{srcs}.pb.go"} instead of a function causes Blaze to emit the same error (and crash while doing so).
The text was updated successfully, but these errors were encountered:
Implicit output patterns defined in Skylark are artificially restricted to expand to at most one file. No such restriction exists for native rules such as proto_library. Consider:
Notice that the native proto_library's outputs expand to [a.pb.h b.pb.h], but Blaze reports an error when my_proto_library tries to do the same thing using the "%{srcs}.pb.go" rule. I don't know why this restriction exists, but clearly it is an obstacle to Skylark rules achieving parity with native rules.
Changing my_proto_library to use a dict {"": "%{srcs}.pb.go"} instead of a function causes Blaze to emit the same error (and crash while doing so).
The text was updated successfully, but these errors were encountered: