Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.28.1->1.40.11.6.0->1.10.01.6.0->1.10.0Release Notes
bufbuild/buf (@bufbuild/buf)
v1.40.1Compare Source
buf lintwhere comment ignores in the shape of// buf:lint:ignore <RULE_ID> <extra comment>were not recognized due to the extra comment.
v1.40.0Compare Source
buf config ls-{breaking,lint}-rules. Default rules are those rules which are run if no lintor breaking rules are explicitly configured in your
buf.yaml.DEFAULTlint rule category toSTANDARD. With the concept of default rules being introduced,having a category named
DEFAULTis confusing, as while it happens that all the rules in theDEFAULTlint category are also default rules, the name has become overloaded. As with all
bufchanges, thischange is backwards-compatible: the
DEFAULTlint category continues to work, and always will. Werecommend changing to
STANDARD, however.v1.39.0Compare Source
includeskey to module configurations in v2buf.yaml, accepting a list of directories.includesis specified, a proto file is considered in the module only if it is in one of thedirectories specified.
includesandexcludeskeys are specified for a module, a proto file is consideredpart of this module if it is contained in any of the include paths and not in any of the exclude
paths.
buf.yamlto have the same directory path.v1.38.0Compare Source
--http3flag tobuf curlwhich forcesbuf curlto use HTTP/3 as the transport.a path to a module, but contained directories with modules, and the modules would not build.
buf.lockfiles whenbuf dep updatedoes not find new dependenciesto update and there is no existing
buf.lock.buf pushto push the license file or doc file (e.g.README.md,LICENSE) in thesame directory as
buf.yamlif a module does not have a license file or doc file in themodule's directory.
--pathflag for lint and breaking rules to avoid resolving all fileswithin a module. This change can result in a performance improvement for large workspaces.
v1.37.0Compare Source
STABLE_PACKAGE_NO_IMPORT_UNSTABLElint rule which disallows files from stable packagesto import files from unstable packages.
v1.36.0Compare Source
--list-servicesand--list-methodsflags tobuf curl, which trigger the command to listknown services or methods in the RPC schema, instead of invoking an RPC method.
cleanas a top-level option inbuf.gen.yaml, matching thebuf generate --cleanflag. Ifset to true, this will delete the directories, jar files, or zip files set to
outfor eachplugin.
buf registry loginto complete the login flow in the browser by default. This allowsusers to login with their browser and have the token automatically provided to the CLI.
buf registry organization {create, delete, info, update}commands to manage BSRorganizations. Remove
buf beta registry organizationcommands.buf registry module {create, delete, deprecate, info, undeprecate, update}commands tomanage BSR modules. Remove
buf beta registry repositorycommands.buf registry label {archive, info, list, unarchive}commands to manage BSR module labels.Remove
buf beta registry labelcommands andbuf beta registry {archive, unarchive}.buf registry commit {add-label, info, list, resolve}to manage BSR module commits. Removebuf beta registry commitcommands.v1.35.1Compare Source
refto align with thegitnotion of a ref. This allows for the useof branch names, tag names, and commit hashes.
buf builderrors with absolute path directory inputs without workspace and/ormodule configurations (e.g.
buf.yaml,buf.work.yaml) and proto file paths set to the--pathflag.v1.35.0Compare Source
buf generate --cleanflag that will delete the directories, jar files, or zip files that theplugins will write to, prior to generation. Allows cleaning of existing assets without having
to call
rm -rf.--usernameflag on and username prompt onbuf registry login. A username is no longerrequired to log in.
v1.34.0Compare Source
buf config ls-modulescommand to list configured modules.buf generatewould succeed on missing insertion points andpanic on empty insertion point files.
buf generateto allow the use of Editions syntax when doing local codegeneration by proxying to a
protocbinary (for languages where code gen isimplemented inside of
protocinstead of in a plugin: Java, C++, Python, etc).protoc_pathproperty of forbuf.gen.yaml,where the first array element is the actual path and other array elements are extra
arguments that are passed to
protoceach time it is invoked.v1.33.0Compare Source
--source-control-urland--create-default-labelwhen using--git-metadatawithbuf push.buf push --git-metadatawhen local tags point to different objects thanthe remote tags.
PROTOVALIDATElint rule violations.buf beta registry label {create,get,list}to replacebuf beta registry {draft, tag}commands.
buf beta commit {get,list}command outputs to display create time and stopdisplaying associated tags.
buf beta commit list <buf.build/owner/repository>when thereference is empty. It now lists commits in the repository instead of listing commits
of the default label.
buf formatto canonicalize the punctuation used in message literalsin option values. The output now always uses
{and}instead of<and>; itadds
:separators between field names and message values if the source omitted them,and it removes unnecessary separators between fields (
,and;are allowed, butneither is needed).
buf format -wso that it does not touch files whose contents don't actuallychange. This eliminates noisy notifications to file-system-watcher tools that are
watching the directory that contains proto sources.
buf generateto work with plugins provided by protoc for versions v24.0to v25.3. Editions support was experimental in these releases, and the plugins
advertise incomplete support for editions, which triggers
bufto report an error.With this fix, these plugins can be used again as long as none of the input files use
editions syntax.
buf push --exclude-unnamedflag to exclude unnamed modules when pushing to the BSR.v1.32.2Compare Source
buf generateto warn instead of error when proto3 optional is required but notsupported by a plugin.
v1.32.1Compare Source
--pathand--exclude-pathpaths are relative tothe
#subdirrather than the root of the input. This fixes an unintended behavior changethat was introduced in
v1.32.0.moduleinput forprotoc-gen-buf-lintandprotoc-gen-buf-breakingto allowusers to specify the module for
v2configuration files.v1.32.0Compare Source
v2forbuf.yamlandbuf.gen.yamlconfiguration files.buf config migrateto migrate configuration files to the latest version (nowv2).buf mod inittobuf config init.buf mod initis now deprecated.buf mod ls-lint-rulestobuf config ls-lint-rules.buf mod ls-lint-rulesis nowdeprecated.
buf mod ls-breaking-rulestobuf config ls-breaking-rules.buf mod ls-breaking-rulesis now deprecated.
buf mod prunetobuf dep prune.buf mod pruneis now deprecated.buf mod updatetobuf dep update.buf mod updateis now deprecated.buf mod {clear-cache,cc}tobuf registry cc.buf mod {clear-cache,cc}is nowdeprecated.
buf beta graphto stable asbuf dep graph.buf push --create-visibilitytoprivatewhen the--createflag is set. Users are no longer required to set
--create-visibilitywhen runningbuf push --create.buf push --label, which allows users to set labels when pushing new commits to the BSR.buf push --source-control-url, which allows users to associate commits pushed to the BSRwith a URL to a source code repository.
buf push --create-default-label, which allows users to set a default label for a repositorywhen calling
buf push --create.buf push --git-metadata, which automatically sets appropriate--label,--source-control-url, and--create-default-labelflags based on the current Git repository.buf convert --validateto apply protovalidaterules to incoming messages specified with
--from.buf mod open.buf beta migrate-v1beta1This is now replaced withbuf config migrate.buf registry sdk versionto get the version of a Generated SDK for a module and plugin.buf beta registry archiveandbuf beta registry unarchivecommands for archiving andunarchiving labels on the BSR.
bufto be used with sources that use edition2023, instead of proto2 or proto3 syntax. This also updates the
protoc-gen-buf-breakingandprotoc-gen-buf-lintProtobuf plugins to support files that use edition 2023.buf breakingrules to work with Protobuf Editions. To support Editions, some rules havebeen deprecated and replaced with Editions-aware rules. All deprecated rules continue to work
for existing users.
FIELD_SAME_CTYPEhas been replaced withFIELD_SAME_CPP_STRING_TYPE, which considers bothctypefield options and new(pb.cpp).string_typefeatures when deciding on backwardscompatibility.
FIELD_SAME_LABELhas been replaced with three rules that all check "cardinality". The newrules can distinguish between maps and other repeated fields and between implicit and explicit
field presence. The new rules are:
FIELD_SAME_CARDINALITYin theFILEandPACKAGEcategories.FIELD_WIRE_COMPATIBLE_CARDINALITYin theWIREcategory.FIELD_WIRE_JSON_COMPATIBLE_CARDINALITYin theWIRE_JSONcategory.FILE_SAME_JAVA_STRING_CHECK_UTF8has been replaced withFIELD_SAME_JAVA_UTF8_VALIDATION,which considers both the
java_string_check_utf8file option and(pb.java).utf8_validationfeatures when deciding on backwards compatibility.
FILE_SAME_SYNTAXrule with a few related rules that can catch the samesort of compatibility issues, but in an Editions source file that changes feature values:
MESSAGE_SAME_JSON_FORMATandENUM_SAME_JSON_FORMATcatch changes to thejson_formatfeature, which controls whether support for the JSON format is best-effort or properly
supported. When supported, the compiler performs more checks relating to field name
collisions for the JSON format as well as for FieldMask usage.
FIELD_SAME_UTF8_VALIDATIONcatches changes to theutf8_validationfeature, whichcontrols validation of string values.
ENUM_SAME_TYPEcatches changes to an enum's type, open vs. closed.buf breaking. All existing rules for fields are now applied toextensions, except for
FIELD_NO_DELETE(and its variants). There are also newEXTENSION_NO_DELETEandPACKAGE_EXTENSION_NO_DELETErules for catching deletions of anextension. The new rules are not active by default in existing
v1andv1beta1configurations, for backwards-compatibility reasons. Migrate your config to
v2to use them.buf lint. It previously only checked extensions thatwere defined inside of messages.
FIELD_NOT_REQUIREDlint rule that prevents use of required in proto2 files and offeatures.field_presence = LEGACY_REQUIREDin Editions files. This new rule is not active bydefault in existing
v1andv1beta1configurations, for backwards-compatibility reasons.Migrate your config to
v2to use them.v1.31.0Compare Source
v1.30.1Compare Source
buf lintincorrectly reports an error for(buf.validate.field).repeatedis set for a repeated validation rule.
v1.30.0Compare Source
buf generateso it populates the recently-addedsource_file_descriptorsfield of the
CodeGeneratorRequestmessage. This provides the plugin with access to optionsthat are configured to only be retained in source and not at runtime (via
field option).
Descriptors in the
proto_filefield will not include any options configured this wayfor the files named in
file_to_generatefield.--exclude-source-retention-optionsflag tobuf build, whichcauses options configured to only be retained in source to be stripped
from the output descriptors.
v1.29.0Compare Source
yamlformat. All commands that take image inputs, output images,or convert between message formats, now take
yamlas a format, in addition tothe existing
binpbandtxtpbformats. Some examples:buf build -o image.yamlbuf ls-files image.yamlbuf convert --type foo.Bar --from input.binpb --to output.yamlyamlandjsonformats now accept two new options:use_proto_namesanduse_enum_numbers. This affects output serialization. Some examples:buf convert --type foo.Bar --from input.binpb --to output.yaml#use_proto_names=truebuf convert --type foo.Bar --from input.binpb --to -#format=yaml,use_enum_numbers=truebuf formatwould inadvertently mangle files that usedthe expanded
Anysyntaxin option values.
bufbuild/protobuf-es (@bufbuild/protobuf)
v1.10.0Compare Source
What's Changed
Full Changelog: bufbuild/protobuf-es@v1.9.0...v1.10.0
v1.9.0Compare Source
What's Changed
New Contributors
Full Changelog: bufbuild/protobuf-es@v1.8.0...v1.9.0
v1.8.0Compare Source
What's Changed
/*@​__PURE__*/annotation for better tree-shaking support by @pmzi in https://github.com/bufbuild/protobuf-es/pull/470New Contributors
Full Changelog: bufbuild/protobuf-es@v1.7.2...v1.8.0
v1.7.2Compare Source
What's Changed
New Contributors
Full Changelog: bufbuild/protobuf-es@v1.7.1...v1.7.2
v1.7.1Compare Source
What's Changed
Full Changelog: bufbuild/protobuf-es@v1.7.0...v1.7.1
v1.7.0Compare Source
What's Changed
This release adds support for extensions, a Protobuf language feature that allows to extend a message with an additional field.
For example:
For the extension
age, we generate a new exportconst age: Extension<User, number>. You can set the extension field with the functionsetExtension:To learn more about the details, see the API documentation.
For plugin authors: Since extensions provide a better way to access custom options in a plugin, we are deprecating the
findCustom*Optionfunctions from@bufbuild/protoplugin/ecmascript. We recommend to switch to extensions for better type safety and flexibility, see the PR for details.All changes
Full Changelog: bufbuild/protobuf-es@v1.6.0...v1.7.0
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.