Commit Graph

85 Commits

Author SHA1 Message Date
Joshua Humphries bfbbed1d42
vet with modules (#150)
fixes CI failures caused by newer version of dependency introducing new deprecations that cause staticcheck violations
2020-04-16 15:27:01 -04:00
Johan Brandhorst 153d36db8c
Remove golang/protobuf/jsonpbtest dep (#145)
With 1.4.0 the golang/protobuf json testing protofiles
are being moved to [an internal package][1]. While this is
technically a breaking change, I doubt the maintainers
are going to reintroduce it, so I've copied the necessary
parts to our own testing protofile.

This allows users of this package and, more importantly,
grpcui to try 1.4.0 without this package having to migrate yet.
When it comes to migrating to 1.4.0, this should also make the
transition easier.

[1]: https://github.com/golang/protobuf/tree/v1.4.0-rc.4/internal/testprotos
2020-04-03 12:45:05 -04:00
Joshua Humphries 2af40876fc
drop Go 1.9 and 1.10 from CI; add 1.13 and 1.14 (#144) 2020-04-01 09:02:40 -04:00
Joshua Humphries 0218a7db67
add script and readme for creating new releases (#140) 2020-03-18 08:51:18 -04:00
Richard Belleville 96cfd48e32
Activate xDS support in grpcurl (#137) 2020-03-13 16:29:41 -04:00
Richard Belleville d30f3a01b7
Bump grpc to 1.28 (#136) 2020-03-12 18:55:09 -04:00
Joshua Humphries 0d669e78d0
use wrapped TransportCredentials instead of handling handshake in Dialer (#130)
* use wrapped TransportCredentials instead of handling handshake in Dialer, so that grpc library will use correct :scheme
* support -authority for TLS conns; now effectively supercedes -servername flag
2020-01-27 12:15:47 -05:00
Blake Williams 9572bd4525 Register gzip decoder (#124) 2019-11-26 08:55:50 -05:00
Joshua Humphries ccc9007156
add -protoset-out option (#120) 2019-09-30 09:50:17 -04:00
J M 9248ea0963 Add Expand Headers Feature (#117) 2019-09-26 17:26:38 -04:00
Joshua Humphries 4054d1d115
fix go.mod for Go 1.13 (#110) 2019-08-09 14:17:53 -04:00
Joshua Humphries 5631bba117
add official Dockerfile (#104) 2019-07-03 15:57:24 -04:00
Joshua Humphries 80425d1b17
use protoreflect 1.4.4 (#109) 2019-07-03 15:56:51 -04:00
Joshua Humphries 7e4045565f
update all deps; use new ResolveFilenames method (#103) 2019-05-24 10:26:38 -04:00
Joshua Humphries e5b4fc6cc0
add API to expose AnyResolver implementations backed by a DescriptorSource (#102) 2019-05-22 21:38:46 -04:00
Joshua Humphries 09c3d1d69e
use just-released v1.3.0 protoreflect (#101) 2019-05-22 16:20:41 -04:00
Joshua Humphries 5d6316f470
Adds support for showing error details (#98)
To better support printing of google.protobuf.Any messages (error details), this
also makes a few other changes:
1. Allows printing of unresolvable Any messages using an "@value" field in JSON output
   that has the base64-encoded embedded message data.
2. Improves support for "-format text" to show expanded Any messages if possible.
   (Due to limitations in underlying proto package, this will usually *not* be
   that helpful. But this should greatly improve with v2 of the go protobuf API.)
3. Addresses a TODO in existing AnyResolver code to lazily fetch descriptors
   as needed instead of having to download all files eagerly.
2019-04-09 09:34:39 -04:00
Joshua Humphries f0723c6273
fix flaky test (#93) 2019-03-25 10:34:32 -04:00
Joshua Humphries fe97274a1b
staticcheck no longer runs on Go 1.10 (#92)
* staticcheck no longer runs on Go 1.10, so run it on Go 1.11 in CI
* be explicit about default make target in .travis.yml
2019-03-22 14:35:01 -04:00
CodeLingo Team 1bbf8dae71 Fix function comments based on best practices from Effective Go (#87)
Signed-off-by: CodeLingo Bot <bot@codelingo.io>
2019-03-13 10:58:13 -04:00
Joshua Humphries 0fcd3253f6
latest protoreflect fixes some bugs in JSON marshaling/unmarshaling (#86) 2019-03-07 13:35:49 -05:00
Joshua Humphries 4c9c82cec3
use custom flagset (#85) 2019-02-28 10:58:53 -05:00
Joshua Humphries 5082a1dc68
add -max-msg-sz flag (#84) 2019-02-28 08:35:50 -05:00
Joshua Humphries d641a66208
fix flaky test where code can be 'cancelled' unexpectedly, instead of some error code provided by the server (#83) 2019-02-27 20:28:43 -05:00
Joshua Humphries ce84976d3c
fix typo in readme
fixes #79
2019-02-27 18:16:55 -05:00
Joshua Humphries b292d5aef8
add Go 1.12 to travis config (#82) 2019-02-27 17:31:54 -05:00
Joshua Humphries 5516a45602
update proto and grpc deps (#81)
Fixes the build by updating grpc (and deps) and using new, non-deprecated function
2019-02-27 17:30:44 -05:00
Andrew McCallum 4a329f3b13 add Homebrew installation method to README (#77) 2019-01-23 10:50:39 -05:00
Joshua Humphries 1c6532c060
fix minor issues caught by staticcheck (#76) 2019-01-03 10:09:24 -05:00
Joshua Humphries 0f9e76c978
ignore deprecated check for now (#75) 2018-12-17 10:47:17 -05:00
Joshua Humphries 9fa2fce63b
make method invocation resilient to errors trying to load all files from server (#74) 2018-12-13 11:44:43 -05:00
Joshua Humphries 70e9bba1b8
fix typo in Makefile (#72) 2018-12-12 10:10:23 -05:00
Joshua Humphries d86529bb4f
don't use TLS 1.3, which isn't quite right yet in Go tip (#66) 2018-11-15 20:27:01 -05:00
Joshua Humphries 0dea37ee70
on error reading request, bidi stream would hang (#63) 2018-11-01 14:32:56 -04:00
Joshua Humphries dfa06f4410
several Go libraries, including gRPC and golang.org/x/net/http2, no longer support Go 1.8 and older (#64) 2018-11-01 14:24:33 -04:00
Joshua Humphries 22ce2f04fd
account type in OpenAccount RPC was ignored (#61) 2018-11-01 13:52:58 -04:00
Joshua Humphries 1e8e50f4f8
make MakeTemplate more robust (#60) 2018-10-22 22:59:11 -04:00
Joshua Humphries 7cabe7a9d0
move more stuff from cmd to package (#59) 2018-10-19 14:47:25 -04:00
Joshua Humphries 9a4bbacdd6
some pre-factoring and small fixes (#58)
* organize into multiple files
* make listing methods show fully-qualified names
* address small feedback from recent change (trim then check if empty)
2018-10-18 23:51:38 -04:00
Joshua Humphries 69ea782936
reconcile with recent change to "describe" output 2018-10-18 13:54:51 -04:00
Joshua Humphries 58cd93280e
use proto syntax for describe (#57) 2018-10-18 13:50:44 -04:00
Joshua Humphries a337c1afcf
improve flag doc with go 1.10+ (#56) 2018-10-18 13:16:33 -04:00
Joshua Humphries e00ef3eb7c
add option to support text format (#54)
* augments grpcurl package API in order to handle multiple formats
* deprecates old signature for InvokeRpc
* add command-line flag to use protobuf text format instead of JSON
* use AnyResolver when marshaling to/from JSON
2018-10-16 21:26:16 -04:00
Joshua Humphries 397a8c18ca
update README (#55)
* Revises the sections that talk about descriptor sources, making them more consistent.
* Adds a link to the Gophercon 2018 talk on grpcurl.
* Improve  installation section, mentioning versioned Go.
2018-10-16 12:56:40 -04:00
Joshua Humphries 554e69be2c
use correct package name for golint (#53) 2018-10-12 09:06:35 -04:00
Ryo Nakao 2dd771c49e fix typo in InvokeRpc() comment (#50) 2018-09-26 22:02:34 -04:00
Leigh McCulloch 79a550b858 add goreleaser (#49)
* add goreleaser

Add a goreleaser configuration file that builds binaries for Linux,
MacOS and Windows, for 32bit (x86/386) and 64bit (x64/amd64). The
binaries will be archived into a tar.gz/zip file along with the LICENSE
file.

The `dist/` directory will be written to by goreleaser with the binaries
during the build process, so it's also been added to .gitignore.

To build all the binaries and release them to GitHub:
1. Tag the release. e.g. `git tag -a v1.0.0 -m 'First release'`
2. Generate a GitHub Personal Access Token. See https://github.com/settings/tokens.
3. Push the release to GitHub. e.g. `git push origin v1.0.0`
4. Make the release, which will publish binaries to the GitHub "Releases" page. e.g.  `GITHUB_TOKEN=xxxxxxx... make release`

* add -version flag

Run `grpcurl -version` to see the release version. Use `make install` to build a binary that shows the version based on current git hash (which will show a version number if HEAD is a release tag and otherwise uses `git describe` to summarize the version).
2018-09-25 09:34:02 -04:00
Joshua Humphries d4d048fade
support go modules (#48)
* support go modules
- use Go 1.11 (with and without module support) in CI
- add go.mod and go.sum files
- with modules in Go 1.11, can't rely on GOPATH directory layout, so just copy test.proto into this repo
2018-09-14 20:18:53 -04:00
Joshua Humphries 6198551381
add bankdemo, from Gophercon 2018 demo (#45) 2018-09-07 18:21:02 -04:00
Jean de Klerk 1e72fa2cd1 Point to server reflection docs (#38)
Service reflection has very poor SEO and unfortunately not great discoverability. Since this package is an entry-point for service reflection, this helps make the process of finding this information easier.
2018-08-08 10:43:18 -04:00