Skip to content
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

Support Struct for wellknown type wrappers #116

Merged
merged 5 commits into from
Nov 23, 2023

Conversation

howardjohn
Copy link
Contributor

@howardjohn howardjohn commented Nov 22, 2023

This is a followup to #99, adding Struct support for WKT wrappers.

This is a bit trickier than others, as Struct is more complex and has oneofs. oneof is tricky for a variety of reasons.

With current main branch, we see about 10% improvement adopting vtprotobuf. With this patch, this jumps up to a nice 40%; this is on real world protos as well, not just a direct benchmark of Struct (obviously, the proto has struct in it, though 🙂). Note this percentage is end to end for our real-world benchmark, the pure proto part is much much higher impact.

Most of the work is just around handling the fact that these types or more complex, so some of the work from #99 needs to be more robust to handle these. However, one major issue is proto's Go oneof representation, which marks the Kind as a private interface. We cannot return or reference this private interface, as we are outside of the original package. Instead, we directly switch on the types

@howardjohn howardjohn changed the title WIP: Support Struct for wellknown type wrappers Support Struct for wellknown type wrappers Nov 22, 2023
@vmg
Copy link
Member

vmg commented Nov 23, 2023

With this patch, this jumps up to a nice 40%

Those are fantastic numbers! Very nice!

one major issue is proto's Go oneof representation, which marks the Kind as a private interface. We cannot return or reference this private interface, as we are outside of the original package. Instead, we directly switch on the types

Seems like the best (only?) possible approach. Overall the changes looks great. I'm very happy to see people actively using and contributing changes to the oneof code because it's something we've never used on Vitess and it's probably very crusty from lack of real-world usage.

@vmg vmg merged commit 9877c81 into planetscale:main Nov 23, 2023
2 checks passed
@howardjohn
Copy link
Contributor Author

Thanks! Great to see this land.

NBD for myself, but given the new packages exposed, it might be slightly easier for people to adopt if there is a new tagged release. Otherwise go mod tidy will not automatically add the import correctly.

Easy to workaround with go get github.com/planetscale/vtprotobuf@main, but might bite some folks less familiar with Go imports

