Sean McArthur 
							
						 
					 
					
						
						
							
						
						396fe80e76 
					 
					
						
						
							
							fix(server): fix debug assert failure when kept-alive connections see a parse error  
						
						
						
						
					 
					
						2018-06-07 15:08:53 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						d7ab016676 
					 
					
						
						
							
							fix(server): correctly handle CONNECT requests  
						
						... 
						
						
						
						- In the higher-level `Server` API, since connection upgrades aren't yet
  supported, returning a 2xx response to a `CONNECT` request is a user
  error. A 500 response is written to the client, the connection is
  closed, and an error is reported back to the user.
- In the lower-level `server::Connection` API, where upgrades *are*
  supported, a 2xx response correctly marks the response as the final
  one, instead of trying to parse more requests afterwards. 
						
						
					 
					
						2018-06-07 14:59:01 -07:00 
						 
				 
			
				
					
						
							
							
								Steven Fackler 
							
						 
					 
					
						
						
							
						
						bc5e22f580 
					 
					
						
						
							
							feat(error): add Error::cause2 and Error::into_cause  
						
						... 
						
						
						
						- The `cause2` method adds a `'static` bound, allowing to downcast the error type.
- The `into_cause` method converts an `Error` into its optional cause.
Closes  #1542  
						
						
					 
					
						2018-06-06 13:40:07 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						b7a0c2d596 
					 
					
						
						
							
							fix(http2): implement graceful_shutdown for HTTP2 server connections  
						
						... 
						
						
						
						Closes  #1550  
					
						2018-06-06 13:00:59 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						3affe2a0af 
					 
					
						
						
							
							fix(http2): send trailers if Payload includes them  
						
						
						
						
					 
					
						2018-06-05 17:27:15 -07:00 
						 
				 
			
				
					
						
							
							
								Steven Fackler 
							
						 
					 
					
						
						
							
						
						a096799c1b 
					 
					
						
						
							
							feat(body): add Sender::abort  
						
						... 
						
						
						
						This allows a client or server to indicate that the body should be cut off
in an abnormal fashion so the server doesn't simply get a "valid" but
truncated body. 
						
						
					 
					
						2018-06-05 17:09:31 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						e5118d7eea 
					 
					
						
						
							
							v0.12.1  
						
						
						
						
					 
					
						2018-06-04 17:10:29 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						15188b7c7f 
					 
					
						
						
							
							feat(client): implement Clone for Destination  
						
						
						
						
					 
					
						2018-06-04 11:35:38 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						810435f146 
					 
					
						
						
							
							feat(server): add http1_writev config option for servers  
						
						... 
						
						
						
						Closes  #1527  
					
						2018-06-04 10:59:07 -07:00 
						 
				 
			
				
					
						
							
							
								Yusuke Sasaki 
							
						 
					 
					
						
						
							
						
						14d9246de2 
					 
					
						
						
							
							feat(server): add http1_only configuration  
						
						... 
						
						
						
						A new configuration http1_only to Builder and Connection are added, which indicates that the upgrading to h2 does not perform when a parsing error occurs.
