Commit Graph

1557 Commits

Author SHA1 Message Date
Jeff Olhoeft
61877f6f6e docs(server): Add a forms server example
Add an example program illustrating parsing a request body through
generating a response body.
2017-12-13 14:30:04 -08:00
Sean McArthur
16aa92cf03 v0.11.9 2017-12-09 19:02:12 -08:00
Sean McArthur
15fdd53d4c fix(client): detect valid eof after reading a body
If a connection closes immediately after reading the end of the body,
the next call to `conn.poll()` should not error, but just indicate
that the connection is done.

Closes #1396
2017-12-08 17:29:46 -08:00
Sean McArthur
7b5931122a feat(log): improve quality of debug level logs 2017-12-08 14:49:51 -08:00
Sean McArthur
a594341701 v0.11.8 2017-12-06 16:56:13 -08:00
Sean McArthur
214f593c2b test(headers): fix ProxyAuthorization bench_headers error 2017-12-06 16:37:42 -08:00
Steven Fackler
c93cdb2908 feat(headers): Implement ProxyAuthorization (#1394) 2017-12-06 16:09:00 -08:00
Sean McArthur
95e0164e8f fix(client): return error instead of unmatched response when idle 2017-12-06 16:06:13 -08:00
Sean McArthur
8f938d97e7 fix(conn): handle when pre-emptive flushing closes the write state
Closes #1391
2017-12-06 14:50:13 -08:00
Steven Fackler
eb9590e3da feat(server): Allow keep alive to be turned off for a connection (#1390)
Closes #1365
2017-12-04 10:14:20 -08:00
Sean McArthur
cecef9d402 fix(client): remove idle connections when read eof is found 2017-11-28 17:13:54 -08:00
Sean McArthur
9f21241002 fix(client): always wait on reads for pooled connections 2017-11-28 16:17:20 -08:00
Steven Fackler
60d0eaf891 fix(server): allow TLS shutdown before dropping connections with no_proto
This is important for TLS connections in particular

Closes #1380
2017-11-28 15:34:30 -08:00
golem131
8e7af7b9f1 chore(lib): update base64 and futures versions
- base64 0.6 -> 0.8
- futures 0.1.14 -> 0.1.17
2017-11-28 14:59:01 -08:00
Sean McArthur
bfae7cfa21 Merge pull request #1387 from sfackler/keep-alive-leak
fix(client): don't leak connections with no keep-alive
2017-11-28 14:53:15 -08:00
Steven Fackler
d2aa5d862c fix(client): don't leak connections with no keep-alive
Closes #1383
2017-11-27 21:42:57 -08:00
Sean McArthur
e4864a2bea feat(server): add to wrap generic accept steams 2017-11-15 13:39:24 -08:00
Sean McArthur
a453ea1064 test(lib): run coverage on integration tests 2017-11-14 15:40:13 -08:00
Sean McArthur
121b5eef19 fix(lib): fix no_proto dispatcher to flush queue before polling more body 2017-11-14 15:13:11 -08:00
Sean McArthur
3f62bde7b3 v0.11.7 2017-11-14 13:41:37 -08:00
Sean McArthur
8bf7964875 fix(server): GET requests with no body have None instead of Empty
Closes #1373
2017-11-14 11:52:29 -08:00
Sam Rijs
b1785c662b feat(client): skip dns resolution when host is a valid ip addr (#1372) 2017-11-13 15:00:34 -08:00
Guillaume Gomez
e330d30964 docs(lib): fix rustdoc warnings 2017-11-10 10:22:33 -08:00
Sean McArthur
fe38aa4bc1 feat(server): add const_service and service_fn helpers
- `const_service` creates a `NewService` that clones references to the
  wrapped service.
- `service_fn` creates a `Service` from a function. Useful with closures.
2017-11-09 16:47:35 -08:00
Sean McArthur
68e0df759a chore(server): make AddrIncoming stream item an unnameable type 2017-11-09 16:17:02 -08:00
Sean McArthur
b60d4cda3d chore(server): setup ServerProto pieces to be deprecated
- Adds a `server-proto` feature that is added to default features.
- If `server-proto` feature is not enabled, pieces that will eventually
  be deprecated and optional will be tagged deprecated, but with a note
  about the missing `server-proto` feature.
2017-11-09 15:45:13 -08:00
Sean McArthur
1bb3258afd chore(github): remove note about commit message style in PR template 2017-11-08 16:35:55 -08:00
Sean McArthur
39cf6ef7d2 feat(server): add server::Serve that can use a shared Handle
- Adds `Http::serve_addr_handle` which will bind to an address with a
  provided `Handle`, and return a `Serve`.
- Adds `server::Serve` which is a `Stream` of incoming `Connection`s
  being bound by a `NewService`.
- Renames `Http::no_proto` to `Http::serve_connection`.
2017-11-06 18:59:15 -08:00
Kam Y. Tse
0844dede19 feat(server): allow creating Server with shared Handle
1. impl Future for Server [WIP]
2. add method bind_handle to Http
3. add an example to use shared Handle in multiple server
2017-11-06 18:59:15 -08:00
Sean McArthur
7b2a2050b7 Merge pull request #1370 from srijs/feat/byte-range-spec-satisfiable
feat(header): implement ByteRangeSpec::to_satisfiable_range
2017-11-06 18:09:26 -08:00
Sean McArthur
19caf54edd chore(lib): fix nightly unused warning about AsciiExt 2017-11-06 17:58:12 -08:00
Sam Rijs
bb54e36c90 feat(header): implement ByteRangeSpec::to_satisfiable_range 2017-11-06 19:53:16 +11:00
Sean McArthur
40de599b58 Merge pull request #1367 from kamyuentse/master
docs(readme): make docs badges more consistent
2017-11-03 10:59:06 -07:00
Kam Y. Tse
5ca1ec35ec docs(readme): make docs badges more consistent 2017-11-03 17:02:56 +08:00
Sander Maijers
d3b19112d8 docs(readme): a bit more intuitive docs links
Use a docs.rs badge where appropriate.
2017-11-01 17:25:13 -07:00
Sean McArthur
b1765dd168 fix(client): drop in-use connections when they finish if Client is dropped 2017-10-30 15:20:56 -07:00
Sean McArthur
af8d11b2bf chore(server): remove stream generic from new Connection type 2017-10-27 16:04:28 -07:00
Sean McArthur
b2ab42e607 chore(client): remove unused old test 2017-10-27 12:52:38 -07:00
Sean McArthur
ba64cd99b4 Merge pull request #1362 from hyperium/unproto
feat(lib): add support to disable tokio-proto internals
2017-10-27 12:18:48 -07:00
Sean McArthur
7c4b814e6b fix(client): don't read extra bytes on idle connections 2017-10-27 11:28:20 -07:00
Sean McArthur
f7532b71d1 feat(lib): add support to disable tokio-proto internals
For now, this adds `client::Config::no_proto`, `server::Http::no_proto`,
and `server::Server::no_proto` to skip tokio-proto implementations, and
use an internal dispatch system instead.

`Http::no_proto` is similar to `Http::bind_connection`, but returns a
`Connection` that is a `Future` to drive HTTP with the provided service.
Any errors prior to parsing a request, and after delivering a response
(but before flush the response body) will be returned from this future.

See #1342 for more.
2017-10-27 00:02:07 -07:00
Sean McArthur
8153cfaebf Merge pull request #1359 from jtescher/fix-typos
Fix small typos
2017-10-23 10:15:21 -07:00
Julian Tescher
5700ad79a3 docs(changelog,header,proto,client): Fix small typos 2017-10-21 20:07:56 -07:00
Sean McArthur
988b870a09 Merge pull request #1333 from srijs/feat/client-connector-executor
feat(client): allow custom executors for HttpConnector
2017-10-18 16:07:01 -07:00
Sam Rijs
ed497bf5e6 feat(client): allow custom executors for HttpConnector 2017-10-18 15:56:33 +11:00
Sean McArthur
e507510427 Merge pull request #1354 from nabijaczleweli/master
docs(headers): fix >-quote formatting
2017-10-16 10:34:01 -07:00
nabijaczleweli
d48ab9601b docs(headers): fix >-quote formatting
'>'s as non-first characters are just '>'s (rustfmt probably broke the
line)
2017-10-15 15:00:49 +02:00
Sean McArthur
8ac1179d7c chore(ci): update minimum rustc version to 1.17 2017-10-09 09:40:53 -07:00
King Claudy
cd3d1a800f docs(contributing): add link to easy issues
Fill the missing link to easy issues in the CONTRIBUTING.md
2017-10-09 09:22:01 -07:00
Niek Sanders
528afb89a8 refactor(uri): remove extra scheme condition from Uri::parse
Scheme check never true given preceeding else if
2017-10-03 16:30:59 -07:00