-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
feat: add mux middlewares and inject http pattern #4290
Conversation
Hi, thanks for your PR. However, please open an issue to discuss the problem you're having before submitting a PR. I'm not convinced this is functionality we want, so please open a PR to discuss your specific problem first. Thanks! |
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.
OK, I'm happy to go ahead with this feature. I would request that you update the comment on the generated direct-to-implementation registration functions in template.go:
grpc-gateway/protoc-gen-grpc-gateway/internal/gengateway/template.go
Lines 704 to 706 in 33ca56e
// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "{{$svc.InstanceName}}Client" | |
// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in | |
// "{{$svc.InstanceName}}Client" to call the correct interceptors. |
to nudge people towards the use of this middleware functionality as an alternative to gRPC interceptors.
Co-authored-by: Johan Brandhorst-Satzkorn <[email protected]>
Co-authored-by: Johan Brandhorst-Satzkorn <[email protected]>
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.
LGTM!
Looks like we need to regenerate the files after the update? |
It is not possible to regenerate files. Inside |
Thank you for your contribution! |
[![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 | |---|---|---|---|---|---|---|---| | [github.com/aws/aws-sdk-go](https://togithub.com/aws/aws-sdk-go) | `v1.54.20` -> `v1.55.3` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2faws%2faws-sdk-go/v1.55.3?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.55.3?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.54.20/v1.55.3?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.54.20/v1.55.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | minor | | [github.com/bufbuild/buf](https://togithub.com/bufbuild/buf) | `v1.34.0` -> `v1.35.1` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fbufbuild%2fbuf/v1.35.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fbufbuild%2fbuf/v1.35.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fbufbuild%2fbuf/v1.34.0/v1.35.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fbufbuild%2fbuf/v1.34.0/v1.35.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | minor | | [github.com/fergusstrange/embedded-postgres](https://togithub.com/fergusstrange/embedded-postgres) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2ffergusstrange%2fembedded-postgres/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2ffergusstrange%2fembedded-postgres/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2ffergusstrange%2fembedded-postgres/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2ffergusstrange%2fembedded-postgres/v1.27.0/v1.28.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.20.0` -> `v2.21.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.21.0?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.21.0?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.20.0/v2.21.0?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.20.0/v2.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | minor | | [github.com/lestrrat-go/jwx/v2](https://togithub.com/lestrrat-go/jwx) | `v2.1.0` -> `v2.1.1` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2flestrrat-go%2fjwx%2fv2/v2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2flestrrat-go%2fjwx%2fv2/v2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2flestrrat-go%2fjwx%2fv2/v2.1.0/v2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2flestrrat-go%2fjwx%2fv2/v2.1.0/v2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/rivo/tview](https://togithub.com/rivo/tview) | `b0a7293` -> `65571ae` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2frivo%2ftview/v0.0.0-20240728114935-65571ae51e71?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2frivo%2ftview/v0.0.0-20240728114935-65571ae51e71?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-20240625185742-b0a7293b8130/v0.0.0-20240728114935-65571ae51e71?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-20240625185742-b0a7293b8130/v0.0.0-20240728114935-65571ae51e71?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | digest | | [github.com/twmb/franz-go](https://togithub.com/twmb/franz-go) | `v1.17.0` -> `v1.17.1` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2ftwmb%2ffranz-go/v1.17.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2ftwmb%2ffranz-go/v1.17.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2ftwmb%2ffranz-go/v1.17.0/v1.17.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2ftwmb%2ffranz-go/v1.17.0/v1.17.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [github.com/twmb/franz-go/pkg/kadm](https://togithub.com/twmb/franz-go) | `v1.12.0` -> `v1.13.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2ftwmb%2ffranz-go%2fpkg%2fkadm/v1.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2ftwmb%2ffranz-go%2fpkg%2fkadm/v1.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2ftwmb%2ffranz-go%2fpkg%2fkadm/v1.12.0/v1.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2ftwmb%2ffranz-go%2fpkg%2fkadm/v1.12.0/v1.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | minor | | [go.elastic.co/ecszap](https://togithub.com/elastic/ecs-logging-go-zap) | `v1.0.2` -> `v1.0.3` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.elastic.co%2fecszap/v1.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.elastic.co%2fecszap/v1.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.elastic.co%2fecszap/v1.0.2/v1.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.elastic.co%2fecszap/v1.0.2/v1.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | patch | | [google.golang.org/genproto/googleapis/api](https://togithub.com/googleapis/go-genproto) | `46eb208` -> `93522f1` | [![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240725223205-93522f1f2a9f?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240725223205-93522f1f2a9f?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-20240711142825-46eb208f015d/v0.0.0-20240725223205-93522f1f2a9f?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-20240711142825-46eb208f015d/v0.0.0-20240725223205-93522f1f2a9f?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | digest | | [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `v1.30.2` -> `v1.31.1` | [![age](https://developer.mend.io/api/mc/badges/age/go/modernc.org%2fsqlite/v1.31.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/modernc.org%2fsqlite/v1.31.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/modernc.org%2fsqlite/v1.30.2/v1.31.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/modernc.org%2fsqlite/v1.30.2/v1.31.1?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.55.3`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1553-2024-07-25) [Compare Source](https://togithub.com/aws/aws-sdk-go/compare/v1.55.2...v1.55.3) \=== ##### Service Client Updates - `service/application-autoscaling`: Updates service API - `service/application-signals`: Updates service API and documentation - `service/bedrock-runtime`: Updates service API and documentation - `service/codecommit`: Updates service API and documentation - CreateRepository API now throws OperationNotAllowedException when the account has been restricted from creating a repository. - `service/datazone`: Updates service API and documentation - `service/ec2`: Updates service API and documentation - EC2 Fleet now supports using custom identifiers to reference Amazon Machine Images (AMI) in launch requests that are configured to choose from a diversified list of instance types. - `service/ecr`: Updates service API, documentation, paginators, and examples - API and documentation updates for Amazon ECR, adding support for creating, updating, describing and deleting ECR Repository Creation Template. - `service/eks`: Updates service API and documentation - `service/elasticloadbalancingv2`: Updates service API, documentation, and examples - `service/network-firewall`: Updates service API and documentation - `service/outposts`: Updates service API and documentation - `service/states`: Updates service API and documentation - This release adds support to customer managed KMS key encryption in AWS Step Functions. ##### SDK Bugs - Remove broken integration test. - Remove integration test broken by cloudsearch service. ### [`v1.55.2`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1552-2024-07-24) [Compare Source](https://togithub.com/aws/aws-sdk-go/compare/v1.55.1...v1.55.2) \=== ##### Service Client Updates - `service/cleanrooms`: Updates service API and documentation - `service/dynamodb`: Updates service API, documentation, waiters, paginators, and examples - DynamoDB doc only update for July - `service/iotsitewise`: Updates service API and documentation - `service/mediapackagev2`: Updates service API - `service/medical-imaging`: Updates service API and documentation - `service/pinpoint-sms-voice-v2`: Updates service API and documentation ##### SDK Bugs - Add missing bool error matching. - This enables waiters defined to match on presence/absence of errors. ### [`v1.55.1`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1551-2024-07-23) [Compare Source](https://togithub.com/aws/aws-sdk-go/compare/v1.55.0...v1.55.1) \=== ##### Service Client Updates - `service/appsync`: Updates service API and paginators - `service/cleanrooms`: Updates service API, documentation, and paginators - `service/cleanroomsml`: Updates service API, documentation, and waiters - `service/connect`: Updates service API and documentation - `service/connect-contact-lens`: Updates service API and documentation - `service/datazone`: Updates service API and documentation - `service/entityresolution`: Updates service API and documentation ### [`v1.55.0`](https://togithub.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v1550-2024-07-22) [Compare Source](https://togithub.com/aws/aws-sdk-go/compare/v1.54.20...v1.55.0) \=== ##### Service Client Updates - `service/datazone`: Updates service API, documentation, and paginators - `service/ivs`: Updates service API and documentation - `service/redshift-serverless`: Updates service API and documentation ##### SDK Features - `service/mobile`: Remove Mobile - This change removes the Mobile service, which has been deprecated. ##### SDK Bugs - Apply sensitive struct tag to lists/maps with sensitive members. - This change propagates existing sensitive protection to lists/maps. </details> <details> <summary>bufbuild/buf (github.com/bufbuild/buf)</summary> ### [`v1.35.1`](https://togithub.com/bufbuild/buf/blob/HEAD/CHANGELOG.md#v1351---2024-07-24) [Compare Source](https://togithub.com/bufbuild/buf/compare/v1.35.0...v1.35.1) - Fix the git input parameter `ref` to align with the `git` notion of a ref. This allows for the use of branch names, tag names, and commit hashes. - Fix unexpected `buf build` errors with absolute path directory inputs without workspace and/or module configurations (e.g. `buf.yaml`, `buf.work.yaml`) and proto file paths set to the `--path` flag. ### [`v1.35.0`](https://togithub.com/bufbuild/buf/blob/HEAD/CHANGELOG.md#v1350---2024-07-22) [Compare Source](https://togithub.com/bufbuild/buf/compare/v1.34.0...v1.35.0) - Add `buf generate --clean` flag that will delete the directories, jar files, or zip files that the plugins will write to, prior to generation. Allows cleaning of existing assets without having to call `rm -rf`. - Deprecate `--username` flag on and username prompt on `buf registry login`. A username is no longer required to log in. </details> <details> <summary>fergusstrange/embedded-postgres (github.com/fergusstrange/embedded-postgres)</summary> ### [`v1.28.0`](https://togithub.com/fergusstrange/embedded-postgres/releases/tag/v1.28.0) [Compare Source](https://togithub.com/fergusstrange/embedded-postgres/compare/v1.27.0...v1.28.0) #### What's Changed - Upgrade versions by [@​fergusstrange](https://togithub.com/fergusstrange) in [https://github.com/fergusstrange/embedded-postgres/pull/140](https://togithub.com/fergusstrange/embedded-postgres/pull/140) **Full Changelog**: fergusstrange/embedded-postgres@v1.27.0...v1.28.0 </details> <details> <summary>grpc-ecosystem/grpc-gateway (github.com/grpc-ecosystem/grpc-gateway/v2)</summary> ### [`v2.21.0`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.21.0) [Compare Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.20.0...v2.21.0) #### What's Changed - feat: Use version info from runtime/debug:BuildInfo when installed by go build by [@​MakDon](https://togithub.com/MakDon) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4359](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4359) - feat: add mux middlewares and inject http pattern by [@​nikitaksv](https://togithub.com/nikitaksv) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4290](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4290) - Fixes [#​3917](https://togithub.com/grpc-ecosystem/grpc-gateway/issues/3917): Add package openapi naming strategy. by [@​jgiles](https://togithub.com/jgiles) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4372](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4372) - feat: use buildInfo.Main.Version as version when installed by go install by [@​MakDon](https://togithub.com/MakDon) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4390](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4390) - Add support for method's deprecated option by [@​vajexal](https://togithub.com/vajexal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4373](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4373) - adding gRPC gateway generator script by [@​akoserwal](https://togithub.com/akoserwal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4426](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4426) - fix url gen-grpc-gateway-api by [@​akoserwal](https://togithub.com/akoserwal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4434](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4434) - ci: upgrade to goreleaser v2 by [@​johanbrandhorst](https://togithub.com/johanbrandhorst) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4437](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4437) - docs: add grpc-starter transcoding to related projects by [@​DanielLiu1123](https://togithub.com/DanielLiu1123) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4456](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4456) - Fix build on 32bit systems by [@​gibmat](https://togithub.com/gibmat) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4557](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4557) #### New Contributors - [@​nikitaksv](https://togithub.com/nikitaksv) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4290](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4290) - [@​vajexal](https://togithub.com/vajexal) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4373](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4373) - [@​akoserwal](https://togithub.com/akoserwal) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4426](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4426) - [@​DanielLiu1123](https://togithub.com/DanielLiu1123) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4456](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4456) - [@​gibmat](https://togithub.com/gibmat) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4557](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4557) **Full Changelog**: grpc-ecosystem/grpc-gateway@v2.20.0...v2.21.0 </details> <details> <summary>lestrrat-go/jwx (github.com/lestrrat-go/jwx/v2)</summary> ### [`v2.1.1`](https://togithub.com/lestrrat-go/jwx/releases/tag/v2.1.1) [Compare Source](https://togithub.com/lestrrat-go/jwx/compare/v2.1.0...v2.1.1) v2.1.1 Jul 28 2024 * Update minimum required go version to go 1.20 * Update tests to work on 32-bit systems. * [jwa] Add RSA_OAEP_384 and RSA_OAEP_512 * [jwa] `jwa.SignatureAlgorithm` now has a `IsSymmetric` method. * [jwa] Add `jwa.RegisterSignatureAlgorithmOptions()` to register new algorithms while specifying extra options. Currently only `jwa.WithSymmetricAlgorithm()` is supported. * [jws] Clearly mark `jws.WithHeaders()` as deprecated </details> <details> <summary>twmb/franz-go (github.com/twmb/franz-go)</summary> ### [`v1.17.1`](https://togithub.com/twmb/franz-go/blob/HEAD/CHANGELOG.md#v1171) [Compare Source](https://togithub.com/twmb/franz-go/compare/v1.17.0...v1.17.1) \=== This patch release fixes four bugs (two are fixed in one commit), contains two internal improvements, and adds two other minor changes. #### Bug fixes - If you were using the `MaxBufferedBytes` option and ever hit the max, odds are likely that you would experience a deadlock eventually. That has been fixed. - If you ever produced a record with no topic field and without using `DefaultProduceTopic`, or if you produced a transactional record while not in a transaction, AND if the client was at the maximum buffered records, odds are you would eventually deadlock. This has been fixed. - It was previously not possible to set lz4 compression levels. - There was a data race on a boolean field if a produce request was being written at the same time a metadata update happened, *and* if the metadata update has an error on the topic or partition that is actively being written. Note that the race was unlikely and if you experienced it, you would have noticed an OutOfOrderSequenceNumber error. See [this comment](https://togithub.com/twmb/franz-go/pull/781#issuecomment-2248563542) for more details. #### Improvements - Canceling the context you pass to `Produce` now propagates in two more areas: the initial `InitProducerID` request that occurs the first time you produce, and if the client is internally backing off due to a produce request failure. Note that there is no guarantee on *which* context is used for cancelation if you produce many records, and the client does *not* allow canceling if it is currently unsafe to do so. However, this does mean that if your cluster is somewhat down such that `InitProducerID` is failing on your new client, you can now actually cause the `Produce` to quit. See [this comment](https://togithub.com/twmb/franz-go/issues/769#issuecomment-2235707417) for what it means for a record to be "safe" to fail. - The client now ignores aborted records while consuming only if you have configured `FetchIsolationLevel(ReadCommitted())`. Previously, the client relied entirely on the `FetchResponse` `AbortedTransactions` field, but it's possible that brokers could send aborted transactions even when not using read committed. Specifically, this was a behavior difference in Redpanda, and the KIP that introduced transactions and all relevant documents do not mention what the broker behavior actually should be here. Redpanda itself was also changed to not send aborted transactions when using read committed, but we may as well improve franz-go as well. - Decompression now better reuses buffers under the hood, reducing allocations. - Brokers that return preferred replicas to fetch from now causes an info level log in the client. #### Relevant commits - [`305d8dc`](https://togithub.com/twmb/franz-go/commit/305d8dc) kgo: allow record ctx cancelation to propagate a bit more - [`24fbb0f`](https://togithub.com/twmb/franz-go/commit/24fbb0f) **bugfix** kgo: fix deadlock in Produce when using MaxBufferedBytes - [`1827add`](https://togithub.com/twmb/franz-go/commit/1827add) **bugfix** kgo sink: fix read/write race for recBatch.canFailFromLoadErrs - [`d7ea2c3`](https://togithub.com/twmb/franz-go/commit/d7ea2c3) **bugfix** fix setting lz4 compression levels (thanks [@​asg0451](https://togithub.com/asg0451)!) - [`5809dec`](https://togithub.com/twmb/franz-go/commit/5809dec) optimise: use byteBuffer pool in decompression (thanks [@​kalbhor](https://togithub.com/kalbhor)!) - [`cda897d`](https://togithub.com/twmb/franz-go/commit/cda897d) kgo: add log for preferred replicas - [`e62b402`](https://togithub.com/twmb/franz-go/commit/e62b402) **improvement** kgo sink: do not back off on certain edge case - [`9e32bf9`](https://togithub.com/twmb/franz-go/commit/9e32bf9) kgo: ignore aborted txns if using `READ_UNCOMMITTED` </details> <details> <summary>elastic/ecs-logging-go-zap (go.elastic.co/ecszap)</summary> ### [`v1.0.3`](https://togithub.com/elastic/ecs-logging-go-zap/releases/tag/v1.0.3) [Compare Source](https://togithub.com/elastic/ecs-logging-go-zap/compare/v1.0.2...v1.0.3) #### What's Changed - github-action: listen for all the workflow runs by [@​v1v](https://togithub.com/v1v) in [https://github.com/elastic/ecs-logging-go-zap/pull/61](https://togithub.com/elastic/ecs-logging-go-zap/pull/61) - github-action: delete opentelemetry workflow by [@​v1v](https://togithub.com/v1v) in [https://github.com/elastic/ecs-logging-go-zap/pull/62](https://togithub.com/elastic/ecs-logging-go-zap/pull/62) - ci: use updatecli with GitHub secrets by [@​v1v](https://togithub.com/v1v) in [https://github.com/elastic/ecs-logging-go-zap/pull/63](https://togithub.com/elastic/ecs-logging-go-zap/pull/63) - ci: updatecli signed commits by [@​v1v](https://togithub.com/v1v) in [https://github.com/elastic/ecs-logging-go-zap/pull/65](https://togithub.com/elastic/ecs-logging-go-zap/pull/65) - updatecli: use the right pipeline file by [@​v1v](https://togithub.com/v1v) in [https://github.com/elastic/ecs-logging-go-zap/pull/64](https://togithub.com/elastic/ecs-logging-go-zap/pull/64) - updatecli: use shared updatecli policies by [@​v1v](https://togithub.com/v1v) in [https://github.com/elastic/ecs-logging-go-zap/pull/66](https://togithub.com/elastic/ecs-logging-go-zap/pull/66) - github-action: add dependabot for GitHub actions by [@​v1v](https://togithub.com/v1v) in [https://github.com/elastic/ecs-logging-go-zap/pull/67](https://togithub.com/elastic/ecs-logging-go-zap/pull/67) - build(deps): bump the github-actions group across 1 directory with 2 updates by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/elastic/ecs-logging-go-zap/pull/68](https://togithub.com/elastic/ecs-logging-go-zap/pull/68) - ci: add gomod to dependabot config by [@​kruskall](https://togithub.com/kruskall) in [https://github.com/elastic/ecs-logging-go-zap/pull/70](https://togithub.com/elastic/ecs-logging-go-zap/pull/70) - build(deps): bump github.com/stretchr/testify from 1.8.1 to 1.9.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/elastic/ecs-logging-go-zap/pull/72](https://togithub.com/elastic/ecs-logging-go-zap/pull/72) - build: bump go version by [@​kruskall](https://togithub.com/kruskall) in [https://github.com/elastic/ecs-logging-go-zap/pull/73](https://togithub.com/elastic/ecs-logging-go-zap/pull/73) - Update .go-version by [@​kruskall](https://togithub.com/kruskall) in [https://github.com/elastic/ecs-logging-go-zap/pull/74](https://togithub.com/elastic/ecs-logging-go-zap/pull/74) - test: always set entry timestamp by [@​kruskall](https://togithub.com/kruskall) in [https://github.com/elastic/ecs-logging-go-zap/pull/75](https://togithub.com/elastic/ecs-logging-go-zap/pull/75) - test: always set entry timestamp by [@​kruskall](https://togithub.com/kruskall) in [https://github.com/elastic/ecs-logging-go-zap/pull/76](https://togithub.com/elastic/ecs-logging-go-zap/pull/76) - build(deps): bump go.uber.org/zap from 1.24.0 to 1.27.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/elastic/ecs-logging-go-zap/pull/71](https://togithub.com/elastic/ecs-logging-go-zap/pull/71) #### New Contributors - [@​dependabot](https://togithub.com/dependabot) made their first contribution in [https://github.com/elastic/ecs-logging-go-zap/pull/68](https://togithub.com/elastic/ecs-logging-go-zap/pull/68) **Full Changelog**: elastic/ecs-logging-go-zap@v1.0.2...v1.0.3 </details> <details> <summary>cznic/sqlite (modernc.org/sqlite)</summary> ### [`v1.31.1`](https://gitlab.com/cznic/sqlite/compare/v1.31.0...v1.31.1) [Compare Source](https://gitlab.com/cznic/sqlite/compare/v1.31.0...v1.31.1) ### [`v1.31.0`](https://gitlab.com/cznic/sqlite/compare/v1.30.2...v1.31.0) [Compare Source](https://gitlab.com/cznic/sqlite/compare/v1.30.2...v1.31.0) </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 was generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View the [repository job log](https://developer.mend.io/github/cerbos/cerbos). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJhcmVhL2RlcGVuZGVuY2llcyIsImJvdHMiLCJraW5kL2Nob3JlIl19--> --------- Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Signed-off-by: Oğuzhan Durgun <[email protected]> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Oğuzhan Durgun <[email protected]>
[![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 | |---|---|---|---|---|---|---|---| | [github.com/grpc-ecosystem/grpc-gateway/v2](https://togithub.com/grpc-ecosystem/grpc-gateway) | `v2.20.0` -> `v2.21.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.21.0?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.21.0?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.20.0/v2.21.0?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.20.0/v2.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | minor | | [google.golang.org/grpc/cmd/protoc-gen-go-grpc](https://togithub.com/grpc/grpc-go) | `v1.4.0` -> `v1.5.1` | [![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgrpc%2fcmd%2fprotoc-gen-go-grpc/v1.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/google.golang.org%2fgrpc%2fcmd%2fprotoc-gen-go-grpc/v1.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/google.golang.org%2fgrpc%2fcmd%2fprotoc-gen-go-grpc/v1.4.0/v1.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgrpc%2fcmd%2fprotoc-gen-go-grpc/v1.4.0/v1.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | require | minor | | | All locks refreshed | | | | | | lockFileMaintenance | | [jekyll-feed](https://togithub.com/jekyll/jekyll-feed) | `0.15.1` -> `0.17.0` | [![age](https://developer.mend.io/api/mc/badges/age/rubygems/jekyll-feed/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/rubygems/jekyll-feed/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/rubygems/jekyll-feed/0.15.1/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/rubygems/jekyll-feed/0.15.1/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | minor | --- ### Release Notes <details> <summary>grpc-ecosystem/grpc-gateway (github.com/grpc-ecosystem/grpc-gateway/v2)</summary> ### [`v2.21.0`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.21.0) [Compare Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.20.0...v2.21.0) #### What's Changed - feat: Use version info from runtime/debug:BuildInfo when installed by go build by [@​MakDon](https://togithub.com/MakDon) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4359](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4359) - feat: add mux middlewares and inject http pattern by [@​nikitaksv](https://togithub.com/nikitaksv) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4290](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4290) - Fixes [#​3917](https://togithub.com/grpc-ecosystem/grpc-gateway/issues/3917): Add package openapi naming strategy. by [@​jgiles](https://togithub.com/jgiles) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4372](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4372) - feat: use buildInfo.Main.Version as version when installed by go install by [@​MakDon](https://togithub.com/MakDon) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4390](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4390) - Add support for method's deprecated option by [@​vajexal](https://togithub.com/vajexal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4373](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4373) - adding gRPC gateway generator script by [@​akoserwal](https://togithub.com/akoserwal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4426](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4426) - fix url gen-grpc-gateway-api by [@​akoserwal](https://togithub.com/akoserwal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4434](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4434) - ci: upgrade to goreleaser v2 by [@​johanbrandhorst](https://togithub.com/johanbrandhorst) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4437](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4437) - docs: add grpc-starter transcoding to related projects by [@​DanielLiu1123](https://togithub.com/DanielLiu1123) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4456](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4456) - Fix build on 32bit systems by [@​gibmat](https://togithub.com/gibmat) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4557](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4557) #### New Contributors - [@​nikitaksv](https://togithub.com/nikitaksv) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4290](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4290) - [@​vajexal](https://togithub.com/vajexal) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4373](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4373) - [@​akoserwal](https://togithub.com/akoserwal) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4426](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4426) - [@​DanielLiu1123](https://togithub.com/DanielLiu1123) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4456](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4456) - [@​gibmat](https://togithub.com/gibmat) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4557](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4557) **Full Changelog**: grpc-ecosystem/grpc-gateway@v2.20.0...v2.21.0 </details> <details> <summary>grpc/grpc-go (google.golang.org/grpc/cmd/protoc-gen-go-grpc)</summary> ### [`v1.5.1`](https://togithub.com/grpc/grpc-go/releases/tag/v1.5.1): Release 1.5.1 [Compare Source](https://togithub.com/grpc/grpc-go/compare/v1.5.0...v1.5.1) - Do not create new addrConn when connection error happens ([#​1369](https://togithub.com/grpc/grpc-go/issues/1369)) ### [`v1.5.0`](https://togithub.com/grpc/grpc-go/releases/tag/v1.5.0): Release 1.5.0 [Compare Source](https://togithub.com/grpc/grpc-go/compare/v1.4.0...v1.5.0) ### Performance - BDP estimation and window update. ([#​1310](https://togithub.com/grpc/grpc-go/issues/1310)) - Do not flush NewStream header on client side for unary RPCs and streaming RPCs with requests. ([#​1343](https://togithub.com/grpc/grpc-go/issues/1343)) - Change objects in recvBuffer queue from interface to concrete type to reduce allocs ([#​1029](https://togithub.com/grpc/grpc-go/issues/1029)) - Don't create new reader in recvMsg ([#​940](https://togithub.com/grpc/grpc-go/issues/940)) ### API change - Add support for grpc.SupportPackageIsVersion3 back ([#​1331](https://togithub.com/grpc/grpc-go/issues/1331)) - Add Severity and VerboseLevel to grpclog. ([#​922](https://togithub.com/grpc/grpc-go/issues/922)) ### Behavior change - Transport errors should be coded Unavailable instead of internal. ([#​1307](https://togithub.com/grpc/grpc-go/issues/1307)) - Catch invalid use of Server.RegisterService after Register.Serve ([#​828](https://togithub.com/grpc/grpc-go/issues/828)) ### Bug fixes - Fix deadlock of roundrobin balancer ([#​1353](https://togithub.com/grpc/grpc-go/issues/1353)) - Use log severity and verbosity level ([#​1340](https://togithub.com/grpc/grpc-go/issues/1340)) - Protect bytesSent and bytesReceived with mutex to avoid datarace ([#​1318](https://togithub.com/grpc/grpc-go/issues/1318)) - Support IPv6 addresses in grpclb ([#​1303](https://togithub.com/grpc/grpc-go/issues/1303)) - Return header in Stream.Header() if available ([#​1281](https://togithub.com/grpc/grpc-go/issues/1281)) - Fix error handling on Stream deletion ([#​1275](https://togithub.com/grpc/grpc-go/issues/1275)) ### Documentation - Add documentation to deprecate WithTimeout dial option ([#​1333](https://togithub.com/grpc/grpc-go/issues/1333)) - Specify characters allowed in metadata keys ([#​1299](https://togithub.com/grpc/grpc-go/issues/1299)) - Update LICENSE to Apache 2 ([#​1290](https://togithub.com/grpc/grpc-go/issues/1290)) - Update the path of guide ([#​950](https://togithub.com/grpc/grpc-go/issues/950)) ### Testing - latency: sleep in Write when BDP is exceeded to avoid buffer bloat ([#​1330](https://togithub.com/grpc/grpc-go/issues/1330)) - Replace 127.0.0.1 with localhost for ipv6 only environment ([#​1306](https://togithub.com/grpc/grpc-go/issues/1306)) - Create latency package for realistically simulating network latency ([#​1286](https://togithub.com/grpc/grpc-go/issues/1286)) - Use subtests for the benchmark_test and add it into the Makefile ([#​1278](https://togithub.com/grpc/grpc-go/issues/1278)) </details> <details> <summary>jekyll/jekyll-feed (jekyll-feed)</summary> ### [`v0.17.0`](https://togithub.com/jekyll/jekyll-feed/blob/HEAD/History.markdown#0170--2022-10-14) [Compare Source](https://togithub.com/jekyll/jekyll-feed/compare/v0.16.0...v0.17.0) ##### Documentation - Update CI status badge ([#​363](https://togithub.com/jekyll/jekyll-feed/issues/363)) ##### Development Fixes - Add Ruby 3.1 to the CI matrix ([#​365](https://togithub.com/jekyll/jekyll-feed/issues/365)) ##### Minor Enhancements - Allow disabling of jekyll-feed while in development ([#​370](https://togithub.com/jekyll/jekyll-feed/issues/370)) ### [`v0.16.0`](https://togithub.com/jekyll/jekyll-feed/blob/HEAD/History.markdown#0160--2022-01-03) [Compare Source](https://togithub.com/jekyll/jekyll-feed/compare/v0.15.1...v0.16.0) ##### Minor Enhancements - Add support for `page.description` in front matter to become entry `<summary>` ([#​297](https://togithub.com/jekyll/jekyll-feed/issues/297)) ##### Bug Fixes - Fold private methods into the `:render` method as local variables ([#​327](https://togithub.com/jekyll/jekyll-feed/issues/327)) - Check `post.categories` instead of `post.category` ([#​357](https://togithub.com/jekyll/jekyll-feed/issues/357)) - Switched xml_escape for `<![CDATA[]]>` for post content ([#​332](https://togithub.com/jekyll/jekyll-feed/issues/332)) ##### Development Fixes - Add Ruby 3.0 to CI ([#​337](https://togithub.com/jekyll/jekyll-feed/issues/337)) - Lock RuboCop to v1.18.x ([#​348](https://togithub.com/jekyll/jekyll-feed/issues/348)) - Add workflow to release gem via GH Action ([#​355](https://togithub.com/jekyll/jekyll-feed/issues/355)) ##### Documentation - Use `.atom` extension in documented examples since we write an Atom feed ([#​359](https://togithub.com/jekyll/jekyll-feed/issues/359)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 6am on wednesday" in timezone Australia/Sydney, 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 was generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View the [repository job log](https://developer.mend.io/github/google/osv.dev). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
…34316) [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [github.com/grpc-ecosystem/grpc-gateway/v2](https://togithub.com/grpc-ecosystem/grpc-gateway) | `v2.20.0` -> `v2.21.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.21.0?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.21.0?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.20.0/v2.21.0?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.20.0/v2.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>grpc-ecosystem/grpc-gateway (github.com/grpc-ecosystem/grpc-gateway/v2)</summary> ### [`v2.21.0`](https://togithub.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.21.0) [Compare Source](https://togithub.com/grpc-ecosystem/grpc-gateway/compare/v2.20.0...v2.21.0) #### What's Changed - feat: Use version info from runtime/debug:BuildInfo when installed by go build by [@​MakDon](https://togithub.com/MakDon) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4359](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4359) - feat: add mux middlewares and inject http pattern by [@​nikitaksv](https://togithub.com/nikitaksv) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4290](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4290) - Fixes [#​3917](https://togithub.com/grpc-ecosystem/grpc-gateway/issues/3917): Add package openapi naming strategy. by [@​jgiles](https://togithub.com/jgiles) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4372](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4372) - feat: use buildInfo.Main.Version as version when installed by go install by [@​MakDon](https://togithub.com/MakDon) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4390](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4390) - Add support for method's deprecated option by [@​vajexal](https://togithub.com/vajexal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4373](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4373) - adding gRPC gateway generator script by [@​akoserwal](https://togithub.com/akoserwal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4426](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4426) - fix url gen-grpc-gateway-api by [@​akoserwal](https://togithub.com/akoserwal) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4434](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4434) - ci: upgrade to goreleaser v2 by [@​johanbrandhorst](https://togithub.com/johanbrandhorst) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4437](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4437) - docs: add grpc-starter transcoding to related projects by [@​DanielLiu1123](https://togithub.com/DanielLiu1123) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4456](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4456) - Fix build on 32bit systems by [@​gibmat](https://togithub.com/gibmat) in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4557](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4557) #### New Contributors - [@​nikitaksv](https://togithub.com/nikitaksv) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4290](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4290) - [@​vajexal](https://togithub.com/vajexal) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4373](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4373) - [@​akoserwal](https://togithub.com/akoserwal) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4426](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4426) - [@​DanielLiu1123](https://togithub.com/DanielLiu1123) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4456](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4456) - [@​gibmat](https://togithub.com/gibmat) made their first contribution in [https://github.com/grpc-ecosystem/grpc-gateway/pull/4557](https://togithub.com/grpc-ecosystem/grpc-gateway/pull/4557) **Full Changelog**: grpc-ecosystem/grpc-gateway@v2.20.0...v2.21.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (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. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector-contrib). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: opentelemetrybot <[email protected]> Co-authored-by: Alex Boten <[email protected]>
References to other Issues or PRs
Issue #4319
Have you read the Contributing Guidelines?
Yes
Brief description of what is fixed or changed
Added Middleware for ServerMux
Added the option of passing a HTTP Pattern to the request context
Other comments
Our team encountered a problem that middleware can only be applied to the Mux "http.Handler", which is unsafe for our application. Middleware is triggered regardless of whether a route exists or not, which leads to unnecessary triggering of middlewares. Also in http.Handler middleware there is no way except "defer" to get http pattern, so we added an option to pass HttpPattern in the request context before triggering middlewares.