1
0
Fork 0
mirror of https://github.com/actix/actix-web.git synced 2024-05-19 16:58:14 +00:00
Commit graph

43 commits

Author SHA1 Message Date
Rob Ede 79a38e0628
apply standard formatting 2023-07-17 02:38:12 +01:00
Rob Ede 241da6e081
update MSRV to 1.65 (#3059) 2023-07-02 01:09:15 +01:00
Jacob Halsey d4b833ccf0
actix-multipart: Feature: Add typed multipart form extractor (#2883)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2023-02-26 03:26:06 +00:00
Rob Ede 29bd6a1dd5
fix version requirement for futures_util 2022-12-18 01:34:48 +00:00
Alex 068909f1b3
Replace deprecated twoway with memchr (#2909) 2022-10-14 11:52:13 +00:00
Rob Ede cc7145d41d
rust 1.64 clippy run (#2891) 2022-09-25 20:54:17 +01:00
Jacob Halsey fd63305859
Fix actix-multipart field content_type() to return an Option (#2885)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2022-09-23 17:06:40 +00:00
Rob Ede 1296e07c48
relax unpin bounds on payload types (#2545) 2021-12-24 17:47:47 +00:00
Rob Ede e1a2d9c606
Quality / QualityItem improvements (#2486) 2021-12-05 03:38:08 +00:00
Rob Ede c4b20df56a
convert all remaining IETF RFC links to new format 2021-12-02 03:45:04 +00:00
Ali MJ Al-Nasrawy 654dc64a09
don't hang after dropping mutipart (#2463) 2021-11-29 02:00:24 +00:00
fakeshadow 89c6d62656
clean up multipart and field stream trait impl (#2462) 2021-11-25 00:10:53 +00:00
fakeshadow 52bbbd1d73
Mnior cleanup of multipart API. (#2461) 2021-11-24 20:53:11 +00:00
Rob Ede e33618ed6d
ensure content disposition header in multipart (#2451)
Co-authored-by: Craig Pastro <craig.pastro@gmail.com>
2021-11-17 17:44:50 +00:00
Rob Ede c8ed8dd1a4
migrate to -utils beta 4 (#2127) 2021-04-01 15:26:13 +01:00
Rob Ede f6393728c7
remove usage of actix_utils::mpsc (#2023) 2021-02-24 09:08:56 +00:00
Rob Ede 31d9ed81c5
change rustfmt line width to 96 2021-02-11 23:03:17 +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
Juan Aguilar 542db82282
Simplify wake up of task (#1826) 2020-12-12 20:07:06 +00:00
Matt Gathu 37c76a39ab
Fix Multipart consuming payload before header checks (#1704)
* Fix Multipart consuming payload before header checks

What
--
Split up logic in the constructor into two functions:

- **from_boundary:** build Multipart from boundary and stream
- **from_error:** build Multipart for MultipartError

Also we make the `boundary`, `from_boundary`, `from_error`  methods public within the crate so that we can use them in the extractor.

The extractor is then able to perform header checks and only consume the
payload if the checks pass.

* Add tests

* Add payload consumption test

Co-authored-by: Rob Ede <robjtede@icloud.com>
2020-09-25 14:50:37 +01:00
Rob Ede 7787638f26
fix CI clippy warnings (#1664) 2020-09-10 14:46:35 +01:00
Yuki Okushi 92b5bcd13f
Check format and tweak CI config (#1619) 2020-07-22 00:28:33 +01:00
Yuki Okushi ab4d8704f1
multipart: Minimize futures dependencies 2020-05-19 08:29:11 +09:00
Nikolay Kim b4b3350b3e Add websockets continuation frame support 2019-12-12 14:06:54 +06:00
Alexander Larsson a612b74aeb actix-multipart: Fix multipart boundary reading (#1205)
* actix-multipart: Fix multipart boundary reading

If we're not ready to read the first line after the multipart field
(which should be a "\r\n" line) then return Pending instead of Ready(None)
so that we will get called again to read that line.

Without this I was getting MultipartError::Boundary from read_boundary()
because it got the "\r\n" line instead of the boundary.

Also tweaks the test_stream test to test partial reads.

This is a forward port of #1189 from 1.0

* actix-multipart: Update changes for boundary fix
2019-12-12 07:03:44 +06:00
Nikolay Kim 205a964d8f upgrade to tokio 0.2 2019-12-05 23:35:43 +06:00
Nikolay Kim 4dc31aac93 use actix_rt::test for test setup 2019-11-26 11:25:50 +06:00
Nikolay Kim 471f82f0e0 migrate actix-multipart 2019-11-21 16:02:17 +06:00
Nikolay Kim 60b7aebd0a fmt & clippy 2019-09-12 21:52:46 +06:00
Jeffrey Shen 1d96ae9bc3 actix-multipart: Correctly parse multipart body which does not end in CRLF (#1042)
* Correctly parse multipart body which does not end in CRLF

* Add in an eof guard for extra safety
2019-09-09 13:58:00 +06:00
Nikolay Kim fbdda8acb1 Unix domain sockets (HttpServer::bind_uds) #92 2019-07-18 17:24:12 +06:00
Aaron Hill b36fdc46db Remove several usages of 'unsafe' (#968)
* Replace UnsafeCell in DateServiceInner with Cell

The previous API was extremely dangerous - calling `get_ref()`
followed by `reset()` would trigger instant UB, without requiring
any `unsafe` blocks in the caller.

By making DateInner `Copy`, we can use a normal `Cell` instead
of an `UnsafeCell`. This makes it impossible to cause UB (or even panic)
with the API.

* Split unsafe block HttpServiceHandlerResponse

Also add explanation of the safety of the usage of `unsafe`

* Replace UnsafeCell with RefCell in PayloadRef

This ensures that a mistake in the usage of 'get_mut' will cause
a panic, not undefined behavior.
2019-07-18 04:45:17 +06:00
Nikolay Kim 4092c7f326 clippy warnings 2019-07-17 15:08:30 +06:00
Nikolay Kim 24180f9014 Fix boundary parsing #876 2019-06-02 12:58:37 +06:00
Nikolay Kim aa626a1e72 handle disconnects 2019-05-25 03:16:46 -07:00
Nikolay Kim 2350a2dc68 Handle cancellation of uploads #834 #736 2019-05-12 11:43:05 -07:00
Nikolay Kim d00c9bb844 do not consume boundary 2019-04-21 16:14:09 -07:00
Nikolay Kim 895e409d57 Optimize multipart handling #634, #769 2019-04-21 15:41:01 -07:00
Nikolay Kim 043f6e77ae remove nested multipart support 2019-04-13 10:11:07 -07:00
Nikolay Kim 219baf3323 remove PayloadWriter trait 2019-04-07 10:29:26 -07:00
Nikolay Kim 748289f0ff use custom headers map; more optimizations 2019-04-06 15:02:02 -07:00
Nikolay Kim e738361e09 move multipart support to separate crate 2019-04-03 12:28:58 -07:00
Renamed from src/types/multipart.rs (Browse further)