fe13789345 
								
							 
						 
						
							
							
								
								Use `Pin<Box<S>>` in `BodyStream` and `SizedStream` ( #1328 )  
							
							... 
							
							
							
							Fixes  #1321 
A better fix would be to change `MessageBody` to take a `Pin<&mut
Self>`, rather than a `Pin<&mut Self>`. This will avoid requiring the
use of `Box` for all consumers by allowing the caller to determine how
to pin the `MessageBody` implementation (e.g. via stack pinning).
However, doing so is a breaking change that will affect every user of
`MessageBody`. By pinning the inner stream ourselves, we can fix the
undefined behavior without breaking the API.
I've included @sebzim4500's reproduction case as a new test case.
However, due to the nature of undefined behavior, this could pass (and
not segfault) even if underlying issue were to regress.
Unfortunately, until rust-lang/unsafe-code-guidelines#148  is resolved,
it's not even possible to write a Miri test that will pass when the bug
is fixed.
Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com> 
						
							2020-01-31 09:39:34 +09:00  
				
					
						
							
							
								 
						
							
								6a0cd2dced 
								
							 
						 
						
							
							
								
								Rename HttpServer::start() to HttpServer::run()  
							
							
							
						 
						
							2019-12-22 17:12:22 +04:00  
				
					
						
							
							
								 
						
							
								c877840c07 
								
							 
						 
						
							
							
								
								rename App::register_data to App::app_data and HttpRequest::app_data returns Option<&T> instead of Option<&Data<T>>  
							
							
							
						 
						
							2019-12-20 17:13:09 +06:00  
				
					
						
							
							
								 
						
							
								20248daeda 
								
							 
						 
						
							
							
								
								Allow to set peer_addr for TestRequest  #1074  
							
							
							
						 
						
							2019-12-20 16:11:51 +06:00  
				
					
						
							
							
								 
						
							
								a08d8dab70 
								
							 
						 
						
							
							
								
								AppConfig::secure() is always false.  #1202  
							
							
							
						 
						
							2019-12-20 16:04:51 +06:00  
				
					
						
							
							
								 
						
							
								1d12ba9d5f 
								
							 
						 
						
							
							
								
								Replace brotli with brotli2  #1224  
							
							
							
						 
						
							2019-12-20 13:50:07 +06:00  
				
					
						
							
							
								 
						
							
								1732ae8c79 
								
							 
						 
						
							
							
								
								fix Bodyencoding trait usage  
							
							
							
						 
						
							2019-12-18 09:30:14 +06:00  
				
					
						
							
							
								 
						
							
								db1d6b7963 
								
							 
						 
						
							
							
								
								refactor test server impl  
							
							
							
						 
						
							2019-12-12 22:28:47 +06:00  
				
					
						
							
							
								 
						
							
								fa07415721 
								
							 
						 
						
							
							
								
								Replace flate2-xxx features with compress  
							
							
							
						 
						
							2019-12-12 15:08:08 +06:00  
				
					
						
							
							
								 
						
							
								4a8a9ef405 
								
							 
						 
						
							
							
								
								update tests and clippy warnings  
							
							
							
						 
						
							2019-12-08 12:31:16 +06:00  
				
					
						
							
							
								 
						
							
								e5f3d88a4e 
								
							 
						 
						
							
							
								
								Switch brotli compressor to rust. ( #1197 )  
							
							... 
							
							
							
							* Switch to a rustified version of brotli.
* Some memory optimizations.
* Make brotli not optional anymore. 
							
						 
						
							2019-12-07 21:55:41 +06:00  
				
					
						
							
							
								 
						
							
								f4c01384ec 
								
							 
						 
						
							
							
								
								update to latest actix-net  
							
							
							
						 
						
							2019-12-02 17:33:11 +06:00  
				
					
						
							
							
								 
						
							
								4dc31aac93 
								
							 
						 
						
							
							
								
								use actix_rt::test for test setup  
							
							
							
						 
						
							2019-11-26 11:25:50 +06:00  
				
					
						
							
							
								 
						
							
								8683ba8bb0 
								
							 
						 
						
							
							
								
								rename .to_async() to .to()  
							
							
							
						 
						
							2019-11-21 21:36:35 +06:00  
				
					
						
							
							
								 
						
							
								3127dd4db6 
								
							 
						 
						
							
							
								
								migrate actix-web to std::future  
							
							
							
						 
						
							2019-11-21 16:02:17 +06:00  
				
					
						
							
							
								 
						
							
								1ffa7d18d3 
								
							 
						 
						
							
							
								
								drop unpin constraint  
							
							
							
						 
						
							2019-11-21 16:02:17 +06:00  
				
					
						
							
							
								 
						
							
								cb19ebfe0c 
								
							 
						 
						
							
							
								
								add rustls support for actix-http and awc ( #998 )  
							
							... 
							
							
							
							* add rustls support for actix-http and awc
* fix features conflict
* remove unnecessary duplication
* test server with rust-tls
* fix
* test rustls
* awc rustls test
* format
* tests
* fix dependencies
* fixes and add changes
* remove test-server and Cargo.toml dev-dependencies changes
* cargo fmt 
							
						 
						
							2019-07-31 13:02:56 -07:00  
				
					
						
							
							
								 
						
							
								163ca89cf4 
								
							 
						 
						
							
							
								
								more tests  
							
							
							
						 
						
							2019-04-17 17:48:25 -07:00  
				
					
						
							
							
								 
						
							
								ee33f52736 
								
							 
						 
						
							
							
								
								make extractor config type explicit  
							
							
							
						 
						
							2019-04-13 16:35:25 -07:00  
				
					
						
							
							
								 
						
							
								4f30fa9d46 
								
							 
						 
						
							
							
								
								Remove generic type for request payload, always use default  
							
							
							
						 
						
							2019-04-13 14:50:54 -07:00  
				
					
						
							
							
								 
						
							
								0a6dd0efdf 
								
							 
						 
						
							
							
								
								fix compression tests  
							
							
							
						 
						
							2019-04-08 12:48:39 -07:00  
				
					
						
							
							
								 
						
							
								3872d3ba5a 
								
							 
						 
						
							
							
								
								refactor h1 dispatcher  
							
							
							
						 
						
							2019-04-06 08:12:58 -07:00  
				
					
						
							
							
								 
						
							
								fbedaec661 
								
							 
						 
						
							
							
								
								add expect: 100-continue support  #141  
							
							
							
						 
						
							2019-04-05 16:46:44 -07:00  
				
					
						
							
							
								 
						
							
								309c480782 
								
							 
						 
						
							
							
								
								encoder sent uncompressed data before compressed  
							
							
							
						 
						
							2019-04-04 15:03:40 -07:00  
				
					
						
							
							
								 
						
							
								bca31eb7ad 
								
							 
						 
						
							
							
								
								remove Deref  
							
							
							
						 
						
							2019-04-02 13:35:01 -07:00  
				
					
						
							
							
								 
						
							
								34695f4bce 
								
							 
						 
						
							
							
								
								rename test methods; update tests  
							
							
							
						 
						
							2019-03-31 20:43:00 -07:00  
				
					
						
							
							
								 
						
							
								193f8fb2d9 
								
							 
						 
						
							
							
								
								update tests  
							
							
							
						 
						
							2019-03-29 18:51:07 -07:00  
				
					
						
							
							
								 
						
							
								00526f60dc 
								
							 
						 
						
							
							
								
								Impl BodyEncoding for Response ( #740 )  
							
							
							
						 
						
							2019-03-29 16:29:11 -07:00  
				
					
						
							
							
								 
						
							
								c126713f40 
								
							 
						 
						
							
							
								
								add rustls support to HttpServer  
							
							
							
						 
						
							2019-03-29 16:28:32 -07:00  
				
					
						
							
							
								 
						
							
								878f32c495 
								
							 
						 
						
							
							
								
								fix tests for no-default-features  
							
							
							
						 
						
							2019-03-28 14:27:07 -07:00  
				
					
						
							
							
								 
						
							
								605ce05127 
								
							 
						 
						
							
							
								
								App::enable_encoding() allows to enable compression and decompression  
							
							
							
						 
						
							2019-03-28 12:32:59 -07:00  
				
					
						
							
							
								 
						
							
								e254fe4f9c 
								
							 
						 
						
							
							
								
								allow to override response body encoding  
							
							
							
						 
						
							2019-03-27 11:29:31 -07:00  
				
					
						
							
							
								 
						
							
								1cca25c276 
								
							 
						 
						
							
							
								
								add client decompression support  
							
							
							
						 
						
							2019-03-26 20:45:00 -07:00  
				
					
						
							
							
								 
						
							
								1904b01fc0 
								
							 
						 
						
							
							
								
								add content-encoding decompression  
							
							
							
						 
						
							2019-03-26 15:14:32 -07:00  
				
					
						
							
							
								 
						
							
								50c0ddb3cd 
								
							 
						 
						
							
							
								
								update tests  
							
							
							
						 
						
							2019-03-26 12:31:51 -07:00  
				
					
						
							
							
								 
						
							
								86a21c956c 
								
							 
						 
						
							
							
								
								rename .middleware to .wrap  
							
							
							
						 
						
							2019-03-25 13:02:10 -07:00  
				
					
						
							
							
								 
						
							
								88152740c6 
								
							 
						 
						
							
							
								
								move macros tests to codegen crate  
							
							
							
						 
						
							2019-03-17 20:20:10 -07:00  
				
					
						
							
							
								 
						
							
								a07ea00cc4 
								
							 
						 
						
							
							
								
								add basic test for proc macro  
							
							
							
						 
						
							2019-03-17 13:55:03 -07:00  
				
					
						
							
							
								 
						
							
								b550f9ecf4 
								
							 
						 
						
							
							
								
								update imports  
							
							
							
						 
						
							2019-03-17 01:08:56 -07:00  
				
					
						
							
							
								 
						
							
								1f9467e880 
								
							 
						 
						
							
							
								
								update tests  
							
							
							
						 
						
							2019-03-14 12:01:35 -07:00  
				
					
						
							
							
								 
						
							
								86405cfe7a 
								
							 
						 
						
							
							
								
								more tests  
							
							
							
						 
						
							2019-03-12 22:57:09 -07:00  
				
					
						
							
							
								 
						
							
								fe22e83144 
								
							 
						 
						
							
							
								
								refactor service registration process; unify services and resources  
							
							
							
						 
						
							2019-03-06 15:47:15 -08:00  
				
					
						
							
							
								 
						
							
								8103d33270 
								
							 
						 
						
							
							
								
								use custom request for FromRequest trait  
							
							
							
						 
						
							2019-03-02 19:19:56 -08:00  
				
					
						
							
							
								 
						
							
								e6d04d24cc 
								
							 
						 
						
							
							
								
								move fs to separate crate  
							
							
							
						 
						
							2019-03-01 23:59:44 -08:00  
				
					
						
							
							
								 
						
							
								2d7293aaf8 
								
							 
						 
						
							
							
								
								copy actix-web2  
							
							
							
						 
						
							2019-03-01 22:51:32 -08:00  
				
					
						
							
							
								 
						
							
								4d45313f9d 
								
							 
						 
						
							
							
								
								Decode special characters when handling static files  
							
							
							
						 
						
							2019-01-08 10:46:58 +03:00  
				
					
						
							
							
								 
						
							
								b1635bc0e6 
								
							 
						 
						
							
							
								
								Update some dependencies ( #612 )  
							
							... 
							
							
							
							* Update rand to 0.6
* Update parking_lot to 0.7
* Update env_logger to 0.6 
							
						 
						
							2018-12-04 09:58:22 +03:00  
				
					
						
							
							
								 
						
							
								c386353337 
								
							 
						 
						
							
							
								
								decode reserved characters when extracting path with configuration ( #577 )  
							
							... 
							
							
							
							* decode reserved characters when extracting path with configuration
* remove useless clone
* add a method to get decoded parameter by name 
							
						 
						
							2018-11-24 16:54:11 +03:00  
				
					
						
							
							
								 
						
							
								9ab586e24e 
								
							 
						 
						
							
							
								
								update actix-net dep  
							
							
							
						 
						
							2018-11-08 16:06:23 -08:00  
				
					
						
							
							
								 
						
							
								4e7fac08b9 
								
							 
						 
						
							
							
								
								do not override content-length header  
							
							
							
						 
						
							2018-10-08 15:30:59 -07:00  
				
					
						
							
							
								 
						
							
								10678a22af 
								
							 
						 
						
							
							
								
								test content length ( #532 )  
							
							
							
						 
						
							2018-10-06 08:17:20 +03:00  
				
					
						
							
							
								 
						
							
								b0677aa029 
								
							 
						 
						
							
							
								
								fix stable compatibility  
							
							
							
						 
						
							2018-10-02 19:42:24 -07:00  
				
					
						
							
							
								 
						
							
								2710f70e39 
								
							 
						 
						
							
							
								
								add H1 transport  
							
							
							
						 
						
							2018-10-02 17:30:29 -07:00  
				
					
						
							
							
								 
						
							
								ae5c4dfb78 
								
							 
						 
						
							
							
								
								refactor http channels list; rename WorkerSettings  
							
							
							
						 
						
							2018-10-02 15:25:32 -07:00  
				
					
						
							
							
								 
						
							
								d7379bd10b 
								
							 
						 
						
							
							
								
								update server ssl tests; upgrade rustls  
							
							
							
						 
						
							2018-10-02 13:41:33 -07:00  
				
					
						
							
							
								 
						
							
								b59712c439 
								
							 
						 
						
							
							
								
								add ssl handshake timeout tests  
							
							
							
						 
						
							2018-10-02 11:32:43 -07:00  
				
					
						
							
							
								 
						
							
								724668910b 
								
							 
						 
						
							
							
								
								fix ssh handshake timeout  
							
							
							
						 
						
							2018-10-02 11:18:59 -07:00  
				
					
						
							
							
								 
						
							
								61c7534e03 
								
							 
						 
						
							
							
								
								fix stream flushing  
							
							
							
						 
						
							2018-10-02 10:43:23 -07:00  
				
					
						
							
							
								 
						
							
								f3ce6574e4 
								
							 
						 
						
							
							
								
								fix client timer and add slow request tests  
							
							
							
						 
						
							2018-10-02 00:19:28 -07:00  
				
					
						
							
							
								 
						
							
								368f73513a 
								
							 
						 
						
							
							
								
								set tcp-keepalive for test as well  
							
							
							
						 
						
							2018-10-01 22:25:53 -07:00  
				
					
						
							
							
								 
						
							
								c674ea9126 
								
							 
						 
						
							
							
								
								add StreamConfiguration service  
							
							
							
						 
						
							2018-10-01 22:23:02 -07:00  
				
					
						
							
							
								 
						
							
								7c78797d9b 
								
							 
						 
						
							
							
								
								proper stop for test_ws_stopped test  
							
							
							
						 
						
							2018-10-01 21:30:00 -07:00  
				
					
						
							
							
								 
						
							
								84edc57fd9 
								
							 
						 
						
							
							
								
								increase sleep time  
							
							
							
						 
						
							2018-10-01 21:19:27 -07:00  
				
					
						
							
							
								 
						
							
								1bac65de4c 
								
							 
						 
						
							
							
								
								add websocket stopped test  
							
							
							
						 
						
							2018-10-01 20:15:26 -07:00  
				
					
						
							
							
								 
						
							
								16945a554a 
								
							 
						 
						
							
							
								
								add client shutdown timeout  
							
							
							
						 
						
							2018-10-01 20:04:16 -07:00  
				
					
						
							
							
								 
						
							
								c1e0b4f322 
								
							 
						 
						
							
							
								
								expose internal http server types and allow to create custom http pipelines  
							
							
							
						 
						
							2018-10-01 14:43:06 -07:00  
				
					
						
							
							
								 
						
							
								9f1417af30 
								
							 
						 
						
							
							
								
								refactor http service builder  
							
							
							
						 
						
							2018-09-27 18:33:29 -07:00  
				
					
						
							
							
								 
						
							
								a63d3f9a7a 
								
							 
						 
						
							
							
								
								cleanup ServerFactory trait  
							
							
							
						 
						
							2018-09-27 18:33:29 -07:00  
				
					
						
							
							
								 
						
							
								6a61138bf8 
								
							 
						 
						
							
							
								
								enable ssl feature  
							
							
							
						 
						
							2018-09-27 18:33:29 -07:00  
				
					
						
							
							
								 
						
							
								0dc96658f2 
								
							 
						 
						
							
							
								
								Send response to inform client of error ( #515 )  
							
							
							
						 
						
							2018-09-21 07:24:10 +03:00  
				
					
						
							
							
								 
						
							
								d65c72b44d 
								
							 
						 
						
							
							
								
								use server keep-alive timer as slow request timer  
							
							
							
						 
						
							2018-09-15 09:55:38 -07:00  
				
					
						
							
							
								 
						
							
								4ca9fd2ad1 
								
							 
						 
						
							
							
								
								remove debug print  
							
							
							
						 
						
							2018-09-03 22:09:12 -07:00  
				
					
						
							
							
								 
						
							
								f0f67072ae 
								
							 
						 
						
							
							
								
								Read client response until eof if connection header set to  close   #464  
							
							
							
						 
						
							2018-09-03 21:35:59 -07:00  
				
					
						
							
							
								 
						
							
								968c81e267 
								
							 
						 
						
							
							
								
								Handling scoped paths without leading slashes  #460  
							
							
							
						 
						
							2018-09-02 08:14:54 -07:00  
				
					
						
							
							
								 
						
							
								0425e2776f 
								
							 
						 
						
							
							
								
								Fix Issue  #490  ( #498 )  
							
							... 
							
							
							
							* Add failing testcase for HTTP 404 response with no reason text.
* Include canonical reason test for HTTP error responses.
* Don't send a reason for unknown status codes. 
							
						 
						
							2018-09-01 12:00:32 +03:00  
				
					
						
							
							
								 
						
							
								487519acec 
								
							 
						 
						
							
							
								
								Add client test for 'Connection: close' as reported in issue  #495  
							
							
							
						 
						
							2018-09-01 00:34:19 +08:00  
				
					
						
							
							
								 
						
							
								1716380f08 
								
							 
						 
						
							
							
								
								clippy fmt  
							
							
							
						 
						
							2018-08-23 09:48:01 -07:00  
				
					
						
							
							
								 
						
							
								bdc9a8bb07 
								
							 
						 
						
							
							
								
								Optionally support tokio-uds's UnixStream as IoStream ( #472 )  
							
							
							
						 
						
							2018-08-17 19:04:15 +03:00  
				
					
						
							
							
								 
						
							
								a8405d0686 
								
							 
						 
						
							
							
								
								Fix tests on Unix  
							
							
							
						 
						
							2018-08-17 13:13:48 +01:00  
				
					
						
							
							
								 
						
							
								eb1e9a785f 
								
							 
						 
						
							
							
								
								allow to use fn with multiple arguments with .with()/.with_async()  
							
							
							
						 
						
							2018-08-16 20:29:06 -07:00  
				
					
						
							
							
								 
						
							
								8eb9eb4247 
								
							 
						 
						
							
							
								
								flush io on complete  
							
							
							
						 
						
							2018-08-08 09:12:32 -07:00  
				
					
						
							
							
								 
						
							
								30769e3072 
								
							 
						 
						
							
							
								
								fix http/2 error handling  
							
							
							
						 
						
							2018-08-07 20:48:25 -07:00  
				
					
						
							
							
								 
						
							
								900fd5a98e 
								
							 
						 
						
							
							
								
								Correct settings headers for HTTP2  
							
							... 
							
							
							
							Add test to verify number of Set-Cookies 
							
						 
						
							2018-08-04 18:05:41 +03:00  
				
					
						
							
							
								 
						
							
								e61ef7dee4 
								
							 
						 
						
							
							
								
								Use zlib instead of deflate for content encoding ( #442 )  
							
							
							
						 
						
							2018-08-03 14:56:26 +02:00  
				
					
						
							
							
								 
						
							
								e9c1889df4 
								
							 
						 
						
							
							
								
								test timing  
							
							
							
						 
						
							2018-08-01 16:41:24 -07:00  
				
					
						
							
							
								 
						
							
								246eafb8d2 
								
							 
						 
						
							
							
								
								Merge branch 'master' of  https://github.com/actix/actix-web  into feat/432  
							
							
							
						 
						
							2018-08-01 09:36:08 -07:00  
				
					
						
							
							
								 
						
							
								dca4c110dd 
								
							 
						 
						
							
							
								
								feature: allow TestServer to open a websocket on any URL  
							
							... 
							
							
							
							* added `TestServer::ws_at(uri_str)`
* modified `TestServer::ws()` to call `self.ws_at("/")` to preserve
behavior
Closes  #432  
							
						 
						
							2018-08-01 09:30:27 -07:00  
				
					
						
							
							
								 
						
							
								58230b15b9 
								
							 
						 
						
							
							
								
								use one thread for accept loop; refactor rust-tls support  
							
							
							
						 
						
							2018-07-31 19:51:26 -07:00  
				
					
						
							
							
								 
						
							
								3bd43090fb 
								
							 
						 
						
							
							
								
								use new gzdecoder, fixes gz streaming  #228  
							
							
							
						 
						
							2018-07-31 09:06:05 -07:00  
				
					
						
							
							
								 
						
							
								196da6d570 
								
							 
						 
						
							
							
								
								add rustls  
							
							
							
						 
						
							2018-07-30 08:21:12 +03:00  
				
					
						
							
							
								 
						
							
								6b10e1eff6 
								
							 
						 
						
							
							
								
								rename PayloadHelper  
							
							
							
						 
						
							2018-07-18 10:01:28 +06:00  
				
					
						
							
							
								 
						
							
								29a275b0f5 
								
							 
						 
						
							
							
								
								Session should write percent encoded cookies and add cookie middleware test ( #393 )  
							
							... 
							
							
							
							* Should write percent encoded cookies to HTTP response
* Add cookie middleware test 
							
						 
						
							2018-07-17 08:38:18 +03:00  
				
					
						
							
							
								 
						
							
								22385505a3 
								
							 
						 
						
							
							
								
								clippy warnings and fmt  
							
							
							
						 
						
							2018-07-16 11:17:45 +06:00  
				
					
						
							
							
								 
						
							
								7d753eeb8c 
								
							 
						 
						
							
							
								
								Private serde fork ( #390 )  
							
							... 
							
							
							
							* Fork serde_urlencoded
* Apply enum PR https://github.com/nox/serde_urlencoded/pull/30 
* Add test to verify enum in query
* Docs are updated to show example of how to use enum. 
							
						 
						
							2018-07-13 09:59:09 +03:00  
				
					
						
							
							
								 
						
							
								a5f7a67b4d 
								
							 
						 
						
							
							
								
								clippy warnings  
							
							
							
						 
						
							2018-07-06 08:24:44 +06:00  
				
					
						
							
							
								 
						
							
								185e710dc8 
								
							 
						 
						
							
							
								
								do not drop content-encoding header in case of identity  #363  
							
							
							
						 
						
							2018-07-06 08:24:36 +06:00  
				
					
						
							
							
								 
						
							
								9070d59ea8 
								
							 
						 
						
							
							
								
								do not read head payload  
							
							
							
						 
						
							2018-07-06 08:11:36 +06:00  
				
					
						
							
							
								 
						
							
								67e4cad281 
								
							 
						 
						
							
							
								
								Introduce method to set header if it is missing only ( #364 )  
							
							... 
							
							
							
							Also let default headers use it.
Closes  #320  
							
						 
						
							2018-07-05 19:27:18 +03:00  
				
					
						
							
							
								 
						
							
								80339147b9 
								
							 
						 
						
							
							
								
								call disconnect on write error  
							
							
							
						 
						
							2018-07-05 12:50:54 +06:00  
				
					
						
							
							
								 
						
							
								fec6047ddc 
								
							 
						 
						
							
							
								
								refactor HttpRequest mutability  
							
							
							
						 
						
							2018-07-02 23:35:32 +06:00