github.com/ovsinc/prototool@v1.3.0/CHANGELOG.md (about) 1 # Changelog 2 All notable changes to this project will be documented in this file. 3 4 The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) 5 and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). 6 7 ## [1.3.0] - 2018-09-17 8 ### Added 9 - Accept `prototool.json` files for configuation in addition to 10 `prototool.yaml` files. 11 - Add `--config-data` flag. 12 - Add `--protoc-bin-path` and `--protoc-wkt-path` flags to manually 13 set the paths for where `protoc` is run and where the 14 Well-Known Types are included from. 15 16 17 ## [1.2.0] - 2018-08-29 18 ### Added 19 - Add `json` flag to `all`, `compile`, `format`, `generate` and `lint` commands. 20 21 22 ## [1.1.0] - 2018-08-24 23 ### Added 24 - Add support for Homebrew builds. 25 26 27 ## [1.0.0] - 2018-08-23 28 - Initial release. 29 30 31 ## [1.0.0-rc1] 2018-08-16 32 ### Fixed 33 - Fixed regression where `prototool version` did not output 'Git commit' and 34 'Built'. 35 36 37 ## [0.7.1] 2018-08-15 38 ### Fixed 39 - Fixed an issue where Golang `Mname=package` modifiers were being duplicated. 40 41 42 ## [0.7.0] - 2018-08-09 43 ### Changed 44 - Move `protoc_includes` and `protoc_version` settings under `protoc` key. 45 - Move `allow_unused_imports` to `protoc.allow_unused_imports`. 46 - Move `protoc-url` global flag under the applicable commands: all, 47 compile, format, gen, and lint. 48 - Rename `gen` to `generate`. 49 50 51 ## [0.6.0] - 2018-08-03 52 ### Changed 53 - Delete the ability to explicitly specify multiple files, and have the effect 54 of one file being specified be the same as the former `--dir-mode`. See 55 [#16](https://github.com/uber/prototool/issues/16) for more details. 56 - Delete `protoc_include_wkt` setting. This is always set to true. 57 - Delete `no_default_excludes` setting. This is always set to true. 58 - Delete `gen.go_options.no_default_modifiers` setting. 59 - Delete `lint.group` setting. 60 - Delete `harbormaster` global flag. 61 - Refactor `create.dir_to_base_package` to the list `create.packages` See 62 the documentation for more details. 63 - Rename `create.dir_to_base_package` -> `create.dir_to_package`. 64 - Move `prototool init` to `prototool config init`. 65 - Move `gen.plugin_overrides` to `gen.plugins.path`. 66 - Refactor `lint` configuration. See the documentation for details. 67 - Refactor `format --no-rewrite` so that the previous default is now enabled via 68 `format --fix`. 69 ### Fixed 70 - Fix `excludes` setting to correctly match file path prefixes. 71 72 73 ## [0.5.0] - 2018-07-26 74 ### Added 75 - A linter to verify that no enum uses the option `allow_alias.` 76 - The `--protoc-url` flag can now handle references to local protoc zip files 77 as well as normal http references by handling urls of the form 78 `file:///path/to/protoc.zip`. 79 ### Changed 80 - The formatter now prints primitive field options on the same line 81 as the field. 82 - The commands `binary-to-json`, `clean`, `descriptor-proto`, `download`, 83 `field-descriptor-proto`, `json-to-binary`, `list-all-linters`, 84 `list-all-lint-groups`, `list-linters`, `list-lint-group`, and 85 `service-descriptor-proto` are deleted to reduce the surface area 86 for the v1.0 release. 87 - The commands `list-all-linters` and `list-linters` are now flags 88 on the `lint` command. 89 - The flags `--cache-path` and `--print-fields` are deleted to reduce the 90 surface area for the v1.0 release. 91 - The option `lint.group` in the `prototool.yaml` configuration is deleted 92 to reduce the surface area for the v1.0 release. 93 - The command `protoc-commands` is now accessible via the `--dry-run` 94 flag on the commands `compile` and `gen`. 95 - The `grpc` command now takes the flags `--address`, `--method`, and `--data` 96 or `--stdin` as opposed to parsing these from variable-length command args. 97 - If more than one `prototool.yaml` is found for the input directory or files, 98 an error is returned. 99 - The `prototool` binary package is moved under `internal`. 100 101 102 ## [0.4.0] - 2018-06-22 103 ### Added 104 - A new command `prototool create` to auto-generate Protobuf files from a 105 template. The generated files have the Protobuf package, `go_package`, 106 `java_multiple_files`, `java_outer_classname`, and `java_package` values set 107 depending on the location of your file and config settings. Make sure to 108 update your Vim plugin setup as well if using the Vim integration. See the 109 documentation for `prototool create` in the README.md for more details. 110 ### Changed 111 - The values for `java_multiple_files`, `java_outer_classname`, and 112 `java_package` that pass lint by default now reflect what is expected 113 by the Google Cloud APIs file structure. See 114 https://cloud.google.com/apis/design/file_structure for more details. 115 - `protobuf format` will now automatically update the value of `go_package`, 116 `java_multiple_files`, `java_outer_classname`, and `java_package` to match 117 what is expected in the default Style Guide. This functionality can be 118 suppressed with the flag `--no-rewrite`. See the documentation for 119 `prototool format` in the README.md for more details. 120 - Formatting configuration options are removed. We think there should be 121 only one way to format, so we went with defaults of two spaces for indents, 122 semicolons at the end of RPCs if there are no RPC options, and always 123 having a newline at the end of a file. 124 125 126 ## [0.3.0] - 2018-06-14 127 ### Added 128 - Linters to verify that `java_multiple_files` and `java_outer_classname` are 129 unset. 130 ### Fixed 131 - The formatting order now reflects 132 https://cloud.google.com/apis/design/file_structure by moving the location 133 of imports to be below syntax, package, and file options. 134 - Temporary files used for `FileDescriptorSets` are now properly cleaned up. 135 - Packages that begin with a keyword no longer produce an error when using 136 `prototool format` or `prototool lint`. 137 138 139 ## [0.2.0] - 2018-05-29 140 ### Added 141 - A default lint rule to verify that a package is always declared. 142 - A lint group `all` that contains all the lint rules, not just the default 143 lint rules. 144 - A flag `--harbormaster` that will print failures in JSON that is compatible 145 with the Harbormaster API. 146 147 ### Fixed 148 - `prototool init` will return an error if there is an existing prototool.yaml 149 file instead of overwriting it. 150 - Nested options are now properly printed out from `prototool format`. 151 - Repeated options are now properly printed out from `prototool format`. 152 - Weak and public imports are now properly printed out from `prototool format`. 153 - Option keys with empty values are no longer printed out 154 from `prototool format`. 155 156 157 ## 0.1.0 - 2018-04-11 158 ### Added 159 - Initial release. 160 161 [1.3.0]: https://github.com/uber/prototool/compare/v1.2.0...v1.3.0 162 [1.2.0]: https://github.com/uber/prototool/compare/v1.1.0...v1.2.0 163 [1.1.0]: https://github.com/uber/prototool/compare/v1.0.0...v1.1.0 164 [1.0.0]: https://github.com/uber/prototool/compare/v1.0.0-rc1...v1.0.0 165 [1.0.0-rc1]: https://github.com/uber/prototool/compare/v0.7.1...v1.0.0-rc1 166 [0.7.1]: https://github.com/uber/prototool/compare/v0.7.0...v0.7.1 167 [0.7.0]: https://github.com/uber/prototool/compare/v0.6.0...v0.7.0 168 [0.6.0]: https://github.com/uber/prototool/compare/v0.5.0...v0.6.0 169 [0.5.0]: https://github.com/uber/prototool/compare/v0.4.0...v0.5.0 170 [0.4.0]: https://github.com/uber/prototool/compare/v0.3.0...v0.4.0 171 [0.3.0]: https://github.com/uber/prototool/compare/v0.2.0...v0.3.0 172 [0.2.0]: https://github.com/uber/prototool/compare/v0.1.0...v0.2.0