charithe added a commit to cerbos/cerbos that referenced this pull request Feb 5, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type |
Update |
|---|---|---|---|---|---|---|---|
| buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go |
`v1.31.0-20230914171853-63dfe56cc2c4.1` ->
`v1.32.0-20231115204500-e097f827e652.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/buf.build%2fgen%2fgo%2fbufbuild%2fprotovalidate%2fprotocolbuffers%2fgo/v1.32.0-20231115204500-e097f827e652.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/buf.build%2fgen%2fgo%2fbufbuild%2fprotovalidate%2fprotocolbuffers%2fgo/v1.32.0-20231115204500-e097f827e652.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/buf.build%2fgen%2fgo%2fbufbuild%2fprotovalidate%2fprotocolbuffers%2fgo/v1.31.0-20230914171853-63dfe56cc2c4.1/v1.32.0-20231115204500-e097f827e652.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/buf.build%2fgen%2fgo%2fbufbuild%2fprotovalidate%2fprotocolbuffers%2fgo/v1.31.0-20230914171853-63dfe56cc2c4.1/v1.32.0-20231115204500-e097f827e652.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
| [github.com/aws/aws-sdk-go](https://togithub.com/aws/aws-sdk-go) |
`v1.50.1` -> `v1.50.10` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2faws%2faws-sdk-go/v1.50.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2faws%2faws-sdk-go/v1.50.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2faws%2faws-sdk-go/v1.50.1/v1.50.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2faws%2faws-sdk-go/v1.50.1/v1.50.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
| [github.com/bufbuild/buf](https://togithub.com/bufbuild/buf) |
`v1.28.1` -> `v1.29.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fbufbuild%2fbuf/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fbufbuild%2fbuf/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fbufbuild%2fbuf/v1.28.1/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fbufbuild%2fbuf/v1.28.1/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
| [github.com/goccy/go-yaml](https://togithub.com/goccy/go-yaml) |
`v1.11.2` -> `v1.11.3` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgoccy%2fgo-yaml/v1.11.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fgoccy%2fgo-yaml/v1.11.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fgoccy%2fgo-yaml/v1.11.2/v1.11.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgoccy%2fgo-yaml/v1.11.2/v1.11.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
| [github.com/google/uuid](https://togithub.com/google/uuid) | `v1.5.0`
-> `v1.6.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgoogle%2fuuid/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fgoogle%2fuuid/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fgoogle%2fuuid/v1.5.0/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgoogle%2fuuid/v1.5.0/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
|
[github.com/grpc-ecosystem/grpc-gateway/v2](https://togithub.com/grpc-ecosystem/grpc-gateway)
| `v2.19.0` -> `v2.19.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.19.0/v2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.19.0/v2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
| [github.com/jackc/pgx/v5](https://togithub.com/jackc/pgx) | `v5.5.2`
-> `v5.5.3` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fjackc%2fpgx%2fv5/v5.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fjackc%2fpgx%2fv5/v5.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fjackc%2fpgx%2fv5/v5.5.2/v5.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fjackc%2fpgx%2fv5/v5.5.2/v5.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
|
[github.com/planetscale/vtprotobuf](https://togithub.com/planetscale/vtprotobuf)
| `v0.5.0` -> `v0.6.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fplanetscale%2fvtprotobuf/v0.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fplanetscale%2fvtprotobuf/v0.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fplanetscale%2fvtprotobuf/v0.5.0/v0.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fplanetscale%2fvtprotobuf/v0.5.0/v0.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
| [github.com/pterm/pterm](https://togithub.com/pterm/pterm) |
`v0.12.75` -> `v0.12.78` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fpterm%2fpterm/v0.12.78?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fpterm%2fpterm/v0.12.78?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fpterm%2fpterm/v0.12.75/v0.12.78?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fpterm%2fpterm/v0.12.75/v0.12.78?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
| [github.com/rivo/tview](https://togithub.com/rivo/tview) | `8526c9f`
-> `861aa94` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2frivo%2ftview/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2frivo%2ftview/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2frivo%2ftview/v0.0.0-20240122063236-8526c9fe1b54/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2frivo%2ftview/v0.0.0-20240122063236-8526c9fe1b54/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | digest |
|
[google.golang.org/genproto/googleapis/api](https://togithub.com/googleapis/go-genproto)
| `ef43131` -> `1f4bbc5` |
[![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240123012728-ef4313101c80/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240123012728-ef4313101c80/?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | digest |
| [google.golang.org/grpc](https://togithub.com/grpc/grpc-go) |
`v1.60.1` -> `v1.61.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgrpc/v1.61.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/google.golang.org%2fgrpc/v1.61.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/google.golang.org%2fgrpc/v1.60.1/v1.61.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgrpc/v1.60.1/v1.61.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |

---

### Release Notes

<details>
<summary>aws/aws-sdk-go (github.com/aws/aws-sdk-go)</summary>

###
[`v1.50.10`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v15010-2024-02-02)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.9...v1.50.10)

\===

##### Service Client Updates

- `service/dynamodb`: Updates service API, documentation, waiters,
paginators, and examples
- Any number of users can execute up to 50 concurrent restores (any type
of restore) in a given account.
-   `service/sagemaker`: Updates service API and documentation
- Amazon SageMaker Canvas adds GenerativeAiSettings support for
CanvasAppSettings.

###
[`v1.50.9`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1509-2024-02-01)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.8...v1.50.9)

\===

##### Service Client Updates

-   `service/cognito-idp`: Updates service API and documentation
-   `service/ivs`: Updates service API, documentation, and paginators
- `service/managedblockchain-query`: Updates service API and
documentation
-   `service/mediaconvert`: Updates service API and documentation
- This release includes support for broadcast-mixed audio description
tracks.

###
[`v1.50.8`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1508-2024-01-31)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.7...v1.50.8)

\===

##### Service Client Updates

- `service/cloudformation`: Updates service API, documentation,
paginators, and examples
- CloudFormation IaC generator allows you to scan existing resources in
your account and select resources to generate a template for a new or
existing CloudFormation stack.
- `service/elasticloadbalancingv2`: Updates service API and
documentation
-   `service/glue`: Updates service API and documentation
    -   Update page size limits for GetJobRuns and GetTriggers APIs.
-   `service/ssm`: Updates service API and documentation
- This release adds an optional Duration parameter to StateManager
Associations. This allows customers to specify how long an
apply-only-on-cron association execution should run. Once the specified
Duration is out all the ongoing cancellable commands or automations are
cancelled.

###
[`v1.50.7`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1507-2024-01-30)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.6...v1.50.7)

\===

##### Service Client Updates

-   `service/datazone`: Updates service API and documentation
-   `service/route53`: Updates service documentation
    -   Update the SDKs for text changes in the APIs.

###
[`v1.50.6`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1506-2024-01-29)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.5...v1.50.6)

