This repository has been archived by the owner on Mar 4, 2022. It is now read-only.
Releases: uber/prototool
Releases · uber/prototool
v1.0.0
v1.0.0-rc1
Fixed
- Fixed regression where
prototool version
did not output 'Git commit' and
'Built'.
v0.7.1
v0.7.0
Changed
- Move
protoc_includes
andprotoc_version
settings underprotoc
key. - Move
allow_unused_imports
toprotoc.allow_unused_imports
. - Move
protoc-url
global flag under the applicable commands: all,
compile, format, gen, and lint. - Rename
gen
togenerate
.
v0.6.0
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 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. - Refactor
create.dir_to_base_package
to the listcreate.packages
See
the documentation for more details. - Rename
create.dir_to_base_package
->create.dir_to_package
. - Move
prototool init
toprototool config init
. - Move
gen.plugin_overrides
togen.plugins.path
. - Refactor
lint
configuration. See the documentation for details. - Refactor
format --no-rewrite
so that the previous default is now enabled via
format --fix
.
Fixed
- Fix
excludes
setting to correctly match file path prefixes.
v0.5.0
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
andlist-linters
are now flags
on thelint
command. - The flags
--cache-path
and--print-fields
are deleted to reduce the
surface area for the v1.0 release. - The option
lint.group
in theprototool.yaml
configuration is deleted
to reduce the surface area for the v1.0 release. - The command
protoc-commands
is now accessible via the--dry-run
flag on the commandscompile
andgen
. - The
grpc
command now takes the flags--address
,--method
, and--data
or--stdin
as opposed to parsing these from variable-length command args. - If more than one
prototool.yaml
is found for the input directory or files,
an error is returned. - The
prototool
binary package is moved underinternal
.
v0.4.0
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
, andjava_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 forprototool 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 ofgo_package
,
java_multiple_files
,java_outer_classname
, andjava_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
prototool format
in the README.md for more details.- Formatting configuration options are removed. We think there should be
only one way to format, so we went with defaults of two spaces for indents,
semicolons at the end of RPCs if there are no RPC options, and always
having a newline at the end of a file.
v0.3.0
Added
- Linters to verify that
java_multiple_files
andjava_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
orprototool lint
.
v0.2.0
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
fromprototool format
.