This version makes Protobuf Editions available to users of this package, without needing to use a special opt-in that is documented as test-only. It contains one backwards-incompatible change, only for users that used that Editions opt-in: it has been removed since the functionality is now generally available.
What's Changed
Bugfixes
Correctly handle groups in the TextName method of field descriptors created by the compiler in #297
Fix bug in extension declarations: presence of a declaration implies the range is verified in #303
Fix a typo in code that adapts/re-parses features to match a descriptor; addresses a bug in protoutil.ResolveCustomFeature in #305
Add more thorough checks for when to adapt a value when resolving custom feature; addresses a deficiency in protoutil.ResolveCustomFeature in #306
Correctly handle maps in the Kind method of field descriptors created by the compiler, in files that define a file-wide default of delimited encoding for messages in #312
Enhancements
Add google/protobuf/cpp_features.proto, google/protobuf/java_features.proto, and google/protobuf/go_features.proto to the set of files provided by protocomile.WithStandardImports in #295
Add some final checks to mirror logic of protoc v27.0: files cannot use custom features defined in the same file, enforce "feature support" options, which define the editions in which a feature and/or feature value can be used in #301 and #309
Enable support for Protobuf Editions. To start, this only supports edition 2023. Added in #301
This contains a backwards-incompatible change: the editionstesting.AllowEditions() function (which was documented as temporary when introduced in v0.10.0) has been removed.
Add wellknownimports package, for providing actual source code for the standard imports (wellknownimports.WithStandardImports is an alternative to protocompile.WithStandardImports) in #310
Other changes
Update linker tests to use protodesc to create descriptors from compilation results, to verify compilation results can be correctly processed by protobuf-go runtime in #302
Add another (missing) test case for extension declarations in #304
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will 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 version` will 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 dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps github.com/bufbuild/protocompile from 0.13.0 to 0.14.0.
Release notes
Sourced from github.com/bufbuild/protocompile's releases.
Commits
604d705
Map fields and message values in map entries cannot be group-encoded (#312)16a0337
Add wellknownimports package, for providing actual source code for the standa...4190af1
Add final checks that were added to protoc between v27.0-rc3 and final v27.0 ...85801e4
Add more thorough checks for when to adapt a value when resolving custom feat...752249d
Fix a typo in code that adapts/re-parses features to match a descriptor (#305)2179754
Add another test case for extension declarations (#304)54ef548
Last change for Editions: enforce feature lifetimes, and make it available to...6e58a0c
Bump golang.org/x/tools from 0.20.0 to 0.21.0 in /internal/tools (#299)52103cb
Bump github.com/bufbuild/buf from 1.30.1 to 1.31.0 in /internal/tools (#296)324bc5a
Fix bug in extension declarations: presence of a declaration implies the rang...Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show