Fixes  #1512 . 
						
						
					 
					
						2018-06-04 09:57:19 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						785914e77e 
					 
					
						
						
							
							chore(body): fix unused import in chunk benchmarks  
						
						
						
						
					 
					
						2018-06-04 09:52:54 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						185432da1b 
					 
					
						
						
							
							perf(h1): use faster flattening of body buffers  
						
						
						
						
					 
					
						2018-06-03 16:19:24 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						beace2f31e 
					 
					
						
						
							
							perf(chunk): use faster length check in Chunk::remaining  
						
						
						
						
					 
					
						2018-06-03 16:18:37 -07:00 
						 
				 
			
				
					
						
							
							
								Yusuke Sasaki 
							
						 
					 
					
						
						
							
						
						c615a3242f 
					 
					
						
						
							
							feat(server): add try_into_parts() to conn::Connection ( #1531 )  
						
						
						
						
					 
					
						2018-06-03 21:43:04 +02:00 
						 
				 
			
				
					
						
							
							
								Yusuke Sasaki 
							
						 
					 
					
						
						
							
						
						c6e90b7b65 
					 
					
						
						
							
							fix(server): add upgrading process to poll_without_shutdown() ( #1530 )  
						
						
						
						
					 
					
						2018-06-03 21:41:55 +02:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						497654958e 
					 
					
						
						
							
							v0.12.0  
						
						
						
						
					 
					
						2018-06-01 15:40:55 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						58004b847c 
					 
					
						
						
							
							docs(lib): update description of hyper  
						
						
						
						
					 
					
						2018-06-01 15:22:53 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						5e37272754 
					 
					
						
						
							
							docs(server): fix some grammar in Http and Connecting docs  
						
						
						
						
					 
					
						2018-06-01 14:11:32 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						789c2231f3 
					 
					
						
						
							
							refactor(body): separate body, payload, and chunk into their own internal mods  
						
						
						
						
					 
					
						2018-06-01 11:22:16 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						52e1700607 
					 
					
						
						
							
							docs(body): hide private __hyper_full_data method from docs  
						
						
						
						
					 
					
						2018-06-01 11:04:19 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						898e919504 
					 
					
						
						
							
							perf(h1): optimize for when Body is only 1 chunk  
						
						... 
						
						
						
						- When the `Body` is created from a buffer of bytes (such as
  `Body::from("hello")`), we can skip some bookkeeping that is
  normally required for streaming bodies.
- Orthogonally, optimize encoding body chunks when the strategy
  is to flatten into the headers buf, by skipping the EncodedBuf
  enum. 
						
						
					 
					
						2018-05-31 19:27:24 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						89c5643713 
					 
					
						
						
							
							refactor(h1): deref the read buffer only once in server parse  
						
						
						
						
					 
					
						2018-05-31 17:57:34 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						72f3ccd7c5 
					 
					
						
						
							
							refactor(h1): in debug builds, assert payload known length matchs custom content-length headers  
						
						
						
						
					 
					
						2018-05-31 17:56:27 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						bb8cb056fd 
					 
					
						
						
							
							refactor(h1): collapse some duplicate methods from Cursor  
						
						
						
						
					 
					
						2018-05-31 15:51:27 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						8ff42dbbb4 
					 
					
						
						
							
							perf(body): move h2 flow control from Chunk to h2 variant of Body  
						
						
						
						
					 
					
						2018-05-31 15:26:04 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						5323c2f39c 
					 
					
						
						
							
							perf(h1): optimize write buffer when flattening  
						
						
						
						
					 
					
						2018-05-30 17:19:45 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						bfb2ab8644 
					 
					
						
						
							
							perf(server): skip noop AddrStream inner flush  
						
						
						
						
					 
					
						2018-05-30 15:33:36 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						1b5fb3cc5e 
					 
					
						
						
							
							perf(h1): reduce clock checks for date rendering when pipelined  
						
						
						
						
					 
					
						2018-05-30 14:22:08 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						ba9b1eaf82 
					 
					
						
						
							
							refactor(body): combine Empty and Once variants for Body  
						
						
						
						
					 
					
						2018-05-30 13:59:31 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						3e462f4dee 
					 
					
						
						
							
							test(h1): fix missing mut in encode benchmark  
						
						
						
						
					 
					
						2018-05-30 13:43:19 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						19f90242f8 
					 
					
						
						
							
							feat(body): remove Body::is_empty()  
						
						... 
						
						
						
						BREAKING CHANGE: `Body::is_empty()` is gone. Replace with
  `Body::is_end_stream()`, from the `Payload` trait. 
						
						
					 
					
						2018-05-30 13:22:37 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						b5a888b0df 
					 
					
						
						
							
							refactor(rt): replace spawn and run with wrapped functions  
						
						
						
						
					 
					
						2018-05-16 12:23:25 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						e4be8b4cc9 
					 
					
						
						
							
							chore(lib): add deny(warnings) back  
						
						
						
						
					 
					
						2018-05-15 13:50:45 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						26417fc24a 
					 
					
						
						
							
							perf(h1): improve parsing and encoding of http1 messages  
						
						
						
						
					 
					
						2018-05-15 13:24:58 -07:00 
						 
				 
			
				
					
						
							
							
								Laurențiu Nicola 
							
						 
					 
					
						
						
							
						
						c3c35e866c 
					 
					
						
						
							
							perf(body): avoid boxing Streams twice  
						
						
						
						
					 
					
						2018-05-15 12:38:57 -07:00 
						 
				 
			
				
					
						
							
							
								estk 
							
						 
					 
					
						
						
							
						
						bc6af88a32 
					 
					
						
						
							
							feat(server): support HTTP1 and HTTP2 automatically  
						
						... 
						
						
						
						If an HTTP/1 connection has a parse error, but it starts with the HTTP2 preface, converts the connection automatically into an HTTP2 server connection.
Closes  #1486  
						
						
					 
					
						2018-05-10 14:23:42 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						57f05013e0 
					 
					
						
						
							
							refactor(chunk): add size_hint to chunk::IntoIter  
						
						
						
						
					 
					
						2018-05-08 18:59:39 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						aa603762ca 
					 
					
						
						
							
							refactor(chunk): hide Chunk::into_iter type  
						
						
						
						
					 
					
						2018-05-08 18:56:56 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						e236b01df5 
					 
					
						
						
							
							perf(h1): assert less around date formatter  
						
						
						
						
					 
					
						2018-05-08 11:42:59 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						5680f6fca0 
					 
					
						
						
							
							perf(h1): optimize header encoding  
						
						
						
						
					 
					
						2018-05-07 18:04:58 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						bf4fe7c515 
					 
					
						
						
							
							perf(h1): remove book keeping on final body writes  
						
						
						
						
					 
					
						2018-05-07 12:48:21 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						8f0e01f853 
					 
					
						
						
							
							perf(h1): poll body less if is_end_stream  
						
						
						
						
					 
					
						2018-05-07 12:09:15 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						0d104deced 
					 
					
						
						
							
							perf(h1): remove unused error branches from writing body  
						
						
						
						
					 
					
						2018-05-07 11:19:19 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						325b7e519a 
					 
					
						
						
							
							perf(lib): improve parsing by using uninitialized httparse header array  
						
						
						
						
					 
					
						2018-05-07 10:42:44 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						fdcd2a4b17 
					 
					
						
						
							
							perf(server): reduce task system wake up in new dispatcher  
						
						
						
						
					 
					
						2018-05-07 10:35:26 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						a3be110a55 
					 
					
						
						
							
							feat(body): change Payload::Data to be a Buf  
						
						... 
						
						
						
						Closes  #1508 
BREAKING CHANGE: Each payload chunk must implement `Buf`, instead of
  just `AsRef<[u8]>`. 
					
						2018-05-07 10:06:28 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						dfa7e17960 
					 
					
						
						
							
							refactor(client): change last Weak::new to an Option<Weak>  
						
						
						
						
					 
					
						2018-05-04 15:36:20 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						04c74ef596 
					 
					
						
						
							
							feat(client): rename FutureResponse to ResponseFuture  
						
						... 
						
						
						
						BREAKING CHANGE: Replace any references of
  `hyper::client::FutureResponse` to `hyper::client::ResponseFuture`. 
						
						
					 
					
						2018-05-04 15:21:59 -07:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						18c5f640e2 
					 
					
						
						
							
							feat(server): add service property to server::conn::Parts  
						
						... 
						
						
						
						This allows getting the original service back.
Closes  #1471 
Cherry-pick of commit bf7c0bbf4f55fdf465407874b0b2d4bd748e6783 from the
0.11.x branch. 
						
						
					 
					
						2018-05-04 13:22:31 +03:00 
						 
				 
			
				
					
						
							
							
								Sean McArthur 
							
						 
					 
					
						
						
							
						
						a5d2c639f5 
					 
					
						
						
							
							Merge pull request  #1505  from lnicola/body-from-stream  
						
						... 
						
						
						
						Add From<Box<Stream>> impl for Body 
						
						
					 
					
						2018-05-03 11:46:10 -07:00