api-testing
api-testing copied to clipboard
chore(deps): bump github.com/jhump/protoreflect from 1.15.3 to 1.17.0
Bumps github.com/jhump/protoreflect from 1.15.3 to 1.17.0.
Release notes
Sourced from github.com/jhump/protoreflect's releases.
v1.17.0
This release deprecates some packages that have newer alternatives in the Protobuf runtime. It also includes some small additions to the
grpcreflectanddesc/sourceinfopackages. The rest of the changes are bug fixes."github.com/jhump/protoreflect/desc"
Changes:
- This package is now deprecated. Though use of this package is still needed in order to use a handful of other packages in this repo, many usages should instead prefer the
"google.golang.org/protobuf/reflect/protoreflect"package in the Protobuf runtime. In a v2 of this repo, this package will no longer be present.- A performance improvement was contributed that speeds up the
MessageDescriptor.FindFieldByNamemethod."github.com/jhump/protoreflect/desc/protoparse"
Changes and bugfixes:
- This package is now deprecated. Most usages should instead prefer the
"github.com/bufbuild/protocompile"package. There are some behavioral differences that we hope to address with additional API and enhancements toprotocompile. But theprotoparsepackage here is just a veneer on top ofprotocompileand we plan to do as little maintenance as possible here. In a v2 of this repo, this package will no longer be present.- The
protocompiledependency has been updated to use a more recent version of that package. This addresses potential panics when callingParser.ParseButDontLink."github.com/jhump/protoreflect/desc/sourceinfo"
Changes and bugfixes:
- A possible panic when calling
sourceinfo.GlobalFiles.FindDescriptorByNamehas been fixed.- Descriptors returned from the
sourceinfo.GlobalFilesregistry or from the variousWrap*functions could induce panics in user code if querying for non-existent elements. For example, callingmessageDescriptor.Fields().ByNumber(123)could return a typed-nil value on failure, instead of a nil interface. This would result in nil-dereference panics if methods were called on this later. These have been fixed.- Descriptors returned from the
sourceinfo.GlobalFilesregistry and from the variousWrap*functions had concrete types defined in this package, not in the Protobuf runtime. But theprotoreflect.Descriptorinterface has a "do not implement" marker, indicating that concrete types implementing the interface should not be implemented outside of that module. To avoid future issues with the Protobuf runtime, there are no more implementations in this repo. Instead of wrapping other descriptor implementations (via embedding, and then overriding some methods), this package now builds new descriptors, using theprotodescpackage in the Protobuf runtime module.- The various
Wrap*functions are now deprecated. The name is no longer accurate since they no longer return wrapper values. Also the new implementation, which builds new descriptors, can fail (though unlikely), but the existing signature of these functions did not allow for returning an error. So these functions could possibly panic in the face of malformed input descriptors. Users should use the newAddSourceInfoTo*versions of these functions instead.Additions:
- Adds
AddSourceInfoTo*functions to replace theWrap*functions. These functions augment the input descriptors by adding source code information to them."github.com/jhump/protoreflect/dynamic"
Changes:
- This package is now deprecated. Most usages should instead prefer the
"google.golang.org/protobuf/types/dynamicpb"package in the Protobuf runtime. In a v2 of this repo, this package will no longer be present."github.com/jhump/protoreflect/grpcreflect"
Additions:
- Adds a new
NewClientV1function to return a client that uses v1 of the server reflection service. This fills the gap in the existing factory functions,NewClientV1AlphaandNewClientAuto.- Adds a new
AllowFallbackResolvermethod to the*grpcreflect.Clienttype. This allows the client to be configured with an alternate resolver that can be used as a backup when trying to satisfy dependencies, for cases where the remote server is non-authoritative and unable to provide all of them.v1.16.0
This release adds support for Protobuf Editions to many of the packages. Note, however, that the
desc/protoparsepackage does not yet work to parse Protobuf Editions source files. This release also includes a handful of bug-fixes."github.com/jhump/protoreflect/desc"
Additions:
- Adds an
Editionmethod to*desc.FileDescriptor, which returns non-zero for files that use Protobuf Editions (instead of syntax "proto2" or "proto3").Changes/fixes:
- Fixes an issue in the various
Wrap*functions, that could result in a descriptor hierarchy where the same descriptors were incorrectly present multiple times. This could happen if a file in the transitive dependency graph being wrapped had more than one incoming edge (e.g. same file appearing in import statements from two or more other files)."github.com/jhump/protoreflect/desc/builder"
... (truncated)
Commits
06e5c08Update desc/sourceinfo to not wrap descriptors (#622)645b9ddUpdate protocompile, which fixes possible panic in ParseButDontLink (#621)9b68e7bUpdate styling of callouts in README; add info about trying out v29fdd942Allow grpcreflect to fall back to provided resolvers (#614)baac311update deps; reconcile couple of tests with latest protocompile (#613)bed9136desc/sourceinfo: fix panic when descriptor not found (#612)cb1d268perf: use concatenation to compute qualified name in MessageDescriptor.FindFi...1ba1524Add deprecation notices to the packages in this repo that have newer replacem...48670aedesc: fix caching when wrapping protoreflect.Descriptor instances (#606)aee3749support editions in desc/builder package (#605)- Additional commits viewable in compare view
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Note Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.
There are 1 test cases, failed count 0:
| Name | Average | Max | Min | Count | Error |
|---|---|---|---|---|---|
| 11.103867ms | 12.330226ms | 10.348997ms | 3 | 0 |
Reported by api-testing.
Quality Gate passed
Issues
0 New issues
0 Accepted issues
Measures
0 Security Hotspots
0.0% Coverage on New Code
0.0% Duplication on New Code
OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.
If you change your mind, just re-open this PR and I'll resolve any conflicts on it.