\===

##### Service Client Updates

-   `service/autoscaling`: Updates service API and documentation
- EC2 Auto Scaling customers who use attribute based instance-type
selection can now intuitively define their Spot instances price
protection limit as a percentage of the lowest priced On-Demand instance
type.
-   `service/comprehend`: Updates service documentation
-   `service/ec2`: Updates service API and documentation
- EC2 Fleet customers who use attribute based instance-type selection
can now intuitively define their Spot instances price protection limit
as a percentage of the lowest priced On-Demand instance type.
-   `service/mwaa`: Updates service API and documentation
- `service/rds`: Updates service API, documentation, waiters,
paginators, and examples
- Introduced support for the InsufficientDBInstanceCapacityFault error
in the RDS RestoreDBClusterFromSnapshot and
RestoreDBClusterToPointInTime API methods. This provides enhanced error
handling, ensuring a more robust experience.
-   `service/snowball`: Updates service documentation
- Modified description of createaddress to include direction to add path
when providing a JSON file.

###
[`v1.50.5`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1505-2024-01-26)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.4...v1.50.5)

\===

##### Service Client Updates

-   `service/connect`: Updates service API
-   `service/inspector2`: Updates service API and documentation
-   `service/sagemaker`: Updates service API and documentation
- Amazon SageMaker Automatic Model Tuning now provides an API to
programmatically delete tuning jobs.

###
[`v1.50.4`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1504-2024-01-25)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.3...v1.50.4)

\===

##### Service Client Updates

-   `service/acm-pca`: Updates service API, documentation, and waiters
-   `service/lightsail`: Updates service API and documentation
    -   This release adds support for IPv6-only instance plans.

###
[`v1.50.3`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1503-2024-01-24)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.2...v1.50.3)

\===

##### Service Client Updates

-   `service/ec2`: Updates service API and documentation
- Introduced a new clientToken request parameter on CreateNetworkAcl and
CreateRouteTable APIs. The clientToken parameter allows idempotent
operations on the APIs.
-   `service/ecs`: Updates service documentation
    -   Documentation updates for Amazon ECS.
-   `service/outposts`: Updates service API
- `service/rds`: Updates service API, documentation, waiters,
paginators, and examples
    -   This release adds support for Aurora Limitless Database.
-   `service/storagegateway`: Updates service API and documentation
- Add DeprecationDate and SoftwareVersion to response of ListGateways.

###
[`v1.50.2`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1502-2024-01-23)

