buf

The best way of working with Protocol Buffers.

APACHE-2.0 License

Downloads
1.6M
Stars
8.3K
Committers
76

Bot releases are hidden (Show)

buf - v0.35.0

Published by bufdev almost 4 years ago

  • Allow opt in buf.gen.yaml files to be either a single string, or a list of strings. Both of the following forms are accepted, and result in foo=bar,baz,bat:
version: v1beta1
plugins:
  - name: foo
    out: out
    opt: foo=bar,baz,bat
version: v1beta1
plugins:
  - name: foo
    out: out
    opt:
      - foo=bar
      - baz
      - bat
buf - v0.34.0

Published by bufdev almost 4 years ago

  • Move buf check lint to buf lint.
  • Move buf check breaking to buf breaking.
  • Move buf check ls-lint-checkers to buf config ls-lint-rules.
  • Move buf check ls-breaking-checkers to buf config ls-breaking-rules.
  • Move protoc-gen-buf-check-lint to protoc-gen-buf-lint.
  • Move protoc-gen-buf-check-breaking to protoc-gen-buf-breaking.
  • Add buf beta config init.

All previous commands continue to work in a backwards-compatible manner, and the previous protoc-gen-buf-check-lint and protoc-gen-buf-check-breaking binaries continue to be available at the same paths, however deprecation messages are printed.

buf - v0.33.0

Published by bufdev almost 4 years ago

  • Add strategy option to buf.gen.yaml generation configuration. This allows selecting either plugin invocations with files on a per-directory basis, or plugin invocations with all files at once. See the generation documentation for more details.
buf - v0.32.1

Published by bufdev almost 4 years ago

  • Fix issue where SourceCodeInfo for map fields within nested messages could be dropped.
  • Fix issue where deleted files would cause a panic when breaking.ignore_unstable_packages = true.
buf - v0.32.0

Published by bufdev almost 4 years ago

  • Add symlink support for directory inputs. Symlinks will now be followed within your local directories when running buf commands.
  • Add the breaking.ignore_unstable_packages option to allow ignoring of unstable packages when running buf check breaking. See the documentation for more details.
  • Enums that use the allow_alias option that add new aliases to a given number will no longer be considered breaking by ENUM_VALUE_SAME_NAME. See the documentation for more details.
buf - v0.31.1

Published by bufdev almost 4 years ago

  • Fix issue where --experimental_allow_proto3_optional was not set when proxying to protoc for the builtin plugins via buf generate or buf protoc. This flag is now set for protoc versions >= 3.12.
buf - v0.31.0

Published by bufdev almost 4 years ago

  • Change the --file flag to --path and allow --path to take both files and directories, instead of just files with the old --file. This flag is used to filter the actual Protobuf files built under an input for most commands. You can now do for example buf generate --path proto/foo to only generate stubs for the files under proto/foo. Note that the --file flag continues to work, but prints a deprecation message.
buf - v0.30.1

Published by bufdev almost 4 years ago

  • Relax validation of response file names from protoc plugins, so that when possible, plugins that are not compliant with the plugin specification are still usable with buf generate.
buf - v0.30.0

Published by bufdev almost 4 years ago

  • Add git:// protocol handling.
buf - v0.29.0

Published by bufdev almost 4 years ago

As we work towards v1.0, we are cleaning up the CLI UX. As part of this, we made the following changes:

  • buf image build has been moved to buf build and now accepts images as inputs.
  • buf beta image convert has been deleted, as buf build now covers this functionality.
  • The -o flag is no longer required for buf build, instead defaulting to the OS equivalent of /dev/null.
  • The --source flag on buf build has been deprecated in favor of passing the input as the first argument.
  • The --source-config flag on buf build has been moved to --config.
  • The --input flag on buf check lint has been deprecated in favor of passing the input as the first argument.
  • The --input-config flag on buf check lint has been moved to --config.
  • The --input flag on buf check breaking has been deprecated in favor of passing the input as the first argument.
  • The --input-config flag on buf check breaking has been moved to --config.
  • The --against-input flag on buf check breaking has been moved to --against.
  • The --against-input-config flag on buf check breaking has been moved to --against-config.
  • The --input flag on buf generate has been deprecated in favor of passing the input as the first argument.
  • The --input-config flag on buf generate has been moved to --config.
  • The --input flag on buf ls-files has been deprecated in favor of passing the input as the first argument.
  • The --input-config flag on buf ls-files has been moved to --config.

We feel these changes make using buf more natural. Examples:

# compile the files in the current directory
buf build
# equivalent to the default no-arg invocation
buf build .
# build the repository at https://github.com/foo/bar.git
buf build https://github.com/foo/bar.git
# lint the files in the proto directory
buf check lint proto
# check the files in the current directory against the files on the master branch for breaking changes
buf check breaking --against .git#branch=master
# check the files in the proto directory against the files in the proto directory on the master branch
buf check breaking proto --against .git#branch=master,subdir=proto

Note that existing commands and flags continue to work. While the deprecation messages will be printed, and we recommend migrating to the new invocations, your existing invocations have no change in functionality.

buf - v0.28.0

Published by bufdev almost 4 years ago

  • Add subdir option for archive and git Inputs. This allows placement of the buf.yaml configuration file in directories other than the base of your repository. You then can check against this subdirectory using, for example, buf check breaking --against-input https://github.com/foo/bar.git#subdir=proto.
buf - v0.27.1

Published by bufdev about 4 years ago

  • Fix minor typo in buf help generate documentation.
buf - v0.27.0

Published by bufdev about 4 years ago

  • Move buf beta generate out of beta to buf generate. This command now uses a template of configured plugins to generate stubs. See buf help generate for more details.
buf - v0.26.0

Published by bufdev about 4 years ago

  • Add jar and zip support to buf protoc and buf beta generate.
buf - v0.25.0

Published by bufdev about 4 years ago

  • Add the concept of configuration file version. The only currently-available version is v1beta1. See buf.build/docs/faq for more details.
buf - v0.24.0

Published by bufdev about 4 years ago

  • Add fish completion to releases.
  • Update the protoc version for buf protoc to be 3.13.0.
buf - v0.23.0

Published by bufdev about 4 years ago

  • Move the experimental parent command to beta. The command buf experimental image convert continues to work, but is deprecated in favor of buf beta image convert.
  • Add buf beta generate.
buf - v0.22.0

Published by bufdev about 4 years ago

buf - v0.21.0

Published by bufdev about 4 years ago

  • Fix issue where optional fields in proto3 would cause the ONEOF_LOWER_SNAKE_CASE lint checker to fail.
buf - v0.20.5

Published by bufdev about 4 years ago