1
0
mirror of https://github.com/actix/actix-extras.git synced 2024-11-30 18:34:36 +01:00
Commit Graph

565 Commits

Author SHA1 Message Date
Nikolay Kim
3425f7be40 fix tests 2018-01-14 14:58:58 -08:00
Nikolay Kim
7060f298b4 use more binary 2018-01-14 14:40:39 -08:00
Nikolay Kim
33dbe15760 use Binary for writer trait 2018-01-14 13:50:38 -08:00
Nikolay Kim
927a92fcac impl HttpHandler for Box<HttpHandler> and add helper method Application::boxed() #49 2018-01-13 18:58:17 -08:00
Nikolay Kim
93fdb596d4 Allow to explicitly disable chunked encoding 2018-01-13 16:17:33 -08:00
Nikolay Kim
305666067e Do not enable chunked encoding for HTTP/1.0 2018-01-13 12:46:43 -08:00
Nikolay Kim
b805d87ee7 no need for custom cookie module 2018-01-13 11:33:42 -08:00
Nikolay Kim
bc6bb9984f user guide spelling 2018-01-13 11:17:48 -08:00
belltoy
781282897a fix directory entry path 2018-01-13 08:37:27 +00:00
Nikolay Kim
c470e7a02b use flate2 released crate 2018-01-12 12:31:33 -08:00
Nikolay Kim
8a96e8fdd0 disable compression for static files 2018-01-11 23:49:53 -08:00
Nikolay Kim
e919ec485e cleanup http channel 2018-01-11 22:06:06 -08:00
Nikolay Kim
e482b88741 refactor http protocol selection procedure 2018-01-11 21:48:36 -08:00
Nikolay Kim
eb8052b936 fix cors tests 2018-01-11 20:20:50 -08:00
Nikolay Kim
dab918261c fix cors allowed header validation 2018-01-11 20:11:34 -08:00
Nikolay Kim
11342e4566 add link to gitter 2018-01-11 18:49:30 -08:00
Nikolay Kim
f7b895b53a add link to github 2018-01-11 18:47:34 -08:00
Nikolay Kim
ac89880c0a move encoding to server 2018-01-11 18:41:33 -08:00
Nikolay Kim
8a058efb4e move server protocol impl to submodule 2018-01-11 18:35:05 -08:00
Nikolay Kim
0707dfe5bb flush stream on drain 2018-01-11 16:22:27 -08:00
Nikolay Kim
0648ad6f33 fix implicit chunked encoding 2018-01-11 15:26:46 -08:00
Nikolay Kim
d152860fa7 add Cors::register method 2018-01-11 11:14:18 -08:00
Nikolay Kim
43f14224b1 properly enable encoding tests 2018-01-10 22:42:26 -08:00
Nikolay Kim
1a31554ee6 travis config 2018-01-10 21:02:28 -08:00
Nikolay Kim
49cdddf479 upgrade flate package 2018-01-10 20:28:06 -08:00
Nikolay Kim
aed90ed458 rename payload 2018-01-10 20:08:13 -08:00
Nikolay Kim
e0faf3f69c refactor pipeline impl 2018-01-10 16:45:57 -08:00
Nikolay Kim
f7807e43d8 cleanup Binary type; more cors tests 2018-01-10 15:28:33 -08:00
Nikolay Kim
fee54d1de0 tests for cors response 2018-01-10 14:56:45 -08:00
Nikolay Kim
1445cc7a2c test for cors 2018-01-10 14:21:48 -08:00
Nikolay Kim
16e9512457 better names for cors errors 2018-01-10 14:20:00 -08:00
Nikolay Kim
615db0d9d8 complete cors implementation 2018-01-10 13:41:33 -08:00
Nikolay Kim
3f3dcf413b move websocket code to submodule 2018-01-10 11:13:29 -08:00
Nikolay Kim
4b72a1b325 create custom WebsocketContext for websocket connection 2018-01-10 10:12:34 -08:00
Nikolay Kim
8aae2daafa update example 2018-01-10 07:55:25 -08:00
Nikolay Kim
d7f59ce481 add cors preflight request support 2018-01-09 23:55:42 -08:00
Nikolay Kim
ce78f17a79 refactor Middleware trait, use Result 2018-01-09 22:48:35 -08:00
Nikolay Kim
16310a5ebd initial work on cors middleware 2018-01-09 22:33:51 -08:00
Nikolay Kim
e8412672a2 add resource level middlewares support 2018-01-09 20:00:18 -08:00
Nikolay Kim
6c7dda495b add very simple http/2 test 2018-01-09 12:49:46 -08:00
Nikolay Kim
a159a9cd6e cleanup doc tests 2018-01-09 10:08:06 -08:00
Nikolay Kim
f90bc0caae do no stop on write_eof 2018-01-07 19:10:42 -08:00
Nikolay Kim
f802fe09e6 fix context poll 2018-01-07 17:13:49 -08:00
Nikolay Kim
71da72efdb use general context impl 2018-01-06 22:59:39 -08:00
Nikolay Kim
247c23c1ea no need for StreamHandler 2018-01-06 01:06:35 -08:00
Nikolay Kim
3ed9e872ad subscriber to os signals automatically 2018-01-05 16:32:36 -08:00
Nikolay Kim
5ff35f5b99 upgrade to actix 0.4 2018-01-05 13:30:21 -08:00
Nikolay Kim
20d5c61c11 set nodelay for streams 2018-01-04 09:32:47 -08:00
Nikolay Kim
91230afc44 fix time calculations 2018-01-04 09:32:33 -08:00
Nikolay Kim
afeffe4b19 encode returns result 2018-01-04 09:32:15 -08:00
Nikolay Kim
fdf7726831 update changelog 2018-01-03 23:59:12 -08:00
Nikolay Kim
9559f6a175 introduce IoStream trait for low level stream operations 2018-01-03 23:41:55 -08:00
Nikolay Kim
1f7aee23df shutdown io streams before exit 2018-01-03 22:43:44 -08:00
Nikolay Kim
e439d0546b * fix force_close
* shutdown io before exit

