actix-multipart
Multipart request & form support for Actix Web
0.8.0
9.7M downloads/mo
#3163 most downloaded on crates.io
actix/actix-web
What this package is like to depend on
Last release 2 months ago
21 Jun 2026
Ships unpredictably
gaps range from 8 days to 2.0 years
Nearly every release is documented
notes for 15 of 16 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
37 releases · first in 2019
1 release in the last 12 months
see the full history below
Release timeline
37 releases · Apr 2019 to Jun 2026Releases
latest 37-
0.8.021 Jun 2026Release notes
Open source →0.8.0
- Add multi-field multipart payload builders to
actix_multipart::test. #3575 - Add
MultipartFormsupport forOption<Vec<T>>fields. #3577 - Bound internal multipart parser buffering to prevent unbounded memory growth on malformed bodies.
- behavior change notice: There's now a cap for buffering (64KB). It can be changed with
MultipartConfig::buffer_limit.
- behavior change notice: There's now a cap for buffering (64KB). It can be changed with
- Fix user-triggerable panic when parsing multipart boundaries.
- Minimum supported Rust version (MSRV) is now 1.88.
- Update
randdependency to0.10.
Release notes
Open source →0.8.0
- Minimum supported Rust version (MSRV) is now 1.88.
- Update
darlingdependency to0.23.
Release notes
Open source →- Add multi-field multipart payload builders to
actix_multipart::test. #3575 - Add
MultipartFormsupport forOption<Vec<T>>fields. #3577 - Bound internal multipart parser buffering to prevent unbounded memory growth on malformed bodies.
- behavior change notice: There's now a cap for buffering (64KB). It can be changed with
MultipartConfig::buffer_limit.
- behavior change notice: There's now a cap for buffering (64KB). It can be changed with
- Fix user-triggerable panic when parsing multipart boundaries.
- Minimum supported Rust version (MSRV) is now 1.88.
- Update
randdependency to0.10.
- Add multi-field multipart payload builders to
-
0.7.206 Jul 2024 -
0.7.006 Jul 2024Release notes
Open source →- Remove the experimental
experimental-io-uringcrate feature and its implementation, including theNamedFile::open_async()method. - Add support for passing multiple root directories to
Files::new. - Add
Files::try_compressed()to support serving pre-compressed static files. - Fix handling of
Range: bytes=0-. - Fix panic in
Fileswhenuse_hidden_files()is enabled and request paths contain.segments. - Fix
NamedFilepanic when serving files with pre-UNIX epoch modification times. - Fix invalid
Content-Encoding: identityheader inNamedFilerange responses.
Release notes
Open source →- Add
MultipartError::ContentTypeIncompatiblevariant. - Add
MultipartError::ContentDispositionNameMissingvariant. - Add
Field::bytes()method. - Rename
MultipartError::{NoContentDisposition => ContentDispositionMissing}variant. - Rename
MultipartError::{NoContentType => ContentTypeMissing}variant. - Rename
MultipartError::{ParseContentType => ContentTypeParse}variant. - Rename
MultipartError::{Boundary => BoundaryMissing}variant. - Rename
MultipartError::{UnsupportedField => UnknownField}variant. - Remove top-level re-exports of
testutilities.
- Remove the experimental
-
0.6.208 Jun 2024Release notes
Open source →- Add testing utilities under new module
test. - Minimum supported Rust version (MSRV) is now 1.72.
- Add testing utilities under new module
-
0.6.129 Aug 2023Release notes
Open source →- Minimum supported Rust version (MSRV) is now 1.68 due to transitive
timedependency.
- Minimum supported Rust version (MSRV) is now 1.68 due to transitive
-
0.6.026 Feb 2023 -
0.5.021 Jan 2023Release notes
Open source →Field::content_type()now returnsOption<&mime::Mime>. #2885- Minimum supported Rust version (MSRV) is now 1.59 due to transitive
timedependency.
-
0.4.025 Feb 2022 -
0.4.0-beta.1301 Feb 2022 pre-release -
0.4.0-beta.1204 Jan 2022 pre-release -
0.4.0-beta.1127 Dec 2021 pre-release -
0.4.0-beta.1011 Dec 2021 pre-release -
0.4.0-beta.901 Dec 2021 pre-releaseRelease notes
Open source →- Polling
Fieldafter droppingMultipartnow fails immediately instead of hanging forever. #2463
- Polling
-
0.4.0-beta.822 Nov 2021 pre-releaseRelease notes
Open source →- Ensure a correct Content-Disposition header is included in every part of a multipart message. #2451
- Added
MultipartError::NoContentDispositionvariant. #2451 - Since Content-Disposition is now ensured,
Field::content_dispositionis now infallible. #2451 - Added
Field::namemethod for getting the field name. #2451 MultipartErrornow marks variants with inner errors as the source. #2451MultipartErroris now marked as non-exhaustive. #2451
-
0.4.0-beta.720 Oct 2021 pre-release -
0.4.0-beta.609 Sep 2021 pre-release -
0.4.0-beta.519 Jun 2021 pre-release -
0.4.0-beta.402 Apr 2021 pre-release -
0.4.0-beta.310 Mar 2021 pre-release -
0.4.0-beta.210 Feb 2021 pre-release -
0.4.0-beta.107 Jan 2021 pre-releaseRelease notes
Open source → -
0.3.011 Sep 2020 -
0.3.0-beta.210 Sep 2020 pre-release -
0.3.0-beta.116 Jul 2020 pre-release -
0.3.0-alpha.125 May 2020 pre-releaseRelease notes
Open source →- Update
actix-webto 3.0.0-alpha.3 - Bump minimum supported Rust version to 1.40
- Minimize
futuresdependencies - Remove the unused
timedependency - Fix missing
std::error::Errorimplement forMultipartError.
- Update
-
0.2.020 Dec 2019 -
0.2.0-alpha.307 Dec 2019 pre-releaseNothing published for this version
-
0.2.0-alpha.203 Dec 2019 pre-release -
0.2.0-alpha.122 Nov 2019 pre-releaseNothing published for this version
-
0.1.507 Dec 2019Nothing published for this version
-
0.1.412 Sep 2019 -
0.1.318 Aug 2019 -
0.1.202 Jun 2019 -
0.1.125 May 2019 -
0.1.018 May 2019 -
0.1.0-beta.412 May 2019 pre-release -
0.1.0-beta.122 Apr 2019 pre-releaseRelease notes
Open source →-
Do not support nested multipart
-
Split multipart support to separate crate
-
Optimize multipart handling #634, #769
-