[Compare
Source](https://togithub.com/aws/aws-sdk-go/compare/v1.50.1...v1.50.2)

\===

##### Service Client Updates

- `service/inspector2`: Updates service API, documentation, and
paginators

</details>

<details>
<summary>bufbuild/buf (github.com/bufbuild/buf)</summary>

###
[`v1.29.0`](https://togithub.com/bufbuild/buf/blob/HEAD/CHANGELOG.md#v1290---2024-01-24)

[Compare
Source](https://togithub.com/bufbuild/buf/compare/v1.28.1...v1.29.0)

- Add support for `yaml` format. All commands that take image inputs,
output images,
or convert between message formats, now take `yaml` as a format, in
addition to
    the existing `binpb` and `txtpb` formats. Some examples:
    -   `buf build -o image.yaml`
    -   `buf ls-files image.yaml`
    -   `buf convert --type foo.Bar --from input.binpb --to output.yaml`
- The `yaml` and `json` formats now accept two new options:
`use_proto_names` and
`use_enum_numbers`. This affects output serialization. Some examples:
- `buf convert --type foo.Bar --from input.binpb --to
output.yaml#use_proto_names=true`
- `buf convert --type foo.Bar --from input.binpb --to
-#format=yaml,use_enum_numbers=true`
- Fix issue where `buf format` would inadvertently mangle files that
used
the [expanded `Any`
syntax](https://protobuf.com/docs/language-spec#any-messages)
    in option values.

</details>

<details>
<summary>goccy/go-yaml (github.com/goccy/go-yaml)</summary>

###
[`v1.11.3`](https://togithub.com/goccy/go-yaml/releases/tag/v1.11.3):
1.11.3

[Compare
Source](https://togithub.com/goccy/go-yaml/compare/v1.11.2...v1.11.3)

#### What's Changed

- fix: remove any trailing empty lines if the block scalar has strip
indicator by [@&#8203;zoncoen](https://togithub.com/zoncoen) in
[goccy/go-yaml#421

**Full Changelog**:
goccy/go-yaml@v1.11.2...v1.11.3

</details>

<details>
<summary>google/uuid (github.com/google/uuid)</summary>

### [`v1.6.0`](https://togithub.com/google/uuid/releases/tag/v1.6.0)

[Compare
Source](https://togithub.com/google/uuid/compare/v1.5.0...v1.6.0)

##### Features

- add Max UUID constant
([#&#8203;149](https://togithub.com/google/uuid/issues/149))
([c58770e](https://togithub.com/google/uuid/commit/c58770eb495f55fe2ced6284f93c5158a62e53e3))

##### Bug Fixes

- fix typo in version 7 uuid documentation
([#&#8203;153](https://togithub.com/google/uuid/issues/153))
([016b199](https://togithub.com/google/uuid/commit/016b199544692f745ffc8867b914129ecb47ef06))
- Monotonicity in UUIDv7
([#&#8203;150](https://togithub.com/google/uuid/issues/150))
([a2b2b32](https://togithub.com/google/uuid/commit/a2b2b32373ff0b1a312b7fdf6d38a977099698a6))

</details>

<details>
<summary>grpc-ecosystem/grpc-gateway
(github.com/grpc-ecosystem/grpc-gateway/v2)</summary>

###
[`v2.19.1`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.19.1)

[Compare
Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.19.0...v2.19.1)

#### What's Changed

- (fix) remove internal comments from generated protoComments by
[@&#8203;kiambogo](https://togithub.com/kiambogo) in
[grpc-ecosystem/grpc-gateway#3864
- fix(protoc-gen-openapiv2): exclude from query params oneof fields in
the same group as the one used in the body by
[@&#8203;ovargas](https://togithub.com/ovargas) in
[grpc-ecosystem/grpc-gateway#3862
- If no subfields are set in a map, add the field to fieldMask by
[@&#8203;sbansal7](https://togithub.com/sbansal7) in
[grpc-ecosystem/grpc-gateway#3879
- Parse request body when using X-HTTP-Method-Override header by
[@&#8203;eyasy1217](https://togithub.com/eyasy1217) in
[grpc-ecosystem/grpc-gateway#3918
- fix path param override by query params by
[@&#8203;ljmsc](https://togithub.com/ljmsc) in
[grpc-ecosystem/grpc-gateway#3946

#### New Contributors

- [@&#8203;kiambogo](https://togithub.com/kiambogo) made their first
contribution in
[grpc-ecosystem/grpc-gateway#3864
- [@&#8203;ovargas](https://togithub.com/ovargas) made their first
contribution in
[grpc-ecosystem/grpc-gateway#3862
- [@&#8203;sbansal7](https://togithub.com/sbansal7) made their first
contribution in
[grpc-ecosystem/grpc-gateway#3879
- [@&#8203;eyasy1217](https://togithub.com/eyasy1217) made their first
contribution in
[grpc-ecosystem/grpc-gateway#3918

**Full Changelog**:
grpc-ecosystem/grpc-gateway@v2.19.0...v2.19.1

</details>

<details>
<summary>jackc/pgx (github.com/jackc/pgx/v5)</summary>

### [`v5.5.3`](https://togithub.com/jackc/pgx/compare/v5.5.2...v5.5.3)

[Compare Source](https://togithub.com/jackc/pgx/compare/v5.5.2...v5.5.3)

</details>

<details>
<summary>planetscale/vtprotobuf
(github.com/planetscale/vtprotobuf)</summary>

###
[`v0.6.0`](https://togithub.com/planetscale/vtprotobuf/releases/tag/v0.6.0)

[Compare
Source](https://togithub.com/planetscale/vtprotobuf/compare/v0.5.0...v0.6.0)

#### Notable new features

- Support for Well-Known Type Wrappers
([planetscale/vtprotobuf#99)
- Unsafe unmarshalling without memory allocations
([planetscale/vtprotobuf#103)
- Support for custom build tags
([planetscale/vtprotobuf#122)
- Support for using wildcards when choosing which objects to pool
([planetscale/vtprotobuf#115)

#### List of all merged PRs

- feat: use vtpool when cloning poolable objects by
[@&#8203;kruskall](https://togithub.com/kruskall) in
[planetscale/vtprotobuf#95
- fix: do not try to reset nil objects by
[@&#8203;kruskall](https://togithub.com/kruskall) in
[planetscale/vtprotobuf#96
- Fix misspell in clone.go by
[@&#8203;cristaloleg](https://togithub.com/cristaloleg) in
[planetscale/vtprotobuf#98
- Well known type wrappers by [@&#8203;vmg](https://togithub.com/vmg) in
[planetscale/vtprotobuf#99
- Added well-known types generated by vtproto plugin by
[@&#8203;biosvs](https://togithub.com/biosvs) in
[planetscale/vtprotobuf#93
- Add `unmarshal_unsafe` feature by
[@&#8203;nockty](https://togithub.com/nockty) in
[planetscale/vtprotobuf#103
- fix: ResetVT oneof by
[@&#8203;evgfedotov](https://togithub.com/evgfedotov) in
[planetscale/vtprotobuf#109
- Fix alloc qualify ident by
[@&#8203;evgfedotov](https://togithub.com/evgfedotov) in
[planetscale/vtprotobuf#113
- fix: check oneof on syntetic by
[@&#8203;evgfedotov](https://togithub.com/evgfedotov) in
[planetscale/vtprotobuf#111
- Support `Struct` for wellknown type wrappers by
[@&#8203;howardjohn](https://togithub.com/howardjohn) in
[planetscale/vtprotobuf#116
- Bump go.mod dependencies by
[@&#8203;howardjohn](https://togithub.com/howardjohn) in
[planetscale/vtprotobuf#119
- Make generated code use public helpers instead of generating them by
[@&#8203;nockty](https://togithub.com/nockty) in
[planetscale/vtprotobuf#120
- Downgrade `grpc` to version 1.58.2 by
[@&#8203;nockty](https://togithub.com/nockty) in
[planetscale/vtprotobuf#121
- Fix: Append check on IsMap in pool message generation by
[@&#8203;evgfedotov](https://togithub.com/evgfedotov) in
[planetscale/vtprotobuf#124
- Add ability to include a build tag by
[@&#8203;howardjohn](https://togithub.com/howardjohn) in
[planetscale/vtprotobuf#122
- Fix: Prevent out of bounds access when unsafe unmarshalling empty
strings by
[@&#8203;maheeshap-canopus](https://togithub.com/maheeshap-canopus) in
[planetscale/vtprotobuf#127
- feature: pool with wildcard by
[@&#8203;evgfedotov](https://togithub.com/evgfedotov) in
[planetscale/vtprotobuf#115

#### New Contributors

- [@&#8203;kruskall](https://togithub.com/kruskall) made their first
contribution in
[planetscale/vtprotobuf#95
- [@&#8203;cristaloleg](https://togithub.com/cristaloleg) made their
first contribution in
[planetscale/vtprotobuf#98
- [@&#8203;nockty](https://togithub.com/nockty) made their first
contribution in
[planetscale/vtprotobuf#103
- [@&#8203;evgfedotov](https://togithub.com/evgfedotov) made their first
contribution in
[planetscale/vtprotobuf#109
- [@&#8203;howardjohn](https://togithub.com/howardjohn) made their first
contribution in
[planetscale/vtprotobuf#116
- [@&#8203;maheeshap-canopus](https://togithub.com/maheeshap-canopus)
made their first contribution in
[planetscale/vtprotobuf#127

**Full Changelog**:
planetscale/vtprotobuf@v0.5.0...v0.6.0

</details>

<details>
<summary>pterm/pterm (github.com/pterm/pterm)</summary>

### [`v0.12.78`](https://togithub.com/pterm/pterm/releases/tag/v0.12.78)

[Compare
Source](https://togithub.com/pterm/pterm/compare/v0.12.77...v0.12.78)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### Fixes 🔧

- fix(progressbar): `Progressbar` and `Logger` did not work together co…
by [@&#8203;MarvinJWendt](https://togithub.com/MarvinJWendt) in
[pterm/pterm#627
- fix(textinput): fixed text width calculation by
[@&#8203;auntan](https://togithub.com/auntan) in
[pterm/pterm#624

#### New Contributors

- [@&#8203;auntan](https://togithub.com/auntan) made their first
contribution in
[pterm/pterm#624

**Full Changelog**:
pterm/pterm@v0.12.77...v0.12.78

### [`v0.12.77`](https://togithub.com/pterm/pterm/releases/tag/v0.12.77)

[Compare
Source](https://togithub.com/pterm/pterm/compare/v0.12.76...v0.12.77)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### Fixes 🔧

- fix: graceful handling of odd args by
[@&#8203;TylerGillson](https://togithub.com/TylerGillson) in
[pterm/pterm#629

#### New Contributors

- [@&#8203;TylerGillson](https://togithub.com/TylerGillson) made their
first contribution in
[pterm/pterm#629

**Full Changelog**:
pterm/pterm@v0.12.76...v0.12.77

### [`v0.12.76`](https://togithub.com/pterm/pterm/releases/tag/v0.12.76)

[Compare
Source](https://togithub.com/pterm/pterm/compare/v0.12.75...v0.12.76)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### Fixes 🔧

- fix(rgb): `Sprintf` did not format properly by
[@&#8203;MarvinJWendt](https://togithub.com/MarvinJWendt) in
[pterm/pterm#622

**Full Changelog**:
pterm/pterm@v0.12.75...v0.12.76

</details>

<details>
<summary>grpc/grpc-go (google.golang.org/grpc)</summary>

### [`v1.61.0`](https://togithub.com/grpc/grpc-go/releases/tag/v1.61.0):
Release 1.61.0

[Compare
Source](https://togithub.com/grpc/grpc-go/compare/v1.60.1...v1.61.0)

### New Features

- resolver: provide method, `AuthorityOverrider`, to allow
resolver.Builders to override the default authority for a `ClientConn`.
(EXPERIMENTAL)
([#&#8203;6752](https://togithub.com/grpc/grpc-go/issues/6752))
- Special Thanks:
[@&#8203;Aditya-Sood](https://togithub.com/Aditya-Sood)
- xds: add support for mTLS Credentials in xDS bootstrap ([gRFC
A65](github.com/grpc/proposal/blob/8c31bfedded5f0a51c4933e9e9a8246122f9c41a/A65-xds-mtls-creds-in-bootstrap.md))
([#&#8203;6757](https://togithub.com/grpc/grpc-go/issues/6757))
- Special Thanks: [@&#8203;atollena](https://togithub.com/atollena)
- server: add `grpc.WaitForHandlers` `ServerOption` to cause
`Server.Stop` to block until method handlers return. (EXPERIMENTAL)
([#&#8203;6922](https://togithub.com/grpc/grpc-go/issues/6922))

### Performance Improvements

- grpc: skip compression of empty messages as an optimization
([#&#8203;6842](https://togithub.com/grpc/grpc-go/issues/6842))
    -   Special Thanks: [@&#8203;jroper](https://togithub.com/jroper)
- orca: use atomic pointer to improve performance in server metrics
recorder ([#&#8203;6799](https://togithub.com/grpc/grpc-go/issues/6799))
- Special Thanks:
[@&#8203;danielzhaotongliu](https://togithub.com/danielzhaotongliu)

### Bug Fixes

- client: correctly enable TCP keepalives with OS defaults on windows
([#&#8203;6863](https://togithub.com/grpc/grpc-go/issues/6863))
- Special Thanks: [@&#8203;mmatczuk](https://togithub.com/mmatczuk)
- server: change some stream operations to return `UNAVAILABLE` instead
of `UNKNOWN` when underlying connection is broken
([#&#8203;6891](https://togithub.com/grpc/grpc-go/issues/6891))
- Special Thanks:
[@&#8203;mustafasen81](https://togithub.com/mustafasen81)
- server: fix `GracefulStop` to block until all method handlers return
(v1.60 regression).
([#&#8203;6922](https://togithub.com/grpc/grpc-go/issues/6922))
- server: fix two bugs that could lead to panics at shutdown when using
[`NumStreamWorkers`](https://pkg.go.dev/google.golang.org/grpc#NumStreamWorkers)
(EXPERIMENTAL).
([#&#8203;6856](https://togithub.com/grpc/grpc-go/issues/6856))
- reflection: do not send invalid descriptors to clients for files that
cannot be fully resolved
([#&#8203;6771](https://togithub.com/grpc/grpc-go/issues/6771))
    -   Special Thanks: [@&#8203;jhump](https://togithub.com/jhump)
- xds: don't fail channel/server startup when xds creds is specified,
but bootstrap is missing certificate providers
([#&#8203;6848](https://togithub.com/grpc/grpc-go/issues/6848))
- xds: Atomically read and write xDS security configuration client side
([#&#8203;6796](https://togithub.com/grpc/grpc-go/issues/6796))
- xds/server: fix RDS handling for non-inline route configs
([#&#8203;6915](https://togithub.com/grpc/grpc-go/issues/6915))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/cerbos/cerbos).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNzAuMCIsInVwZGF0ZWRJblZlciI6IjM3LjE3MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

---------

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Charith Ellawala <charith@cerbos.dev>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Charith Ellawala <charith@cerbos.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants