Commit Graph

555 Commits

Author SHA1 Message Date
João Oliveira
cbbdd305b1 update to tokio 0.3 (#491) 2020-10-23 10:45:09 -07:00
Sean McArthur
676a068fd4 Prepare for 0.3.x changes 2020-10-23 08:29:04 -07:00
Sean McArthur
3bb01aafae v0.2.7 2020-10-23 08:14:51 -07:00
Yuchen Wu
0ba7d13ae5 Allow responses of HEAD requests to have empty DATA frames (#490) 2020-10-22 14:36:41 -07:00
Sean McArthur
cb2c7ac72b Fix h2psec CI script, since debug output of socket addresses changed (#493) 2020-10-22 14:35:30 -07:00
eggyal
2b19acf132 Handle client-disabled server push (#486) 2020-09-17 17:25:31 -07:00
João Oliveira
a19323727b fix h2-fuzz testing, import futures with FuturesUnordered (#482) 2020-08-26 10:58:52 -07:00
Eliza Weisman
fc7f63f641 start adding tracing spans to internals (#478)
We've adopted `tracing` for diagnostics, but currently, it is just being
used as a drop-in replacement for the `log` crate. Ideally, we would
want to start emitting more structured diagnostics, using `tracing`'s
`Span`s and structured key-value fields.

A lot of the logging in `h2` is already written in a style that imitates
the formatting of structured key-value logs, but as textual log
messages. Migrating the logs to structured `tracing` events therefore is
pretty easy to do. I've also started adding spans, mostly in the read
path.

Finally, I've updated the tests to use `tracing` rather than
`env_logger`. The tracing setup happens in a macro, so that a span for
each test with the test's name can be generated and entered. This will
make the test output easier to read if multiple tests are run
concurrently with `--nocapture`.

Signed-off-by: Eliza Weisman <eliza@buoyant.io>
2020-08-17 17:29:22 -07:00
Michael Beaumont
d3c2bba18b Increment Stream.refs when sending a push promise 2020-08-17 15:54:47 -07:00
Michael Beaumont
6d80bd454e Fix handling Streams.refs in next_incoming
`Streams.inner.ref` doesn't need to be incremented if we don't
return an `OpaqueStreamRef`.

This prevented the bug in `send_push_promise` from appearing
in the tests.
2020-08-17 15:54:47 -07:00
Sean McArthur
e3a358d696 v0.2.6 2020-07-13 16:56:04 -07:00
David Barsky
d3b9f1e36a feat(lib): switch from log to tracing (#475) 2020-07-07 15:55:24 -07:00
Sean McArthur
d6fa8386c4 Fix test not checking should_recv_frames 2020-07-07 09:53:43 -07:00
cssivision
ceae69b468 Update Readme (#468) 2020-05-21 06:56:35 -07:00
Han Xu
96570bb564 fix documentation for server::Connection 2020-05-14 11:16:29 -07:00
Sean McArthur
ecb31135cb v0.2.5 2020-05-06 13:19:56 -07:00
Sean McArthur
c460c6e581 Change store debug_assert to only run in tests 2020-05-06 12:55:19 -07:00
Geoffry Song
cfc7584eb6 Move "sync" tokio feature to dev-dependencies (#461) 2020-04-09 23:05:55 -07:00
Sean McArthur
ac9f2af434 v0.2.4 2020-03-30 15:26:58 -07:00
Sean McArthur
25b2741d2f v0.2.4 2020-03-30 15:23:38 -07:00
Sean McArthur
e41a1f130c Respect SETTINGS_HEADER_TABLE_SIZE (#459) 2020-03-30 11:53:22 -07:00
Nikhil Benesch
20efc46597 Bump to latest tokio-util (#455) 2020-03-26 08:33:27 -07:00
Sean McArthur
7e1e923542 v0.2.3 2020-03-25 10:23:31 -07:00
Sean McArthur
d6dc63276f Fix receiving a GOAWAY frame from updating the max recv ID
Receiving a GOAWAY should update the max *send* ID, it shouldn't affect
the max recv.
2020-03-25 10:08:13 -07:00
Kornel Lesiński
5041a4d428 Test CONNECT is accepted 2020-03-09 11:21:40 -07:00
Kornel Lesiński
f7b3cf6d29 Handle :scheme and :path in CONNECT
If the :method is CONNECT the :scheme and :path pseudo-header fields MUST be omitted
2020-03-09 11:21:40 -07:00
Kornel
9af48b08c7 Fix fuzz compilation error (#454) 2020-03-09 14:06:57 -04:00
Sean McArthur
f7718b5b19 v0.2.2 2020-03-03 12:27:26 -08:00
Sean McArthur
1b01300eeb Use a u32 index for stream store (#451)
A connection can never have more than u32::MAX >> 1 streams, so we'll
never store more than that many in the store slab. Define the
`SlabIndex` as a `u32` to reduce the number of bytes moved around.
2020-02-28 15:30:48 -08:00
Sean McArthur
78c8ec6968 Update CI to test on stable 2020-02-17 16:58:54 -08:00
Sean McArthur
75a0caf220 fix warning about unnecessary parens 2020-02-17 16:51:03 -08:00
Sean McArthur
c5880076d5 rustfmt some test cases 2020-01-29 15:55:28 -08:00
Sean McArthur
8ca2eb2597 Change unused BytesMut::split_to to advance 2020-01-29 15:55:28 -08:00
Sean McArthur
74d02933a5 Fix warnings about deprecated Error::description 2020-01-29 15:55:28 -08:00
Alex Touchet
5020ff0933 Update Readme 2019-12-11 08:10:44 -08:00
Sean McArthur
012dfc6991 v0.2.1 2019-12-06 12:24:07 -08:00
Sean McArthur
ec751f3696 Remove Unpin requirement for the send Buf 2019-12-06 11:40:08 -08:00
Sean McArthur
13e0f17a03 v0.2.0 2019-12-03 12:06:13 -08:00
Sean McArthur
881832cde9 Rename unstable-stream feature to stream (#433) 2019-12-03 10:38:50 -08:00
Sean McArthur
eab9c0b410 Update to http 0.2 (#432) 2019-12-02 16:22:26 -08:00
Alex Gaynor
e7e75bf117 Re-enable tokio-rustls now that it has a stable release (#429) 2019-12-01 13:04:00 -05:00
Sean McArthur
4398e169e8 Update to Tokio 0.2 (#428) 2019-11-27 14:53:57 -08:00
Taiki Endo
37b66e8981 Migrate CI to GitHub Actions (#422) 2019-10-08 12:57:55 -07:00
Sean McArthur
86e53054a6 Change ReserveCapacity to expanded FlowControl type (#423)
- Adds `FlowControl::available_capacity` method.
- Adds `FlowControl::used_capacity` method.
2019-10-08 11:28:15 -07:00
Sean McArthur
3cfcab016e Remove public Error constructor from io::Error (#420) 2019-10-07 15:29:38 -07:00
Sean McArthur
4c1d797712 Add ability to adjust INITIAL_WINDOW_SIZE setting on an existing connection (#421) 2019-10-07 15:29:23 -07:00
Sean McArthur
367206bfa1 Decode debug_data in GOAWAY frames 2019-10-04 12:45:22 -07:00
Sean McArthur
ffbd87cb18 Update CI to test on beta 2019-10-02 16:39:36 -07:00
Sean McArthur
eef0ee52f0 v0.2.0-alpha.3 2019-10-01 08:37:56 -07:00
Taiki Endo
02de0d161d Remove git dependency 2019-10-01 07:17:19 -07:00