- Add
Responderimpl for(T, StatusCode) where T: Responder
- Upgrade
randdependency version to 0.7
- Support asynchronous data factories #850
- Use
encoding_rscrate instead of unmaintainedencodingcrate
-
Move cors middleware to
actix-corscrate. -
Move identity middleware to
actix-identitycrate.
-
Add support for PathConfig #903
-
Add
middleware::identity::RequestIdentitytrait toget_identityfromHttpMessage.
-
Move cors middleware to
actix-corscrate. -
Move identity middleware to
actix-identitycrate. -
Disable default feature
secure-cookies. -
Allow to test an app that uses async actors #897
-
Re-apply patch from #637 #894
- HttpRequest::url_for is broken with nested scopes #915
-
Add
Scope::configure()method. -
Add
ServiceRequest::set_payload()method. -
Add
test::TestRequest::set_json()convenience method to automatically serialize data and set header in test requests. -
Add macros for head, options, trace, connect and patch http methods
- Drop an unnecessary
Option<_>indirection aroundServerBuilderfromHttpServer. #863
-
Fix Logger request time format, and use rfc3339. #867
-
Clear http requests pool on app service drop #860
- Add
Query<T>::from_query()to extract parameters from a query string. #846 QueryConfig, similar toJsonConfigfor customizing error handling of query extractors.
JsonConfigis nowSend + Sync, this implies thaterror_handlermust beSend + Synctoo.
- Codegen with parameters in the path only resolves the first registered endpoint #841
- Allow to set/override app data on scope level
App::configuretake anFnOnceinstead ofFn- Upgrade actix-net crates
- Add helper function for executing futures
test::block_fn()
-
Extractor configuration could be registered with
App::data()or withResource::data()#775 -
Route data is unified with app data,
Route::data()moved to resource level toResource::data() -
CORS handling without headers #702
-
Allow to construct
Datainstances to avoid doubleArcforSend + Synctypes.
- Fix
NormalizePathmiddleware impl #806
App::data_factory()is deleted.
-
Add raw services support via
web::service() -
Add helper functions for reading response body
test::read_body() -
Add support for
remainder match(i.e "/path/{tail}*") -
Extend
Respondertrait, allow to override status code and headers. -
Store visit and login timestamp in the identity cookie #502
.to_async()handler can returnRespondertype #792
- Fix async web::Data factory handling
-
Add helper functions for reading test response body,
test::read_response()and test::read_response_json()` -
Add
.peer_addr()#744 -
Add
NormalizePathmiddleware
-
Rename
RouterConfigtoServiceConfig -
Rename
test::call_successtotest::call_service -
Removed
ServiceRequest::from_parts()as it is unsafe to create from parts. -
CookieIdentityPolicy::max_age()accepts value in seconds
- Fixed
TestRequest::app_data()
-
Allow to use any service as default service.
-
Remove generic type for request payload, always use default.
-
Removed
Decompressmiddleware. Bytes, String, Json, Form extractors automatically decompress payload. -
Make extractor config type explicit. Add
FromRequest::Configassociated type.
- Added async io
TestBufferfor testing.
- Removed native-tls support
-
App::configure()allow to offload app configuration to different methods -
Added
URLPathoption for logger -
Added
ServiceRequest::app_data(), returnsData<T> -
Added
ServiceFromRequest::app_data(), returnsData<T>
-
FromRequesttrait refactoring -
Move multipart support to actix-multipart crate
- Fix body propagation in Response::from_error. #760
-
Renamed
TestRequest::to_service()toTestRequest::to_srv_request() -
Renamed
TestRequest::to_response()toTestRequest::to_srv_response() -
Removed
Derefimpls
- Removed unused
actix_web::web::md()
- rustls support
-
use forked cookie
-
multipart::Field renamed to MultipartField
-
Complete architecture re-design.
-
Return 405 response if no matching route found within resource #538