1
0
mirror of https://github.com/fafhrd91/actix-web synced 2024-12-18 01:43:58 +01:00
Commit Graph

224 Commits

Author SHA1 Message Date
Rob Ede
e965d8298f
HRS security fixes (#2363) 2021-08-12 20:18:09 +01:00
Rob Ede
604be5495f
prepare beta.8 releases (#2292) 2021-06-26 16:33:36 +01:00
Ibraheem Ahmed
767e4efe22
Remove downcast macro from actix-http (#2291) 2021-06-25 10:53:53 +01:00
Rob Ede
73a655544e
tweak compress feature docs 2021-06-19 20:23:06 +01:00
Arthur Le Moigne
baa5a663c4
Select compression algorithm using features flags (#2250)
Add compress-* feature flags in actix-http / actix-web / awc.
This allow enable / disable not wanted compression algorithm.
2021-06-19 20:21:13 +01:00
Rob Ede
c260fb1c48
beta.7 releases (#2266) 2021-06-19 11:51:20 +01:00
Rob Ede
532f7b9923
refined error model (#2253) 2021-06-17 17:57:58 +01:00
Victor Pirat
75f65fea4f
Extends Rustls ALPN protocols instead of replacing them when creating Rustls based services (#2226) 2021-06-10 16:25:21 +01:00
Arthur Le Moigne
3479293416
Add zstd ContentEncoding support (#2244)
Co-authored-by: Igor Aleksanov <popzxc@yandex.ru>
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-06-03 21:32:52 +01:00
Rob Ede
2a8c650f2c
move internalerror to actix web (#2215) 2021-05-14 16:40:00 +01:00
Rob Ede
4903950b22
update changelog 2021-05-09 20:15:49 +01:00
Rob Ede
900c9e270e
remove responsebody indirection from response (#2201) 2021-05-09 20:12:48 +01:00
Rob Ede
ddaf8c3e43
add associated error type to MessageBody (#2183) 2021-05-05 18:36:02 +01:00
Luca Palmieri
c17662fe39
Reduce the level of the emitted log line from error to debug. (#2196)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-05-03 00:58:14 +01:00
Voldracarno Draconor
1fcf92e11f
Update dependency "language-tags" (#2188) 2021-04-28 01:23:12 +01:00
Rob Ede
db97974dc1
make some http re-exports more accessible (#2171) 2021-04-19 03:29:38 +01:00
Rob Ede
f743e885a3
prepare http release 3.0.0-beta.6 2021-04-17 15:24:18 +01:00
Rob Ede
ff65f1d006
non exhaustive http errors (#2161) 2021-04-14 06:07:59 +01:00
Rob Ede
23e0c9b6e0
remove http-codes builders from actix-http (#2159) 2021-04-14 02:00:14 +01:00
Rob Ede
02ced426fd
add body to_bytes helper (#2158) 2021-04-13 13:34:22 +01:00
Rob Ede
edd9f14752
remove unpin from body types (#2152) 2021-04-13 11:16:12 +01:00
Rob Ede
981c54432c
remove json and url encoded form support from -http (#2148) 2021-04-12 10:30:28 +01:00
Rob Ede
44c55dd036
remove cookie support from -http (#2065) 2021-04-09 18:07:10 +01:00
Rob Ede
6fb06a720a
prepare http release 3.0.0-beta.5 2021-04-02 09:27:11 +01:00
Ibraheem Ahmed
50dc13f280
move typed headers and implement FromRequest (#2094)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-04-01 16:42:18 +01:00
Rob Ede
c8ed8dd1a4
migrate to -utils beta 4 (#2127) 2021-04-01 15:26:13 +01:00
Daniel Egger
f954a30c34
Fix typo in CHANGES.md (#2124) 2021-03-29 10:18:05 +01:00
fakeshadow
b75b5114c3
refactor actix_http connection types and connector services (#2081) 2021-03-18 17:53:22 +00:00
fakeshadow
a2b0e86632
simplify connector generic type (#2063) 2021-03-10 23:57:32 +00:00
Rob Ede
fc31b091e4
prepare http release 3.0.0-beta.4 2021-03-08 23:07:40 +00:00
Rob Ede
2d3a0d6038
json method receives plain serialize (#2052) 2021-03-07 22:11:39 +00:00
Rob Ede
cd652dca75
refactor websocket key hashing (#2035) 2021-02-28 19:55:34 +00:00
fakeshadow
c065729468
rework client connection pool (#1994) 2021-02-16 08:27:14 +00:00
Rob Ede
3279070f9f
optional cookies features (#1981) 2021-02-13 15:08:43 +00:00
Rob Ede
ea5ce3befb
prepare actix-http 3.0.0-beta.3 release 2021-02-10 18:36:14 +00:00
Rob Ede
a290e58982
prepare beta 2 release set (#1975) 2021-02-10 12:10:03 +00:00
Rob Ede
949d14ae2b
clean up header map (#1964) 2021-02-09 22:59:17 +00:00
fakeshadow
519d7f2b8a
add trust-dns optional feature for actix-http and awc (#1969) 2021-02-09 10:41:20 +00:00
fakeshadow
41bc04b1c4
Use immutable reference of service state. Update awc dns resolver. (#1905) 2021-02-07 01:00:40 +00:00
fakeshadow
20cf0094e5
fix master branch build. change web::block output type. (#1957) 2021-02-06 16:23:59 +00:00
Logan Magee
0c8196f8b0
Remove HttpResponseBuilder::json2() (#1903)
It's not necessary to keep both json() and json2() around since the
former reduces the ownership of its parameter to a borrow only to pass
the reference to the latter. Users can instead borrow themselves when
passing an owned value: there doesn't need to be two separate functions.

This change also makes HttpResponseBuilder::json() take T: Deref so it
can accept both references and web extractors like web::Json.
2021-01-18 12:14:29 +00:00
Rob Ede
ee10148444
revive commented out tests (#1912) 2021-01-17 05:19:32 +00:00
Rob Ede
f976150b67
return option item from Extensions::insert (#1904) 2021-01-15 04:22:42 +00:00
Rob Ede
b1dd8d28bc
response header rework (#1869) 2021-01-15 02:11:10 +00:00
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
Rob Ede
c09186a2c0
prepare v4 beta releases (#1881) 2021-01-07 20:02:08 +00:00
Rob Ede
00ba8d5549
add http3 variant to protocol enum 2021-01-06 18:58:24 +00:00
Rob Ede
7d632d0b7b
use ByteString as container for websocket text message (#1864) 2021-01-04 11:27:32 +00:00
fakeshadow
32de9f8840
Tokio 1.0 (#1813)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-01-03 23:47:04 +00:00
Rob Ede
a1b00b2cd0
change unreleased year 2021-01-02 00:12:18 +00:00
Rob Ede
093d3a6c59
remove deprecated on_connect methods (#1857) 2020-12-27 23:23:30 +00:00
Logan Magee
4dccd092f3
Bump rand from 0.7.x to 0.8.x (#1845) 2020-12-22 23:45:31 +00:00
Rob Ede
efc317d3b0
prepare actix-http and awc releases 2020-11-25 00:07:56 +00:00
Rob Ede
5af46775b8
refactor quality and use TryFrom instead of custom trait (#1797) 2020-11-24 11:37:05 +00:00
Rob Ede
70f4747a23
add method for getting accept type preference (#1793) 2020-11-24 10:08:57 +00:00
Yuki Okushi
4bfd5c2781
Upgrade serde_urlencoded to 0.7 (#1773) 2020-11-06 01:36:15 +09:00
Rob Ede
61b65aa64a
add common 1xx http response builders (#1768)
Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-11-02 18:23:18 +09:00
Sebastian Mayr
5468c3c410
Drop content length headers from 101 responses (#1767)
Co-authored-by: Sebastian Mayr <smayr@atlassian.com>
2020-11-02 17:44:14 +09:00
Rob Ede
798d744eef
prepare http release 2.1.0 2020-10-30 02:19:56 +00:00
Rob Ede
4cb833616a
deprecate builder if-x methods (#1760) 2020-10-30 02:10:05 +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
ghizzo01
20078fe603
Bump pin-project to 1.0 (#1733) 2020-10-25 19:41:44 +09:00
ghizzo01
f92742bdac
Bump base64 to 0.13 (#1744) 2020-10-19 18:24:22 +01:00
Rob Ede
64a2c13cdf
the big three point oh (#1668) 2020-09-11 13:50:10 +01:00
Rob Ede
059d1671d7
prepare release beta 4 (#1659) 2020-09-09 22:14:11 +01:00
Rob Ede
8497b5f490
integrate with updated actix-{codec, utils} (#1634) 2020-08-24 10:13:35 +01:00
Yuki Okushi
ff2ca0f420
Update rustls to 0.18 (#1637) 2020-08-18 00:28:39 +09:00
Yuki Okushi
aa2bd6fbfb
http: Bump up to 2.0.0-beta.3 (#1630) 2020-08-14 19:42:14 +09:00
fakeshadow
160995b8d4
fix awc pool leak (#1626) 2020-08-09 21:49:43 +01:00
Rob Ede
cf1c8abe62
prepare release http & awc (#1617) 2020-07-22 01:13:10 +01:00
masnagam
701bdacfa2
Fix illegal chunked encoding (#1615)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-07-21 17:24:56 +01:00
Rob Ede
6dc47c4093
fix soundness concern in h1 decoder (#1614)
Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-07-21 16:25:33 +01:00
Rob Ede
327e472e44
prepare http-2.0.0-beta.1 release (#1596) 2020-07-13 15:35:30 +01:00
Patrick Tescher
e10eb648d9
Fix leaks with actix_http's client (#1580) 2020-07-10 22:35:22 +01:00
Yuki Okushi
deab634247
actix-http: Update sha-1 to 0.9 (#1586) 2020-07-03 01:08:24 +01:00
Rob Ede
eb0eda69c6
migrate cookie handling to cookie crate (#1558) 2020-06-19 14:34:14 +01:00
Yuki Okushi
48fa78e182
http: Bump up to 2.0.0-alpha.4 2020-05-21 15:22:07 +09:00
Yuki Okushi
8391427905
http: Update base64 to 0.12 2020-05-21 09:51:32 +09:00
Omid Rad
32a37b7282
Remove content_length from ResponseBuilder (#1491)
* Remove content_length since it'll be overwritten by the response body. FIXES #1439

* Add setting of Content-Length to the no_chunking function

* Add changes and migration documentations

* Update MIGRATION.md

Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>

Co-authored-by: Rob Ede <robjtede@icloud.com>
Co-authored-by: Yuki Okushi <huyuumi.dev@gmail.com>
2020-05-19 07:46:31 +09:00
Rob Ede
7e8ea44d5c
remove needless BodySize::Sized64 variant 2020-05-18 00:42:51 +01:00
Rob Ede
996f1d7eae
bump msrv in ci and readme 2020-05-13 01:57:37 +01:00
Takeru Sato
63864ecf9e
support parsing of SameSite=None (#1503) 2020-05-12 17:48:35 +01:00
Yuki Okushi
0bc4a5e703
http: Bump up to 2.0.0-alpha.3 2020-05-08 02:35:45 +09:00
Huston Bokinsky
b047413b39
Small ws codec fix (#1465)
* Small ws codec fix

* Update actix-http/Changes.md

Co-authored-by: Huston Bokinsky <huston@deepgram.com>
2020-04-29 11:13:09 +09:00
Yuki Okushi
54619cb680
actix-http: Remove failure support (#1449) 2020-04-16 06:54:34 +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
Yuki Okushi
7172885beb
Update changelog 2020-03-08 00:43:17 +09:00
Maxim Vorobjov
10e3e72595
Http2 client configuration to improve performance (#1394)
* add defaults for http2 client configuration

* fix spaces

* Add changes text for extended H2 defaults buffers

* client: configurable H2 window sizes and max_http_version

* add H2 window size configuration and max_http_version to awc::ClientBuilder

* add awc::ClientBuilder H2 window sizes and max_http_version

* add test for H2 window size settings

* cleanup comment

* Apply code review fixes

* Code review fix for awc ClientBuilder

* Remove unnecessary comments on code review

* pin quote version to resolve build issue

* max_http_version to accept http::Version

* revert fix for quote broken build
2020-03-07 11:09:31 +09:00
Yuki Okushi
9d661dc4f3 Update changelog 2020-03-04 15:20:14 +09:00
Yuki Okushi
0173f99726 Update changelog 2020-02-27 12:39:04 +09:00
Maksym Vorobiov
9d04b250f9 This is a squashed commit:
- Convert MessageBody to accept Pin in poll_next

- add CHANGES and increase versions aligned to semver

- update crates to accomodate MessageBody Pin change

- fix tests and dependencies
2020-02-27 09:37:05 +09:00
Maxim Vorobjov
48ef4d7a26
Add actix-http support for actix error messages (#1379)
* Moved actix-http for actix from actix crate

* remove resolver feature

* renamed actix feature to actor

* fixed doc attr for actors, add documentation
2020-02-27 09:34:49 +09:00
Yuki Okushi
c8ccc69b93 actix-http: update time to 0.2.7 2020-02-23 07:09:00 +09:00
kevinpoitra
e634e64847 Upgrade time to 0.2.5 (#1254)
* Use `OffsetDateTime` instead of `PrimitiveDateTime`

* Parse time strings with `PrimitiveDateTime::parse` instead of `OffsetDateTime::parse`

* Remove unused `time` dependency from actix-multipart

* Fix a few errors with time related tests from the `time` upgrade

* Implement logic to convert a RFC 850 two-digit year into a full length year, and organize time parsing related functions

* Upgrade `time` to 0.2.2

* Correctly parse C's asctime time format using time 0.2's new format patterns

* Update CHANGES.md

* Use `time` without any of its deprecated functions

* Enforce a UTC time offset when converting an `OffsetDateTime` into a Header value

* Use the more readable version of `Duration::seconds(0)`, `Duration::zero()`

* Remove unneeded conversion of time::Duration to std::time::Duration

* Use `OffsetDateTime::as_seconds_f64` instead of manually calculating the amount of seconds from nanoseconds

* Replace a few additional instances of `Duration::seconds(0)` with `Duration::zero()`

* Truncate any nanoseconds from a supplied `Duration` within `Cookie::set_max_age` to ensure two Cookies with the same amount whole seconds equate to one another

* Fix the actix-http:🍪:do_not_panic_on_large_max_ages test

* Convert `Cookie::max_age` and `Cookie::expires` examples to `time` 0.2

Mainly minor  changes. Type inference can be used alongside the new
`time::parse` method, such that the type doesn't need to be specified.
This will be useful if a refactoring takes place that changes the type.
There are also new macros, which are used where possible.

One change that is not immediately obvious, in `HttpDate`, there was an
unnecessary conditional. As the time crate allows for negative durations
(and can perform arithmetic with such), the if/else can be removed
entirely.

Time v0.2.3 also has some bug fixes, which is why I am not using a more
general v0.2 in Cargo.toml.

v0.2.3 has been yanked, as it was backwards imcompatible. This version
reverts the breaking change, while still supporting rustc back to
1.34.0.

* Add missing `time::offset` macro import

* Fix type confusion when using `time::parse` followed by `using_offset`

* Update `time` to 0.2.5

* Update CHANGES.md

Co-authored-by: Jacob Pratt <the.z.cuber@gmail.com>
2020-01-28 20:44:22 +09:00
Rob Ede
a3287948d1 allow explicit SameSite=None cookies (#1282)
fixes #1035
2020-01-23 10:08:23 +09:00
Nikolay Kim
1d12ba9d5f Replace brotli with brotli2 #1224 2019-12-20 13:50:07 +06:00
Nikolay Kim
8c54054844 Use .advance() intead of .split_to() 2019-12-19 09:56:14 +06:00
Rajasekharan Vengalil
3b860ebdc7 Fix poll_ready call for WebSockets upgrade (#1219)
* Fix poll_ready call for WebSockets upgrade

* Poll upgrade service from H1ServiceHandler too
2019-12-17 13:34:25 +06:00
Nikolay Kim
c1deaaeb2f cleanup imports 2019-12-13 11:24:57 +06:00