Currently, we do not apply mixins per API client version, which results in the mixin being used for both versions.
For example, in google-cloud-functions, the proto file definitions handle IAM mixins differently: v1 has the IAM RPC defined within the proto file itself, while v2 does not. This means we should add the mixin for v2 without impacting v1.
To support this, we should explore encoding this information in librarian.yaml, allowing us to include or exclude mixins for specific API versions as necessary.
The service yaml for v2 DOES include IAM: https://github.com/googleapis/googleapis/blob/master/google/cloud/functions/v2/cloudfunctions_v2.yaml#L9
This could be genuine issue. If I understand the generator correctly, a service yaml like this should trigger the inclusion of these lines.
Originally posted by @pearigee in googleapis/google-cloud-node#8600 (comment)
Currently, we do not apply mixins per API client version, which results in the mixin being used for both versions.
For example, in google-cloud-functions, the proto file definitions handle IAM mixins differently: v1 has the IAM RPC defined within the proto file itself, while v2 does not. This means we should add the mixin for v2 without impacting v1.
To support this, we should explore encoding this information in librarian.yaml, allowing us to include or exclude mixins for specific API versions as necessary.
The service yaml for v2 DOES include IAM: https://github.com/googleapis/googleapis/blob/master/google/cloud/functions/v2/cloudfunctions_v2.yaml#L9
This could be genuine issue. If I understand the generator correctly, a service yaml like this should trigger the inclusion of these lines.
Originally posted by @pearigee in googleapis/google-cloud-node#8600 (comment)