Commit Graph

730 Commits

Author SHA1 Message Date
Lucio Franco ff331199e4 feat(core): Default encoding/decoding limits (#1335)
* feat(core): Default encoding/decoding limits

This PR adds new defaults for both client and server max
encoding/decoding message size limits. By default, the max message
decoding size is `4MB` and the max message encoding size is
`usize::MAX`.

This is follow up work from https://github.com/hyperium/tonic/pull/1274

BREAKING: Default max message encoding/decoding limits

* update generated code
2023-03-30 16:59:08 +00:00
Pruthvikar Reddy b3358dc6ac Allow setting skip_protoc_run on the prost Builder (#1318) 2023-03-20 18:40:37 +00:00
Lucio Franco a9db219e50 fix(web): Fix enable and update docs (#1326)
* fix(web): Fix `enable` and update docs

* fix example, update deny

* fix namedservice path
2023-03-20 17:04:46 +00:00
Rafael Lemos 69ce71efa6 feat(types): Add gRPC Richer Error Model support (Docs) (#1317)
* types: improve `lib.rs` docs, add `README` file

* types: update `Cargo.toml` file
2023-03-20 15:44:47 +00:00
Lucio Franco ddec9e34f2 chore(examples): Add Cors to grpc web server (#1320) 2023-03-20 13:31:15 +00:00
Rafael Lemos d471212ee8 feat(types): Add gRPC Richer Error Model support (Examples) (#1300)
* types: remove unnecessary cloning from `ErrorDetails` getters

Breaking change.

* examples: add `richer-error` examples

Following implementation at flemosr/tonic-richer-error.
2023-03-14 15:26:35 +00:00
Lucio Franco c8027a1385 fix(codec): Cancelled client streaming handling (#1315)
This PR fixes how client side streaming is handled on the server side
and improves overall source error matching.

Fixes:

- Correctly, detect h2 codes when its wrapped in a hyper error.
- Cancelled requests from the client side during client streaming
  requests correctly return EOF (`None` from `Streaming::message()`)

Closes #848
2023-03-14 15:18:56 +00:00
Sheng Zheng dcb00262de fix document for helloworld-tutorial.md (#1316)
Signed-off-by: ZhengSheng0524 <j13tw@yahoo.com.tw>
2023-03-14 15:18:37 +00:00
tottoto 99eae577ca chore(tonic): Remove redundant reference to reference (#1309) 2023-03-13 14:28:18 +00:00
tottoto c1906074b6 chore(types): Remove unnecesarry unreachable_pub lint allowing (#1311) 2023-03-13 14:28:04 +00:00
Luca Pette c0d1397abb Fix typo (#1308) 2023-03-10 20:52:48 +00:00
Rafael Lemos d54d02d3ed feat(types): Add gRPC Richer Error Model support (LocalizedMessage) (#1295)
* types: add support for `LocalizedMessage` error message type

Following implementation at flemosr/tonic-richer-error.

* types: add `ErrorDetails::with_help_link`
2023-02-27 16:25:43 +00:00
tottoto 838d91aca3 chore: Update to tower-http 0.4 (#1296)
* chore: Update to tower-http 0.4

* chore(tonic): Update to axum 0.6.9
2023-02-27 14:33:14 +00:00
Rafael Lemos d6041a99c2 feat(types): Add gRPC Richer Error Model support (Help) (#1293)
* types: add support for `Help` error message type

Following implementation at flemosr/tonic-richer-error.

* types: add `ResourceInfo` to `gen_status_with_details` test

* types: use `impl Into<Vec<T>>` instead of `Vec<T>` in pub fn's params

* types: comply with clippy

* types: fix names of some tests and vars in `std_messages`
2023-02-23 11:24:19 +00:00
林玮 (Jade Lin) 7a6b20d8ef feat: add GrpcMethod extension into request for client (#1275)
* feat: add GrpcMethod extension into request for client

* refactor: change GrpcMethod fields into private and expose methods instead

* refactor: hide GrpcMethod::new in doc

---------

Co-authored-by: Lucio Franco <luciofranco14@gmail.com>
2023-02-23 10:06:45 +00:00
tottoto 1547f968b4 chore(examples): Remove tracing-attributes from dependencies (#1289) 2023-02-23 10:06:37 +00:00
Lucio Franco 983be6608e chore(web): Update tonic-web readme (#1292) 2023-02-23 10:06:32 +00:00
Francesco Guardiani b5764035eb Remove unnecessary Clone bound in GrpcWebLayer (#1291)
Signed-off-by: slinkydeveloper <francescoguard@gmail.com>
2023-02-22 12:10:36 +00:00
tottoto 3a38a32a02 chore(tonic): Use BoxBody type alias (#1284)
Co-authored-by: Lucio Franco <luciofranco14@gmail.com>
2023-02-21 17:03:42 +00:00
Rafael Lemos 7eeda24350 feat(types): Add gRPC Richer Error Model support (ResourceInfo) (#1282)
* types: add support for `ResourceInfo` error message type

Following implementation at flemosr/tonic-richer-error.

* types: update doc comment examples

---------

Co-authored-by: Lucio Franco <luciofranco14@gmail.com>
2023-02-21 17:03:37 +00:00
Lucio Franco 2888ac92bd chore: Remove clippy from CI (#1288) 2023-02-21 15:54:31 +00:00
tottoto 79d0e3faf5 chore(tonic): Remove duplicate tls feature gate and re-export http crate instead of using wildcard importing (#1281)
* chore(tonic): Remove duplicate tls feature gate

* chore(tonic): Re export http crate instead of using wildcard importing
2023-02-21 15:50:53 +00:00
Moncef AOUDIA 9f716d8411 feat(codec): Configure max request message size (#1274)
* feat(codec): add max_message_size parameter

resolves #1097

* refactor(client): add max size parameters

* refactor(tonic-build): update server gen template

* refactor(tonic-build): update client template

* fix(tonic-build): update client template

* fix(tonic-build): small typo in server.rs

* fix(tonic-build): client.rs generator

* fix(tonic): add apply max message setting size to server

* fix(test): wrong message size

* fix: doctest + generated rs
2023-02-17 15:58:22 +00:00
Rafael Lemos a52de8aec3 types: add support for RequestInfo error message type (#1280)
Following implementation at flemosr/tonic-richer-error.
2023-02-17 15:18:46 +00:00
Lucio Franco 26b848be46 chore: Add bootstrap tests to contrib doc (#1278) 2023-02-16 21:49:34 +00:00
Antonín Dufka 773e4e1749 feat(tls): add an option for optional TLS client authentication (#1163)
* feat(tls): add an option for optional TLS client authentication

Previously there were only two options for client authentication –
either no authentication or mandatory authentication. With this change,
a server can allow for optional authentication with a given root CA
certificate and enforce client authentication on a per-request basis.

Refs: #687

* Update tonic/src/transport/server/tls.rs

---------

Co-authored-by: Lucio Franco <luciofranco14@gmail.com>
2023-02-16 20:14:15 +00:00
Rafael Lemos 2378581850 feat(types): Add gRPC Richer Error Model support (PreconditionFailure) (#1276)
* types: add support for `PreconditionFailure` error message type

Following implementation at flemosr/tonic-richer-error.

* types: doc comments nits

* types: merge `impl` blocks at `std_messages`
2023-02-16 16:08:53 +00:00
Rafael Lemos 555a8bcf42 types: add support for ErrorInfo error message type (#1269)
Following implementation at flemosr/tonic-richer-error.
2023-02-15 15:24:17 +00:00
tottoto 5acde56176 feat(tonic): Use NamedService without transport feature (#1273) 2023-02-15 14:47:28 +00:00
tottoto b712df608f chore(examples): Split tls-rustls example (#1272) 2023-02-15 14:47:09 +00:00
tottoto 7d6561cf3b chore(tonic): Change async-stream optional (#1271) 2023-02-15 14:46:41 +00:00
tottoto 74e4400219 chore: Use feature resolver v2 and turn off unused features (#1270)
* chore: Use feature resolver version 2

* chore(web): Turn off unused features
2023-02-15 14:46:27 +00:00
tottoto 3f4d7432b9 chore(types): Turn off unused features (#1266) 2023-02-14 14:47:43 +00:00
tottoto d9a8f10324 chore(tonic): Remove duplicated code (#1267) 2023-02-14 14:47:11 +00:00
Velichko Anton aa69a023f7 Expose Response#into_parts and Response#from_parts (#1263)
* chore: change the default visibility from pub(crate) to pub for from_parts and into_parts pair.

* chore: add docs for the Response#into_parts and Response#from_parts
2023-02-13 18:54:37 +00:00
Nick Cameron 7c0e9c853c Make some functionality of Status public (#1256)
* Make some functionality of Status public

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Update tonic/src/status.rs

---------

Signed-off-by: Nick Cameron <nrc@ncameron.org>
Co-authored-by: Lucio Franco <luciofranco14@gmail.com>
2023-02-13 15:29:19 +00:00
tottoto b301013d58 chore(health): Generate file descriptor set in bootstrap test (#1265) 2023-02-13 15:20:48 +00:00
山岚 17d6a4b576 feat(transport): added support for EC keys (#1145)
* tonic: allow TLS to read ECKeys.

Fixes: #1143
Signed-off-by: Yu Juncen <yu745514916@live.com>

* tonic: minimize the scope of published function.

Signed-off-by: Yu Juncen <yu745514916@live.com>

---------

Signed-off-by: Yu Juncen <yu745514916@live.com>
2023-02-13 15:16:21 +00:00
tottoto 69ec5df648 chore(examples): Remove unsafe from grpc-web-client (#1262) 2023-02-09 18:55:17 +00:00
tottoto 82770713b5 chore(examples): Add missing dep to hyper (#1225) 2023-02-08 18:25:28 +00:00
Andrew Hickman 930c805127 fix: MetadataKey::from_bytes returns an error (#1246)
BREAKING: `Metadata::from_bytes` returns an error now
2023-02-08 09:09:29 -05:00
tottoto b3567a394f chore: Add cargo-machete to detect unused dependencies (#1259) 2023-02-08 09:08:21 -05:00
tottoto 2e3e9acf7b chore(interop): Use pico-args instead of clap (#1242) 2023-02-07 09:45:32 -05:00
tottoto 09c13fac90 chore: Add windows-sys and hermit-abi to cargo-deny skip-tree (#1257)
* chore: Add windows-sys to cargo-deny skip-tree

* chore: Add hermit-abi to cargo-deny skip-tree
2023-02-07 09:41:05 -05:00
tottoto 8a6eb50b1e chore(types): Remove outdated generated file (#1239)
This file was generated by the previous version of prost-build.
This behaviour was fixed in https://github.com/tokio-rs/prost/pull/726.
2023-02-04 05:14:13 -05:00
tottoto 0ac0ce8ce7 chore: Remove unused dependencies (#1244) 2023-02-04 05:12:17 -05:00
Richard ff642f9233 feat(build): Builder: add {enum,message}_attributes (#1234)
Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
2023-01-17 14:25:21 -05:00
tottoto 4c69157cef chore(interop): Lock clap version to 4.0 (#1240)
* chore(interop): Lock clap version to 4.0

* chore(interop): Lock clap_lex to 0.3.0
2023-01-17 14:24:36 -05:00
tottoto e2b1e60276 chore(tonic): Remove outdated allow dead code lint annotation (#1230) 2023-01-11 13:26:01 -05:00
tottoto 63f2e95be3 chore(web): Update to base64 0.21 (#1235) 2023-01-11 12:16:59 -05:00