googleapis / googleapis/google-api-go-client
Better handling of raw bytes
- Dominant language
- Go
- Stars
- 4.5k
- Forks
- 1.5k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 32
Description
Given this field in a discovery doc:
```
"AsymmetricDecryptRequest": {
"description": "Request message for KeyManagementService.AsymmetricDecrypt.",
"id": "AsymmetricDecryptRequest",
"properties": {
"ciphertext": {
"description": "Required. The data encrypted with the named CryptoKeyVersion's public\nkey using OAEP.",
"format": "byte",
"type": "string"
}
},
"type": "object"
},
```
This gets generated as:
```
type AsymmetricDecryptRequest struct {
// Ciphertext: Required. The data encrypted with the named
// CryptoKeyVersion's public
// key using OAEP.
Ciphertext string `json:"ciphertext,omitempty"`
```
The server accepts a base64-encoded string as the data, but we don't tell users that they need to encode it themselves.
Ideally, we'd just generate this as `[]byte`, which encoding/json actually encodes as a b64-encoded string.
Is this a worthwhile breaking change?
If not, we should at least generate some docs/example on base64-encoding the package?
Contributor guide
Assessment
This issue has not been assessed yet.