f73f97353b
refactor ResponseError trait
2019-11-26 16:07:39 +06:00
4dc31aac93
use actix_rt::test for test setup
2019-11-26 11:25:50 +06:00
c5907747ad
Remove implementation of Responder for (). Fixes #1108 .
...
Rationale:
- In Rust, one can omit a semicolon after a function's final expression to make
its value the function's return value. It's common for people to include a
semicolon after the last expression by mistake - common enough that the Rust
compiler suggests removing the semicolon when there's a type mismatch between
the function's signature and body. By implementing Responder for (), Actix makes
this common mistake a silent error in handler functions.
- Functions returning an empty body should return HTTP status 204 ("No Content"),
so the current Responder impl for (), which returns status 200 ("OK"), is not
really what one wants anyway.
- It's not much of a burden to ask handlers to explicitly return
`HttpResponse::Ok()` if that is what they want; all the examples in the
documentation do this already.
2019-11-23 21:10:02 +06:00
8683ba8bb0
rename .to_async() to .to()
2019-11-21 21:36:35 +06:00
1f0577f8d5
cleanup api doc examples
2019-11-21 16:02:17 +06:00
53c5151692
use response instead of result for asyn c handlers
2019-11-21 16:02:17 +06:00
55698f2524
migrade rest of middlewares
2019-11-21 16:02:17 +06:00
3127dd4db6
migrate actix-web to std::future
2019-11-21 16:02:17 +06:00
88110ed268
Add security note to ConnectionInfo::remote() ( #1158 )
2019-11-14 08:32:47 +06:00
f7f410d033
fix test order dep
2019-11-06 11:20:47 -08:00
ace98e3a1e
support Host guards when Host header is unset ( #1129 )
2019-10-15 05:05:54 +06:00
0f09415469
Convert documentation examples to Rust 2018 edition ( #1120 )
...
* Convert types::query examples to rust-2018 edition
* Convert types::json examples to rust-2018 edition
* Convert types::path examples to rust-2018 edition
* Convert types::form examples to rust-2018 edition
* Convert rest of the examples to rust-2018 edition.
2019-10-07 11:29:11 +06:00
15d3c1ae81
Update docs of guard.rs ( #1116 )
...
* Update guard.rs
2019-10-07 12:05:17 +09:00
f81ae37677
Add From<Payload> for crate::dev::Payload ( #1110 )
...
* Add From<Payload> for crate::dev::Payload
* Make dev::Payload field of Payload public and add into_inner method
* Add changelog entry
2019-10-01 14:05:38 +06:00
5169d306ae
update ConnectionInfo.remote() doc string
2019-09-27 07:03:12 +06:00
c659c33919
Feature uds: Add listen_uds to ServerBuilder ( #1085 )
...
Allows using an existing Unix Listener instead of binding to a path.
Useful for when running as a daemon under systemd.
Change-Id: I54a0e78c321d8b7a9ded381083217af590e9a7fa
2019-09-25 15:16:51 +06:00
d9af8f66ba
Use actix-testing for testing utils
2019-09-25 10:28:41 +06:00
58c7065f08
Implement register_data
method on Resource
and Scope
. ( #1094 )
...
* Implement `register_data` method on `Resource` and `Scope`.
* Split Scope::register_data tests out from Scope::data tests.
* CHANGES.md: Mention {Scope,Resource}::register_data.
2019-09-18 06:36:39 +06:00
32a1c36597
Make UrlencodedError::Overflow more informative ( #1089 )
2019-09-17 06:58:04 +06:00
a32573bb58
Allow to re-construct ServiceRequest from HttpRequest and Payload #1088
2019-09-13 11:56:24 +06:00
60b7aebd0a
fmt & clippy
2019-09-12 21:52:46 +06:00
8a9fcddb3c
Condition middleware ( #1075 )
...
* add condition middleware
* write tests
* update changes
* Update src/middleware/condition.rs
Co-Authored-By: Yuki Okushi <huyuumi.dev@gmail.com >
* Update src/middleware/condition.rs
Co-Authored-By: Yuki Okushi <huyuumi.dev@gmail.com >
* Update src/middleware/condition.rs
Co-Authored-By: Yuki Okushi <huyuumi.dev@gmail.com >
* Update src/middleware/condition.rs
Co-Authored-By: Yuki Okushi <huyuumi.dev@gmail.com >
2019-09-09 12:26:38 +06:00
63ddd30ee4
on_connect result isnt added to request extensions for http2 requests #1009
2019-09-01 13:15:02 +06:00
616981ecf9
clear extensions before reclaiming HttpRequests in their pool ( #1063 )
...
Issue #1062
2019-08-29 09:35:05 +06:00
c193137905
actix_web::test::TestRequest::set_form ( #1058 )
2019-08-28 21:32:17 +06:00
a07cdd6533
Data::into_inner
2019-08-27 17:25:25 +01:00
23d768a77b
Add explicit dyn
s ( #1041 )
...
* Add explicit `dyn`s
* Remove unnecessary lines
2019-08-17 02:45:44 +09:00
0d9ea41047
update min rust version
2019-07-31 06:49:46 -07:00
6f2049ba9b
Fix typo
2019-07-25 12:54:59 +01:00
8f48ed2597
impl Responder for Form
2019-07-20 14:46:46 +01:00
941241c5f0
Remove unneeded actix-utils dependency
2019-07-20 10:50:36 +06:00
f8320fedd8
add note about Query decoding ( #992 )
2019-07-19 17:37:49 +06:00
c808364c07
make Query payload public ( #991 )
2019-07-19 15:47:44 +06:00
3650f6d7b8
Re-implement Host predicate ( #989 )
...
* update HostGuard implementation
* update/add tests for new HostGuard implementation
2019-07-19 10:28:43 +06:00
fbdda8acb1
Unix domain sockets (HttpServer::bind_uds) #92
2019-07-18 17:24:12 +06:00
d03296237e
Log error results in Logger middleware ( closes #938 ) ( #984 )
...
* Log error results in Logger middleware (closes #938 )
* Log internal server errors with an ERROR log level
* Logger middleware: don't log 500 internal server errors, as Actix now logs them always
* Changelog
2019-07-18 14:31:18 +06:00
2a2d7f5768
nightly clippy warnings
2019-07-17 15:53:51 +06:00
4092c7f326
clippy warnings
2019-07-17 15:08:30 +06:00
baaa7b3fbb
Replace ClonableService with local copy
2019-07-17 13:55:44 +06:00
32718b7e31
Expose factory traits and some clippy fixes ( #983 )
2019-07-17 12:58:42 +06:00
7b1dcaffda
cleanup deprecation warning for Box<dyn>
2019-07-17 11:44:39 +06:00
c65dbaf88e
expose app's ResourceMap via resource_map method
2019-07-17 11:33:05 +06:00
c45728ac01
prep test server release
2019-07-16 10:21:52 +06:00
b1143168e5
Impl Responder for (T, StatusCode) where T: Responder ( #954 )
2019-07-11 14:42:58 +06:00
69456991f6
update api doc example for client and add panic info for connection_info
2019-07-11 14:40:37 +06:00
0d8a4304a9
Drop a duplicated word ( #958 )
2019-07-05 20:46:55 +06:00
37f4ce8604
Fixes typo in docs. ( #948 )
...
Small typo in docs.
2019-06-29 10:38:16 +06:00
44bb79cd07
Call req.path() on Json extractor error only ( #945 )
...
* Call req.path() on Json extractor error only
* Cleanup len parse code
2019-06-28 10:44:53 +06:00
af9fb5d190
Support asynchronous data factories #850
2019-06-28 10:43:52 +06:00
c0c71f82c0
Fixes typo. ( #940 )
...
Small typo fix.
2019-06-25 23:23:36 +06:00