Commit Graph

505 Commits

Author SHA1 Message Date
Lucio Franco
9c5bc03908 Update tokio alpha.6 2019-10-01 06:41:28 -07:00
Rick Richardson
7615867a5e fixing the akamai example to work with tokio-0.2 (#408)
* fixing the akamai example to work with tokio-0.2

* manually spawn the h2 task to make it go

* fix tokio-rustls dependency version
2019-09-23 12:57:06 -07:00
Sean McArthur
b534a7888a v0.2.0-alpha.2 2019-09-20 14:05:06 -07:00
Aaron Hill
b4c129c99d chore(dependencies): update tokio to 0.2.0-alpha.5 (#409) 2019-09-20 13:43:03 -07:00
Michael Beaumont
fac165e451 Add server support for push (#327)
Closes #291, closes #185
2019-09-16 11:30:58 -07:00
Sean McArthur
0527f5b72a Rename 'stream' feature to 'unstable-stream' 2019-09-12 12:44:44 -07:00
Michael Beaumont
06a68a76a2 Use IndexMap::swap_remove instead of deprecated IndexMap::remove 2019-09-12 12:22:17 -07:00
Sean McArthur
be079f7e40 Remove publish=false from Cargo.toml 2019-09-04 11:10:14 -07:00
Sean McArthur
8e81d84910 v0.2.0-alpha.1 2019-09-04 11:08:05 -07:00
Sean McArthur
2d90efee17 Prune futures-* dependencies 2019-08-30 14:53:49 -07:00
Sean McArthur
678c90eb0a Update futures and tokio alphas 2019-08-29 15:44:26 -07:00
Wim Looman
f4378bae58 Add necessary features for tokio-io 2019-08-22 11:47:01 -07:00
Gurwinder Singh
85b1f669c0 chore: async_await is stable on nightly 2019-08-21 11:10:03 -07:00
Sean McArthur
b2c5d7f0bb Update futures and tokio alphas 2019-08-20 18:36:38 -07:00
Sean McArthur
b2af3d4b28 Change trailers() to return Result<Option> instead of Option<Result> 2019-08-20 17:32:06 -07:00
Sean McArthur
a1db5428db Make Stream impls part of optional 'stream' cargo feature (#397) 2019-08-20 16:01:03 -07:00
Sean McArthur
f31ec5d0da Remove deprecated-in-0.1.x APIs 2019-08-20 15:15:04 -07:00
Gurwinder Singh
f46840f3fa chore: cargo fmt, clippy 2019-08-16 22:27:39 -07:00
Gurwinder Singh
e72d6dc189 Add Rustfmt to CI 2019-08-16 22:27:39 -07:00
Gurwinder Singh
b039ef25bc Make handshake an async fn; other cleanup 2019-08-16 18:47:47 -07:00
Gurwinder Singh
ad7ffa795f Updated as per review comments 2019-08-16 18:47:47 -07:00
Gurwinder Singh
0a4bd393ec Update examples to std-future 2019-08-16 18:47:47 -07:00
Gurwinder Singh
517077c698 Update h2-fuzz to std-future 2019-08-16 18:47:47 -07:00
Gurwinder Singh
97a4c8049c Update h2-tests to std-future 2019-08-16 18:47:47 -07:00
Gurwinder Singh
529ef4cd40 Update h2-support to std-future 2019-08-16 18:47:47 -07:00
Gurwinder Singh
c8fefd49f1 Update lib to std-future 2019-08-16 18:47:47 -07:00
lukaslueg
782f1f712c Remove byteorder-dependency (#392) 2019-08-09 13:20:48 -07:00
Ryo Ota
0a9a26144f Use https for H2 Database link (#384) 2019-07-30 11:06:30 -07:00
Gurwinder Singh
f4dec6efa4 chore: 2018 edition clean up (#386) 2019-07-25 10:30:52 -07:00
Jakub Beránek
db6b841e67 Update crate to Rust 2018 (#383) 2019-07-23 10:18:43 -07:00
Sean McArthur
b3351e675b Prepare master for 0.2.x 2019-07-23 10:16:51 -07:00
Sean McArthur
4dde4157d5 v0.1.25 (#382) 2019-06-28 13:17:26 -07:00
Alex Touchet
d4416c2ea5 Update listed version numbers in README (#374) 2019-06-28 12:49:44 -07:00
Sean McArthur
ab52cf9b30 Send RST_STREAM of STREAM_CLOSED instead of GOAWAY if stream may have been forgotten 2019-06-28 12:48:42 -07:00
Sean McArthur
19936721b8 Adjust client::Handshake's PhantomData since it doesn't own a buffer 2019-06-27 09:41:43 -07:00
Sean McArthur
3e345ac7b6 tests: reduce boilerplate of sending GET requests
This adds a `SendRequestExt` trait to h2-support, with a `get` method
that does a lot of the repeated request building stuff many test cases
were doing.

As a first step, the cleans up stream_states tests to use it.
2019-06-26 16:11:19 -07:00
Sean McArthur
f8f05d04e7 Fix trailers without EOS flag to be a stream instead of connection error (#377)
[Trailers without EOS](https://httpwg.org/specs/rfc7540.html#HttpSequence):

> An endpoint that receives a HEADERS frame without the END_STREAM flag set after receiving a final (non-informational) status code MUST treat the corresponding request or response as malformed (Section 8.1.2.6).

[Malformed messages](https://httpwg.org/specs/rfc7540.html#malformed):

> Malformed requests or responses that are detected MUST be treated as a stream error (Section 5.4.2) of type PROTOCOL_ERROR.
2019-06-26 13:38:06 -07:00
Sean McArthur
c616ac4611 v0.1.24 2019-06-17 14:37:12 -07:00
Eliza Weisman
0e9fbe4a90 Log protocol error causes at debug (#371)
Currently, there are many cases where `h2` will fail a connection or
stream with a PROTOCOL_ERROR, without recording why the protocol error
occurred. Since protocol errors may result from a bug in `h2` or from a
misbehaving peer, it is important to be able to debug the cause of
protocol errors.

This branch adds a log line to almost all cases where a protocol error
occurs. I've tried to make the new log lines consistent with the
existing logging, and in some cases, changed existing log lines to make
them internally consistent with other log lines in that module. All
receive-side errors that would send a reset are now logged at the debug
level, using a formatting based on the format used in `framed_read`.

Signed-off-by: Eliza Weisman <eliza@buoyant.io>
2019-06-17 14:14:40 -07:00
Sean McArthur
383593a01e allow servers to receive requests without an :authority header 2019-06-17 12:58:50 -07:00
Alex Touchet
e13645c091 Update repo URLs (#370) 2019-06-04 23:06:13 -07:00
Sean McArthur
8974fcd9ff v0.1.23 2019-06-04 19:53:01 -07:00
Sean McArthur
611e1ca010 Clear recv buffer when stream refs are dropped 2019-06-04 19:09:30 -07:00
Sean McArthur
a5a2ee7f7a v0.1.22 2019-06-03 11:26:59 -07:00
Sean McArthur
cf5e53f0c3 Refactor proto::streams::store indices
- Removes incrementing counter, instead just using the StreamId as a
  slab ABA guard.
- Adjusts Ptr::deref to use Store::index, as before it was skipping to
  check the ABA guard.
- Rename fields and types to clarify it actually is an ABA guard.
- Improve panic message in case a dangling Ptr is accessed.
2019-05-31 17:12:01 -07:00
Sean McArthur
b8f1f0ccf1 Prevent trying to assign capacity to streams that were just reset 2019-05-31 14:56:16 -07:00
Igor Gnatenko
45c4e0336f chore: Update string to 0.2 (#363)
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2019-05-31 09:19:20 -07:00
Sean McArthur
ad5a40c682 v0.1.21 2019-05-30 10:49:40 -07:00
Sean McArthur
6ebad4bb41 increase write buffer size to 16kb 2019-05-29 17:19:55 -07:00
Sean McArthur
91819bf25e check for overly large header field in send_headers 2019-05-29 17:19:55 -07:00