Lucio Franco and GitHub
eba7ec7b32
feat: Add gRPC interceptors ( #232 )
...
This change introduces proper gRPC interceptors that are avilable
regardless of the transport used. Each codegen service now produces an
additional method called `with_interceptor` that accepts a
`Interceptor`.
All examples have been updated to use this new style and interop has a
custom `tower::Service` middleware to echo the headers. There is also a
new `interceptor` example that shows basic usage.
BREAKING CHANGE: removed `interceptor_fn` and `intercep_headers_fn` from `transport` in favor of using `tonic::Interceptor`.
2020-01-13 21:26:08 -05:00
Juan Alvarez and Lucio Franco
0fa2bf1cea
feat(codec): Introduce Decoder/Encoder traits ( #208 )
...
BREAKING CHANGE: Add new `Decoder/Encoder` traits and use `EncodeBuf/DecodeBuf` over `BytesMut` directly.
2020-01-13 11:59:19 -05:00
Juan Alvarez and Lucio Franco
a41f55ab9d
fix(build): Remove default impl for Server traits ( #229 )
...
BREAKING CHANGE: remove default implementations for server traits.
2020-01-13 09:42:14 -05:00
Marcel and Lucio Franco
dadc8186c2
chore: Upgrade to prost, prost-build and prost-derive 0.6 ( #230 ) ( #231 )
2020-01-13 09:40:57 -05:00
Lucio Franco and GitHub
af807c3ccd
feat(transport): Add server side peer cert support ( #228 )
...
* feat(transport): Add server side peer cert support
2020-01-11 14:17:19 -08:00
Johan Andersson and Lucio Franco
3be8bc1668
Run CI checks & tests on Windows and Mac ( #206 )
...
* Run CI checks & tests on Windows and Mac
* Fix uds windows compile
Co-authored-by: Lucio Franco <[email protected] >
2020-01-11 14:16:54 -08:00
Lucio Franco and GitHub
6673f91f1f
chore: Remove required bytes dep and clean up deny ( #227 )
...
* chore: Remove required bytes dep and clean up deny
* Fix interop test cli args
2020-01-11 12:48:24 -08:00
Lucio Franco and GitHub
18e944bd28
chore: Update prost codec to not use workaround ( #226 )
2020-01-11 12:27:00 -08:00
Adam Jacob and Lucio Franco
8997f47b6d
chore: Upgrade to prost master and bytes 0.5 ( #224 )
...
This upgrades tonic to prost's master branch, and moves everything to
bytes 0.5.
2020-01-11 11:05:08 -08:00
Adam Jacob and Lucio Franco
e034288c37
feat(build): Add extern_path config support ( #223 )
...
Adds support for prost-build's "extern_path" feature. This allows you to
reference another prost-generated protobuf, including any traits that
may have been defined for it, from another crate or location.
2020-01-10 15:31:10 -05:00
Lucio Franco and GitHub
a66595bfe3
feat(transport): Add serve_with_incoming_shutdown ( #220 )
2020-01-08 11:00:57 -05:00
Juan Alvarez and Lucio Franco
faa26ac152
chore(example) Fix routeguide errors ( #218 )
...
* chore(example) Fix routeguide errors
* remove redundant line
2020-01-07 16:53:30 -05:00
Linus Färnstrand and Lucio Franco
ec1f37e4b4
fix(transport): Improve Error type ( #217 )
2020-01-04 14:24:26 -05:00
Juan Alvarez and Lucio Franco
49ce265954
chore: Add decode benchmarks ( #207 )
...
* disable current benchmarks
* temporarily expose Streaming constructor
* hide Streaming constructor from docs
* remove crossbeam-queue from deny skip list
* add decode benches
* fmt
* use Bytes as MockDecoder Item
2019-12-22 16:51:34 -05:00
Thomas May and Lucio Franco
59d008db7e
chore(docs): Fix examples link ( #202 )
...
* url is just examples, not tonic-examples
* Change root directory from tonic-examples to examples. Matches current directory structure.
2019-12-20 22:39:39 -05:00
Johan Andersson and Lucio Franco
5e6b1fe487
chore(ci): Switch to use GitHub Action for cargo-deny ( #201 )
2019-12-20 11:41:37 -05:00
Lucio Franco and GitHub
61a770dedf
chore: Prepare 0.1.0-beta.1 release ( #200 )
...
* chore: Prepare `0.1.0-beta.1` release
* Update changelog
* Fix tower paths
2019-12-19 18:44:25 -05:00
Lucio Franco and GitHub
8efdbb4631
chore: Use released version of tower ( #199 )
...
* chore: Use released version of tower
* Update the rest
2019-12-19 18:31:40 -05:00
Juan Alvarez and Lucio Franco
4e5c6c8f23
chore(example): update guides to 0.1-beta.1 ( #198 )
...
* update routeguide
* update helloworld
* depend on tonic beta.1
* Apply suggestions from code review
Co-Authored-By: Lucio Franco <[email protected] >
Co-authored-by: Lucio Franco <[email protected] >
2019-12-19 18:23:25 -05:00
Fletcher Nichol and Lucio Franco
6566b237a1
chore(docs): Fix routeguide tutorial source links ( #195 )
...
Signed-off-by: Fletcher Nichol <[email protected] >
2019-12-17 16:21:13 -05:00
Brandon Williams and Lucio Franco
c99d13c6e6
fix(transport): Fix infinite recursion in poll_ready ( #192 )
...
b90c340 (feat(transport): Allow custom IO and UDS example (#184 ),
2019-12-13) changed the Connector type to be more generic instead of
only allowing the HttpConnector type, during this change the
`Service::poll_ready` impl was changed from calling
`MakeConnection::poll_ready` on `self.http` to `self` resulting in
infinite recursion due to the blanket imple of
`MakeConnection::poll_ready` calling `Service::poll_ready`.
This fixes the bug by calling `MakeConnection::poll_ready` on
`self.inner` instead of `self`.
Fixes #191
2019-12-15 18:36:10 -05:00
Juan Alvarez and Lucio Franco
3a5c66d5f2
fix(build): snake_case service names ( #190 )
2019-12-14 15:08:28 -05:00
Lucio Franco and GitHub
82facb6283
chore: Apply clippy ( #189 )
2019-12-13 23:55:49 -05:00
Lucio Franco and GitHub
502491a590
fix(transport): Remove with_rustls for tls config ( #188 )
2019-12-13 20:31:22 -05:00
Lucio Franco and GitHub
3eb76abf9f
feat(transport): Add remote_addr to Request on the server si… ( #186 )
2019-12-13 20:25:00 -05:00
Lucio Franco and GitHub
0505dff65a
fix(transport): Fix lazily reconnecting ( #187 )
...
Closes #167
2019-12-13 20:24:45 -05:00
Lucio Franco and GitHub
97d5363e2b
fix(build): Remove async ready ( #185 )
...
* fix(build): Remove async ready
* fix build
2019-12-13 18:19:23 -05:00
Lucio Franco and GitHub
b90c340800
feat(transport): Allow custom IO and UDS example ( #184 )
...
Closes #136
2019-12-13 17:14:49 -05:00
Artem Vorotnikov and Lucio Franco
7077d8dfd0
chore(docs): Fix routeguide tutorial link ( #183 )
2019-12-13 13:10:43 -05:00
Lucio Franco and GitHub
bab1d5d255
chore: Fix readme links ( #181 )
2019-12-12 12:02:01 -05:00
Lucio Franco and GitHub
d9a481baef
chore: Reorganize examples and interop crates ( #180 )
...
* chore: Reorganize examples and interop crates
* fix interop tests
2019-12-12 11:53:15 -05:00
Brandon Williams and Lucio Franco
f096a238ac
chore(examples): add helloworld-client-blocking ( #179 )
...
Add an example of using a tonic client in a synchronous environment.
2019-12-12 09:48:27 -05:00
Lucio Franco and GitHub
8f1a25278e
chore: Remove unused files ( #178 )
2019-12-11 22:32:48 -05:00
Lucio Franco and GitHub
f46a45401d
feat(transport): Add tracing support to server ( #175 )
...
* feat(transport): Add tracing to server
* Add tracing example
* Fix duplicate versions of tracing-subscriber
2019-12-11 19:45:11 -05:00
Lucio Franco and GitHub
1626c2eae0
chore(transport): Clean up server and channel ( #174 )
...
* chore(transport): Clean up server and channel
* Fix tls feature compilation
2019-12-11 18:19:11 -05:00
Lucio Franco and GitHub
0847b67c4e
fix(build): Allow creating multiple services in the same package ( #173 )
...
BREAKING CHANGE: Build will now generate each service client and server into their own modules.
2019-12-11 16:22:03 -05:00
xd009642 and Lucio Franco
393a57eade
feat(transport): Add server graceful shutdown ( #169 )
2019-12-11 16:07:05 -05:00
Lucio Franco and GitHub
cce550be85
chore: More clean up ( #172 )
...
* Clean up client and codec
* Clean up codegen, server and upgrade hyper
2019-12-11 16:05:30 -05:00
Adam Harvey and Lucio Franco
48a69bb36b
chore(examples): enable the macros feature for tokio::main ( #166 )
...
tokio 0.2 split out its macros into a feature that is disabled by
default, so we'll re-enable it to allow example builds to work once
more.
2019-12-06 19:51:59 -05:00
Juan Alvarez and Lucio Franco
0eb9991b9f
feat: expose tcp_nodelay for clients and servers ( #145 )
...
* expose tcp_nodelay
* do not depend on difference versions of rand
2019-12-06 17:07:24 -05:00
Juan Alvarez and Lucio Franco
6b43f63578
remove tower cargo patches ( #164 )
2019-12-06 12:23:37 -05:00
Philippe GASSMANN and Lucio Franco
caccfad7e7
feat(transport): Expose tcp keepalive to clients & servers ( #151 )
2019-12-06 11:56:06 -05:00
Lucio Franco and GitHub
3387ef900f
Upgrade to tokio 0.2 ( #163 )
2019-12-06 00:09:46 -05:00
Lucio Franco and GitHub
4471a5f19c
chore(interop): Update console dep ( #155 )
2019-11-26 09:50:01 -05:00
James Nugent and Lucio Franco
33df3badb2
Temporarily allow duplicate crossbeam-queue crates ( #153 )
...
`crossbeam-queue` is currently brought in both by Rayon (up to date v0.2.0) and
Hyper's dependency chain (0.1.x). Since Hyper is in the process of updating
things, I proposed we temporarily allow this to pass CI and revisit it when
there is a new release of Hyper or the relevant dependencies thereof.
2019-11-25 16:18:52 -05:00
Juan Alvarez and James Nugent
354d4fdc35
fix(examples): Remove use of VecDeque as a placeholder type ( #143 )
2019-11-19 13:29:33 +00:00
Juan Alvarez and Lucio Franco
f9502dfd7e
fix: Sanitize custom metadata ( #138 )
2019-11-15 13:44:19 +01:00
Juan Alvarez and Lucio Franco
997241c43f
feat: Add Status constructors ( #137 )
...
Co-Authored-By: Lucio Franco <[email protected] >
2019-11-15 13:32:34 +01:00
James Nugent and Lucio Franco
85060500f3
fix(transport): Remove support for OpenSSL ( #141 )
...
BREAKING CHANGE: Remove support for OpenSSL within the transport.
2019-11-15 13:30:42 +01:00
Nicholas Bishop and Lucio Franco
c63c107560
fix(docs): typo in lib.rs ( #142 )
2019-11-14 23:34:07 +01:00