Gitpedia
uber

uber/prototool

Your Swiss Army Knife for Protocol Buffers

20 Releases
Latest: 6y ago
v1.10.0Latest
smaye81smaye81·6y ago·May 19, 2020
GitHub

📋 Changes

  • Document all lint rules and their group memberships (#548)
  • Add walk-timeout command line flag (#545)
  • Fix directory structure example in Style Guide (#543)
  • Add linter for ruby_package file option
  • Update Prototool deps
  • Update Prototool to go 1.14 and protoc 3.11.0
  • Use a more stable build of Alpine as a base image
  • Fix minor typos in style guide (#535)
  • + 1 more
v1.9.0
smaye81smaye81·6y ago·October 12, 2019
GitHub

📋 Changes

  • Updated dependencies for Go 1.13
v1.8.0
smaye81smaye81·6y ago·June 11, 2019
GitHub

📋 Changes

  • Update the default `protoc` version to `3.8.0`.
  • Parse updated `protoc` output for `3.8.0`.
  • Fix issue where there were an unbounded number of `protoc` calls were being executed.
v1.7.0
bufdevbufdev·7y ago·May 2, 2019
GitHub

📋 Changes

  • Fix issue where `config init --document` produced an invalid YAML file.
  • Dependency updates.
v1.6.0
smaye81smaye81·7y ago·April 5, 2019
GitHub

📋 Changes

  • Dynamically resolve `google.protobuf.Any` values for gRPC error details.
v1.5.0
bufdevbufdev·7y ago·April 3, 2019
GitHub

📋 Changes

  • Add linters for enum field and message field comments. These linters are not
  • Add `--generate-ignores` flag to the `lint` command to print out the value
  • Update the default version of `protoc` to `3.7.1`.
v1.4.0
bufdevbufdev·7y ago·March 19, 2019
GitHub

📋 Changes

  • Add concept of lint groups. The default lint group is named `uber1`. The lint
  • New `uber2` lint group and associated V2 Style Guide representing the second
  • New `google` lint group representing Google's minimal [Style Guide](https://developers.google.com/protocol-buffers/docs/style).
  • Add `--list-lint-group` flag to the `lint` command to list a lint group's
  • Add `--diff-lint-groups` flag to the `lint` command to print the diff
  • Add `descriptor-set` command to output a merged `FileDescriptorSet`
  • Add breaking change detector as the `break check` command. By default, this
  • A Docker image is now provided on Docker Hub as [uber/prototool](https://hub.docker.com/r/uber/prototool)
  • + 15 more
v1.3.0
bufdevbufdev·7y ago·September 17, 2018
GitHub

Added

  • Accept `prototool.json` files for configuation in addition to
  • `prototool.yaml` files.
  • Add `--config-data` flag.
  • Add `--protoc-bin-path` and `--protoc-wkt-path` flags to manually
  • set the paths for where `protoc` is run and where the
  • Well-Known Types are included from.
v1.2.0
amckinneyamckinney·7y ago·August 29, 2018
GitHub

Added

  • Add `json` flag to `all`, `compile`, `format`, `generate` and `lint` commands.
v1.1.0
bufdevbufdev·7y ago·August 24, 2018
GitHub

📋 Changes

  • Add support for Homebrew builds.
v1.0.0
amckinneyamckinney·7y ago·August 23, 2018
GitHub

Initial release.

v1.0.0-rc1Pre-release
peats-bondpeats-bond·7y ago·August 17, 2018
GitHub

🐛 Fixed

  • Fixed regression where `prototool version` did not output 'Git commit' and
  • 'Built'.
v0.7.1Pre-release
bufdevbufdev·7y ago·August 15, 2018
GitHub

🐛 Fixed

  • Fixed an issue where Golang `Mname=package` modifiers were being duplicated.
v0.7.0Pre-release
amckinneyamckinney·7y ago·August 9, 2018
GitHub

📋 Changed

  • Move `protoc_includes` and `protoc_version` settings under `protoc` key.
  • Move `allow_unused_imports` to `protoc.allow_unused_imports`.
  • Move `protoc-url` global flag under the applicable commands: all,
  • compile, format, gen, and lint.
  • Rename `gen` to `generate`.
v0.6.0Pre-release
bufdevbufdev·7y ago·August 3, 2018
GitHub

📋 Changed

  • Delete the ability to explicitly specify multiple files, and have the effect
  • of one file being specified be the same as the former `--dir-mode`. See
  • [#16](https://github.com/uber/prototool/issues/16) for more details.
  • Delete `protoc_include_wkt` setting. This is always set to true.
  • Delete `no_default_excludes` setting. This is always set to true.
  • Delete `gen.go_options.no_default_modifiers` setting.
  • Delete `lint.group` setting.
  • Delete `harbormaster` global flag.
  • + 8 more

🐛 Fixed

  • Fix `excludes` setting to correctly match file path prefixes.
v0.5.0Pre-release
bufdevbufdev·7y ago·July 26, 2018
GitHub

Added

  • A linter to verify that no enum uses the option `allow_alias.`
  • The `--protoc-url` flag can now handle references to local protoc zip files
  • as well as normal http references by handling urls of the form
  • `file:///path/to/protoc.zip`.

📋 Changed

  • The formatter now prints primitive field options on the same line
  • as the field.
  • The commands `binary-to-json`, `clean`, `descriptor-proto`, `download`,
  • `field-descriptor-proto`, `json-to-binary`, `list-all-linters`,
  • `list-all-lint-groups`, `list-linters`, `list-lint-group`, and
  • `service-descriptor-proto` are deleted to reduce the surface area
  • for the v1.0 release.
  • The commands `list-all-linters` and `list-linters` are now flags
  • + 12 more
v0.4.0Pre-release
bufdevbufdev·7y ago·June 22, 2018
GitHub

Added

  • A new command `prototool create` to auto-generate Protobuf files from a
  • template. The generated files have the Protobuf package, `go_package`,
  • `java_multiple_files`, `java_outer_classname`, and `java_package` values set
  • depending on the location of your file and config settings. Make sure to
  • update your Vim plugin setup as well if using the Vim integration. See the
  • documentation for `prototool create` in the README.md for more details.

📋 Changed

  • The values for `java_multiple_files`, `java_outer_classname`, and
  • `java_package` that pass lint by default now reflect what is expected
  • by the Google Cloud APIs file structure. See
  • https://cloud.google.com/apis/design/file_structure for more details.
  • `protobuf format` will now automatically update the value of `go_package`,
  • `java_multiple_files`, `java_outer_classname`, and `java_package` to match
  • what is expected in the default Style Guide. This functionality can be
  • suppressed with the flag `--no-rewrite`. See the documentation for
  • + 5 more
v0.3.0Pre-release
bufdevbufdev·7y ago·June 14, 2018
GitHub

Added

  • Linters to verify that `java_multiple_files` and `java_outer_classname` are
  • unset.

🐛 Fixed

  • The formatting order now reflects
  • https://cloud.google.com/apis/design/file_structure by moving the location
  • of imports to be below syntax, package, and file options.
  • Temporary files used for `FileDescriptorSets` are now properly cleaned up.
  • Packages that begin with a keyword no longer produce an error when using
  • `prototool format` or `prototool lint`.
v0.2.0Pre-release
bufdevbufdev·8y ago·May 29, 2018
GitHub

Added

  • A default lint rule to verify that a package is always declared.
  • A lint group `all` that contains all the lint rules, not just the default
  • lint rules.
  • A flag `--harbormaster` that will print failures in JSON that is compatible
  • with the Harbormaster API.

🐛 Fixed

  • `prototool init` will return an error if there is an existing prototool.yaml
  • file instead of overwriting it.
  • Nested options are now properly printed out from `prototool format`.
  • Repeated options are now properly printed out from `prototool format`.
  • Weak and public imports are now properly printed out from `prototool format`.
  • Option keys with empty values are no longer printed out
  • from `prototool format`.
v0.1.0Pre-release
bufdevbufdev·8y ago·April 11, 2018
GitHub

Initial release.