1
0
mirror of https://github.com/fafhrd91/actix-web synced 2024-11-28 01:52:57 +01:00
Commit Graph

1856 Commits

Author SHA1 Message Date
fakeshadow
fe392abeb4
remove actix-threadpool.use actix_rt::task::spawn_blocking (#1878) 2021-01-09 16:04:19 +00:00
Rob Ede
6575ee93f2
big clean up and docs improvmenet of types mod (#1894) 2021-01-09 13:17:19 +00:00
fakeshadow
530d03791d
refactor Resource (#1883) 2021-01-09 03:36:58 +00:00
fakeshadow
d40ae8c8ca
use sync method on Responder trait (#1891) 2021-01-08 22:17:19 +00:00
Rob Ede
d3c476b8c2
use env_logger builders in examples 2021-01-07 02:41:05 +00:00
Rob Ede
dc23559f23
address clippy lints 2021-01-07 02:04:26 +00:00
fakeshadow
57a3722146
More refactor of app_service (#1879) 2021-01-06 18:11:20 +00:00
fakeshadow
57da1d3c0f
refactor app_service (#1877) 2021-01-06 11:35:30 +00:00
Rob Ede
68117543ea
major cleanup of middleware module (#1875)
* major cleanup of middleware module

* update changelog
2021-01-05 09:51:58 +00:00
fakeshadow
4f5971d79e
add Compat middleware (#1865) 2021-01-05 00:22:57 +00:00
Rob Ede
36aee18c64
fmt 2021-01-04 04:33:15 +00:00
Rob Ede
007a145988
use ahash for internal hashmaps 2021-01-04 04:29:07 +00:00
Rob Ede
2d4a174420
fmt 2021-01-04 01:01:35 +00:00
Rob Ede
21f6c9d7a5
improve code readability 2021-01-04 00:49:02 +00:00
fakeshadow
e1683313ec
optimize ServiceRequest methods (#1870)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-01-04 00:32:41 +00:00
fakeshadow
32de9f8840
Tokio 1.0 (#1813)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-01-03 23:47:04 +00:00
fakeshadow
ad608aa64e
optimize Resource and Scope service call (#1867) 2021-01-02 19:40:31 +00:00
fakeshadow
3beb4cf2da
replace tinyvec with smallvec (#1866) 2021-01-01 23:18:25 +00:00
Ibraheem Ahmed
20b46cdaf9
format factory_tuple macro invocations (#1859) 2020-12-28 21:04:02 +00:00
Rob Ede
2a2a20c3e7
bump msrv to 1.46 (#1858) 2020-12-28 00:44:15 +00:00
Rob Ede
8c9ea43e23
address clippy warnings 2020-12-27 20:54:04 +00:00
Ibraheem Ahmed
cbda928a33
Rename factory to handler (#1852) 2020-12-26 21:46:19 +00:00
fakeshadow
87655b3028
reduce one clone on Arc. (#1850) 2020-12-23 23:58:25 +00:00
fakeshadow
3a192400a6
Simplify handler (#1843) 2020-12-23 15:47:07 +00:00
Rob Ede
05f104c240
improve NormalizePath docs (#1839) 2020-12-23 00:19:20 +00:00
fakeshadow
6cbf27508a
simplify ExtractService's return type (#1842) 2020-12-20 02:20:29 +00:00
fakeshadow
79de04d862
optimise Extract service (#1841) 2020-12-19 16:33:34 +00:00
fakeshadow
a4dbaa8ed1
remove boxed future in DefaultHeaders middleware (#1838) 2020-12-18 23:08:59 +00:00
fakeshadow
2a5215c1d6
Remove boxed future from HttpMessage (#1834) 2020-12-17 11:40:49 +00:00
fakeshadow
97f615c245
remove boxed futures on Json extract type (#1832) 2020-12-16 23:34:33 +00:00
Rob Ede
1a361273e7
optimize bytes and string payload extractors (#1831) 2020-12-16 22:40:26 +00:00
fakeshadow
d7ce648445
remove boxed future for Option<T> and Result<T, E> extract type (#1829)
* remove boxed future for Option<T> and Result<T, E> extract type

* use ready macro

* fix fmt
2020-12-16 18:34:10 +00:00
Aravinth Manivannan
fabc68659b
Intradoc links conversion (#1827)
* switching to nightly for intra-doc links

* actix-files intra-doc conversion

* more specific Result

* intradoc conversion complete

* rm blank comments and readme doc link fixes

* macros and broken links
2020-12-13 13:28:39 +00:00
Rob Ede
ae63eb8bb2
fix clippy warnings (#1806)
* fix clippy warnings

* prevent CI fail status caused by codecov
2020-12-09 11:22:19 +00:00
fakeshadow
7a3776b770
remove two unused generics on BoxedRouteFuture types. (#1820) 2020-12-09 10:47:59 +00:00
fakeshadow
ff79c33fd4
remove a box (#1814) 2020-12-06 11:42:15 +00:00
Petar Dambovaliev
b75a9b7a20
add error to message in test helper func (#1812) 2020-12-05 04:57:56 +09:00
Joshua Parkin
1f70ef155d
Fix match_pattern() returning None for scope with resource of empty path (#1798)
* fix match_pattern function not returning pattern where scope has resource of path ""

* remove print in test

* make comparison on existing else if block

* add fix to changelog
2020-12-01 13:39:41 +00:00
Maciej Hirsz
7981e0068a
Remove a panic in normalize middleware (#1762)
Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-12-01 10:22:15 +09:00
Rob Ede
0b5b463cfa
prepare web and awc releases
closes #1799
2020-11-29 16:33:45 +00:00
Rob Ede
4100c50c70
add either extractor (#1788) 2020-11-20 18:02:41 +00:00
Pouya Mobasher Behrouz
9b42333fac
Fix typo in Query extractor docs (#1777) 2020-11-06 13:34:42 +00:00
Jonas Platte
e5b86d189c
Fix typo in request_data.rs (#1774) 2020-11-05 17:46:17 +00:00
Rob Ede
9963a5ef54
expose on_connect v2 (#1754)
Co-authored-by: Mikail Bagishov <bagishov.mikail@yandex.ru>
2020-10-30 02:03:26 +00:00
Joshua Parkin
4519db36b2
register fns for custom request-derived logging units (#1749)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-10-29 18:38:49 +00:00
Augusto César Dias
7030bf5fe8
Adding app_data to ServiceConfig (#1758)
Co-authored-by: Rob Ede <robjtede@icloud.com>
Co-authored-by: Augusto <augusto@flowciety.de>
2020-10-26 17:02:45 +00:00
Daniel Egger
41e7cec72f
Re-export bytes::Buf and bytes::BufMut as well (#1750)
Co-authored-by: Daniel Egger <daniel.egger@axiros.com>
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-10-24 20:31:23 +01:00
Rob Ede
d45a1aa6b6
Add web::ReqData<T> extractor (#1748)
Co-authored-by: Jonas Platte <jonas@lumeo.com>
2020-10-24 18:49:50 +01:00
cquintana-verbio
98243db9f1
Print unconfigured Data<T> type when attempting extraction (#1743)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-10-20 17:35:34 +01:00
Matt Gathu
cfd5b381f1
Implement Logger middleware regex exclude pattern (#1723)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-10-19 07:18:16 +01:00
Jonas Platte
d765e9099d
Fix clippy::rc_buffer (#1728) 2020-10-10 09:26:05 +09:00
Yuki Okushi
c2c71cc626
Fix/suppress clippy warnings (#1720) 2020-10-01 18:19:09 +09:00
PeterUlb
b5812b15f0
Remove Sized Bound for web::Data (#1712) 2020-09-29 22:44:12 +01:00
Matt Gathu
b4e02fe29a
Fix cyclic references in ResourceMap (#1708) 2020-09-25 17:42:49 +01:00
LIU An (劉安)
60e7e52276
Add TrailingSlash::MergeOnly behavior (#1695)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-09-25 12:50:59 +01:00
Rob Ede
7f8073233a
fix trimming to inaccessible root path (#1678) 2020-09-15 11:32:31 +01:00
Rob Ede
f861508789
prepare web release 3.0.1 (#1676) 2020-09-13 03:24:44 +01:00
Damian Lesiuk
a4546f02d2
make TrailingSlash enum accessible (#1673)
Co-authored-by: Damian Lesiuk <lesiuk@sabre.com>
2020-09-13 00:55:39 +01:00
Rob Ede
bf53fe5a22
bump actix dependency to v0.10 (#1666) 2020-09-11 12:09:52 +01:00
Rob Ede
cf5138e740
fix clippy async_yields_async lints (#1667) 2020-09-11 11:29:17 +01:00
Igor Aleksanov
121075c1ef
awc: Rename Client::build to Client::builder (#1665) 2020-09-11 09:24:39 +01:00
Robert Gabriel Jakabosky
22089aff87
Improve json, form and query extractor config docs (#1661) 2020-09-10 15:40:20 +01:00
Rob Ede
7787638f26
fix CI clippy warnings (#1664) 2020-09-10 14:46:35 +01:00
Rob Ede
9d0534999d
bump connect and tls versions (#1655) 2020-09-09 09:20:54 +01:00
Rob Ede
4e321595bc
extract more config types from Data<T> as well (#1641) 2020-09-02 22:12:07 +01:00
Matt Kantor
01cbef700f
Fix a small typo in a doc comment. (#1649) 2020-08-28 22:16:41 +01:00
LJ
75d86a6beb
Configurable trailing slash behaviour for NormalizePath (#1639)
Co-authored-by: ljoonal <ljoona@ljoonal.xyz>
2020-08-19 12:21:52 +01:00
William Myers
5aad8e24c7
Re-export all error types from awc (#1621) 2020-08-14 01:24:35 +01:00
Rob Ede
187646b2f9
match HttpRequest app_data behavior in ServiceRequest (#1618) 2020-08-09 15:51:38 +01:00
Yuki Okushi
92b5bcd13f
Check format and tweak CI config (#1619) 2020-07-22 00:28:33 +01:00
Rob Ede
0ec335a39c
bump MSRV to 1.42 (#1616) 2020-07-21 16:40:30 +09:00
Jonas Platte
f8d5ad6b53
Make web::Path a tuple struct with a public inner value (#1594)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-07-21 00:54:26 +01:00
Rob Ede
43c362779d
also try extracting payload config as Data<T> (#1610) 2020-07-20 17:40:58 +01:00
Rob Ede
971ba3eee1
fix continous growth of app data in pooled requests (#1609)
fixes #1606
fixes #1607
2020-07-18 16:17:00 +01:00
Rob Ede
056803d534
revamp readme and root doc page (#1590) 2020-07-05 01:16:53 +01:00
Takashi Idobe
23c8191cca
add method to extract matched resource name (#1577)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-06-27 16:22:16 +01:00
Rob Ede
fa28175a74
add method to extract matched resource pattern (#1566) 2020-06-23 00:58:20 +01:00
Rob Ede
a70e599ff5
re-export rt in web and add main macro (#1575) 2020-06-22 20:09:48 +01:00
Rob Ede
dc74db1f2f
re-export actix_rt::main macro (#1559) 2020-06-18 15:45:30 +01:00
Fabianstelmach
9af07d66ae
Fix NormalizePath trailing slash behavior (#1548) 2020-06-17 10:54:20 +01:00
Taiki Endo
6c5c4ea230 Remove uses of pin_project::project attribute
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: https://github.com/taiki-e/pin-project/issues/225
2020-06-06 06:44:14 +09:00
Yuki Okushi
6dd78d9355
Run rustfmt 2020-05-21 17:56:53 +09:00
Yuki Okushi
9a7f93610a
web: Replace net2 crate with socket2 2020-05-19 09:34:37 +09:00
Yuki Okushi
a98e53ecb8
web: Minimize futures dependencies 2020-05-19 08:29:12 +09:00
Rob Ede
f3b0233477
use mem::take where possible (#1507) 2020-05-17 10:54:42 +09:00
Sven Allers
201090d7a2
Provide impl<T> From<Arc<T>> for Data<T> (#1509) 2020-05-16 00:27:03 +01:00
pando85
4fc99d4a6f
Fix audit issue logging by default peer address (#1485)
* Fix audit issue logging by default peer address

By default log format include remote address that is taken from headers.
This is very easy to replace making log untrusted.

Changing default log format value `%a` to peer address we are getting
this trusted data always. Also, remote address option is maintianed and
relegated to `%{r}a` value.

Related  kanidm/kanidm#191.

* Rename peer/remote to remote_addr/realip_remote_addr

Change names to avoid naming confusions. I choose this accord to Nginx
variables and
[ngx_http_realip_module](https://nginx.org/en/docs/http/ngx_http_realip_module.html).

Add more specific documentation about security concerns of using Real IP
in logger.

* Rename security advertise header in doc

* Add fix audit issue logging by default peer adress to changelog

Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-05-15 09:07:27 +09:00
Rob Ede
996f1d7eae
bump msrv in ci and readme 2020-05-13 01:57:37 +01:00
Rob Ede
879cad9422
allow parent data containers to be accessed from child scopes 2020-05-09 00:31:26 +01:00
Rob Ede
b521e9b221
conditional test compilation [range, charset] (#1483)
* conditionally compile range and charset tests

* remove deprecated try macros

Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-05-03 22:33:29 +09:00
Mikail Bagishov
d5ceae2074
Replace deprecated now with now_utc (#1481)
* Replace deprecated now with now_utc

* Update doctest
2020-05-02 10:14:50 +01:00
Rob Ede
c27d3fad8e
clarify resource/scope app data overriding (#1476)
* relocate FnDataFactory

* clarify app data overriding in Scope and Resource

Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-04-30 02:20:47 +09:00
Rob Ede
bb17280f51
simplify data factory future polling (#1473)
Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-04-29 15:38:53 +09:00
Rob Ede
5b0f7fff69
fix spelling errors in doc comments 2020-04-21 04:09:35 +01:00
Rob Ede
45e2e40140
set data container on default service calls
closes #1450
2020-04-14 02:33:19 +01:00
Tore Pettersen
0ad02ee0e0
Add convenience functions for testing (#1401)
* Add convenience functions for testing

* Fix remarks from PR and add tests

* Add unpin to read_json_body

* Update changelog
2020-04-06 04:12:44 +09:00
Stephen Eckels
aaff68bf05
Change NormalizePath to append trailing slash (#1433)
* Change NormalizePath to append trailing slash

* add tests

* Update CHANGES.md

Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-04-05 03:26:40 +09:00
Otavio Salvador
146ae4da18 Implement std::error::Error for our custom errors
For allowing a more ergonomic use and better integration on the
ecosystem, this adds the `std::error::Error` `impl` for our custom
errors.

We intent to drop this hand made code once `derive_more` finishes the
addition of the Error derive support[1]. Until that is available, we
need to live with that.

1. https://github.com/JelteF/derive_more/issues/92

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2020-03-18 00:22:18 -03:00
Stig Johan Berggren
0d958fabd7
📝 Improve the code example for JsonConfig (#1418)
* 📝 Improve the code example for JsonConfig

* Remove a redundant comment
2020-03-17 08:23:54 +09:00
Yuki Okushi
d602a7e386
Fix read_body doc 2020-03-13 05:52:58 +09:00