* fix response creation with body from pool
2018-01-03 18:21:34 -08:00
Nikolay Kim
8348c830e2 no need for mut ref 2018-01-03 10:57:57 -08:00
Nikolay Kim
ae084d1146 added helper future for reading request body 2018-01-03 09:23:58 -08:00
Nikolay Kim
88031b7fde remove debug prints 2018-01-03 09:00:22 -08:00
Nikolay Kim
70ea43b3c0 fix drain support for actor; make pattern more reusable 2018-01-02 23:43:17 -08:00
Nikolay Kim
3a59344ffb update h2 lib 2018-01-02 19:37:33 -08:00
Nikolay Kim
f0fdcc9936 handle application prefix for handlers; use handler for StaticFiles 2018-01-02 15:23:31 -08:00
Nikolay Kim
77ba1de305 flush encoder 2018-01-02 14:53:51 -08:00
Nikolay Kim
b49eadf7e5 fix content length serialization #33 2018-01-02 13:39:32 -08:00
Nikolay Kim
9040f588af allow to handle entire sub path 2018-01-02 13:09:02 -08:00
Nikolay Kim
cc38b30f7b refactor http actor usage 2017-12-31 17:26:32 -08:00
Nikolay Kim
967d3244d7 fix http/2 support 2017-12-31 13:22:11 -08:00
Nikolay Kim
6ea894547d better application handling, fix url_for method for routes with prefix 2017-12-29 14:04:13 -08:00
Nikolay Kim
491d43aa8c update tests 2017-12-29 11:49:36 -08:00
Nikolay Kim
1baead993a call poll_io recursevely aftre drain completion 2017-12-29 11:45:56 -08:00
Nikolay Kim
3d3e4dae9a refactor IntoHttpHandler trait 2017-12-29 11:33:04 -08:00
Nikolay Kim
1d195a2cf2 make Pipeline private 2017-12-29 09:16:50 -08:00
Nikolay Kim
d87fafb563 fix and refactor middleware runner 2017-12-29 01:01:31 -08:00
Nikolay Kim
308df19865 update readme 2017-12-28 16:27:08 -08:00
Nikolay Kim
538fea8027 add graceful shutdown system 2017-12-28 16:25:47 -08:00
Nikolay Kim
3f4898a6d1 add StopWorker message 2017-12-28 13:07:29 -08:00
Nikolay Kim
6a2bb9a473 split worker code to separate module 2017-12-28 12:38:37 -08:00
Nikolay Kim
783e19c1bf fix RequestSession impl for HttpRequest 2017-12-28 11:43:45 -08:00
Nikolay Kim
d80a0c9f94 add support for unix signals 2017-12-28 11:36:20 -08:00
Alban Minassian
27b0dfd761 set sessio name 2017-12-28 13:02:46 +01:00
Nikolay Kim
093d0bae40 Param ctor is private 2017-12-27 19:19:28 -08:00
Nikolay Kim
8941557da6 add parameter container iterator 2017-12-27 19:09:36 -08:00
Nikolay Kim
6bb893deab use Params object for query 2017-12-27 19:02:29 -08:00
Nikolay Kim
19e1c1b75b use Cow for Params type 2017-12-27 18:41:09 -08:00
Nikolay Kim
556de72932 add server spawn method 2017-12-27 17:49:10 -08:00
Nikolay Kim
4d741b4de5
Fix typos 2017-12-27 13:26:31 -08:00
Nikolay Kim
0589f2ee49 add server management commands 2017-12-27 12:58:32 -08:00
Nikolay Kim
da8aa8b988 use mio for accept loop 2017-12-27 11:22:27 -08:00
Nikolay Kim
183bcd38f8 modify unused_addr method; update websockt guide section 2017-12-26 20:52:21 -08:00
Nikolay Kim
3abd0db6b1 restore server start test 2017-12-26 20:07:31 -08:00
Nikolay Kim
29adc20581 rename module 2017-12-26 19:59:41 -08:00
Nikolay Kim
743235b8fd add unit test helper 2017-12-26 19:48:02 -08:00
Nikolay Kim
d3b7d2d6b3 allow to use application factory for test server 2017-12-26 16:47:55 -08:00
Nikolay Kim
f6510161b5 add simple TestServer for integrational tests cases 2017-12-26 16:35:00 -08:00
Nikolay Kim
e3b0f02794 fix type for disable feartures 2017-12-26 15:17:20 -08:00
Nikolay Kim
9521de5746 HttpServer::addrs() return all bound socket addresses 2017-12-26 14:45:38 -08:00
Nikolay Kim
dd3a2aa68a add HttpServer::server_hostname method 2017-12-26 14:36:03 -08:00
Nikolay Kim
cce9c68a10 add doc string 2017-12-26 12:46:27 -08:00
Nikolay Kim
cf8c2ca95e refactor Handler trait, use mut self 2017-12-26 09:00:45 -08:00
Nikolay Kim
ffb5742b71 fix tests 2017-12-25 19:42:55 -08:00
Nikolay Kim
5b65987f6a write response optimizations 2017-12-25 13:40:06 -08:00
Nikolay Kim
98b0e023f3 optimize payload detection 2017-12-25 07:31:12 -08:00
Nikolay Kim
f1e82ebc1e better connect handling 2017-12-24 16:15:40 -08:00
Nikolay Kim
ddd9c24bb2 optimize payload type detection 2017-12-24 14:29:19 -08:00
Nikolay Kim
9f9c75d832 simplify drain feature 2017-12-24 11:58:09 -08:00
Nikolay Kim
eaab28cd3b proper fix for compression 2017-12-21 12:57:59 -08:00
Nikolay Kim
c35d294611 fix compression 2017-12-21 12:54:18 -08:00
Nikolay Kim
18f3841783 update test 2017-12-20 23:36:52 -08:00
Nikolay Kim
bca1dd4f9e update doc strings 2017-12-20 23:19:21 -08:00
Nikolay Kim
0a68811dce cleanup more examples 2017-12-20 21:06:04 -08:00
Nikolay Kim
406d2c41e9 add doc string 2017-12-20 20:56:17 -08:00
Nikolay Kim
63ddc07ccb added JsonBody future 2017-12-20 20:30:54 -08:00
Nikolay Kim
33b2be3281 move json responder to separate module 2017-12-20 17:51:28 -08:00
Nikolay Kim
c36ad06332 more general Responder implementaiton for response future 2017-12-20 15:26:28 -08:00
Nikolay Kim
79f047f5be remove box from predicates 2017-12-20 13:23:50 -08:00
Nikolay Kim
813b56ebe5 make async handler future more generic 2017-12-20 12:51:39 -08:00
Nikolay Kim
7fc7d6e17a update guide 2017-12-19 22:36:06 -08:00
Nikolay Kim
626999bcc9 update doc strings 2017-12-19 16:09:19 -08:00
Nikolay Kim
64d867d9a1 update session guide section 2017-12-19 15:44:25 -08:00
Nikolay Kim
1596f4db73 refactor url encoded body parsing 2017-12-19 14:03:01 -08:00
Nikolay Kim
fa2a3bc55e make method private 2017-12-19 13:11:19 -08:00
Nikolay Kim
db7bd962cb fix some doc strings 2017-12-19 11:46:11 -08:00
Nikolay Kim
2bad99b645 better query() method impl; update doc strings 2017-12-19 11:34:51 -08:00
Nikolay Kim
e3f9345420 multipart field is stream of bytes 2017-12-19 09:55:49 -08:00
Nikolay Kim
790793f8a1 refactor multipart stream creation 2017-12-19 09:51:28 -08:00
Nikolay Kim
13cbfc877d simplify server start method 2017-12-19 09:08:36 -08:00
Nikolay Kim
4f6145e5c7 fix typos 2017-12-19 00:29:25 -08:00
Nikolay Kim
f3b853f224 refactor payload 2017-12-19 00:18:57 -08:00
Nikolay Kim
0cab873066 make payload sender public 2017-12-18 21:58:38 -08:00
Nikolay Kim
2124730e0a guide update 2017-12-18 18:56:58 -08:00
Nikolay Kim
9ed4159c0c update examples 2017-12-18 13:06:41 -08:00
Nikolay Kim
27d92f3a23 refactor server bind and start process 2017-12-17 12:35:04 -08:00
Nikolay Kim
b1f33e29ec simplify content-length calculation 2017-12-16 07:29:15 -08:00
Nikolay Kim
ed8bd3d6a3 h1 cleanups 2017-12-15 22:49:48 -08:00
Nikolay Kim
1daf50095a cleanup response 2017-12-15 20:00:12 -08:00
Nikolay Kim
a8b2f1b821 update tests 2017-12-15 18:49:11 -08:00
Nikolay Kim
1ddcce7b76 hide httpresponse box 2017-12-15 16:24:15 -08:00
Nikolay Kim
c3d5e4301a cleanup h1 parse 2017-12-15 13:10:12 -08:00
Nikolay Kim
4913e7d3c2 cleanup 2017-12-14 22:22:27 -08:00
Nikolay Kim
106f43e874 better SharedBytes usage for h2 2017-12-14 20:48:31 -08:00
Nikolay Kim
2b0994e448 update tests 2017-12-14 20:29:49 -08:00
Nikolay Kim
c37565cc4a various server optimizations 2017-12-14 19:34:31 -08:00
Nikolay Kim
b61c2a0cf0 handle keep-alive setting more efficient 2017-12-14 11:20:45 -08:00
Nikolay Kim
c98d320f8c rename FromRequest trait to Responder 2017-12-14 09:43:42 -08:00
Nikolay Kim
355f54efe2 update api docs 2017-12-13 23:35:21 -08:00
Nikolay Kim
8c1487f7f2 update tests 2017-12-13 23:09:35 -08:00
Nikolay Kim
4529efa948 rename module 2017-12-13 22:54:52 -08:00
Nikolay Kim
9d0a64ac98 remove unused file 2017-12-13 22:43:16 -08:00
Nikolay Kim
b7cde3f4a9 update guide 2017-12-13 22:36:28 -08:00
Nikolay Kim
408ddf0be1 add ssl guide ref 2017-12-13 21:56:30 -08:00
Nikolay Kim
c2751efa87 refactor keep-alive; update guide 2017-12-13 21:38:47 -08:00
Nikolay Kim
96f598f2c4 various optimizations 2017-12-13 16:44:35 -08:00
Nikolay Kim
81f8da03ae refactor http workers 2017-12-13 12:47:07 -08:00
Nikolay Kim
6b61041aec move tests 2017-12-13 11:16:26 -08:00
Nikolay Kim
d4187f682b various cleanups 2017-12-13 11:10:03 -08:00
Nikolay Kim
55204c829c update tests 2017-12-13 08:00:25 -08:00
Nikolay Kim
2e83c5924d cleanup and optimize some code 2017-12-12 21:32:58 -08:00
Nikolay Kim
ab6efd2421 handle http connections in different threads 2017-12-12 17:21:00 -08:00
Nikolay Kim
55818028cb state does not need to be Send 2017-12-12 08:51:16 -08:00
Nikolay Kim
e9aa67b75d http server accepts factory of HttpHandlers 2017-12-12 07:40:36 -08:00
Nikolay Kim
007b7ce62f unify route not found handling 2017-12-11 16:26:51 -08:00
Nikolay Kim
0f75d066f2 simplify Application creation; update url dispatch guide section 2017-12-11 14:16:29 -08:00
Nikolay Kim
0388a464ba tests for NormalizePath 2017-12-09 13:25:06 -08:00
Nikolay Kim
71bbe2a5dd update doc string for NormalizePath 2017-12-09 11:55:55 -08:00
Nikolay Kim
7addd2800d add NormalizePath handler 2017-12-09 11:39:13 -08:00
Nikolay Kim
273de2260d refactor pipeline 2017-12-09 05:54:04 -08:00
Nikolay Kim
b98ab2eebe use trait instead of pipeline 2017-12-09 04:33:40 -08:00
Nikolay Kim
4a40b026a4 more error wrappers 2017-12-08 15:52:46 -08:00
Nikolay Kim
a44f71d8c2 make ErrorBadRequest type useful 2017-12-08 15:25:37 -08:00
Nikolay Kim
9043e7286d tests for default predicates 2017-12-08 12:51:44 -08:00
Nikolay Kim
3e91b06241 fix static files 2017-12-08 12:29:28 -08:00
Nikolay Kim
774bfc0a86 use server settings for scheme and host values 2017-12-08 09:48:53 -08:00
Nikolay Kim
1293619096 set server settings to HttpHandler 2017-12-08 09:24:05 -08:00
Nikolay Kim
2192d14eff added ServerSettings 2017-12-07 22:54:44 -08:00
Nikolay Kim
b71ddf7b4c pass local addr to channel; use bitflags 2017-12-07 21:52:46 -08:00
Nikolay Kim
d595dd850e load cookies automatically 2017-12-07 18:00:20 -08:00
Nikolay Kim
0abb3863dc simplify api 2017-12-07 17:38:18 -08:00
Nikolay Kim
dff7618f35 rearrange exports 2017-12-07 16:40:29 -08:00
Nikolay Kim
968f5d39d6 added external resources; refactor route recognizer 2017-12-07 16:22:26 -08:00
Nikolay Kim
2a0d5db41a more tests 2017-12-06 18:39:13 -08:00
Nikolay Kim
4b03d03404 rearrange exports 2017-12-06 17:06:40 -08:00
Nikolay Kim
9ea0781aba fix test 2017-12-06 16:58:49 -08:00
Nikolay Kim
63502fa833 test for Router::has_route 2017-12-06 16:40:23 -08:00
Nikolay Kim
a18bd5dac0 add doc ref 2017-12-06 16:34:54 -08:00
Nikolay Kim
0dd27bd224 added HttpRequest::url_for 2017-12-06 16:26:27 -08:00
Nikolay Kim
8d52e2bbd9 tests for default resource 2017-12-06 13:02:53 -08:00
Nikolay Kim
c63f058647 simplify application creation 2017-12-06 11:00:39 -08:00
Nikolay Kim
87c7441f7d remove Applicaiton::route, resource is enough 2017-12-06 08:03:08 -08:00
Nikolay Kim
04ded5ba68 hide pkcs 2017-12-06 07:49:01 -08:00
Nikolay Kim
903b391e0a move ConnectionInfo to dev 2017-12-06 07:47:42 -08:00
Nikolay Kim
20af8822fd cleanup 2017-12-05 21:53:00 -08:00
Nikolay Kim
d7e65b6212 add ConnectionInfo tests 2017-12-05 21:41:30 -08:00
Nikolay Kim
c3de32c3b3 added ConnectionInfo 2017-12-05 17:09:15 -08:00
Nikolay Kim
d8b880e167 work on resource_path api 2017-12-05 13:31:06 -08:00
Nikolay Kim
86d7290f9e update tests 2017-12-05 11:43:41 -08:00
Nikolay Kim
a83d9b24ae extrat elements of path pattern 2017-12-05 11:31:35 -08:00
Nikolay Kim
3c9b6ea619 update guide 2017-12-04 20:38:38 -08:00
Nikolay Kim
fd6b243cd6 update examples 2017-12-04 16:32:31 -08:00
Nikolay Kim
f4e9fc7b6a rename async to a 2017-12-04 16:09:22 -08:00
Nikolay Kim
e332c1242f use Route for Applicaiton handlers 2017-12-04 14:53:40 -08:00
Nikolay Kim
f5d6179a34 renamed Route::handler to Route::f, added Route::h to register Handler 2017-12-04 14:07:53 -08:00
Nikolay Kim
a163e75318 drop tail path pattern 2017-12-04 13:34:55 -08:00