Sean McArthur
afd62971c3
Merge pull request #1123 from hyperium/body-concat
...
feat(chunk): implement Extend and IntoIterator for Chunk
2017-04-10 09:53:40 -07:00
hag
1b180dd61a
refactor(header): make Originheader more allocator friendly
...
Change the internal representation of Origin to be more allocator
friendly. The internals of the Origin header are now private to allow
changing them in the future.
BREAKING CHANGES:
- Old code that accesses the Origin struct directly will stop working.
2017-04-10 11:11:33 +02:00
hag
c8d5bf5cc8
refactor(header): make some headers more allocator friendly
...
Change the internal implementation of some simple headers to make them
more allocator friendly. Also add a constructor method to allow changing
the implementation in the future again.
The headers are:
- Location
- Referrer
- Server
- UserAgent
This change was suggested in [#1104 ].
BREAKING CHANGES:
- Old code that creates the header structs directly will stop working.
- It's not possible to implement DerefMut for a Cow<'static,str>. Code
that needs to modify header after creation will stop working.
2017-04-10 10:48:16 +02:00
Sean McArthur
78512bdb18
feat(chunk): implement Extend and IntoIterator for Chunk
...
The real reason to provide these implementations is so that `concat` on
the `Body` can work to easily join all the chunks into 1.
2017-04-08 17:16:08 -07:00
Sean McArthur
5c1cfa2bce
Merge pull request #1116 from hyperium/parse-till-blocked
...
fix(conn): always read till blocked when parsing
2017-04-05 16:30:33 -07:00
Sean McArthur
633b37df11
fix(conn): always read till blocked when parsing
...
Closes #1111
2017-04-05 15:45:20 -07:00
Sean McArthur
6e55fbe75d
Merge pull request #1115 from hyperium/uri-fixes
...
Several Uri fixes
2017-04-05 15:19:00 -07:00
Sean McArthur
5d3499e036
fix(uri): fix Uri to origin_form when path is '*'
2017-04-05 14:36:39 -07:00
Sean McArthur
cb1927553e
fix(uri): fix Uri to_origin_form to always include '/'
...
Closes #1112
2017-04-05 11:40:57 -07:00
Sean McArthur
1b49237e27
fix(uri): fix Uri.path() from containing '?' ever
...
Closes #1113
2017-04-05 09:57:12 -07:00
Sean McArthur
66ad619d6e
Merge pull request #1110 from hyperium/flush
...
fix(conn): always flush io from poll_complete
2017-04-03 11:04:50 -07:00
Sean McArthur
997a64d770
fix(conn): always flush io from poll_complete
...
Closes #1108
2017-04-03 10:06:39 -07:00
Sean McArthur
d63b7de44f
feat(client): Response.status() now returns a StatusCode
...
Previously, it would return `&StatusCode`. Returning a reference was
actually bigger than the enum itself, and prevented using `Into` on the
return result directly.
BREAKING CHANGE: If you were explicitly checking the status, such as
with an equality comparison, you will need to use the value instead of a
reference.
2017-03-31 15:13:55 -07:00
liamchristopher
47f3aa6247
feat(version): impl FromStr for HttpVersion
2017-03-30 14:34:46 -07:00
Sean McArthur
8dc06f211e
Merge pull request #1105 from derekdreery/contributing_fix
...
docs(CONTRIBUTING): Fix markdown
2017-03-28 08:20:45 -07:00
Richard Dodd
1ee26443f4
docs(CONTRIBUTING): Fix markdown
...
Fix markdown in contributing so it displays correctly on github, and
also because of the irony.
2017-03-28 11:35:56 +01:00
Sean McArthur
3da720a99f
Merge pull request #1103 from d12i/client-handle-getter
...
feat(client): add Client::handle
2017-03-26 17:58:46 -07:00
Daiki Mizukami
9101817b0f
feat(client): add Client::handle
2017-03-27 08:06:07 +09:00
Sean McArthur
43cf9aefe8
Merge pull request #1101 from hyperium/remove-deprecated
...
refactor(header): remove deprecated Header to_string APIs
2017-03-21 18:22:12 -07:00
Sean McArthur
ec91bf418b
refactor(header): remove deprecated Header to_string APIs
...
BREAKING CHANGE: This removes several deprecated methods for converting
Headers into strings. Use more specialized methods instead.
2017-03-21 15:16:03 -07:00
Sean McArthur
4f69788f5d
fix(client): get default port for https with Uri
2017-03-21 14:44:04 -07:00
Sean McArthur
3d8dddb066
Merge pull request #1100 from hyperium/un-url
...
feat(lib): remove extern Url type usage
2017-03-21 14:31:37 -07:00
Sean McArthur
4fb7e6ebc6
feat(lib): remove extern Url type usage
...
BREAKING CHANGE: The `Url` type is no longer used. Any instance in the
`Client` API has had it replaced with `hyper::Uri`.
This also means `Error::Uri` has changed types to
`hyper::error::UriError`.
The type `hyper::header::parsing::HTTP_VALUE` has been made private,
as an implementation detail. The function `http_percent_encoding`
should be used instead.
2017-03-21 11:03:57 -07:00
Sean McArthur
e81184e53c
Merge pull request #1095 from mjkillough/header_view_raw
...
feat(headers): add HeaderView.raw()
2017-03-20 11:24:56 -07:00
Michael Killough
8143c33bad
feat(headers): add HeaderView.raw()
...
Add HeaderView.raw() which behaves identically to Headers.get_raw().
2017-03-18 14:13:12 +07:00
Alex Crichton
8554904dc9
refactor(lib): convert usage of tokio_core::io to tokio_io
...
This commit updates to the most recent versions (released today) of the various
Tokio libraries in use. Namely the `tokio_core::io` module has now been
deprecated in favor of an external `tokio-io` crate. This commit pulls in that
crate and uses the `AsyncRead + AsyncWrite` abstraction instead of `Io` from
tokio-core.
BREAKING CHANGE: Any external types that were using that had implemented `Io` will need to
implement `AsyncRead + AsyncWrite` from tokio_io.
2017-03-17 17:31:44 -07:00
wangcong
34509ef51a
test(client): replace deprecated Sender.completer with send
2017-03-14 10:11:22 -07:00
Sean McArthur
5a3743c1ba
Merge pull request #1084 from pyfisch/fuzzing
...
[WIP] fix bugs in header field parsers
2017-03-13 10:15:21 -07:00
Sean McArthur
e871411627
feat(client): add Request.set_proxy for HTTP proxy requests
...
Closes #1056
2017-03-07 12:16:44 -08:00
Sean McArthur
88eaaa0016
fix(http): dont return Error frame with idle eof
2017-03-07 12:16:10 -08:00
Pyfisch
bdd536cf44
test(headers): fix failing test for Accept header
2017-03-05 13:21:32 +01:00
Pyfisch
643fac1e01
fix(headers): add length checks to ETag parsing
...
Bug found using `cargo fuzz`.
2017-03-05 12:40:06 +01:00
Pyfisch
d80aae55b1
fix(headers): prevent 2 panics in QualityItem parsing
...
1. index out of bounds if semicolon is the last character
2. not a char boundary on non-ASCII input (only allow ASCII now)
Bugs found using `cargo fuzz`
2017-03-05 12:38:44 +01:00
Sean McArthur
c51a9993fa
chore(travis): enable email notifications for broken builds
2017-03-02 15:33:42 -08:00
Sean McArthur
8140f38f6e
Merge pull request #1081 from MJDSys/fix_from_chunk_to_bytes
...
fix(http): Fix commit fac3d70c0b
2017-03-01 22:44:28 -08:00
Matthew Dawson
9e16637514
fix(http): Fix commit fac3d70c0b
...
The new From<Chunk> for Bytes uses self instead of chunk in its
implementation of From::from. Change it to chunk to fix the build.
2017-03-02 01:40:13 -05:00
Sean McArthur
fac3d70c0b
feat(http): add Into<Bytes> for Chunk
2017-03-01 16:59:36 -08:00
Sean McArthur
abad0fcd72
Merge pull request #1080 from hyperium/bytes
...
feat(http): use the bytes crate for Chunk and internally
2017-03-01 16:46:12 -08:00
Sean McArthur
65b3e08f69
feat(http): use the bytes crate for Chunk and internally
2017-03-01 14:15:47 -08:00
Sean McArthur
cf7cc50ad0
chore(cargo): set an include directive
2017-03-01 13:35:30 -08:00
Sean McArthur
a7021d1f88
test(http): remove println from a test
2017-02-28 16:32:40 -08:00
Sean McArthur
ab939511f0
fix(http): more eagerly flush when the Conn is full
...
Closes #1078
2017-02-28 16:05:55 -08:00
Sean McArthur
359f5ff4d7
Merge pull request #1076 from sinkuu/fix_fragment_questionmark
...
fix(url): fix panic when questionmark is in fragment
2017-02-25 09:56:50 -08:00
sinkuu
8ba1f19d61
fix(url): fix panic when questionmark is in fragment
2017-02-25 20:25:39 +09:00
Sean McArthur
6eb0753921
fix(http): fix another instance of keep-alive busy-looping
2017-02-23 13:36:07 -08:00
Sean McArthur
a6f7f27435
Merge pull request #1074 from hyperium/park-less
...
fix(http): fix busy looping when in keep-alive
2017-02-22 17:54:48 -08:00
Sean McArthur
8756f40ac9
fix(http): fix busy looping when in keep-alive
2017-02-22 16:31:15 -08:00
Sean McArthur
dc97dd77f4
feat(server): make Http default its body type to hyper::Chunk
2017-02-22 16:30:20 -08:00
Sean McArthur
ee58409578
fix(http): make Chunk impl Sync
2017-02-22 16:30:20 -08:00
Sean McArthur
435fe84bf5
Merge pull request #1072 from Keats/master
...
feat(headers): impl Eq for ContentType
2017-02-21 10:06:16 -08:00