This repository was archived by the owner on Mar 4, 2022. It is now read-only.
Releases: uber/prototool
Releases · uber/prototool
v1.10.0
- 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)
- Added a regex check for a release candidate syntax in the protobuf version. If it exists, remove the hyphen for the version portion of the URL (#515)
v1.9.0
v1.8.0
v1.7.0
v1.6.0
v1.5.0
- Add linters for enum field and message field comments. These linters are not
part of any lint group but can be manually added in a configuration file. - Add
--generate-ignoresflag to thelintcommand to print out the value
forlint.ignoresthat will allowlintto pass. This is useful when
migrating to a set of lint rules, usually a lint group. - Update the default version of
protocto3.7.1.
v1.4.0
- Add concept of lint groups. The default lint group is named
uber1. The lint
group can be specified with thelint.groupoption. - New
uber2lint group and associated V2 Style Guide representing the second
version of our lint rules. These rules are almost entirely a superset of the
V1 Style guide lint rules. Iflint.groupis set touber2, this also will
affect thecreateandformatcommands, as theuber2lint group adds
more file options to more closely match the Google Cloud APIs File Structure
and changes the value ofgo_packageto take versions into account.
In total, 39 lint rules have been added as compared to theuber1lint
group. - New
googlelint group representing Google's minimal Style Guide. - Add
--list-lint-groupflag to thelintcommand to list a lint group's
rules. - Add
--diff-lint-groupsflag to thelintcommand to print the diff
between two lint groups. - Add
descriptor-setcommand to output a mergedFileDescriptorSet
with all files compiled to either stdout, a given file, or a temporary file.
Useful with external tools that use FileDescriptorSets, and also useful for
inspection if the--jsonflag is given. - Add breaking change detector as the
break checkcommand. By default, this
compiles your existing Protobuf definitions, and then does a shallow clone
of your git repository against the default branch and compiles the
definitions on that branch, and compares the existing versus the branch.
The branch can be controlled with the--git-branchflag, and one can
use aFileDescriptorSetinstead of a shallow clone by generating a
file withbreak descriptor-setand then passing the path to this file
tobreak checkwith the--descriptor-set-pathflag. - A Docker image is now provided on Docker Hub as uber/prototool
which provides an environment with commonly-used plugins. - Switch to Golang Modules for dependency management.
- Add Bazel build files and
bazel/deps.bzlto allow Prototool to be easily
built within a Bazel workspace. - Add
lint.file_headeroption to allow a file header to be specified. This
affectslint,format, andcreate. - Allow
generate.plugins.pathto be relative. If a relative path is given,
Prototool will search yourPATHfor the specified executable. - Add
generate.plugins.file_suffixoption that allows for JAR generation with
the built-injavaplugin, andFileDescriptorSetgeneration with the
built-indescriptor_setplugin. - Add
generate.plugins.include_importsand
generate.plugins.include_source_infoto be used with the built-in
descriptor_setplugin. - Add
cachetop-level command to allow management of theprotoccache. - Add
xtop-level command for experimental functionality. - Add
inspectcommand underxwith Protobuf inspection capabilities. - Add
--error-formatflag to allow specific error fields to be printed. - Allow the
protocbinary and WKT paths to be controlled by the environment
variablesPROTOTOOL_PROTOC_BIN_PATHandPROTOTOOL_PROTOC_WKT_PATHin
addition to the existing--protoc-bin-pathand--protoc-wkt-pathflags.
The flags take precedence. This is especially useful for Docker images. - Add file locking around the
protocdownloader to eliminate concurrency
issues where multipleprototoolinvocations may be accessing the cache
at the same time. - Add TLS support to the
grpccommand. - Add
--detailsflag to thegrpccommand to output headers, trailers,
and statuses as well as the responses. - Unix domain sockets can now be specified for the
--addressflag of the
grpccommand via the prefixunix://.
v1.3.0
Added
- Accept
prototool.jsonfiles for configuation in addition to
prototool.yamlfiles. - Add
--config-dataflag. - Add
--protoc-bin-pathand--protoc-wkt-pathflags to manually
set the paths for whereprotocis run and where the
Well-Known Types are included from.