Skip to content

Releases: bufbuild/buf

v1.40.1

06 Sep 22:16
f358c8f
Compare
Choose a tag to compare
  • Fix issue with buf lint where comment ignores in the shape of // buf:lint:ignore <RULE_ID> <extra comment> were not recognized due to the extra comment.

v1.40.0

04 Sep 23:08
a7fdc11
Compare
Choose a tag to compare
  • Add concept of a default lint or breaking rule, which is printed out as a property when running buf config ls-{breaking,lint}-rules. Default rules are those rules which are run if no lint or breaking rules are explicitly configured in your buf.yaml.
  • Rename DEFAULT lint rule category to STANDARD. With the concept of default rules being introduced, having a category named DEFAULT is confusing, as while it happens that all the rules in the DEFAULT lint category are also default rules, the name has become overloaded. As with all buf changes, this change is backwards-compatible: the DEFAULT lint category continues to work, and always will. We recommend changing to STANDARD, however.

v1.39.0

27 Aug 22:44
496f588
Compare
Choose a tag to compare
  • Fix git input handling of relative HEAD refs without branch names.
  • Add includes key to module configurations in v2 buf.yaml, accepting a list of directories.
    • If includes is specified, a proto file is considered in the module only if it is in one of the
      directories specified.
    • If both includes and excludes keys are specified for a module, a proto file is considered
      part of this module if it is contained in any of the include paths and not in any of the exclude
      paths.
  • Allow multiple module configurations in the same v2 buf.yaml to have the same directory path.

v1.38.0

22 Aug 14:58
ec7b887
Compare
Choose a tag to compare
  • Add --http3 flag to buf curl which forces buf curl to use HTTP/3 as the transport.
  • Fix issue with directory inputs for v2 workspaces where the specified directory was not itself
    a path to a module, but contained directories with modules, and the modules would not build.
  • Stop creating empty buf.lock files when buf dep update does not find new dependencies
    to update and there is no existing buf.lock.
  • Update buf push to push the license file or doc file (e.g. README.md, LICENSE) in the
    same directory as buf.yaml if a module does not have a license file or doc file in the
    module's directory.
  • Fix constraints of --path flag for lint and breaking rules to avoid resolving all files
    within a module. This change can result in a performance improvement for large workspaces.

v1.37.0

16 Aug 19:09
186b026
Compare
Choose a tag to compare
  • Add STABLE_PACKAGE_NO_IMPORT_UNSTABLE lint rule which disallows files from stable packages
    to import files from unstable packages.
  • Fix plugin push failures when pushing an image built with containerd image store.

v1.36.0

06 Aug 19:21
3eeb006
Compare
Choose a tag to compare
  • Add --list-services and --list-methods flags to buf curl, which trigger the command to list
    known services or methods in the RPC schema, instead of invoking an RPC method.
  • Add clean as a top-level option in buf.gen.yaml, matching the buf generate --clean flag. If
    set to true, this will delete the directories, jar files, or zip files set to out for each
    plugin.
  • Fix git input handling of annotated tags.
  • Update buf registry login to complete the login flow in the browser by default. This allows
    users to login with their browser and have the token automatically provided to the CLI.
  • Add buf registry organization {create, delete, info, update} commands to manage BSR
    organizations. Remove buf beta registry organization commands.
  • Add buf registry module {create, delete, deprecate, info, undeprecate, update} commands to
    manage BSR modules. Remove buf beta registry repository commands.
  • Add buf registry label {archive, info, list, unarchive} commands to manage BSR module labels.
    Remove buf beta registry label commands and buf beta registry {archive, unarchive}.
  • Add buf registry commit {add-label, info, list, resolve} to manage BSR module commits. Remove
    buf beta registry commit commands.

v1.35.1

24 Jul 20:29
f37053e
Compare
Choose a tag to compare
  • 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

22 Jul 20:19
da90244
Compare
Choose a tag to compare
  • 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.

v1.34.0

21 Jun 19:55
3b5b535
Compare
Choose a tag to compare
  • Add buf config ls-modules command to list configured modules.
  • Fix issue where buf generate would succeed on missing insertion points and panic on empty insertion point files.
  • Update buf generate to allow the use of Editions syntax when doing local code generation by proxying to a protoc binary (for languages where code gen is implemented inside of protoc instead of in a plugin: Java, C++, Python, etc).
  • Allow use of an array of strings for the protoc_path property of for buf.gen.yaml, where the first array element is the actual path and other array elements are extra arguments that are passed to protoc each time it is invoked.

v1.33.0

13 Jun 16:08
2d796a7
Compare
Choose a tag to compare
  • Allow user to override --source-control-url and --create-default-label when using --git-metadata with buf push.
  • Fix buf push --git-metadata when local tags point to different objects than the remote tags.
  • Fix issue where comment ignores were not respected for PROTOVALIDATE lint rule violations.
  • Add buf beta registry label {create,get,list} to replace buf beta registry {draft, tag} commands.
  • Update buf beta commit {get,list} command outputs to display create time and stop displaying associated tags.
  • Change the behavior of buf beta commit list <buf.build/owner/repository> when the reference is empty. It now lists commits in the repository instead of listing commits of the default label.
  • Update output of buf format to canonicalize the punctuation used in message literals in option values. The output now always uses { and } instead of < and >; it adds : separators between field names and message values if the source omitted them, and it removes unnecessary separators between fields (, and ; are allowed, but neither is needed).
  • Update buf format -w so that it does not touch files whose contents don't actually change. This eliminates noisy notifications to file-system-watcher tools that are watching the directory that contains proto sources.
  • Update buf generate to work with plugins provided by protoc for versions v24.0 to v25.3. Editions support was experimental in these releases, and the plugins advertise incomplete support for editions, which triggers buf to report an error. With this fix, these plugins can be used again as long as none of the input files use editions syntax.
  • Add buf push --exclude-unnamed flag to exclude unnamed modules when pushing to the BSR.