cyderize
122e94c8a6
Update for latest rust
...
Tracks rust nightly.
7 tests fail -- still finding source
2015-01-10 18:37:10 +11:00
Marko Lalic
2357995cc9
Add regression tests for chunked response parsing
...
The tests assert that `Transport-Encoding: chunked` responses are
correctly handled both when the chunk sizes are valid, as well as
invalid.
2015-01-06 22:15:18 +01:00
Jonathan Reem
93fcd05b9d
Miscellaneous fixes and test updates for all the other changes
...
- http::LINE_ENDING is now an &'static str
2015-01-06 01:15:47 +01:00
Jonathan Reem
f0fe878ec8
More Rust updates:
...
- Some stray deriving -> derive changes
- use::{mod} -> use::{self}
- fmt.write -> fmt.write_str
This does not catch the last case of fmt.write_str in the
Show impl of a Header Item. This will need to be changed
separately.
2015-01-05 22:50:10 +01:00
Jonathan Reem
7f3a33f903
#[deriving] -> #[derive]
2015-01-03 20:31:48 +01:00
Sean McArthur
79fc40cbce
into_string to to_string, from_str to parse
2014-12-23 13:09:58 -08:00
Aaron Weiss
f9ed262904
Fixed compilation for Rust master.
2014-12-21 10:25:38 -05:00
Jonathan Reem
90925f05ee
(fix) Add semicolons at macro invocation sites.
2014-12-20 02:38:03 -08:00
Sean McArthur
8c83a3358e
feat(client): add a new Client struct with super powers
...
- Includes ergonomic traits like IntoUrl and IntoBody, allowing easy
usage.
- Client can have a RedirectPolicy.
- Client can have a SslVerifier.
Updated benchmarks for client. (Disabled rust-http client bench since it
hangs.)
2014-12-14 11:56:39 -08:00
Sean McArthur
3ac277b1f0
fix(ssl): set_hostname on ssl connections
2014-12-11 20:27:37 -08:00
Sean McArthur
36429ab50c
refactor(net): NetworkConnecter no longer is for static usage
...
Instead, you can use an instance of a NetworkConnector with
`Request::with_connector`. This allows overloading of the NetworkStream
constructors, so that it is easy to modify how an `HttpStream` is
created, while still relying on the rest of the stream implementation.
BREAKING CHANGE
2014-12-04 17:39:38 -08:00
Sean McArthur
fec030a21e
rust upgrade
2014-12-02 13:12:04 -08:00
Sean McArthur
8071cfa8bf
feat(headers): header ergonomics
...
- Reexports all common::* as header::*
- Most headers implement Deref where it makes sense.
Closes #156
2014-11-29 13:55:50 -08:00
Sean McArthur
4263a01f1c
convert to using Cow
2014-11-27 12:13:07 -08:00
Evgeny Rozaliev
c77cd3d3da
(fix) unwrap() => into_inner()
2014-11-27 16:05:19 +03:00
Sean McArthur
486080b044
feat(client): add a status_raw value
2014-11-24 19:49:12 -08:00
Sean McArthur
626fe9d91e
rustup: fmt changes
2014-11-20 10:28:09 -08:00
Kyle Dewey
d7e8b8b117
Now using use along with enums, as per https://github.com/rust-lang/rust/pull/18973 .
2014-11-19 22:03:41 +01:00
Tim Kuehn
5605ade5dc
impl Error and FromError for HttpError; replace instances of try_io! with try!
2014-11-10 22:59:18 -08:00
Sean McArthur
358edc0d2b
fix Get and Head requests that weren't writing headers
2014-11-10 16:10:37 -08:00
Sean McArthur
3b8c5cac1a
fix(client): GET and HEAD shouldn't add Transfer-Encoding
...
Also adds an EmptyWriter, used for GET and HEAD requests,
which will return an io::ShortWrite error if the user ever tries
to write to a GET or HEAD request.
Closes #77
2014-11-09 20:56:59 -08:00
Sean McArthur
3d7820d17e
update using ToSocketAddr
2014-11-06 17:55:32 -08:00
Sean McArthur
3cd7d72b07
split NetworkStream::connect to NetworkConnector
2014-10-31 15:49:26 -07:00
Sean McArthur
0ab52c9009
add bits to deal with Upgrade requests
2014-10-27 20:36:57 -07:00
Sean McArthur
19045a2376
change Host header to have hostname and port
2014-10-22 18:29:49 -07:00
Hanno Braun
224cc709c3
Include port in Host header
...
Fixes #88 .
2014-10-22 18:29:05 -07:00
Sean McArthur
2f755a5694
move rendering of headers to the Headers object
2014-10-13 14:32:48 -07:00
Sean McArthur
61e18141be
fix client requests dropping the query string. fixes #75
2014-10-13 10:16:45 -07:00
Stanislav Panferov
d5e33ca9db
(fix) abstract is now a reserved word.
2014-10-10 10:52:47 +04:00
Jonathan Reem
d3a62fa0d5
Add get_mut for modifying the typed representation of Headers.
...
Also adds an associated test and updates code to use it instead
of cloning and setting when possible.
2014-09-27 00:17:59 -04:00
Jonathan Reem
858a09304a
Remove get and rename get_ref to get
...
Since `get_ref` (now `get`) takes `&self` there is no need
for a special cloning method.
2014-09-27 00:17:59 -04:00
Jonathan Reem
e85ae48e16
Update server and client for changes in Headers mutability.
2014-09-27 00:17:58 -04:00
Sean McArthur
3259f7dce9
update to rust master
...
fixing usage of a Private trait as bounds for a public trait
2014-09-24 19:57:03 -07:00
Sean McArthur
1c472a220a
adds HttpWriters
2014-09-18 12:17:53 -07:00
Sean McArthur
42e69e1f2e
ssl for the client
2014-09-15 21:12:19 -07:00
Sean McArthur
c40b5b0c53
Request::with_stream to use a different NetWorkStream in Client
...
added benches for mocking out the tcp process
2014-09-11 08:26:03 -07:00
Jonathan Reem
4115c0e219
Moved WriteStatus, Fresh, and Streaming in to the net module.
2014-09-10 17:16:13 -07:00
Jonathan Reem
d5c6f33c34
Update the client API to statically track headers and move constructors
...
The client Request now uses the same system as a server Response to track
the write status of headers, and the API has been updated accordingly.
Additionally, the Request constructors have been moved onto the Request object
instead of being top-level hyper functions, as this better namespaces the
client and Server.
2014-09-10 17:04:49 -07:00
Jonathan Reem
2aabf1b8e6
Rename rfc7230 to http to more clearly indicate its purpose.
2014-09-09 17:37:01 -07:00
Jonathan Reem
ed491655dd
Use dynamic dispatch for client Request and Response through Box<NetworkStream>
...
Also adds a convenience `abstract` method to NetworkStream for creating
Box<NetworkStream + Send> from a NetworkStream.
2014-09-09 17:06:27 -07:00
Sean McArthur
0285fc2acc
Abstract out NetworkStream
...
This introduces a new Trait, NetworkStream, which abstracts over
the functionality provided by TcpStream so that it can be easily
mocked and extended in testing and hyper can be used for
other connection sources.
2014-09-09 14:55:14 -07:00
Jonathan Reem
f2c09c5743
Split common headers into a submodule and into their own files
...
This is a more extensible place to put them and doesn't clutter up
header/mod.rs as much as the old scheme did.
Fixes #8
2014-09-08 16:20:50 -07:00
Sean McArthur
1ceb468ec3
add issue numbers to todos
2014-09-03 10:55:21 -07:00
Sean McArthur
b4b539091f
use Buffered Readers and Writers
2014-09-02 14:14:56 -07:00
Sean McArthur
818fac4128
add some benches with other http libs
2014-09-02 12:06:16 -07:00
Sean McArthur
c905111f8c
implementation
2014-09-01 18:39:24 -07:00